Logo-Labs-Silikon

Router Perbatasan OpenThread AN1256 dari Silicon Labs

Silicon-Labs-AN1256-OpenThread-Border-Router-gambar-produk

Versi AN1256 ini telah ditinggalkan dengan rilis Simplicity SDK Suite 2025.6.1 Untuk versi terbaru, lihat docs.silabs.comRouter Perbatasan Thread menghubungkan Jaringan Thread ke jaringan IP lainnya
Jaringan berbasis thread, seperti Wi-Fi® atau Ethernet®. Jaringan Thread membutuhkan Border Router untuk terhubung ke jaringan lain. Border Router menyediakan layanan untuk perangkat di dalam Jaringan Thread, termasuk layanan perutean untuk operasi di luar jaringan, konektivitas dua arah melalui tautan infrastruktur IPv6, dan registri layanan untuk memungkinkan penemuan layanan berbasis DNS. Silicon Labs menyediakan Kit Add-On Border Router yang berisi perangkat Raspberry Pi danampAplikasi Radio Co-Processor (RCP) diperlukan untuk membangun perangkat lunak Border Router.

CATATAN: Lihat catatan rilis OpenThread untuk komitmen versi stabil repositori Open-Thread (openthread) dan OpenThread Border Router (ot-br-posix) yang didukung oleh rilis Silicon Labs. Catatan rilis OpenThread diinstal dengan SDK dan juga tersedia di docs.silabs.comIni berlaku untuk semua kontainer bawaan yang disediakan oleh Silicon Labs untuk rilis ini, dan salinan repositori ini yang disertakan dalam rilis. Meskipun kami mendukung pembuatan menggunakan komitmen apa pun di GitHub (menggunakan repositori ot-efr32), perlu diketahui bahwa kode publik terbaru di GitHub mungkin tidak stabil.

POIN UTAMA 

  • Petunjuk pembuatan dan pemasangan untuk citra RCP
  • Petunjuk pembuatan dan pemasangan untuk Border Router Host
  • Informasi konfigurasi OpenThread Border Router
  • Sumber daya OpenThread

Perkenalan

Catatan aplikasi ini ditujukan bagi para insinyur perangkat lunak yang ingin mengembangkan OpenThread Border Router (OTBR). Catatan ini mengasumsikan pemahaman yang memadai tentang OpenThread dan konsep dasar Thread. Untuk pengenalan OpenThread dan informasi tentang konsep Thread, kunjungi https://openthread.io/ Untuk informasi tentang pengaturan dan instalasi OTBR, lihat https://openthread.io/guides/border-router Catatan aplikasi ini mengasumsikan bahwa Anda telah mengunduh Simplicity Studio 5 (SSv5) dan Silicon Labs OpenThread SDK dan secara umum sudah familier dengan perspektif Peluncur SSv5. Petunjuk instalasi dan memulai SSv5, beserta serangkaian referensi terperinci, dapat ditemukan di Panduan Pengguna Simplicity Studio 5 daring, yang tersedia di https://docs.silabs.com/ dan melalui menu bantuan SSv5. Lihat QSG170: Panduan Memulai Cepat OpenThread Silicon Labs untuk informasi lebih lanjut tentang konfigurasi, pembuatan, dan flashing OpenThread.ampaplikasi.
Catatan aplikasi ini membahas topik-topik berikut:

  • Petunjuk Pembuatan dan Pemasangan Gambar RCP
    Menjelaskan prosedur pembuatan dan instalasi untuk citra Radio Co-Processor (RCP) menggunakan antarmuka UART dan SPI.
  • Petunjuk Pembuatan dan Instalasi untuk OpenThread Border Router
    Menentukan prosedur pembuatan dan instalasi untuk OpenThread Border Router pada platform berbasis POSIX, termasuk opsi untuk menyebarkan kontainer Docker yang telah dibuat sebelumnya untuk Raspberry Pi.
  • Informasi Konfigurasi OTBR
    Menyediakan informasi OTBR seperti cara mengonfigurasi berbagai fitur Border Router dan antarmuka Network Address Translation (NAT64).
  • Sumber Daya OpenThread Tambahan
    Termasuk tautan ke Sumber Daya OpenThread.

Persyaratan Perangkat Keras
Thread Border Router memiliki dua komponen:

  • Host Raspberry Pi dengan dukungan Thread Border Router (Direkomendasikan: Raspberry Pi 3 Model B+ atau lebih tinggi)
  • Koprosesor Radio (RCP) Silicon Labs yang mampu menjalankan Thread

