Подтвердить порт, Подтвердить порт

Посмотреть исходный код на GitHub

Базовая проверка необходима для проверки успешного переноса OpenThread на пример новой аппаратной платформы.

Скомпилировать для целевой платформы

Продемонстрируйте успешную сборку, скомпилировав пример приложения OpenThread для целевой платформы.

./script/build efr32mg12 -DBOARD=brd4161a

Взаимодействие с CLI

Продемонстрируйте успешное выполнение OpenThread и возможности UART, взаимодействуя с CLI.

Откройте терминал /dev/ttyACM0 (настройки последовательного порта: 115200 8-N-1). Введите help , чтобы просмотреть список команд.

help
help
autostart
bufferinfo
...
version
whitelist

Сформировать сеть потоков

Продемонстрируйте успешные таймеры протокола, сформировав сеть потоков и проверив, что узел перешел в состояние лидера.

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

Подожди пару секунд...

state
leader
Done

Прикрепите второй узел

Продемонстрируйте успешную радиосвязь, подключив второй узел к вновь сформированной сети Thread, используя тот же ключ сети Thread и идентификатор PAN из первого узла:

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

Подожди пару секунд...

state
router
Done

Пинг между устройствами

Продемонстрируйте успешную связь по каналу данных, отправляя/получив сообщения запроса/ответа ICMPv6 Echo.

Список всех IPv6-адресов Лидера:

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

Отправьте пинг ICMPv6 с маршрутизатора на адрес IPv6 Mesh-Local EID лидера:

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

Сбросьте устройство и подтвердите повторное подключение.

Продемонстрируйте энергонезависимую функциональность, перезагрузив устройство и проверив его повторное подключение к той же сети без вмешательства пользователя.

Запустите сеть потоков:

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

Подождите пару секунд и убедитесь, что активный набор данных сохранен в энергонезависимом хранилище:

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

Сбросьте устройство:

reset
ifconfig up
Done
thread start
Done

Подождите пару секунд и убедитесь, что устройство успешно подключилось к сети:

panid
0x8f28
Done
state
router
Done

Проверьте генерацию случайных чисел

Продемонстрируйте генерацию случайных чисел, выполнив команду factoryreset и проверив новый случайный расширенный адрес.

extaddr
a660421703f3fdc3
Done
factoryreset

Подожди пару секунд...

extaddr
9a8ed90715a5f7b6
Done