Der ESP Thread Border Router ist eine FreeRTOS-basierte Implementierung, die auf einer Kombination aus den WLAN- und 802.15.4-SoCs von Espressif ausgeführt wird.
Hardwareanforderungen:
Espressif bietet ein ESP-Border-Router-Board an, in dem das Host-SoC (ESP32-S3) und der RCP (ESP32-H2) in einem Modul integriert sind.
Sie müssen die Leiterplatte nur mit dem ESP32-S3-Haupt-SoC-Port verbinden. Das Haupt-SoC programmiert den Thread-Coprozessor automatisch.
Hardwareplattformen
Repositories einrichten
Folgen Sie der offiziellen Installationsanleitung, um die Umgebung einzurichten.
Klonen Sie die Repositories esp-idf und 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
Thread- und WLAN-Netzwerk konfigurieren
Der Border-Router verbindet sich automatisch mit dem WLAN und erstellt ein neues Thread-Netzwerk, falls sich noch keins im Speicher befindet. Die Netzwerkparameter können im Konfigurationsmenü konfiguriert werden:
cd esp-thread-br/examples/basic_thread_border_router
idf.py menuconfig
Die Netzwerkkonfigurationselemente sind:
- Automatischen Startmodus im Thread-Border-Router aktivieren: Beispiel für einen ESP-Thread-Border-Router > Automatischen Startmodus im Thread-Border-Router aktivieren
- WLAN-SSID und PSK: Beispiel für eine Verbindungskonfiguration > Verbindung über WLAN-Schnittstelle herstellen
- Thread-Netzwerkparameter: Komponentenkonfig. > OpenThread > Thread-Betriebsdatensatz
Border-Router erstellen und ausführen
Erstellen Sie das esp-idf/examples/openthread/ot_rcp
-Beispiel. Die Firmware muss nicht explizit auf ein Gerät geflasht werden. Sie wird in der Border-Router-Firmware enthalten sein und beim ersten Start auf den ESP32-H2-Chip geflasht (oder die RCP-Firmware geändert).
cd ${IDF_PATH}/examples/openthread/ot_rcp
idf.py set-target esp32h2
idf.py build
Kehren Sie dann zum Beispielordner basic_thread_border_router
zurück.
cd esp-thread-br/examples/basic_thread_border_router
idf.py set-target esp32s3
idf.py build
idf.py -p
flash monitor
Jetzt sehen Sie die Ausgabe des Border-Routers im ESP32S3-Monitor. Außerdem gibt es eine interaktive OpenThread-Befehlszeile:
state
leader
Done
>
Unterstützte Funktionen
- Grenzbeamter für externe Auftraggeber.
- Bidirektionale IPv6-Verbindung.
- SRP-Dienstregistrierung und Werbeproxy.
- mDNS-Erkennungs-Proxy
- NAT64.
- Multicast-Weiterleitung.
- Web-GUI-basierte REST API
- Onlinereisebüro.
Weitere Informationen zur Verwendung des ESP-Thread-Border-Routers finden Sie im ESP-Thread-Border-Router-Codelab.