RCP dalam aplikasi ini hanya kompatibel dengan protokol Thread dan menggunakan koneksi serial (UART atau SPI) untuk berinteraksi dengan host. Spinel digunakan di atas koneksi serial ini untuk memfasilitasi komunikasi. Asalkan OTBR dikonfigurasi dengan benar pada host, RCP akan berfungsi dengan lancar, sehingga efektif untuk host-agnostik. Untuk informasi selengkapnya tentang platform host yang didukung, lihat OpenThread Border Router.
Untuk membuat RCP, Anda memerlukan hal berikut:

  • Kit Pemula Nirkabel EFR32MG atau Kit IoT Canggih Sensor-ke-Cloud Thunderboard Sense 2
  • Papan Silicon Labs yang mampu berkomunikasi dengan Thread

Catatan: Untuk informasi tentang Gambar RCP Pra-kompilasi Silicon Labs, lihat Menggunakan Gambar RCP Pra-kompilasi.

Petunjuk Pembuatan dan Pemasangan Gambar RCP

Catatan: Petunjuk berikut hanya berlaku untuk citra RCP yang dibuat menggunakan Simplicity Studio untuk rilis GSDK tertentu.
Untuk membangun citra RCP menggunakan OpenThread terbaru, ikuti petunjuk pada repo ot-efr32.

Gunakan Gambar RCP yang Telah Dikompilasi Sebelumnya
Silicon Labs telah menyediakan citra prakompilasi untuk papan ini beserta lokasi citra terkait. Citra prakompilasi default dikonfigurasi untuk antarmuka UART.

Catatan: Secara default, Silicon Labs GSDK menggunakan protokol Thread versi 1.4. Seperangkat aplikasi demo RCP yang telah dibuat sebelumnya disertakan dengan OpenThread SDK.

Membangun Gambar RCP Menggunakan Simplicity Studio 5
Silicon Labs memiliki sampaplikasi untuk beberapa gambar OpenThread standar.

  1. Pilih ot-rcp sebagai example untuk citra RCP default untuk OpenThread Border Router melalui antarmuka UART.
  2. Dengan bagian target Anda terhubung ke komputer Anda, buka Simplicity Studio 5 File menu dan pilih Baru > Panduan Proyek Silicon Labs. Dialog Pemilihan Target, SDK, dan Toolchain akan terbuka. Klik BERIKUTNYA.
  3. Sang mantanampDialog Pemilihan Proyek terbuka. Gunakan filter Jenis Teknologi dan Kata Kunci untuk mencari ot-rcp sebagai contoh.ample untuk citra RCP default untuk OpenThread Border Router. Pilih dan klik LANJUTKAN.
  4. Dialog Konfigurasi Proyek akan terbuka. Ubah nama proyek Anda, ubah proyek default file lokasi, dan menentukan apakah Anda akan menautkan atau menyalin proyek files. Perhatikan bahwa jika Anda mengubah sumber daya tertaut, perubahan tersebut juga berlaku untuk proyek lain yang mereferensikannya. Klik SELESAI.
  5. Perspektif IDE Kesederhanaan dibuka dengan Konfigurator Proyek terbuka ke OVERVIEW Lihat Panduan Pengguna Simplicity Studio 5 daring untuk detail tentang fungsionalitas yang tersedia melalui perspektif Simplicity IDE dan Konfigurator Proyek.
  6. Silicon-Labs-AN1256-OpenThread-Border-Router- (2)Lakukan perubahan konfigurasi apa pun pada komponen perangkat lunak, seperti yang dijelaskan di bagian selanjutnya. Progres pembuatan otomatis tersedia di pojok kanan bawah perspektif Simplicity IDE. Pastikan progres telah selesai sebelum Anda membangun.Silicon-Labs-AN1256-OpenThread-Border-Router- (3)
  7. Kompilasi dan flash citra aplikasi seperti yang dijelaskan dalam QSG170: Panduan Memulai Cepat Silicon Labs OpenThread.

Konfigurasikan Gambar RCP untuk SPI dari Aplikasi OT-RCP Default Menggunakan Simplicity Studio 5

  1. Hasilkan aplikasi ot-rcp seperti yang dijelaskan di bagian 2.2 langkah 1 – 4.
  2. Pada tab KOMPONEN PERANGKAT LUNAK di proyek RCP Anda (.slcp), perluas menu Layanan. Pilih vcom di bawah komponen IO STREAM USART atau IO STREAM EUSART.Silicon-Labs-AN1256-OpenThread-Border-Router- (4)
  3. Klik Copot Pemasangan untuk menghapus komponen, yang juga akan menghapus pemasangan komponen IO STREAM.
  4. Di bawah tab KOMPONEN PERANGKAT LUNAK di proyek RCP Anda (.slcp), perluas menu OpenThread. Pilih komponen NCP SPIDRV dan klik Instal.Silicon-Labs-AN1256-OpenThread-Border-Router- (5)
  5. Kompilasi dan flash citra aplikasi seperti yang dijelaskan dalam QSG170: Panduan Memulai Cepat Silicon Labs OpenThread.

