1. Einführung

OpenThread (OT) von Google ist eine Open-Source-Implementierung von Thread. Google hat OpenThread veröffentlicht, um die in Google Nest-Produkten verwendete Netzwerktechnologie Entwicklern zugänglicher zu machen und so die Entwicklung von Produkten für das vernetzte Zuhause und gewerbliche Gebäude zu beschleunigen. Dank einer schmalen Plattformabstraktionsschicht und eines geringen Speicherbedarfs ist OpenThread sehr portabel. Es unterstützt sowohl System-on-Chip- (SoC) als auch Network Co-Processor-Designs (NCP).
Die Thread-Spezifikation definiert ein zuverlässiges, sicheres und energieeffizientes drahtloses IPv6-basiertes Protokoll für die Kommunikation zwischen Geräten für Anwendungen in Wohn- und Geschäftsgebäuden.
Silicon Labs hat OpenThread für die Verwendung mit Hardware von Silicon Labs optimiert. Dieser Quellcode ist auf GitHub verfügbar und wird auch als Software Development Kit (SDK) mit Simplicity Studio 5 (SSv5) installiert. Das SDK enthält einen vollständig getesteten Snapshot des GitHub-Quellcodes. Sie unterstützt eine größere Auswahl an Hardware als die GitHub-Version und enthält Dokumentation und Beispielanwendungen, die auf GitHub nicht verfügbar sind.
In diesem Leitfaden wird beschrieben, wie Sie mit der Entwicklung von OpenThread-Anwendungen mit dem Silicon Labs OpenThread SDK und Simplicity Studio 5 beginnen. Das Bild unten zeigt die Boards (BRDs) und die Hardware, die mit einem OT Border Router (OTBR) und zwei Thread-Geräten eingerichtet wurde, die im Codelab verwendet werden.

Lerninhalte
- So erstellen Sie ein OpenThread-Projekt mit der Silicon Labs Simplicity Studio IDE.
- So erstellen und flashen Sie OpenThread CLI-Binärdateien auf Funkplatinen von Silicon Labs.
- So richten Sie einen Raspberry Pi 3B+ oder höher als OpenThread Border Router (OTBR) mit Docker ein.
- So erstellen Sie ein Thread-Netzwerk auf dem OTBR.
- Out-of-Band-Inbetriebnahme von Geräten in einem Thread-Netzwerk.
- So prüfen Sie die Thread-Kommunikation zwischen den Knoten mit dem Befehl „ping“.
2. Vorbereitung
Hardware:
- 3 EFR32MGxx-Funkplatinen – es kann eine beliebige Kombination dieser Geräte verwendet werden. In diesem Codelab wird ein BRD4166A als RCP und zwei BRD4168A als Full Thread Devices verwendet.
- EFR32MG12 (BRD4161A, BRD4166A, BRD4170A, BRD4304A)
- EFR32MG13 (BRD4168A)
- EFR32MG21 (BRD4180A, BRD4180B)
- BRD4001A: Wireless Starter Mainboards (WSTK) zum Hosten der Funkplatinen. Mit Ausnahme von BRD4166A benötigen alle Funkplatinen jeweils eine Starter-Hauptplatine. Mini-USB-Kabel zum Verbinden und Versorgen der Hauptplatinen oder Micro-USB-Kabel für BRD4166A.

- Ein Raspberry Pi 3B+ oder höher mit dem Raspbian Stretch Lite-Betriebssystemimage oder Raspbian Stretch mit Desktop, der über Ethernet mit dem Internet verbunden ist. Wir konfigurieren dies als OT-Border-Router.
- Ein Windows-/Linux-/Mac-Hostsystem mit mindestens zwei USB-Anschlüssen und einer Internetverbindung. Die Hardware- und Betriebssystemanforderungen finden Sie unter SSv5.
- Mindestens ein Ethernetkabel zum Verbinden des Raspberry Pi mit dem Internet. Die WSTKs unterstützen auch das Debuggen und Flashen über IP. Optional können zusätzliche Ethernetkabel verwendet werden, um das WSTK über einen Ethernet-Switch mit Ihrem Hostsystem zu verbinden.
Software:
- Simplicity Studio v5 ist auf dem Windows-/Linux-/Mac-Hostsystem installiert und aktualisiert mit
- GNU ARM-Toolchain
- Gecko SDK Suite 3.2.0 oder höher und Silicon Labs OpenThread SDK.
3. Hardware einrichten
Dieses Codelab wurde mit
- EFR32MG12 BRD4166A Thunderboard Sense 2, wie links abgebildet.
- Zwei EFR32MG13 BRD4168A, wie rechts abgebildet.
- Simplicity Studio v5 ist auf einem macOS Catalina 10.15.7 mit
- installiert.
- Gecko SDK 3.2.0
- GNU ARM v7.2.1


