Tworzenie sieci Thread za pomocą SimpleLink F3 od Texas Instruments i OpenThread

1. Wprowadzenie

Logo OpenThread

OpenThread (OT) od Google to implementacja protokołu Thread typu open source. Google udostępniło OpenThread, aby technologia sieciowa używana w produktach Google Nest była powszechnie dostępna dla deweloperów. Przyspieszy to tworzenie produktów do domów inteligentnych i budynków komercyjnych. Dzięki wąskiej warstwie abstrakcji platformy i niewielkiemu wykorzystaniu pamięci OpenThread jest bardzo przenośny. Obsługuje zarówno układy SoC, jak i układy NCP.

Specyfikacja Thread definiuje niezawodny, bezpieczny i energooszczędny protokół komunikacji bezprzewodowej między urządzeniami oparty na IPv6, który jest przeznaczony do zastosowań domowych i komercyjnych.

Firma Texas Instruments wdrożyła OpenThread w przypadku rodziny urządzeń SimpleLink™ CC27xx. Repozytorium ot-ti w GitHubie zawiera sterowniki platformy i przykładowe aplikacje potrzebne do uruchomienia OpenThread na mikrokontrolerach Texas Instruments SimpleLink Connected. CC2745R10-Q1 to bezprzewodowy mikrokontroler z certyfikatem Thread, zgodny z normą IEEE 802.15.4, przeznaczony do zastosowań w motoryzacji (zgodny z AEC-Q100) i należący do rodziny SimpleLink CC27xx firmy TI.

Z tego ćwiczenia dowiesz się, jak rozpocząć tworzenie aplikacji OpenThread za pomocą płytki ewaluacyjnej LP-EM-CC2745R10-Q1 i repozytorium ot-ti. Ilustracja poniżej przedstawia konfigurację sprzętową używaną w tym ćwiczeniu, z routerem brzegowym OT (OTBR) i 2 urządzeniami Thread Full Thread Devices (FTD).

Konfiguracja sprzętu CC2745R10

Czego się nauczysz

  • Jak skonfigurować środowisko kompilacji ot-ti firmy Texas Instruments.
  • Jak tworzyć i wgrywać pliki binarne interfejsu wiersza poleceń OpenThread na płytki LP-EM-CC2745R10-Q1.
  • Jak skonfigurować Raspberry Pi jako router graniczny OpenThread (OTBR) za pomocą ot-br-posix.
  • Jak utworzyć sieć Thread na OTBR.
  • Konfigurowanie urządzeń w sieci Thread poza pasmem.
  • Jak sprawdzić komunikację Thread między węzłami za pomocą polecenia ping.

2. Wymagania wstępne

