Router de borde de subproceso de ESP

Ver código fuente en GitHub

El router de borde Thread del ESP es una implementación basada en FreeRTOS que se ejecuta en una combinación de Wi-Fi y SoC 802.15.4 de Espressif.

Requisitos de hardware:

Espressif proporciona una placa de router de borde del ESP que integra el SoC host (ESP32-S3) y el RCP (ESP32-H2) en un módulo.

Solo debes conectar la placa al puerto ESP32-S3 (SoC principal). El SoC principal programa automáticamente el coprocesador de Thread.

Plataformas de hardware

Placa de router de borde Thread ESP
Placa de router con borde del subproceso ESP


Configura los repositorios

Para configurar el entorno, sigue la guía de instalación oficial.

Clona los repositorios esp-idf y esp-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

Cómo configurar Thread y la red Wi-Fi

El router de borde se unirá automáticamente a la red Wi-Fi y creará una nueva red Thread si no hay una en su almacenamiento. Los parámetros de red se pueden configurar en el menú de configuración:

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

Los elementos de configuración de red son los siguientes:

  • Habilita el modo de inicio automático en el router de borde de Thread: ESP Thread Border Router Example > Enable the automatic start mode in Thread Border Router.
  • SSID y PSK de Wi-Fi: Ejemplo de configuración de conexión > Conéctate mediante la interfaz Wi-Fi
  • Parámetros de la red de Thread: Component config > OpenThread > Thread Operational Dataset

Cómo compilar y ejecutar el router de borde

Compila el ejemplo de esp-idf/examples/openthread/ot_rcp. No es necesario que el firmware se escriba en la memoria flash del dispositivo de forma explícita. Se incluirá en el firmware del router de borde y se escribirá en la memoria flash del chip ESP32-H2 la primera vez que se inicie (o se cambió el firmware RCP).

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

Luego, vuelve a la carpeta de ejemplo 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

Ahora, verás la salida del router de borde en el monitor ESP32S3. También proporciona una línea de comandos interactiva de OpenThread:

state
leader
Done
>

Funciones admitidas

  • Agente de frontera para encargados externos.
  • conectividad bidireccional IPv6.
  • Registro del servicio de SRP y proxy de publicidad.
  • proxy de detección de mDNS.
  • NAT64
  • Reenvío multicast
  • API de REST basada en la GUI web
  • Inalámbrico.

Para obtener más información sobre el uso del router de borde de subproceso ESP, consulta el Codelab del router de borde del subproceso ESP