Verbinden Sie jedes Wireless Starter Kit-Mainboard über USB mit dem Hostcomputer, wie in der Abbildung unten dargestellt. Diese Verbindungen ermöglichen die Programmierung und Netzwerkanalyse des RCP und der Endgeräte. Zuerst programmieren wir den BRD4166A mit der ot-rcp-Firmware über den Hostcomputer und verbinden ihn dann mit dem Raspberry Pi. Optional können Endgeräte über einen gemeinsamen Ethernet-Switch mit dem Hostcomputer verbunden werden. Die Starterkits unterstützen auch die Programmierung und Netzwerkanalyse über IPv4.

4. Firmware einrichten
Es gibt zwei Möglichkeiten, mit der Erstellung zu beginnen. Mit beiden Optionen können Sie die für dieses Codelab erforderlichen Firmwares flashen.
- Projekte: (Empfohlen) Erstellen, kompilieren und flashen Sie eine Beispielanwendung. Mit dieser Option können Sie die Anwendung im Projekt anpassen.ODER
- Demos: (Optional) Flashen Sie die vorgefertigten Demos für eine der Beispielanwendungen direkt auf die Funkplatine. Nutzer werden aufgefordert, die Demos-Firmware als optionale Übung einzurichten. Weitere Informationen finden Sie im Abschnitt „Optionale Firmware-Einrichtung – Demos“ am Ende dieses Codelabs.
In diesem Codelab verwenden wir die projektbasierte Methode.
Projekte anhand von Beispielen erstellen
Wir erstellen zwei Projekte. Das ot-rcp-Projekt für BRD4166A und das ot-cli-ftd-Projekt für die beiden BRD4168A. Folgen Sie dieser Anleitung und wählen Sie die passende Beispielanwendung für Ihr Board aus.
- Öffnen Sie das File-Menü (Datei) von Studio und wählen Sie New > Silicon Labs Project Wizard (Neu > Silicon Labs-Projektassistent) aus. Das Dialogfeld „Ziel, SDK und Toolchain auswählen“ wird geöffnet. Ändern Sie nicht die von OpenThread unterstützte Standard-Simplicity IDE / GNU-Toolchain. Klicken Sie auf „Weiter“.
- Zielplatinen: Zeigt die ausgewählte Funkplatine (BRD4168A) zusammen mit der Hauptplatine (BRD4001A) an.
- Zielgerät: In diesem Feld wird der integrierte Mikrocontroller-Chip (MCU) angezeigt. Das BRD4168A hat eine EFR32MG13-MCU an Bord.
- SDK: Hier können Sie die SDK-Version von OT auswählen, mit der Sie arbeiten. Zu den Suite-Informationen gehören das SDK-Tag und der Silicon Labs-Build von OpenThread, z. B.
Platform 4.0.1.0undOpenThread 2.0.1.0 (GitHub-55af6ce2c). - IDE/ Toolchain: Die Toolchain, die zum Kompilieren des OT-Projekts verwendet wird. Wir verwenden GNU ARM.

- Das Dialogfeld „Beispielprojektauswahl“ wird geöffnet. Es wird eine Liste mit Beispielprojekten angezeigt. Verwenden Sie die Filter Thread für den Technologie-Typ und für Schlüsselwörter, um nach einem bestimmten Beispiel zu suchen. Notieren Sie sich die Versionsnummer der Gecko SDK Suite. Sie benötigen dieses Versionstag, wenn Sie den Raspberry Pi als Border Router einrichten. Wählen Sie ot-cli-ftd aus und klicken Sie auf WEITER.