Sprzęt

  1. 3 płytki LP-EM-CC2745R10-Q1 LaunchPad: jedna skonfigurowana jako RCP połączona z routerem brzegowym, a dwie skonfigurowane jako urządzenia Full Thread Devices (FTD). LP-EM-CC2745R10-Q1 Angled ViewCC2745R10-Q1 to certyfikowany przez Thread, bezprzewodowy mikrokontroler IEEE 802.15.4 klasy motoryzacyjnej (zgodny z AEC-Q100) z rodziny SimpleLink CC27xx firmy TI. LP-EM-CC2745R10-Q1 to odpowiedni moduł ewaluacyjny LaunchPad, który obsługuje role RCP, FTD, MTD i NCP Thread. CC2340R5 z zestawem LP-EM-CC2340R5 LaunchPad to opcja z mniejszą ilością pamięci, która może pełnić tylko funkcję RCP. Nie obsługuje ról FTD, MTD ani NCP. Jeśli zastąpisz płytę LP-EM-CC2340R5 płytą 1 (RCP), obie płyty FTD muszą nadal być płytami LP-EM-CC2745R10-Q1.
  2. 3 sondy debugujące LP-XDS110ET: po jednej na każdą płytkę LaunchPad, używane do programowania i debugowania przez USB. LP-XDS110ET Angled ViewLP-XDS110ET to osobna sonda debugująca USB wymagana w przypadku zestawów LaunchPad w formacie LP-EM. Obejmuje obsługę EnergyTrace do profilowania zużycia energii. LP-XDS110 to tańsza alternatywa, która zapewnia te same możliwości programowania i debugowania, ale nie obejmuje funkcji EnergyTrace. Alternatywnie zamiast płytki LP-EM i osobnego debugera można użyć LaunchPada z wbudowanym debugerem XDS110 (np. LAUNCHXL-CC26X2R1). Szczegółowe informacje znajdziesz w przewodniku po połączeniach debugowania LaunchPad.
  3. 3 kable micro USB do podłączania i zasilania płytek LaunchPad i sond debugujących.
  4. Raspberry Pi 4B lub nowszy z systemem Raspberry Pi OS połączony z internetem przez Ethernet. Będzie on skonfigurowany jako host routera granicznego OT.Raspberry Pi 4
  5. System hosta Linux lub macOS z co najmniej 2 portami USB i dostępem do internetu. Środowisko kompilacji wymaga powłoki zgodnej z Bashem. Użytkownicy systemu Windows powinni używać WSL2 (Windows Subsystem for Linux 2) z Ubuntu.
  6. Co najmniej 1 kabel Ethernet do podłączenia Raspberry Pi do internetu. Możesz też połączyć Raspberry Pi z Wi-Fi i użyć wlan0 jako interfejsu infrastruktury. Szczegółowe informacje znajdziesz w kroku konfiguracji OTBR.

Oprogramowanie

  • Repozytorium TI ot-ti: https://github.com/TexasInstruments/ot-ti
  • GNU ARM Embedded Toolchain 12.2 (instalowany automatycznie przez skrypt bootstrap)
  • SysConfig 1.27.0 (instalowany automatycznie przez skrypt bootstrap)
  • TI UniFlash: do wgrywania oprogramowania układowego na płytki LaunchPad.

3. Konfiguracja sprzętu

W tym ćwiczeniu używamy 3 płytek LP-EM-CC2745R10-Q1:

  • Płytka 1 (RCP): działa na oprogramowaniu ot-rcp. Połączony z Raspberry Pi przez USB jako koprocesor radiowy routera granicznego.
  • Board 2 (FTD 1): działa na oprogramowaniu układowym ot-cli-ftd jako urządzenie Full Thread Device.
  • Płytka 3 (FTD 2): działa z oprogramowaniem układowym ot-cli-ftd jako urządzenie Full Thread Device.

LP-EM-CC2745R10-Q1 – widok z góry

Podłącz każdy LaunchPad do komputera hosta za pomocą kabla micro-USB. Połączenie USB zapewnia zasilanie oraz możliwość debugowania i programowania za pomocą wbudowanego debugera XDS110.

Każdy moduł LP-EM-CC2745R10-Q1 jest widoczny jako 2 wirtualne porty szeregowe po podłączeniu przez USB: jeden dla interfejsu debugowania XDS110 i jeden dla UART aplikacji. Podczas otwierania konsoli szeregowej połącz się z portem Application/User UART, a nie z portem danych dodatkowych.

Schemat połączeń sprzętowych

4. Konfiguracja repozytorium i kompilacja

System kompilacji ot-ti korzysta z CMake i wymaga powłoki Bash. Wszystkie polecenia w tej sekcji są uruchamiane na hoście z systemem Linux lub macOS (lub WSL2 w systemie Windows).

1. Klonowanie repozytorium

$ git clone https://github.com/TexasInstruments/ot-ti.git
$ cd ot-ti
$ git submodule update --init

2. Uruchamianie skryptu wczytywania

Skrypt bootstrap instaluje wymagane zależności, w tym łańcuch narzędzi GNU ARM i SysConfig:

