Convalida il trasferimento

Visualizza l'origine su GitHub

La convalida di base è necessaria per verificare una porta riuscita di OpenThread in un esempio di nuova piattaforma hardware.

Compilare la piattaforma target

Dimostra una build riuscita compilando l'applicazione OpenThread di esempio per la piattaforma di destinazione.

./script/build efr32mg12 -DBOARD=brd4161a

Interagire con l'interfaccia a riga di comando

Dimostra la corretta esecuzione di OpenThread e la capacità UART interagendo con l'interfaccia a riga di comando.

Apri un terminale per /dev/ttyACM0 (impostazioni della porta seriale: 115200 8-N-1). Digita help per un elenco di comandi.

help
help
autostart
bufferinfo
...
version
whitelist

Forma una rete Thread

Dimostrare i timer di protocollo riusciti formando una rete Thread e verificando che il nodo sia passato allo stato di 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

Attendi un paio di secondi...

state
leader
Done

Collega un secondo nodo

Dimostra la comunicazione radio riuscita collegando un secondo nodo alla rete Thread appena creata utilizzando la stessa chiave di rete Thread e lo stesso ID PAN del primo nodo:

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

Attendi un paio di secondi...

state
router
Done

Ping tra dispositivi

Dimostrare la comunicazione del percorso dati riuscita inviando/ricevendo messaggi di richiesta/risposta ECMPv6.

Elenca tutti gli indirizzi IPv6 di Leader:

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

Invia un ping ICMPv6 dal router all'indirizzo IPv6 mesh-local EID del leader:

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

Reimpostare un dispositivo e convalidare il nuovo collegamento

Dimostrare la funzionalità non volatile reimpostando il dispositivo e convalidando il relativo collegamento alla stessa rete senza intervento dell'utente.

Avvia una rete 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

Attendi un paio di secondi e verifica che il set di dati attivo sia stato archiviato in un'archiviazione 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

Per reimpostare il dispositivo:

reset
ifconfig up
Done
thread start
Done

Attendi un paio di secondi e verifica che il dispositivo sia stato ricollegato correttamente alla rete:

panid
0x8f28
Done
state
router
Done

Verifica la generazione di numeri casuali

Dimostra la generazione del numero casuale eseguendo il comando factoryreset e verificando un nuovo indirizzo esteso casuale.

extaddr
a660421703f3fdc3
Done
factoryreset

Attendi un paio di secondi...

extaddr
9a8ed90715a5f7b6
Done