- Das Dialogfeld „Projektkonfiguration“ wird geöffnet. Hier können Sie Ihr Projekt umbenennen, den Standardspeicherort für Projektdateien ändern und festlegen, ob Sie Projektdateien verknüpfen oder kopieren möchten. Verknüpfte Projektdateien verweisen auf das SDK. Alle Änderungen, die Sie vornehmen, werden im SDK vorgenommen und für zukünftige Projekte verwendet. Wenn Sie Projektquellen kopieren, können Sie eine projektlokale Kopie bearbeiten, sodass SDK-Dateien intakt bleiben. SDK verknüpfen und Projektquellen kopieren ist die Standardeinstellung und wird empfohlen. Klicken Sie auf FERTIG.

- Die Simplicity IDE-Perspektive wird geöffnet und der Projektkonfigurator wird auf dem Tab ÜBERSICHT geöffnet.

Das Projekt wird auf dem Tab Software Components (Softwarekomponenten) konfiguriert, indem Komponenten installiert und deinstalliert und installierte Komponenten konfiguriert werden. Installierte Komponenten werden geprüft. Klicken Sie auf Installierte Komponenten, um eine gefilterte Liste der Komponenten aufzurufen, die von der Beispielanwendung installiert wurden. Alle Änderungen werden automatisch gespeichert und Projektdateien werden automatisch generiert. Der Fortschritt wird rechts unten in der Simplicity IDE-Ansicht angezeigt.

In dieser Demo verwenden wir die Standardkonfiguration der Beispielanwendungen. Wiederholen Sie die obigen Schritte, um das ot-rcp-Projekt für Ihr anderes Board zu erstellen.
Projekte erstellen und flashen
Erstellen Sie die Projekte ot-rcp und ot-cli-ftd und flashen Sie sie.
- Klicken Sie nach der Konfiguration des Projekts in der oberen Symbolleiste auf Build-Steuerung (Hammersymbol). Alternativ können Sie mit der rechten Maustaste auf das Projekt klicken und „Projekt erstellen“ auswählen.

- Der Fortschritt wird in der Konsole und in einer Fortschrittsanzeige rechts unten angezeigt. In diesem Ausgabefenster werden auch alle Fehler oder Warnungen im Zusammenhang mit Ihrem Projekt angezeigt.

- Die Binärdatei-Images werden nach einem erfolgreichen Projekt-Build generiert. Sie können das binäre Image über die Project Explorer-Ansicht flashen. Suchen Sie im Compiler-Unterverzeichnis nach der Datei mit der Endung .bin, .hex oder .s37. Klicken Sie mit der rechten Maustaste auf die Datei und wählen Sie Flash to Device (Auf Gerät flashen) aus. Wenn Sie mehrere Geräte verbunden haben, wählen Sie ein Gerät aus, das Sie programmieren möchten, und klicken Sie auf OK. Der Flash Programmer wird mit dem ausgefüllten Dateipfad geöffnet. Klicken Sie auf PROGRAMM.

5. Zusammenfassung der Firmware-Einrichtung
Sie sollten die entsprechende Firmware bereits erstellt, kompiliert und auf die Funkplatinen geflasht haben. Sobald ot-rcp auf BRD4166A geflasht wurde, trennen Sie es vom Hostsystem und verbinden Sie es mit dem Raspberry Pi.
Nach Abschluss dieses Abschnitts sollte die Einrichtung der Hardware für dein Thread-Netzwerk so aussehen.

6. Serielle Konsole für ot-cli-ftd-Geräte einrichten
Um die Konsolenschnittstelle zu starten, klicken Sie in der Simplicity IDE-Perspektive mit der rechten Maustaste auf Ihr J-Link-Gerät in der Geräteansicht / im Fenster „Debug Adapters“ (Debug-Adapter). Wählen Sie Konsole starten aus. Wenn Sie einen Prompt in der Konsole erhalten möchten, wählen Sie den Tab Serial 1 aus und drücken Sie die Eingabetaste. Prüfen Sie den Status des FTD-Knotens.