$ ./script/bootstrap

Skrypt wczytywania wymaga cmake, git, wget i standardowych narzędzi do kompilacji. W systemie Ubuntu/Debian zainstaluj wymagania wstępne za pomocą tego polecenia: sudo apt-get install -y cmake git make wget tar ninja-build

3. Kompilowanie oprogramowania układowego dla LP_EM_CC2745R10_Q1

Utwórz wszystkie obrazy oprogramowania układowego dla płytki LP-EM-CC2745R10-Q1:

$ ./script/build LP_EM_CC2745R10_Q1

LP_EM_CC2745R10_Q1 Docelowa kompilacja odpowiada urządzeniu CC2745R10-Q1 z rodziny CC27xx SimpleLink (rdzeń Arm Cortex-M33F). Aby zobaczyć wszystkie obsługiwane płyty, uruchom polecenie ./script/build bez argumentów.

Po pomyślnej kompilacji pliki binarne ELF znajdują się w folderze build/bin/:

$ ls build/bin/
ot-cli-ftd.out  ot-cli-mtd.out  ot-ncp-ftd.out  ot-rcp.out

W tym laboratorium użyto 2 obrazów:

  • ot-rcp.out: oprogramowanie sprzętowe procesora pomocniczego radia na potrzeby płyty routera granicznego.
  • ot-cli-ftd.out: oprogramowanie sprzętowe Full Thread Device CLI dla 2 płytek FTD.

Opcjonalne urządzenie Minimal Thread Device: jeśli zamiast urządzenia Full Thread Device chcesz używać urządzenia końcowego w trybie uśpienia, możesz wgrać ot-cli-mtd.out zamiast ot-cli-ftd.out na płytach 2 i 3. Urządzenie MTD nie kieruje ruchem Thread i może przechodzić w stany uśpienia o niskim poborze mocy, dzięki czemu doskonale nadaje się do aplikacji zasilanych bateryjnie. Czynności związane z tworzeniem sieci Thread w tym ćwiczeniu są takie same w przypadku obu typów urządzeń.

Opcjonalny koprocesor sieciowy (NCP): ot-ncp-ftd.out Plik binarny implementuje architekturę NCP, w której stos OpenThread działa na urządzeniu, a procesor hosta steruje nim za pomocą protokołu Spinel. Korzystanie z NCP wykracza poza zakres tego ćwiczenia. Szczegółowe informacje znajdziesz w pliku README NCP.

5. Flash Firmware

Użyj narzędzia TI UniFlash, aby wgrać obrazy ELF na płytki LaunchPad.

Flashowanie za pomocą UniFlash

  1. Otwórz UniFlash. Podłączone płytki LaunchPad są wyświetlane w sekcji Wykryte urządzenia dzięki funkcji automatycznego wykrywania urządzeń.Jeśli płytka nie zostanie wykryta automatycznie, kliknij Nowa konfiguracja, wybierz element docelowy LP-EM-CC2745R10-Q1 i wybierz sondę debugowania USB XDS110.Wykryte urządzenia UniFlash
  2. Wybierz Płytka 1 (która ma zostać wgrana za pomocą ot-rcp.out) i kliknij Start.
  3. Kliknij przycisk Przeglądaj i przejdź do ot-ti/build/bin/ot-rcp.out.Strona UniFlash Flash
  4. Aby wgrać oprogramowanie układowe, kliknij Load Image (Wgraj obraz). W obszarze logów widać postęp i potwierdzenie zakończenia.
  5. Powtórz kroki 2–4 dla tablic Tablica 2 i Tablica 3, wybierając dla każdej z nich opcję ot-ti/build/bin/ot-cli-ftd.out.

Opcja alternatywna: flashowanie za pomocą Code Composer Studio (CCS)

