<ph type="x-smartling-placeholder"></ph> Consulter le code source sur GitHub
Une validation de base est nécessaire pour vérifier un port réussi d'OpenThread vers un nouveau de plate-forme matérielle.
Compiler pour la plate-forme cible
Démontrer 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
Démontrer une exécution OpenThread réussie et une capacité UART en interagissant à l'aide de la CLI.
Ouvrez un terminal pour /dev/ttyACM0
(paramètres du port série: 115200 8-N-1). Type
help
pour obtenir la liste des commandes.
help
help
autostart
bufferinfo
...
version
whitelist
Créer un réseau Thread
Vérifier que les timers de protocole réussissent en formant un réseau Thread et en vérifiant le nœud est passé à l'état principal.
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
Patientez quelques secondes...
state
leader
Done
Associer un deuxième nœud
Pour démontrer la réussite de la communication radio, rattachez un deuxième nœud au réseau Thread nouvellement créé, utilisant la même clé de réseau Thread et le même ID de PAN que dans le premier nœud:
dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Donedataset panid 0x8f28
Donedataset commit active
Donerouterselectionjitter 1
Doneifconfig up
Donethread start
Done
Patientez quelques secondes...
state
router
Done
Pinguer entre appareils
Démontrer que la communication sur le chemin de données est réussie en envoyant/recevant des échos ICMPv6 messages de requête/réponse.
Répertorier toutes les adresses IPv6 de la variante optimale:
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 leader du réseau maillé:
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 l'association
Démontrer le fonctionnement non volatile en réinitialisant l'appareil et en validant son renvoi au même réseau sans intervention de l'utilisateur.
Démarrez un réseau Thread:
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
Attendez quelques secondes et vérifiez que l'ensemble de données actif a bien été stocké dans 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
Donethread start
Done
Patientez quelques secondes, puis vérifiez que l'appareil a bien été réassocié au réseau:
panid
0x8f28 Donestate
router Done
Vérifier la génération de nombres aléatoires
Montrez comment générer des nombres aléatoires en exécutant la commande factoryreset
.
pour vérifier une nouvelle
adresse étendue aléatoire.
extaddr
a660421703f3fdc3 Donefactoryreset
Patientez quelques secondes...
extaddr
9a8ed90715a5f7b6
Done