Sie werden feststellen, dass wir noch keine Konsole für ot-rcp haben. Im nächsten Schritt konfigurieren wir den Raspberry Pi als OT-Border-Router und richten die Konsole für ot-rcp ein.
7. Raspberry Pi als Border Router einrichten
Silicon Labs empfiehlt, den Docker-Container des Unternehmens mit dem OTBR bereitzustellen. Wenn Sie den OTBR in einem Container ausführen, können Sie einfach bereitstellbare Artefakte erstellen und schnell Prototypen entwickeln und testen.
Silicon Labs OTBR-Images werden mit Tags in siliconlabsinc DockerHub gehostet. Jedes Tag entspricht einer GSDK-Version:
https://hub.docker.com/r/siliconlabsinc/openthread-border-router/tags
Docker-Container müssen mit RCPs verwendet werden, die mit Simplicity Studio 5 für eine bestimmte Version erstellt wurden. Achten Sie darauf, dass die Version des Container-Tags mit der GSDK-Version übereinstimmt, mit der Sie testen. Wenn Ihre GDSK-Version beispielsweise Gecko SDK Suite v4.0.1 (140) war, als Sie ot-rcp im Fenster Beispielprojektauswahl ausgewählt haben, verwenden Sie das Bild siliconlabsinc/openthread-border-router:gsdk-4.0.1.