Code Composer Studio może być używany jako alternatywa dla UniFlash i dodatkowo zapewnia pełne środowisko debugowania:

  1. Pobierz i zainstaluj Code Composer Studio.
  2. Utwórz połączenie docelowe (CCXML) dla LP-EM-CC2745R10-Q1 z debugerem XDS110. Zapoznaj się z przewodnikiem użytkownika CCS: metoda ręczna.
  3. Rozpocznij sesję debugowania bez projektu zgodnie z opisem w Przewodniku użytkownika CCS: ręczne uruchamianie.
  4. Połącz się z rdzeniem Arm Cortex-M33 i kliknij Load (Wczytaj), aby wczytać obraz ELF.

Domyślna konfiguracja CCXML używa 2-przewodowego cJTAG, aby pasować do domyślnej konfiguracji zworki LP-EM-CC2745R10-Q1. Po zaprogramowaniu za pomocą JTAG wyłącz i włącz płytę, aby wyczyścić flagę zatrzymania podczas uruchamiania.

6. Zaprogramuj HSM

CC2745R10-Q1 zawiera sprzętowy moduł zabezpieczeń (HSM), który musi zostać skonfigurowany przed uruchomieniem oprogramowania sprzętowego Thread lub innego bezpiecznego oprogramowania aplikacji. Jeśli na płytce LP-EM-CC2745R10-Q1 nie zaprogramowano jeszcze modułu HSM, wykonaj ten krok.

Aby zaprogramować HSM za pomocą UniFlash:

  1. Otwórz UniFlash i wybierz płytkę LP-EM-CC2745R10-Q1 z sekcji Detected Devices (Wykryte urządzenia).
  2. Przejdź do panelu programowania HSM i wczytaj obraz oprogramowania układowego HSM, jak pokazano poniżej.

Programowanie HSM UniFlash

  1. Aby ukończyć udostępnianie HSM, postępuj zgodnie z instrukcjami wyświetlanymi na ekranie. Operacja jest rejestrowana w konsoli wyjściowej UniFlash.

Pełną procedurę programowania HSM, w tym wymaganą ścieżkę obrazu oprogramowania sprzętowego w pakiecie SimpleLink Low Power F3 SDK, znajdziesz w przewodniku CC2745R10-Q1 Quick Start Guide w TI Resource Explorer.

7. Podsumowanie oprogramowania

W tym momencie powinny być widoczne wszystkie 3 płytki:

  • Tablica 1: ot-rcp.out odłącz ją od komputera hosta i podłącz do Raspberry Pi za pomocą USB.
  • Płytka 2: ot-cli-ftd.out: utrzymuj połączenie z komputerem hosta.
  • Płytka 3: ot-cli-ftd.out: utrzymuj połączenie z komputerem hosta.

Konfiguracja sprzętu będzie wyglądać jak na poniższym diagramie. Płytka 1 łączy się z Raspberry Pi jako koprocesor radiowy dla OTBR, a płytki 2 i 3 pozostają połączone z komputerem hosta w celu uzyskania dostępu do konsoli szeregowej.

Konfiguracja sprzętu CC2745R10 z FTD

8. Konfigurowanie konsoli szeregowej na urządzeniach ot-cli-ftd

Płytka LP-EM-CC2745R10-Q1 udostępnia UART aplikacji przez USB z prędkością 921 600 bodów.

Otwórz terminal szeregowy dla portu COM UART aplikacji (Windows) lub urządzenia /dev/ttyACM* (Linux/macOS) dla każdej płytki FTD, używając tych ustawień:

Parametr

Wartość

Szybkość (bod)

921600

bity danych,

8

bity stopu,

1

Parytet

None

Sterowanie przepływem

None

Wskazówka (Linux/macOS): zidentyfikuj prawidłowy węzeł urządzenia, uruchamiając polecenie ls /dev/ttyACM* przed podłączeniem płytki i po jej podłączeniu, a następnie sprawdź, który wpis się pojawił. Każdy LP-EM-CC2745R10-Q1 tworzy 2 wpisy: port o niższym numerze to UART debugowania XDS110, a port o wyższym numerze to UART aplikacji. Jeśli np. zarząd utworzy /dev/ttyACM0/dev/ttyACM1, użyj /dev/ttyACM1.

