Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Validar el puerto

Ver el código fuente en GitHub

La validación básica es necesaria para verificar un puerto correcto de OpenThread a un nuevo ejemplo de plataforma de hardware.

Compila para la plataforma de destino

Compila una compilación exitosa compilando la aplicación de ejemplo de OpenThread para la plataforma de destino.

./script/build efr32mg12 -DBOARD=brd4161a

Interactúa con la CLI

Interactúa con la CLI para demostrar la ejecución correcta de OpenThread y la capacidad de UART.

Abre una terminal para /dev/ttyACM0 (configuración de puerto en serie: 115200 8-N-1). Escribe help para ver una lista de comandos.

help
help
autostart
bufferinfo
...
version
whitelist

Crea una red Thread

Demuestra temporizadores de protocolo correctos mediante la formación de una red Thread y la verificación de que el nodo haya pasado al estado de líder.

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

Espera unos segundos...

state
leader
Done

Adjuntar un segundo nodo

Para demostrar una comunicación de radio exitosa, adjunta un segundo nodo a la red de Thread formada recientemente, con la misma clave de red de Thread y el mismo ID de PAN del primer nodo:

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

Espera unos segundos...

state
router
Done

Haz ping entre dispositivos

Para mostrar una comunicación de ruta de datos exitosa, envía/recibe mensajes de solicitud o respuesta de ICMPv6 Echo.

Enumera todas las direcciones IPv6 del líder:

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

Envía un ping ICMPv6 desde el router a la dirección IPv6 del EID de malla local del líder:

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

Restablece un dispositivo y valida el rearchivo adjunto

A fin de demostrar la funcionalidad no volátil, restablece el dispositivo y valida su reconexión a la misma red sin la intervención del usuario.

Inicia una red 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

Espera unos segundos y verifica que el conjunto de datos activo se haya almacenado en un almacenamiento no volátil:

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

Restablece el dispositivo:

reset
ifconfig up
Done
thread start
Done

Espera unos segundos y verifica que el dispositivo se haya conectado correctamente a la red:

panid
0x8f28
Done
state
router
Done

Verifica la generación de números al azar

Demuestra la generación de números al azar mediante la ejecución del comando factoryreset y la verificación de una nueva dirección extendida aleatoria.

extaddr
a660421703f3fdc3
Done
factoryreset

Espera unos segundos...

extaddr
9a8ed90715a5f7b6
Done