Die grundlegende Validierung ist erforderlich, um einen erfolgreichen Port von OpenThread zu einem neuen Beispiel für eine Hardwareplattform zu prüfen.
Kompilieren Sie die Zielplattform.
Zeigen Sie einen erfolgreichen Build, indem Sie die Beispiel-OpenThread-Anwendung für die Zielplattform kompilieren.
./script/build efr32mg12 -DBOARD=brd4161a
Mit der Befehlszeile interagieren
Zeigen Sie die erfolgreiche Ausführung von OpenThread und UART-Funktionen durch die Interaktion mit der Befehlszeile.
Öffnen Sie ein Terminalfenster mit /dev/ttyACM0
(Einstellungen für den seriellen Port: 115200 8-N-1). Geben Sie help
für eine Liste von Befehlen ein.
help
help
autostart
bufferinfo
...
version
whitelist
Thread-Netzwerk bilden
Zeigen Sie erfolgreiche Protokolltimer, indem Sie ein Thread-Netzwerk bilden und prüfen, ob der Knoten in den Leader-Status übergegangen ist.
dataset init new
Donedataset
Active Timestamp: 1 Channel: 13 Channel Mask: 07fff800 Ext PAN ID: d63e8e3e495ebbc3 Mesh Local Prefix: fd3d:b50b:f96d:722d/64 Network Key: dfd34f0f05cad978ec4e32b0413038ff Network Name: OpenThread-8f28 PAN ID: 0x8f28 PSKc: c23a76e98f1a6483639b1ac1271e2e27 Security Policy: 0, onrcb Donedataset commit active
Doneifconfig up
Donethread start
Done
Warten Sie einige Sekunden...
state
leader
Done
Zweiten Knoten anhängen
Zeigen Sie die erfolgreiche Funkkommunikation, indem Sie einen zweiten Knoten an das neu formatierte Thread-Netzwerk anhängen. Verwenden Sie dazu denselben Thread-Netzwerkschlüssel und dieselbe PAN-ID wie der erste Knoten:
dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Donedataset panid 0x8f28
Donedataset commit active
Donerouterselectionjitter 1
Doneifconfig up
Donethread start
Done
Warten Sie einige Sekunden...
state
router
Done
Ping zwischen Geräten
demonstrieren Sie die erfolgreiche Kommunikation über den Datenpfad, indem Sie ICMPv6-Echo-Anfrage-/-Antwortnachrichten senden/empfangen.
Listen Sie alle IPv6-Adressen von Leader auf:
ipaddr
fdde:ad00:beef:0:0:ff:fe00:fc00
fdde:ad00:beef:0:0:ff:fe00:800
fdde:ad00:beef:0:5b:3bcd:deff:7786
fe80:0:0:0:6447:6e10:cf7:ee29
Done
ICMPv6-Ping vom Router an die Leader-IP-IPv6-Adresse des Mesh-lokals senden:
ping fdde:ad00:beef:0:5b:3bcd:deff:7786
16 bytes from fdde:ad00:beef:0:5b:3bcd:deff:7786: icmp_seq=1 hlim=64 time=24ms
Gerät zurücksetzen und Anhang neu validieren
Durch das Zurücksetzen des Geräts und das Validieren des Anhangs im selben Netzwerk ohne Eingriff des Nutzers werden flüchtige Funktionen demonstriert.
So starten Sie ein Thread-Netzwerk:
dataset init new
Donedataset
Active Timestamp: 1 Channel: 13 Channel Mask: 07fff800 Ext PAN ID: d63e8e3e495ebbc3 Mesh Local Prefix: fd3d:b50b:f96d:722d/64 Network Key: dfd34f0f05cad978ec4e32b0413038ff Network Name: OpenThread-8f28 PAN ID: 0x8f28 PSKc: c23a76e98f1a6483639b1ac1271e2e27 Security Policy: 0, onrcb Donedataset commit active
Doneifconfig up
Donethread start
Done
Warten Sie einige Sekunden und prüfen Sie, ob der aktive Datensatz im nichtflüchtigen Speicher gespeichert wurde:
dataset active
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
Setzen Sie das Gerät zurück:
reset
ifconfig up
Donethread start
Done
Warten Sie einige Sekunden und prüfen Sie, ob das Gerät wieder mit dem Netzwerk verbunden ist:
panid
0x8f28 Donestate
router Done
Generierung von zufälligen Zahlen bestätigen
Führen Sie den Befehl factoryreset
aus und prüfen Sie eine neue zufällige erweiterte Adresse, um zu zeigen, wie eine zufällige Zahl generiert wird.
extaddr
a660421703f3fdc3 Donefactoryreset
Warten Sie einige Sekunden...
extaddr
9a8ed90715a5f7b6
Done