Wskazówka (Windows): otwórz Menedżera urządzeń i w sekcji Porty (COM i LPT) poszukaj 2 nowych portów COM, gdy płytka jest podłączona. Port danych debugowania XDS110 zwykle pojawia się jako pierwszy. W przypadku konsoli aplikacji użyj drugiego (o wyższym numerze) portu COM.

Naciśnij Enter w terminalu, aby uzyskać wiersz poleceń OpenThread (>). Pełną listę dostępnych poleceń znajdziesz w dokumentacji interfejsu wiersza poleceń OpenThread. Sprawdź, czy urządzenie FTD działa:

> state
disabled
Done

Urządzenia FTD z portem szeregowym

Nie będziesz jeszcze konfigurować konsoli szeregowej dla płyty RCP. OTBR na Raspberry Pi komunikuje się bezpośrednio z RCP. W następnym kroku skonfigurujesz Raspberry Pi jako router graniczny OpenThread.

9. Konfigurowanie Raspberry Pi jako routera brzegowego

OTBR jest oparty na ot-br-posix, czyli projekcie open source OpenThread Border Router. Router graniczny działa na Raspberry Pi i używa płytki 1 (RCP) jako radia 802.15.4 przez USB.

Konfiguracja Raspberry Pi

  1. Zainstaluj Raspberry Pi OS (64-bitowy Lite lub Desktop) na karcie SD za pomocą Raspberry Pi Imager.
  2. Uruchom Raspberry Pi i otwórz terminal (przez SSH lub bezpośrednio).
  3. Zaktualizuj menedżera pakietów i zmodernizuj zainstalowane pakiety:
    $ sudo apt-get update
    $ sudo apt-get upgrade -y
    

Po aktualizacjach uruchom ponownie Raspberry Pi, zanim przejdziesz dalej: sudo reboot

Podłącz płytkę 1 (RCP) do Raspberry Pi.

Podłącz płytkę 1 (z wgranym oprogramowaniem ot-rcp) do Raspberry Pi za pomocą kabla micro USB. Po nawiązaniu połączenia sprawdź, czy pojawił się węzeł urządzenia:

$ ls /dev/ttyACM*
/dev/ttyACM0
/dev/ttyACM1

Port UART aplikacji na płytce RCP to zwykle /dev/ttyACM1 (port UART debugowania XDS110 to /dev/ttyACM0). Sprawdź, który port jest portem UART aplikacji, upewniając się, że odpowiada on po uruchomieniu agenta OTBR w późniejszym kroku. Jeśli podłączone są inne urządzenia szeregowe USB, numer węzła urządzenia może się różnić. Odpowiednio dostosuj ścieżkę w konfiguracji OTBR.

Kompilowanie i instalowanie ot-br-posix

Na Raspberry Pi sklonuj i skompiluj ot-br-posix:

$ git clone https://github.com/openthread/ot-br-posix.git
$ cd ot-br-posix
$ ./script/bootstrap

Uruchom skrypt konfiguracji, podając interfejs Ethernet jako interfejs szkieletowy (infrastrukturalny):

$ INFRA_IF_NAME=eth0 ./script/setup

eth0 to typowa nazwa przewodowego interfejsu Ethernet. Jeśli łączysz Raspberry Pi przez Wi-Fi zamiast Ethernetu, zastąp eth0 ciągiem wlan0 (i upewnij się, że Raspberry Pi jest już połączony z siecią Wi-Fi). Sprawdź nazwę aktywnego interfejsu za pomocą polecenia ip link show.

Skrypt konfiguracyjny kompiluje ot-br-posix ze źródeł, instaluje usługi systemowe otbr-agentotbr-web oraz konfiguruje stos sieciowy. Zwykle trwa to 10–20 minut na Raspberry Pi 4B.