Raspberry Pi einrichten
- Achten Sie darauf, dass Sie auf Ihrer SD-Karte das Raspbian Stretch Lite-Betriebssystem-Image oder Raspbian Stretch mit Desktop flashen.
- Sie können entweder eine SSH-Verbindung zum Raspberry Pi herstellen oder direkt mit dem Raspbian-Desktop arbeiten. Öffnen Sie ein Terminalfenster.
- Aktualisieren Sie vor der Installation von Docker Ihre lokalen Repositorys und Ihren Paketmanager (apt-get update und apt-get upgrade).
Docker-Image installieren
- Installieren Sie Docker mit dem folgenden Befehl auf Ihrem RPi.
curl -sSL https://get.docker.com | sh
- Anschließend können Sie die Docker-Nutzereinstellungen so ändern, dass vor jedem Befehl kein „sudo“ erforderlich ist. Neustart erforderlich.
sudo usermod -aG docker $USER
- Führen Sie die folgenden Befehle aus, um die Container zu installieren. Beachten Sie, dass mit Ihrem RCP immer nur ein Border Router-Container ausgeführt werden kann. Achten Sie außerdem darauf, dass die GSDK-Version von Simplicity Studio mit dem richtigen Docker-Image übereinstimmt. Beispiel:
gsdk-4.0.1docker pull siliconlabsinc/openthread-border-router:gsdk-4.0.1
Docker konfigurieren und ausführen
- Sie müssen den TTY-Port konfigurieren, den Sie für die OTBR verwenden möchten, um Ihren RCP beim Start zu verbinden. Suchen Sie nach dem TTY-Anschluss Ihres RCP-Geräts. Am einfachsten geht das, wenn Sie nach dem Verbinden des RCP nach einem Eintrag mit
/tty/devsuchen. Sie sollte in der Regel entweder/dev/ttyUSB0oder/dev/ttyACM0sein. - Führen Sie Ihre Docker-Installation mit dem folgenden Befehl aus. Achten Sie darauf, dass Sie den Namen Ihres Docker-Images durch die entsprechende GSDK-Version ersetzen. Zum Beispiel
gsdk-4.0.1:docker run -d --name "otbr" \ --sysctl "net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1" \ -p 8080:80 --dns=127.0.0.1 -it \ --volume /dev/ttyACM0:/dev/ttyACM0 \ --privileged siliconlabsinc/openthread-border-router:gsdk-4.0.1 \ --radio-url spinel+hdlc+uart:///dev/ttyACM0?uart-baudrate=460800 \ --backbone-interface eth0
-dsorgt dafür, dass der Container im getrennten Modus ausgeführt wird.- Mit dem Befehl
docker logskönnen Sie sich jederzeit die laufenden Logs für den Container ansehen. --namebleibt bestehen, bis der Docker-Container ordnungsgemäß geschlossen (oder entfernt) wird.- Port 8080 gibt den Port des Webservers an, auf dem die Verwaltungswebseite des Border Routers gehostet wird.
?uart-baudrate=460800ist in den Optionen für die Funk-URL erforderlich, um Probleme mit der Fragmentierung / Neuzusammenstellung über UART zu umgehen, mit kostspieligen Vorgängen wie DTLS mit langen IPv6-Paketen.
Mit dem RCP-Knoten interagieren
Sobald der Docker-Container ausgeführt wird, können Sie mit diesem Befehl über eine interaktive Shell mit dem RCP-Knoten kommunizieren. Prüfen Sie den Status des RCP-Knotens.
$ docker exec -ti otbr sh -c "sudo ot-ctl" > state disabled Done
Sie können eine Liste der IDs der laufenden Container abrufen.
$ docker ps -aq
Sie können das Fenster, in dem der OTBR-Docker-Container ausgeführt wird, auf die Logausgabe des Border Routers prüfen oder das Containerlog so aufrufen:
$ docker logs [container-id] -f
Optional können Sie das Image stoppen, entfernen oder beenden, wenn der Docker-Container richtig geladen wurde.
$ docker stop otbr
$ docker rm otbr
$ docker kill otbr
Optional: Drücken Sie zum Beenden der Shell STRG + C.
Sie sollten jetzt drei Konsolen haben.
- Zwei
ot-cli-ftd-Konsolen in Simplicity Studio, die als Full Thread-Geräte eingerichtet sind. - Eine interaktive
ot-ctl-Shell auf dem Raspberry Pi, der als OT-Grenzrouter eingerichtet ist.
Jetzt können wir ein Thread-Netzwerk erstellen.
8. Thread-Netzwerk erstellen
RCP einrichten
Zum Erstellen des Netzwerks starten wir mit der ot-ctl-Shell auf dem OTBR, über die die Kommunikation mit dem RCP-Knoten erfolgt. Geben Sie die folgenden Befehle in der unten gezeigten Reihenfolge ein:
Index | Befehl | Befehlsbeschreibung | Erwartete Antwort | ||
1 |
| Erstellen Sie eine neue Netzwerkkonfiguration. | Fertig | ||
2 |
| Übertragen Sie das neue Dataset in das aktive operative Dataset. | Fertig | ||
3 |
| Aktivieren Sie die Thread-Schnittstelle. | Fertig | ||
4 |
| Thread-Protokollvorgang aktivieren und anhängen | Fertig | ||
Warte 10 Sekunden, bis die Thread-Schnittstelle verfügbar ist. | |||||
5 |
| Prüfen Sie den Gerätestatus. Es sollte der Leader sein. | Führungsperson | ||
6 |
| Netzwerkkonfiguration ansehen. | Aktiver Zeitstempel: 1 | ||
Wir verwenden die Kanalnummer und den Netzwerkschlüssel auf dem ot-cli-ftd, um die beiden FTDs mit diesem Thread-Netzwerk zu verbinden.
FTD in unserem Thread-Netzwerk einrichten und hinzufügen (Out-of-Band-Methode)
Bei der Out-of-Band-Methode kennen wir alle Sicherheitsinformationen und fügen den Knoten manuell hinzu. Fügen Sie in den Simplicity-Konsolen beide FTDs mit den folgenden Befehlen in der unten gezeigten Reihenfolge zu unserem Netzwerk hinzu.
Index | Befehl | Befehlsbeschreibung | Erwartete Antwort | ||
1 |
| Legen Sie den vom OTBR verwendeten Kanal fest. | Fertig | ||
2 |
| Für die Verbindung eines Geräts mit einem Thread-Netzwerk ist nur der Netzwerkschlüssel erforderlich. | Fertig | ||
3 |
| Übertragen Sie das neue Dataset in das aktive operative Dataset. | Fertig | ||
4 |
| Aktivieren Sie die Thread-Schnittstelle. | Fertig | ||
5 |
| Thread-Protokollvorgang aktivieren und anhängen | Fertig | ||
Warten Sie 20 Sekunden, während das Gerät sich verbindet und konfiguriert. | |||||
6 |
| Netzwerkkonfiguration ansehen | child | ||
Kommunikation zwischen Thread-Geräten
Mit dem Befehl ping prüfen wir, ob Geräte miteinander kommunizieren können. Um den Ping-Befehl verwenden zu können, benötigen wir die IPv6-Adressen der Geräte. Diese können mit dem Befehl ipaddr abgerufen werden.
> ipaddr fd5c:c6b:3a17:40b9:0:ff:fe00:fc00 # Leader Anycast Locator (ALOC) fd5c:c6b:3a17:40b9:0:ff:fe00:1800 # Routing Locator (RLOC) fd5c:c6b:3a17:40b9:84e2:bae8:bd5b:fa03 # Mesh-Local EID (ML-EID) fe80:0:0:0:c449:ca4a:101f:5d16 # Link-Local Address (LLA)
Pingen Sie den OTBR von beiden FTDs aus mit der RLOC-Adresse des OTBR.
> ping fd5c:c6b:3a17:40b9:0:ff:fe00:1800 Done > > 16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=30ms 16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=52ms
Die Antwort gibt die empfangene Nutzlast an und bestätigt, dass die Kommunikation erfolgreich war. Wiederholen Sie den Vorgang, um FTDs vom OTBR aus anzupingen.
9. Glückwunsch
Du hast ein Thread-Netzwerk erstellt.
Sie wissen jetzt:
- So erstellen Sie ein OpenThread-Projekt mit der Silicon Labs Simplicity Studio IDE.
- So erstellen und flashen Sie OpenThread CLI-Binärdateien auf Funkplatinen von Silicon Labs.
- So richten Sie einen Raspberry Pi 3B+ oder höher als OpenThread Border Router (OTBR) mit Docker ein.
- So erstellen Sie ein Thread-Netzwerk auf dem OTBR.
- Out-of-Band-Inbetriebnahme von Geräten in einem Thread-Netzwerk.
- So prüfen Sie die Thread-Kommunikation zwischen den Knoten mit dem Befehl „ping“.
Weitere Informationen
Auf openthread.io und GitHub finden Sie verschiedene OpenThread-Ressourcen, darunter:
- Unterstützte Plattformen: Hier finden Sie alle Plattformen, die OpenThread unterstützen.
- OpenThread erstellen – Weitere Informationen zum Erstellen und Konfigurieren von OpenThread
- Thread-Grundlagen: Hier werden alle Thread-Konzepte behandelt, die in diesem Codelab vorgestellt werden.
- Silicon Labs OpenThread Training: Eine Einführung in OpenThread, in der die Inbetriebnahme und Border-Router behandelt werden. Außerdem gibt es eine praktische Übung zum Erstellen eines OpenThread-Netzwerks.
- QSG170: Silicon Labs OpenThread Quick-Start Guide: Hier wird der Einstieg in die Thread-Entwicklung von Silicon Labs ausführlich beschrieben.
- AN1256: Using the Silicon Labs RCP with the OpenThread Border Router (AN1256: RCP von Silicon Labs mit dem OpenThread-Border-Router verwenden) – Build- und Installationsanleitung für den Raspberry Pi-Border-Router-Host
10. Optionale Firmware-Einrichtung – Demos
Demos sind vorgefertigte Firmware-Images, die auf ein kompatibles Gerät heruntergeladen werden können. Am schnellsten finden Sie heraus, ob eine Demo für Ihr Teil in Simplicity Studio verfügbar ist, indem Sie in der Ansicht „Debug Adapters“ auf Ihr Teil klicken und dann in der Launcher-Perspektive zum Tab „EXAMPLE PROJECTS & DEMOS“ wechseln. Deaktiviere den Filter „Beispielprojekte“ und aktiviere unter „Technologietyp“ das Optionsfeld „Thread“.

