Port prüfen

<ph type="x-smartling-placeholder"></ph> Quelle auf GitHub ansehen

Eine einfache Validierung ist erforderlich, um einen erfolgreichen Port von OpenThread auf einen neuen Beispiel für eine Hardwareplattform.

Kompilieren Sie für die Zielplattform

Einen erfolgreichen Build durch Kompilieren der OpenThread-Beispielanwendung demonstrieren für die Zielplattform.

./script/build efr32mg12 -DBOARD=brd4161a

Mit der Befehlszeile interagieren

Demonstrieren Sie die erfolgreiche OpenThread-Ausführung und UART-Funktionalität durch Interaktion mit der Befehlszeile.

Öffne ein Terminal mit /dev/ttyACM0 (Einstellungen des seriellen Ports: 115200 8-N-1). Typ help. Hier finden Sie eine Liste der Befehle.

help
help
autostart
bufferinfo
...
version
whitelist

Thread-Netzwerk bilden

Erfolgreiche Protokoll-Timer durch Bilden eines Thread-Netzwerks und Prüfen der Nutzung demonstrieren Der Knoten hat jetzt den Status „Leader“.

dataset init new
Done
dataset
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
dataset commit active
Done
ifconfig up
Done
thread start
Done

Warte ein paar Sekunden...

state
leader
Done

Zweiten Knoten anhängen

Demonstrieren Sie eine erfolgreiche Funkkommunikation durch Anschließen eines zweiten Knotens an den ein neues Thread-Netzwerk mit demselben Thread-Netzwerkschlüssel und derselben PAN-ID wie dem ersten Knoten:

dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Done
dataset panid 0x8f28
Done
dataset commit active
Done
routerselectionjitter 1
Done
ifconfig up
Done
thread start
Done

Warte ein paar Sekunden...

state
router
Done

Zwischen Geräten pingen

Demonstrieren Sie eine erfolgreiche Datenpfadkommunikation durch Senden/Empfangen von ICMPv6 Echo Anfrage-/Antwortnachrichten.

Alle IPv6-Adressen des Leaders auflisten:

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

Senden Sie einen ICMPv6-Ping vom Router an die Mesh-Local-EID-IPv6-Adresse des Leaders:

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 erneutes Anhängen validieren

Persistente Funktionalität durch Zurücksetzen des Geräts und Validieren demonstrieren das erneute Anhängen an dasselbe Netzwerk ohne Eingriff des Nutzers wieder an.

Thread-Netzwerk starten:

dataset init new
Done
dataset
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
dataset commit active
Done
ifconfig up
Done
thread start
Done

Warten Sie einige Sekunden und prüfen Sie, ob das aktive Dataset in nichtflüchtiger Speicher:

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
Done
thread start
Done

Warten Sie einige Sekunden und prüfen Sie, ob das Gerät wieder verbunden wurde. mit dem Netzwerk:

panid
0x8f28
Done
state
router
Done

Erzeugung der Zufallszahl prüfen

Demonstrieren Sie die Erzeugung von Zufallszahlen durch Ausführen des Befehls factoryreset und eine neue zufällige erweiterte Adresse zu verifizieren.

extaddr
a660421703f3fdc3
Done
factoryreset

Warte ein paar Sekunden...

extaddr
9a8ed90715a5f7b6
Done