Konfigurowanie agenta OTBR

Edytuj plik konfiguracji agenta OTBR, aby określić ścieżkę urządzenia RCP i szybkość transmisji:

$ sudo nano /etc/default/otbr-agent

Znajdź wiersz OTBR_AGENT_OPTS i zaktualizuj go, aby odwoływał się do interfejsu UART aplikacji RCP:

OTBR_AGENT_OPTS="-I wpan0 -B eth0 spinel+hdlc+uart:///dev/ttyACM1?uart-baudrate=921600"

Jeśli Raspberry Pi jest połączony przez Wi-Fi, zastąp eth0 znakiem wlan0.

OTBR_AGENT_OPTS="-I wpan0 -B wlan0 spinel+hdlc+uart:///dev/ttyACM1?uart-baudrate=921600"

Interfejs UART aplikacji RCP LP-EM-CC2745R10-Q1 działa z prędkością 921 600 bodów. Sprawdź, czy ścieżka urządzenia (/dev/ttyACM1 w tym przykładzie) jest zgodna z interfejsem UART aplikacji na płytce RCP.

Aby zastosować konfigurację, uruchom ponownie agenta OTBR:

$ sudo systemctl restart otbr-agent
$ sudo systemctl enable otbr-agent

Sprawdź, czy agent jest uruchomiony:

$ sudo systemctl status otbr-agent

Interakcja z węzłem RCP

Komunikuj się z węzłem RCP za pomocą narzędzia ot-ctl:

$ sudo ot-ctl state
disabled
Done

W dzienniku agenta OTBR możesz monitorować komunikaty o połączeniu i stanie:

$ sudo journalctl -u otbr-agent -f

Opcjonalnie interfejs internetowy OTBR jest dostępny pod adresem http://:80 i zapewnia graficzny widok sieci Thread.

Aby zatrzymać lub ponownie uruchomić agenta OTBR:

$ sudo systemctl stop otbr-agent
$ sudo systemctl start otbr-agent

W tym momencie powinny być aktywne 3 konsole:

  1. Terminal szeregowy dla płytki 2 (ot-cli-ftd 1) na komputerze hosta.
  2. Terminal szeregowy dla płytki 3 (ot-cli-ftd 2) na komputerze hosta.
  3. Sesja SSH lub terminala na Raspberry Pi dla ot-ctl (OTBR/RCP).

Możesz teraz utworzyć sieć Thread.

10. Tworzenie sieci Thread

Konfigurowanie RCP (OTBR)

Utwórz nową sieć Thread z poziomu powłoki ot-ctl na Raspberry Pi. Wpisz kolejno te polecenia:

Indeks

Polecenie

Opis

Oczekiwana odpowiedź

1

dataset init new

Utwórz nową konfigurację sieci.

Gotowe

2

dataset commit active

Zatwierdź nowy zbiór danych w aktywnym operacyjnym zbiorze danych.

Gotowe

3

ifconfig up

Włącz interfejs Thread.

Gotowe

4

thread start

Włącz i dołącz operację protokołu Thread.

Gotowe

Poczekaj 10 sekund, aż pojawi się interfejs Thread.

5

state

Sprawdź stan urządzenia. Powinien mieć wartość leader. Inne możliwe stany: offline, disabled, detached, child, router lub leader.

lider
Gotowe

6

dataset

Wyświetl konfigurację sieci. Twoje wartości będą inne. Zanotuj kanał, klucz sieci, nazwę sieci i identyfikator PAN – są one potrzebne do dołączenia urządzeń FTD do sieci.

Active Timestamp: 1
Channel: 20
Channel Mask: 0x07fff800
Ext PAN ID: 39ba71f7fc367160
Mesh Local Prefix: fd5c:c6b:3a17:40b9::/64
Network Key: 81ae2c2c17368d585dee71eaa8cf1e90
Network Name: OpenThread-008c
PAN ID: 0x008c
PSKc: c98f0193d4236025d22dd0ee614e641f
Security Policy: 0, onrcb
Done

