Valider le port

Afficher la source sur GitHub

Une validation de base est nécessaire pour vérifier le bon port d'OpenThread vers un nouvel exemple de plate-forme matérielle.

Compiler pour la plate-forme cible

Construisez une compilation réussie en compilant l'exemple d'application OpenThread pour la plate-forme cible.

./script/build efr32mg12 -DBOARD=brd4161a

Interagir avec la CLI

Montrez que vous avez réussi l'exécution OpenThread et la fonctionnalité UART en interagissant avec la CLI.

Ouvrez un terminal pour /dev/ttyACM0 (paramètres de port série: 115200 8-N-1). Saisissez help pour obtenir la liste des commandes.

help
help
autostart
bufferinfo
...
version
whitelist

Former un réseau Thread

Démontrez l'efficacité des timers de protocole en formant un réseau Thread et en vérifiant que le nœud est passé à l'état 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

Patientez quelques secondes...

state
leader
Done

Associer un deuxième nœud

Démontrez l'efficacité de la communication radio en associant un deuxième nœud au nouveau réseau Thread, en utilisant la même clé réseau et le même ID PAN à partir du premier nœud:

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

Patientez quelques secondes...

state
router
Done

Pinguer entre les appareils

Démontrez la réussite de votre communication avec le chemin des données en envoyant/recevant des messages de requête/réponse Echo ICMPv6.

Répertoriez toutes les adresses IPv6 du responsable:

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

Envoyez un ping ICMPv6 du routeur à l'adresse IPv6 EID locale du responsable:

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

Réinitialiser un appareil et valider la réassociation

Démontrez la fonctionnalité non volatile en réinitialisant et en validant l'appareil sur le même réseau sans intervention de l'utilisateur.

Démarrez un réseau Thread:

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

Attendez quelques secondes et vérifiez que l'ensemble de données actif a été stocké dans un espace de stockage non volatile:

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

Réinitialisez l'appareil:

reset
ifconfig up
Done
thread start
Done

Attendez quelques secondes et vérifiez que l'appareil s'est bien reconnecté au réseau:

panid
0x8f28
Done
state
router
Done

Vérifier la génération de nombres aléatoires

Vous allez démontrer la génération de nombres aléatoires en exécutant la commande factoryreset et en validant une nouvelle adresse étendue aléatoire.

extaddr
a660421703f3fdc3
Done
factoryreset

Patientez quelques secondes...

extaddr
9a8ed90715a5f7b6
Done