Konfigurasikan Opsi OpenThread di Gambar RCP Menggunakan Simplicity Studio 5 

  1. Di bawah tab KOMPONEN PERANGKAT LUNAK di proyek RCP Anda (.slcp), perluas menu OpenThread. Pilih Tumpukan (RCP) untuk membangun RCP.
  2. Klik Konfigurasi untuk mengubah pengaturan yang terkait dengan build OpenThread.
    Catatan: Anda dapat memilih kotak centang Komponen yang Dapat Dikonfigurasi dan Komponen yang Terinstal untuk memfilter hanya komponen yang dapat Anda konfigurasikan dengan sukses. Silicon-Labs-AN1256-OpenThread-Border-Router- (6)
  3. Konfigurasikan berbagai pengaturan waktu kompilasi untuk proyek RCP Anda. Berbagai opsi kompilasi dijelaskan dalam dokumentasi OpenThread di https://openthread.io/guides/build .
  4. Untuk konfigurasi Koeksistensi dengan WiFi, lihat AN1017 Zigbee dan OpenThread Koeksistensi dengan WiFi.

Petunjuk Pembuatan dan Pemasangan untuk Border Router Host

Instal Perangkat Keras
Hubungkan setiap papan utama Wireless Starter Kit dan komputer host ke switch Ethernet dengan kabel Ethernet seperti yang ditunjukkan pada gambar berikut. Koneksi ini akan memungkinkan pemrograman dan analisis jaringan RCP dan perangkat akhir. Secara opsional, perangkat akhir dapat dihubungkan ke komputer host melalui USB, alih-alih Ethernet. Untuk menghubungkan Raspberry Pi Border Router dengan RCP melalui SPI, Anda dapat menghubungkan pin SPI secara permanen dengan konektor ekspansi WSTK atau menggunakan papan ekspansi nirkabel (brd8016), yang terpasang di atas Raspberry Pi.

Silicon-Labs-AN1256-OpenThread-Border-Router- (7)

Koneksi SPI Hardwire Antara Raspberry Pi dan WSTK
Hubungkan pin SPI seperti yang ditunjukkan di bawah ini:

Konektor Raspberry Pi (Pin SPI) Konektor Ekspansi WPK (brd4002)
GPIO10 / Pin19 (MOSI) pin 4
GPIO9 / Pin21 (MISO) pin 6
GPIO11 / Pin23 (SCLK) pin 8
GPIO7/8 / Pin24/26 (CS0/CS1) pin 10
GPIO21 / Pin40 (Jalur interupsi) pin 7
GND / Pin 6 pin 1
GPIO20 / Pin38 (Jalur reset) Pin F4 pada konektor breakout

Silicon-Labs-AN1256-OpenThread-Border-Router- (8)

Papan Ekspansi Nirkabel untuk Koneksi SPI Antara Raspberry Pi dan WSTK
Anda juga dapat menggunakan papan ekspansi nirkabel, yang dipasang di bagian atas Raspberry Pi untuk menghindari koneksi kabel keras, seperti yang ditunjukkan di bawah ini.

Silicon-Labs-AN1256-OpenThread-Border-Router- (9)

Catatan: Gunakan OTBR_AGENT_OPTS yang benar seperti yang dijelaskan di bagian 3.2.3 Konfigurasi OTBR menggunakan Antarmuka SPI tergantung pada koneksi SPI.

Instal dan Konfigurasi Raspberry Pi untuk Digunakan dengan RCP
Dua metode berbeda untuk menginstal perangkat lunak OTBR di Raspberry Pi untuk digunakan dengan RCP adalah:

  • Instalasi manual
  • Kontainer Docker

Instalasi Manual
Panduan ini membahas cara membangun OTBR menggunakan perangkat yang disediakan oleh Silicon Labs GSDK. Anda juga dapat memasang OTBR menggunakan petunjuk yang dijelaskan di https://openthread.io/guides/border-router/build Perhatikan bahwa ini adalah opsi build yang berbeda, dan panduan mana pun dapat diikuti untuk membangun OTBR.
Untuk pengaturan manual, gunakan versi ot-br-posix yang disertakan dalam Silicon Labs SDK: util/third_party/ot-br-posix
Anda dapat menemukan spesifikasi Thread untuk SDK yang dipilih di util/third_party/openthread/README.md. Jika Anda sudah mengunduh SDK sebagai bagian dari Simplicity Studio, lewati langkah berikut.

Mulailah dengan mengkloning repositori Simplicity SDK:
klon git https://github.com/SiliconLabs/simplicity_sdk.git*
Periksa cabang SDK yang diinginkan. Untuk panduan ini, kami menggunakan cabang default. Di direktori util/third_party /ot-br-posix, jalankan: sudo ./script/bootstrap. Setelah menjalankan langkah bootstrap, pastikan untuk memeriksa versi tumpukan openthread yang tepat di third_party/openthread/repo dengan menyalin atau membuat tautan simbolis ke tumpukan OpenThread:
util/pihak_ketiga/ot-br-posix/pihak_ketiga/openthread/repo -> util/pihak_ketiga/openthread
Pastikan komitmen git di third_party/openthread/repo didukung oleh rilis tersebut. Lihat Catatan Rilis OpenThread untuk komitmen stabil yang didukung oleh rilis tertentu.
Untuk menggunakan pengaturan konfigurasi khusus Silicon Labs untuk router perbatasan, Anda dapat mengambil header konfigurasi khusus yang dihosting di SDK di bawah /protokol/openthread/platform-abstraction/posix/openthread-core-silabs-posix-config.h.

Catatan: Header konfigurasi ini mengganti banyak pengaturan ke nilai yang direkomendasikan dari konfigurasi OTBR yang tersertifikasi. Silakan tinjau konfigurasinya. file untuk memeriksa pengaturan apa pun yang khusus untuk skenario Anda.
Jalankan pengaturan sebagai berikut:

  • # Salin konfigurasinya file ke jalur penyertaan yang diketahui sudo cp /protokol/openthread/platform-abstraksi/posix/openthread-core-silabs-posix-config.h /util/pihak_ketiga/openthread/src/posix/platform/
  • # Jalankan pengaturan dengan menentukan header konfigurasi di atas
  • # Sesuaikan nama tautan infrastruktur Anda dengan tepat, seperti eth0 untuk Ethernet atau wlan0 untuk WiFi # (atau apa pun nama tautan Anda) sudo INFRA_IF_NAME=eth0 OTBR_OPTIONS=”-DOT_CONFIG=openthread-core-silabs-posix-config.h” script/setup

Untuk membangun OTBR dengan antarmuka SPI, tentukan bus RCP sebagai berikut:
sudo INFRA_IF_NAME=eth0 OTBR_OPTIONS=”-DOT_POSIX_RCP_SPI_BUS=AKTIF” ./script/setup
Lihat /src/core/config dan openthread/examples/README.md untuk konstanta waktu kompilasi dan opsi pembuatan cmake.

Catatan: Sebelum GSDK 4.4.0, tanda build untuk Antarmuka SPI OTBR adalah: -DOT_POSIX_CONFIG_RCP_BUS=SPI.
*Untuk SDK 7.x dan versi yang lebih lama, pengguna harus mengkloning repositori Gecko SDK. Untuk informasi selengkapnya, silakan kunjungi https://github.com/Sili-conLabs/gecko_sdk .

Konfigurasi OTBR Menggunakan Antarmuka UART

  • Konfigurasikan port tty* yang diinginkan untuk digunakan OTBR agar RCP Anda terhubung saat startup. Cari port tty* perangkat RCP. Cara termudah untuk melakukannya adalah dengan mencari entri /tty/dev… setelah RCP terhubung. Umumnya, entri tersebut adalah /dev/ttyUSB0 atau /dev/ttyACM0.
  • Edit /etc/default/otbr-agent file dan cari konfigurasi OTBR_AGENT_OPTS. Sertakan nama port tty* dalam parameter tersebut sebagai berikut:
    OTBR_AGENT_OPTS=”-I wpan0 spinel+hdlc+uart:///dev/ttyACM0″
  • Jika menjalankan Backbone Border Router (protokol Thread versi 1.2 atau lebih tinggi), tambahkan antarmuka backbone sebagai berikut:
    OTBR_AGENT_OPTS=”-I wpan0 -B eth0 spinel+hdlc+uart:///dev/ttyACM0″
  • Jika menjalankan Border Router Thread 1.3 atau lebih tinggi, tentukan antarmuka Thread Radio Encapsulation Link (TREL) untuk mengaktifkan tautan Thread over Infrastructure sebagai berikut:
    OTBR_AGENT_OPTS=”-I wpan0 -B eth0 spinel+hdlc+uart:///dev/ttyACM0 trel://eth0″

Pengaturan Laju Baud UART

  • Secara default, agen OTBR (daemon host) dirancang untuk bekerja dengan laju baud 460-800. Kami merekomendasikan konfigurasi ini untuk berbagai skenario penerapan OTBR yang realistis. Pastikan adaptor RCP dan WSTK/WPK/STK Anda dikonfigurasi dengan benar.
  • Jika Anda ingin mengubah laju baud default, kami sarankan Anda memperbarui radio URL pilihan:

Misalnyaample, untuk menurunkan baud rate menjadi 115200:
OTBR_AGENT_OPTS=”-Saya wpan0 spinel+hdlc+uart:///dev/ttyACM0?uart-baudrate=115200 trel://eth0″
Jika ingin mengubah nilai ini, Anda juga harus mencocokkan baud rate yang benar pada papan adaptor dengan mengeluarkan perintah berikut pada konsol admin adaptor WSTK/WPK/STK RCP: serial vcom config speed 115200 (opsional jika Anda telah memperbarui firmware adaptor yang akan mendeteksi baud rate ini secara otomatis)
Pastikan juga untuk mengatur baud rate yang benar dalam proyek RCP Anda di komponen IO STREAM USART atau IO STREAM EUSART seperti yang ditunjukkan pada gambar berikut:

Silicon-Labs-AN1256-OpenThread-Border-Router- (1)

  • Untuk memverifikasi laju baud yang digunakan, jalankan perintah: stty -F /dev/ttyACM0

Konfigurasi OTBR menggunakan Antarmuka SPI

  • Konfigurasikan port SPI yang diinginkan agar OTBR dapat menghubungkan RCP Anda saat startup. Pastikan antarmuka SPI diaktifkan di Raspberry Pi. Jika tidak:
  • Aktifkan dengan menambahkan berikut ini di /boot/config.txt
    dtparam=spi=on dtoverlay=disable-bt #Mungkin tidak diperlukan
  • Hapus/komentari dtoverlay=spi0-1cs,cs0_pin=26 jika didefinisikan dalam /boot/config.txt.
  • Nyalakan ulang Raspberry Pi.
  • Gunakan perintah ini untuk memvalidasi port SPI 'ls /dev | grep spi'.
  •  Dua perangkat harus terlihat, spidev0.0 dan spidev0.1, tergantung pada versi Raspberry Pi Anda.
  • Edit /etc/default/otbr-agent file dan cari konfigurasi OTBR_AGENT_OPTS. Sertakan GPIO yang benar dalam parameter tersebut sesuai pengaturan perangkat keras di bagian 3.1.1 dan 3.1.2.
  • Gunakan parameter berikut jika Raspberry Pi terhubung langsung ke pin SPI pada konektor ekspansi WSTK. Gunakan spidev0.0 jika menggunakan CS0 Raspberry Pi atau ganti ke spidev0.1 untuk pin CS1.
  • OTBR_AGENT_OPTS=”-I wpan0 -B eth0 spinel+spi:///dev/spidev0.0?gpio-int-device=/dev/gpio-chip0&gpio-int-line=21&gpio-reset-device=/dev/gpiochip0&gpio-reset-line=20&no-reset=1&spi-speed=1000000″
    Gunakan parameter berikut jika papan radio dipasang pada Raspberry Pi menggunakan papan ekspansi nirkabel (brd8016A).

OTBR_AGENT_OPTS=”-I wpan0 -B eth0 spinel+spi:///dev/spidev0.0?gpio-int-device=/dev/gpio-chip0&gpio-int-line=22&gpio-reset-device=/dev/gpiochip0&gpio-reset-line=23&no-reset=1&spi-speed=1000000″

  • Jika menggunakan koneksi perangkat keras khusus, pastikan untuk menyediakan pin GPIO masing-masing.
  • Mulai layanan otbr-agent dengan me-reboot Raspberry Pi atau jalankan > sudo systemctl restart otbr-agent.
  • Keluarkan perintah > sudo ot-ctl state pada Raspberry Pi untuk melihat status koneksi antara host dan RCP.
  • Periksa apakah semua layanan yang diperlukan berjalan di OTBR.
    sudo systemctl status seharusnya tidak melaporkan layanan apa pun yang berjalan dalam status “terdegradasi”.
  • Periksa /var/log/syslog untuk log otbr-agent yang sedang berjalan.

Konfigurasi OTBR untuk CSL

  • Saat menjalankan OTBR sebagai pemancar CSL, OTBR terkadang gagal mengirimkan paket CSL dengan kesalahan "Handle transmit done failed: Abort". Hal ini dapat terjadi jika OPENTHREAD_CONFIG_MAC_CSL_REQUEST_AHEAD_US diatur terlalu rendah.
  • Header konfigurasi SiLabs POSIX default menyertakan nilai yang direkomendasikan (5000) untuk parameter ini. Saat membangun OTBR Anda dari petunjuk di bagian 3.2.1, pastikan untuk menggunakan openthread-core-silabs-posix-config.h terbaru.
  • Jika membangun OTBR sendiri menggunakan instruksi pada OpenThread websitus, maka:
  • Ubah nilai OPENTHREAD_CONFIG_MAC_CSL_REQUEST_AHEAD_US di ot-br-posix/third_party/open-thread/repo/src/core/config/mac.h
    or
  • Berikan nilai selama pengaturan sebagai berikut:
    sudo OTBR_OPTIONS=”-DCMAKE_CXX_FLAGS='-DOPENTHREAD_CONFIG_MAC_CSL_REQUEST_AHEAD_US=5000′”
    ./ skrip/pengaturan

Panduan Instalasi

  • Dimulai dengan GSDK 4.2.0, Silicon Labs OpenThread Border Router menggunakan implementasi NAT64 berbasis OpenThread, yang secara otomatis menyiapkan prefiks NAT64 untuk keperluan penerjemahan alamat. Lihat contohamplihat https://openthread.io/guides/border-router/docker/test-connectivity .
    Silicon Labs tidak menyarankan penggunaan konfigurasi NAT default pada jaringan yang menggunakan alamat 192.168.xx karena NAT tersebut menggunakan alamat tersebut secara default pada antarmuka NAT64.
  • Untuk menyelesaikan kueri mDNS dengan benar, pastikan baris “hosts:” di bawah /etc/nsswitch.conf terlihat seperti berikut: files mdns4 minimal mdns5 minimal dns
  • Untuk perutean tulang punggung Thread 1.2 dan fitur Thread 1.3 dan 1.4, proses OTBR onboard mengelola awalan dan perutean IPv6, jadi manajemen dhcpcd dari ipv6 harus dinonaktifkan.
    Periksa apakah baris berikut ada di /etc/dhcpcd.conf: noipv6 noipv6rs

Status OTBR

  •  Jalankan perintah > sudo ot-ctl state pada Raspberry Pi Anda untuk melihat status koneksi antara host dan RCP.
  • Periksa apakah semua layanan yang diperlukan berjalan di OTBR.
    sudo systemctl status seharusnya tidak melaporkan layanan apa pun yang berjalan dalam status “terdegradasi”.
  • Periksa /var/log/syslog untuk log otbr-agent yang sedang berjalan.

Menggunakan ot-ctl untuk Mengonfigurasi dan Mengontrol OpenThread Border Router Untuk daftar perintah lengkap, jalankan: sudo ot-ctl help
Mengacu pada https://openthread.io/guides/border-router/external-commissioning untuk mantanamppelajaran tentang cara mengatur Jaringan Thread secara manual dan contohamppelajaran tentang cara mengaktifkan komisaris eksternal.
Jalankan kedua perintah ini untuk memeriksa Jaringan Thread yang sedang berjalan: sudo ot-ctl state dan sudo ot-ctl ifconfig

Catatan: Pesan kesalahan "OpenThread Daemon is not running" menunjukkan adanya masalah dengan koneksi RCP. Periksa entri /dev/tty yang valid dan pastikan aplikasi RCP yang valid telah di-flash ke perangkat.

Konfigurasi Fitur OTBR untuk Sertifikasi
Untuk informasi tentang cara mengkonfigurasi fitur dan layanan OpenThread Border Router dengan benar, kunjungi https://openthread.io/guides/bor-der-router .
Bendera berikut direkomendasikan untuk “Perangkat yang Diuji (DUT)” OTBR untuk Sertifikasi Thread:
(Lihat bagian 3.2.1 untuk petunjuk tentang cara mendapatkan pengaturan konfigurasi khusus Silicon Labs untuk router perbatasan: openthread-core-silabs-posix-config.h)

  • sudo RELEASE=1 NAT64=1 BORDER_ROUTING=1 DHCPV6_PD=0 REFERENCE_DEVICE=0 BACKBONE_ROUTER=1 WEB_GUI=0 skrip/bootstrap
  • sudo INFRA_IF_NAME=eth0 RELEASE=1 PERANGKAT_REFERENSI=0 ROUTER_TULANG_BELAKANG=1 ROUTING_PERBATASAN=1 NAT64=1 DHCPV6_PD=0 WEB_GUI=0 REST_API=0 OTBR_OPTIONS=”-DOT_THREAD_VERSION=1.4 – DOT_PLATFORM_CONFIG=openthread-core-silabs-posix-config.h -DOTBR_DUA_ROUTING=AKTIF –
  • “DOTBR_DNSSD_DISCOVERY_PROXY=ON -DOTBR_SRP_ADVERTISING_PROXY=ON -DOTBR_TREL=ON -DOTBR_DHCP6_PD=ON” skrip/pengaturan

Instalasi Docker

Catatan: Kontainer Docker berikut hanya boleh digunakan dengan RCP yang dibangun menggunakan Simplicity Studio 5 untuk rilis tertentu. Pastikan untuk mencocokkan kontainernya tag versi dengan versi GSDK yang Anda gunakan untuk pengujian.
Silicon Labs merekomendasikan penerapan kontainer Docker perusahaan dengan OTBR. Menjalankan OTBR dalam kontainer memungkinkan pembuatan artefak yang mudah diterapkan serta pembuatan prototipe dan pengujian pengembangan yang cepat.
Silicon Labs menyediakan kontainer Docker pra-bangun berikut (dengan tags), yang dihosting di DockerHub: https://hub.docker.com/r/siliconlabsinc/openthread-border-router/tags

Untuk dukungan radio hak milik (rilis alfa):
https://hub.docker.com/r/siliconlabsinc/openthread-border-router-proprietary-na-915/tags

Prasyarat

  • Pada kartu SD, pastikan untuk mem-flash image Raspberry Pi OS Lite atau Raspberry Pi OS dengan Desktop.
  • Pastikan untuk memperbarui repositori lokal dan manajer paket (apt-get update dan apt-get upgrade sebelum menginstal Docker).
  • Opsional tetapi direkomendasikan: Instal Haveged untuk kondisi entropi yang lebih baik.

Panduan Instalasi

Catatan: Ganti senarnya dalam perintah berikut dengan versi aktual yang Anda gunakan. Misalnyaample, gsdk-4.4.0, sisdk- 2024.6.0, dll.

  • Pastikan untuk melakukan boot ulang setelah pembaruan apa pun:
    curl -sSL https://get.docker.com | dia
  • Setelah selesai, Anda dapat mengubah pengaturan pengguna Docker agar tidak memerlukan sudo sebelum setiap perintah:
    sudo usermod -aG docker $USER
  • Pengguna Raspberry Pi dan Linux, pastikan untuk menjalankan:
    sudo modprobe ip6table_filter
    untuk dukungan firewall OTBR. Ini memungkinkan skrip OTBR membuat aturan di dalam kontainer Docker sebelum otbr-agent dimulai.
    Untuk memastikan pengaturan ini tetap ada di antara boot ulang, tambahkan baris berikut ke /etc/modules:
    filter_tabel_ip6
    Jika langkah ini tidak diselesaikan, kesalahan modprobe mungkin ditampilkan saat memulai kontainer Docker.
  • Jalankan perintah berikut untuk menginstal kontainer. Perhatikan bahwa hanya satu kontainer Border Router yang dapat dijalankan pada satu waktu dengan RCP. Pastikan juga untuk memverifikasi versi RCP (Thread protocol versi 1.4) yang harus dijalankan pada kontainer ini.
  • Antarmuka UART:
    docker tarik siliconlabsinc/openthread-border-router:
  • Antarmuka SPI:
    docker tarik siliconlabsinc/openthread-border-router: _spi
  • Untuk menjalankan OpenThread Border Router (versi standar protokol Thread adalah 1.4), jalankan perintah berikut:
  • Example untuk antarmuka UART
    docker run -d –nama “otbr” \
    –sysctl “net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1” \
    -p 8080:80 –dns=127.0.0.1 -itu \
    –volume /dev/ttyACM0:/dev/ttyACM0 \
    –hak istimewa siliconlabsinc/openthread-border-router: \
    -radio-url “spinel+hdlc+uart:///dev/ttyACM0” \
    –antarmuka tulang punggung eth0
    (Lihat bagian 3.2.2 dan 3.2.2.1 untuk catatan tentang konfigurasi Radio UART URL)
  •  Example untuk antarmuka SPI (untuk informasi lebih lanjut, lihat bagian 3.2.3 Konfigurasi OTBR menggunakan Antarmuka SPI)
    docker run -d –nama “otbr” \
    –sysctl “net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1” \
    -p 8080:80 –dns=127.0.0.1 -itu \
    –volume /dev/spidev0.0:/dev/spidev0.0 \
    –hak istimewa siliconlabsinc/openthread-border-router: \
    -radio-url “spinel+spi:///dev/spidev0.0?gpio-int-device=/dev/gpiochip0&gpio-int-line=21&gpio-reset-de-vice=/dev/gpiochip0&gpio-reset-line=20&no-reset=1&spi-speed=1000000” \
    –antarmuka tulang punggung eth0

(Lihat bagian 3.2.3 Konfigurasi OTBR menggunakan Antarmuka SPI untuk catatan tentang konfigurasi Antarmuka Radio SPI URL.)
Gunakan argumen tambahan untuk mengonfigurasi kontainer. Untuk informasi selengkapnya, lihat 3.2.9.3 atau Dockerfile di direktori instalasi ot-br-posix.

Catatan Konfigurasi Docker

Catatan: Kontainer Docker yang dihosting Silicon Labs seharusnya hanya digunakan dengan RCP yang dibangun menggunakan Simplicity Studio 5 untuk rilis tertentu.
Pastikan untuk mencocokkan wadahnya tag versi dengan versi GSDK yang Anda uji.
Catatan: Ganti stringnya dalam perintah berikut dengan versi aktual yang Anda gunakan. Misalnyaample, gsdk-4.4.0, sisdk- 2024.6.0, dll.

  • Konfigurasikan port TTY yang diinginkan untuk OTBR agar dapat menghubungkan RCP saat startup. Cari port TTY perangkat RCP. Cara termudah untuk melakukannya adalah dengan mencari entri /tty/dev… setelah RCP terhubung. Umumnya, entri tersebut adalah /dev/ttyUSB0 atau /dev/ttyACM0.
  • Jalankan instalasi Docker sebagai berikut (mis.ample untuk antarmuka UART):
    docker run -d –nama “otbr” \
    –sysctl “net.ipv6.conf.all.disable_ipv6=0 net.ipv4.conf.all.forwarding=1 net.ipv6.conf.all.forwarding=1” \
    -p 8080:80 –dns=127.0.0.1 -itu \
    –volume /dev/ttyACM0:/dev/ttyACM0 \
    –hak istimewa siliconlabsinc/openthread-border-router: \
    -radio-url “spinel+hdlc+uart:///dev/ttyACM0” \
    –antarmuka tulang punggung eth0
  • -d memastikan bahwa kontainer berjalan dalam mode terpisah.
  • Review log yang berjalan untuk kontainer kapan saja menggunakan perintah docker logs.
  • –name bersifat lengket hingga kontainer docker ditutup dengan benar (atau dihapus).
  • Port 8080 menunjukkan port web server yang menghosting manajemen Border Router webhalaman.
  • Keluarkan perintah langsung ke kontainer tanpa harus melampirkannya: docker exec -ti otbr sh -c “sudo ot-ctl state”
    Untuk informasi lebih lanjut, lihat dokumentasi docker exec.
  • Dapatkan shell interaktif di atas secara langsung dengan mengeluarkan perintah ini: docker exec -ti otbr sh -c “sudo ot-ctl”
  • Periksa jendela yang menjalankan kontainer Docker OTBR untuk menjalankan keluaran log dari Border Router, atau ikuti log kontainer sebagai berikut:
    log docker [id-kontainer] -f
  • Kelola kontainer seperti yang ditunjukkan di bawah ini jika dimuat dengan tidak benar:
    # daftar semua gambar kontainer
    gambar docker otbr
    # hapus kontainer yang ada
    gambar buruh pelabuhan rm -f
    # daftar kontainer yang sedang berjalan
    buruh pelabuhan ps -a
    # untuk menghapus kontainer yang sedang berjalan
    docker rm -f

Sumber Daya OpenThread

Silicon Labs menyediakan komponen dan opsi konfigurasi yang memungkinkan Anda mengonfigurasi fitur Thread 1.4 dengan sampUntuk informasi selengkapnya, lihat AN1499: Mengonfigurasi Aplikasi OpenThread untuk Thread 1.4.
Untuk informasi khusus Thread 1.3, lihat AN1372: Mengonfigurasi Aplikasi OpenThread untuk Thread 1.3. Thread 1.4 adalah versi protokol yang direkomendasikan, dimulai dengan SDK silabs-2024.12 untuk SOC dan dimulai dengan SDK silabs-2025.6 untuk otbr.
Untuk menemukan lebih banyak sumber daya atau mengambil keuntungantage dari halaman komunitas OpenThread, kunjungi: https://openthread.io/resources .
Untuk informasi tentang OpenThread Border Router, kunjungi: https://openthread.io/guides/border-router .

Konsultasikan pemecahan masalah ini webhalaman untuk informasi lebih lanjut:

silabs.com | Membangun dunia yang lebih terhubung.
Hak Cipta © 2025 oleh Silicon Laboratories

Tanya Jawab Umum

Apa protokol komunikasi yang digunakan oleh RCP?

RCP memanfaatkan Spinel di atas koneksi serial (UART atau SPI) untuk komunikasi.

Bisakah RCP digunakan pada platform host apa pun?

RCP pada dasarnya tidak bergantung pada host mana pun apabila dikonfigurasikan dengan benar menggunakan OpenThread Border Router pada host.

Di mana saya dapat menemukan informasi lebih lanjut tentang membangun citra RCP?

Petunjuk terperinci untuk membangun citra RCP menggunakan Simplicity Studio 5 tersedia dalam panduan pengguna pada bagian Petunjuk Pembuatan dan Pemasangan untuk Citra RCP.

Dokumen / Sumber Daya

Router Perbatasan OpenThread AN1256 dari Silicon Labs [Bahasa Indonesia:] Panduan Pengguna
QSG113, AN1256, Perute Perbatasan OpenThread AN1256, AN1256, Perute Perbatasan OpenThread, Perute Perbatasan, Perute

Referensi

Tinggalkan komentar

Alamat email Anda tidak akan dipublikasikan. Bidang yang wajib diisi ditandai *