Dodawanie urządzeń FTD do sieci Thread (metoda poza pasmem)

W przypadku metody konfiguracji poza pasmem podajesz dane logowania do sieci bezpośrednio. W terminalu szeregowym każdej płytki FTDI wpisz te polecenia, używając kanału i klucza sieciowego z danych wyjściowych zbioru danych OTBR powyżej:

Indeks

Polecenie

Opis

Oczekiwana odpowiedź

1

dataset channel 20

Ustaw kanał tak, aby pasował do OTBR. Zastąp 20 wartością kanału OTBR.

Gotowe

2

dataset networkkey 81ae2c2c17368d585dee71eaa8cf1e90

Ustaw klucz sieciowy. Zastąp kluczem sieci OTBR. Do dołączenia wymagany jest tylko ten klucz.

Gotowe

3

dataset commit active

Zatwierdź nowy zbiór danych w aktywnym operacyjnym zbiorze danych.

Gotowe

4

ifconfig up

Włącz interfejs Thread.

Gotowe

5

thread start

Włącz i dołącz operację protokołu Thread.

Gotowe

Poczekaj 20 sekund, aż urządzenie dołączy do sieci i się skonfiguruje.

6

state

Sprawdź stan urządzenia.

child
Gotowe

Ze względu na samokonfigurujący się charakter sieci Thread i to, że są to urządzenia FTD, oba urządzenia FTD mogą ostatecznie stać się routerami. Bieżącą rolę możesz w dowolnym momencie sprawdzić za pomocą polecenia state.

Komunikacja między urządzeniami Thread

Użyj polecenia ping, aby sprawdzić, czy urządzenia mogą się komunikować. Pobierz adresy IPv6 każdego urządzenia za pomocą polecenia ipaddr:

> ipaddr
fd5c:c6b:3a17:40b9:0:ff:fe00:fc00		# Leader Anycast Locator (ALOC)
fd5c:c6b:3a17:40b9:0:ff:fe00:1800		# Routing Locator (RLOC)
fd5c:c6b:3a17:40b9:84e2:bae8:bd5b:fa03		# Mesh-Local EID (ML-EID)
fe80:0:0:0:c449:ca4a:101f:5d16			# Link-Local Address (LLA)
Done

Z obu urządzeń FTD pinguj OTBR, używając jego adresu RLOC:

> ping fd5c:c6b:3a17:40b9:0:ff:fe00:1800
Done
>
> 16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=30ms
16 bytes from fd5c:c6b:3a17:40b9:0:ff:fe00:1800: icmp_seq=3 hlim=64 time=52ms

Odpowiedź informująca o powodzeniu potwierdza, że sieć Thread działa, a urządzenia mogą się komunikować. Powtórz ten proces, aby wysłać ping do każdego urządzenia FTD z OTBR (sudo ot-ctl ping ).

11. Gratulacje

Udało Ci się utworzyć sieć Thread z płytkami TI CC2745R10-Q1.

Wiesz już:

  • Jak skonfigurować środowisko kompilacji ot-ti firmy Texas Instruments.
  • Jak skompilować i wgrać pliki binarne interfejsu wiersza poleceń OpenThread na płytę LP-EM-CC2745R10-Q1 LaunchPad.
  • Jak skonfigurować Raspberry Pi jako router graniczny OpenThread (OTBR) za pomocą ot-br-posix.
  • Jak utworzyć sieć Thread na OTBR.
  • Konfigurowanie urządzeń w sieci Thread poza pasmem.
  • Jak sprawdzić komunikację Thread między węzłami za pomocą polecenia ping.

Więcej informacji

Na stronach openthread.ioGitHub znajdziesz różne materiały dotyczące OpenThread, w tym: