ESP 线程边界路由器

查看 GitHub 上的源代码

ESP Thread 边界路由器是一种基于 FreeRTOS 的实现,在 Espressif 的 Wi-Fi 和 802.15.4 SoC 上运行。

硬件要求:

Espressif 提供了 ESP 边界路由器板,它将主机 SoC (ESP32-S3) 和 RCP (ESP32-H2) 集成到一个模块中。

您只需将开发板连接到 ESP32-S3(主 SoC)端口即可。主 SoC 会自动对线程协处理器进行编程。

硬件平台

ESP Thread 边界路由器开发板
ESP Thread 边界路由器开发板


设置代码库

如需设置环境,请按照官方安装指南操作。

克隆 esp-idfesp-thread-br 代码库。

git clone -b v5.1.2 --recursive https://github.com/espressif/esp-idf.git
cd esp-idf
./install.sh
. ./export.sh
cd ..
git clone -b v1.0 --recursive https://github.com/espressif/esp-thread-br.git

配置 Thread 和 Wi-Fi 网络

边界路由器会自动加入 Wi-Fi 网络,并创建一个新的 Thread 网络(如果其存储空间中没有 Thread 网络)。 您可以在配置菜单中配置网络参数:

cd esp-thread-br/examples/basic_thread_border_router
idf.py menuconfig

网络配置项包括:

  • 在 Thread 边界路由器中启用自动启动模式:依次选择 ESP Thread 边界路由器示例 > 在 Thread 边界路由器中启用自动启动模式
  • Wi-Fi SSID 和 PSK:连接配置示例 > 使用 Wi-Fi 接口连接
  • 线程网络参数:组件配置 > OpenThread > 线程操作数据集

构建并运行边界路由器

构建 esp-idf/examples/openthread/ot_rcp 示例。无需明确将固件刷写到设备上。它将包含在边界路由器固件中,并在首次启动(或更改 RCP 固件)时刷写到 ESP32-H2 芯片。

cd ${IDF_PATH}/examples/openthread/ot_rcp
idf.py set-target esp32h2
idf.py build

然后,返回 basic_thread_border_router 示例文件夹。

cd esp-thread-br/examples/basic_thread_border_router
idf.py set-target esp32s3
idf.py build
idf.py -p  flash monitor

现在,您将在 ESP32S3 监视器中看到边界路由器输出。它还提供了一个交互式 OpenThread 命令行:

state
leader
Done
>

支持的功能

  • 负责外部专员的边境代理。
  • IPv6 双向连接。
  • SRP 服务注册和广告代理。
  • mDNS 发现代理。
  • NAT64。
  • 多播转发。
  • 基于 Web GUI 的 REST API。
  • OTA。

如需详细了解如何使用 ESP Thread 边界路由器,您可以参阅 ESP Thread 边界路由器 Codelab