Sprawdź port

Wyświetl źródło na GitHubie

Podstawowa weryfikacja jest niezbędna do przejścia skutecznego portu OpenThread do nowej platformy sprzętowej.

Kompilacja dla platformy docelowej

Zaprezentować kompilację udaną kompilację przez kompilację przykładowej aplikacji OpenThread dla platformy docelowej.

./script/build efr32mg12 -DBOARD=brd4161a

Interakcja z interfejsem wiersza poleceń

Zademonstruj, jak działa OpenThread i możliwość UART dzięki interakcji z interfejsem wiersza poleceń.

Otwórz terminal na /dev/ttyACM0 (ustawienia portu szeregowego: 115200 8-N-1). Aby wyświetlić listę poleceń, wpisz help.

help
help
autostart
bufferinfo
...
version
whitelist

Tworzenie sieci wątków

Zadeklaruj udane liczniki czasu protokołów, tworząc sieć Thread i sprawdzając, czy węzeł został przeniesiony do stanu 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

Zaczekaj chwilę...

state
leader
Done

Podłącz drugi węzeł

Zadeklaruj udaną komunikację radiową, dołączając drugi węzeł do nowo utworzonej sieci Thread, używając tego samego klucza sieci i identyfikatora PAN z pierwszego węzła:

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

Zaczekaj chwilę...

state
router
Done

Pingowanie między urządzeniami

Zademonstruj powodzenie komunikacji na ścieżce danych przez wysyłanie i odbieranie echów żądań/odpowiedzi ICMPv6.

Wyświetl wszystkie adresy IPv6 lidera:

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

Wyślij ping ICMPv6 z routera na adres IPv6 typu mesh-local EID w IPv6:

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

Resetowanie urządzenia i weryfikowanie ponownego podłączenia

Wykaż niestabilne funkcje, resetując urządzenie i potwierdzając jego ponowne przyłączenie do tej samej sieci bez interwencji użytkownika.

Rozpoczynanie sieci:

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

Zaczekaj kilka sekund i sprawdź, czy aktywny zbiór danych jest przechowywany w pamięci nieulotnej:

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

Zresetuj urządzenie:

reset
ifconfig up
Done
thread start
Done

Odczekaj kilka sekund i upewnij się, że urządzenie zostało ponownie podłączone do sieci:

panid
0x8f28
Done
state
router
Done

Zweryfikuj losową liczbę

Zademonstruj losowe generowanie liczb przez wykonanie polecenia factoryreset i zweryfikowanie nowego losowego adresu rozszerzonego.

extaddr
a660421703f3fdc3
Done
factoryreset

Zaczekaj chwilę...

extaddr
9a8ed90715a5f7b6
Done