Die mit dem OpenThread SDK bereitgestellten vorkompilierten Demobilder sind mit den folgenden Boards kompatibel:
- BRD4161a
- BRD4166a
- BRD4168a
- BRD4180a
- BRD4304a
Diese Liste wird in zukünftigen SDK-Releases möglicherweise aktualisiert, um weitere Funkplatinen aufzunehmen. Eine vollständige Liste der unterstützten Teile finden Sie in den Versionshinweisen zum Silicon Labs OpenThread SDK unter „Documentation“.
Flashen Sie die folgenden Demos auf die entsprechenden Boards. Wählen Sie zum Flashen Ihr Board links unter „Debug Adapters“ (Debug-Adapter) aus und klicken Sie für die entsprechenden Beispielanwendungen auf „RUN“ (AUSFÜHREN). In einem Pop-up-Fenster wird der Fortschritt des Flash-Vorgangs angezeigt.
- BRD4166A: ot-rcp – Dieses Gerät fungiert als Radio Co-Processor für den OT-Border-Router. Wir verwenden dieses Gerät, um ein Thread-Netzwerk zu erstellen und die beiden anderen Geräte in das Thread-Netzwerk einzubinden. Als Border-Router fungiert dieses Gerät auch als Gateway für die Geräte im Thread-Netzwerk, damit sie über das Internet kommunizieren können.
- Zwei BRD4168A: ot-cli-ftd – Diese beiden Geräte fungieren als Full Thread Devices. Sie treten dem vom OTBR erstellten Thread-Netzwerk bei.