Silicon-Labs-logo

Silicon Labs AN1256 OpenThread Border Router

Silicon-Labs-AN1256-OpenThread-Border-Router- product-image

This version of AN1256 has been deprecated with the release of Simplicity SDK Suite 2025.6.1 For the latest version, see docs.silabs.com. A Thread Border Router connects a Thread Network to other IP-
based networks, such as Wi-Fi® or Ethernet®. A Thread Network requires a Border Router to connect to other networks. The Border Router provides services for devices within the Thread Network, including routing services for off-network operations, bidirectional connectivity over IPv6 infrastructure links, and service registry to enable DNS-based service discovery. Silicon Labs provides a Border Router Add-On Kit containing a Raspberry Pi device and an example sesebelisoa sa Radio Co-Processor (RCP) se hlokahalang ho haha ​​​​software ea Border Router.

HLOKOMELA: Refer to the OpenThread release notes for the stable version commits of Open-Thread (openthread) and OpenThread Border Router (ot-br-posix) repos supported by a Silicon Labs release. OpenThread release notes are installed with the SDK and are also available on docs.silabs.com. This applies to all default containers provided by Silicon Labs for the release, and the copies of these repos included in the release. While we support building using any commit on GitHub (using the ot-efr32 repo), note that the latest public code on GitHub can be unstable.

SEHLOOHO SEHLOHO 

  • Build and installation instructions for the RCP images
  • Build and installation instructions for the Border Router Host
  • OpenThread Border Router configuration information
  • OpenThread resources

Selelekela

This application note is intended for software engineers who wish to develop an OpenThread Border Router (OTBR). It assumes some familiarity with OpenThread and basic Thread concepts. For an introduction to OpenThread and information on Thread concepts, visit https://openthread.io/ . For information on OTBR setup and installation, refer to https://openthread.io/guides/border-router . This application note assumes that you have downloaded Simplicity Studio 5 (SSv5) and the Silicon Labs OpenThread SDK and are generally familiar with the SSv5 Launcher perspective. SSv5 installation and getting started instructions, along with a set of detailed references, can be found in the online Simplicity Studio 5 User’s Guide, available on https://docs.silabs.com/ and through the SSv5 help menu. Refer to QSG170: Silicon Labs OpenThread Quick Start Guide for more information about configuring, building, and flashing OpenThread sample likopo.
This application note addresses the following topics:

  • Litaelo tsa ho aha le ho kenya bakeng sa Litšoantšo tsa RCP
    Explains the build and installation procedure for the Radio Co-Processor (RCP) image using UART as well as SPI interfaces.
  • Build and Installation Instructions for the OpenThread Border Router
    Defines the build and installation procedure for the OpenThread Border Router on POSIX-based platforms, including an option to deploy a pre-built Docker container for the Raspberry Pi.
  • OTBR Configuration Information
    Provides OTBR information such as how to configure various Border Router features and the Network Address Translation (NAT64) interface.
  • Additional OpenThread Resources
    Includes links to OpenThread Resources.

Litlhoko tsa Hardware
A Thread Border Router has two components:

  • A Raspberry Pi host with Thread Border Router support (Recommended: Raspberry Pi 3 Model B+ or above)
  • A Thread-capable Silicon Labs Radio Co-processor (RCP)

RCP ts'ebelisong ena e sebetsa feela le protocol ea Thread mme e sebelisa khokahano ea serial (UART kapa SPI) ho hokahana le moamoheli. Spinel e sebelisoa ka holim'a khokahano ena ea serial ho nolofatsa puisano. Ha feela OTBR e hlophisitsoe ka nepo ho moamoheli, RCP e lokela ho sebetsa ka mokhoa o ts'oanelang, e etse hore e be moamoheli oa bo-agnostic. Bakeng sa tlhaiso-leseling e batsi ka li-platform tsa moamoheli tse tšehetsoeng, bona OpenThread Border Router.
To create the RCP, you need the following:

  • EFR32MG Wireless Starter Kit or Thunderboard Sense 2 Sensor-to-Cloud Advanced IoT Kit
  • Silicon Labs board capable of Thread communication

Tlhokomeliso: Ho fumana leseli mabapi le Lits'oants'o tsa Silicon Labs Tse Hlophisitsoeng Pele tsa RCP, bona Sebelisa Litšoantšo tsa RCP tse entsoeng esale pele.

Litaelo tsa ho aha le ho kenya bakeng sa Litšoantšo tsa RCP

Tlhokomeliso: Litaelo tse latelang li sebetsa feela ho litšoantšo tsa RCP tse hahiloeng ho sebelisoa Simplicity Studio bakeng sa tokollo e fanoeng ea GSDK.
Ho aha setšoantšo sa RCP u sebelisa OpenThread ea morao-rao, latela litaelo ho ot-efr32 repo.

Use Precompiled RCP Images
Silicon Labs has precompiled images available for these boards with their associated image locations. The default precompiled images are configured for UART interface.

Hlokomela: By default, the Silicon Labs GSDK uses Thread protocol version 1.4. A set of prebuilt RCP demo applications are provided with the OpenThread SDK.

Build RCP Images Using Simplicity Studio 5
Silicon Labs has sample applications for several standard OpenThread images.

  1. Select ot-rcp as an example for the default RCP image for the OpenThread Border Router over UART interface.
  2. With your target part connected to your computer, open Simplicity Studio 5’s File menu and select New > Silicon Labs Project Wizard. The Target, SDK, and Toolchain Selection dialog opens. Click NEXT.
  3. The Example Puisano ea Khetho ea Morero ea bula. Sebelisa lihloela tsa Mofuta oa Theknoloji le Keyword ho batla ot-rcp joalo ka example for the default RCP image for the OpenThread Border Router. Select it and click NEXT.
  4. The Project Configuration dialog opens. Rename your project, change the default project file location, and determine if you will link to or copy project files. Note that, if you change any linked resource, it is changed for any other project that references it. Click FINISH.
  5. The Simplicity IDE Perspective opens with the Project Configurator open to the OVERVIEW tab ya. Sheba Tataiso ea Mosebelisi ea Simplicity Studio 5 ea inthaneteng bakeng sa lintlha tse mabapi le ts'ebetso e fumanehang ka mokhoa o bonolo oa IDE le Projeke Configurator.
  6. Silicon-Labs-AN1256-OpenThread-Border-Router- (2)Make any configuration changes to the software components, as described in the next section. The autogeneration progress is available in the bottom right of the Simplicity IDE perspective. Make sure that progress is complete before you build.Silicon-Labs-AN1256-OpenThread-Border-Router- (3)
  7. Compile and flash the application image as described in QSG170: Silicon Labs OpenThread Quick Start Guide.

Configure RCP Image for SPI From Default OT-RCP Application Using Simplicity Studio 5

  1. Generate ot-rcp application as described in section 2.2 steps 1 – 4.
  2. Under the SOFTWARE COMPONENTS tab in your RCP project (.slcp), expand the Services menu. Select vcom under the IO STREAM USART or IO STREAM EUSART component.Silicon-Labs-AN1256-OpenThread-Border-Router- (4)
  3. Click Uninstall to remove the component, which uninstalls the IO STREAM component as well.
  4. Under the SOFTWARE COMPONENTS tab in your RCP project (.slcp), expand the OpenThread menu. Select the NCP SPIDRV component and click Install.Silicon-Labs-AN1256-OpenThread-Border-Router- (5)
  5. Compile and flash the application image as described in QSG170: Silicon Labs OpenThread Quick Start Guide.

Configure OpenThread Options in the RCP Images Using Simplicity Studio 5 

  1. Under the SOFTWARE COMPONENTS tab in your RCP project (.slcp), expand the OpenThread menu. Select Stack (RCP) for an RCP build.
  2. Click Configure to change the settings associated with the OpenThread build.
    Tlhokomeliso: U ka khetha mabokose a "Configurable Components" le "Installed Components" ho sefa feela likarolo tseo u ka li hlophisang ka katleho. Silicon-Labs-AN1256-OpenThread-Border-Router- (6)
  3. Configure the various compile-time settings for your RCP project. The various build options are explained in the OpenThread docu-mentation at https://openthread.io/guides/build .
  4. For Coexistence with WiFi configurations, see AN1017 Zigbee and OpenThread Coexistence with WiFi.

Litaelo tsa ho aha le ho kenya bakeng sa Border Router Host

Kenya Hardware
Connect each Wireless Starter Kit main board and the host computer to an Ethernet switch with an Ethernet cable as shown in the fol-lowing figure. These connections will permit programming and network analysis of the RCP and end devices. Optionally, end devices may be connected to the host computer by USB rather than Ethernet. To connect Raspberry Pi Border Router with RCP over SPI, you can either hardwire the SPI pins with WSTK’s expansion connector or you can use wireless expansion board (brd8016), which mounts on the top of Raspberry Pi.

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

Hardwire SPI Connections Between Raspberry Pi and WSTK
Connect the SPI pins as shown below:

Raspberry Pi Connector (SPI Pins) WPK’s Expansion Connector (brd4002)
GPIO10 / Pin19 (MOSI) Pina ea 4
GPIO9 / Pin21 (MISO) Pina ea 6
GPIO11 / Pin23 (SCLK) Pina ea 8
GPIO7/8 / Pin24/26 (CS0/CS1) Pina ea 10
GPIO21 / Pin40 (Interrupt line) Pina ea 7
GND / Pin 6 Pina ea 1
GPIO20 / Pin38 (Reset line) Pin F4 on breakout connector

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

Wireless Expansion Board for SPI Connections Between Raspberry Pi and WSTK
You can also use a wireless expansion board, which mounts on the top of Raspberry Pi to avoid hardwire connection, as shown below.

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

Tlhokomeliso: Sebelisa OTBR_AGENT_OPTS e nepahetseng joalo ka ha ho hlalositsoe karolong ea 3.2.3 OTBR Configurations u sebelisa SPI Interface ho latela likhokahano tsa SPI.

Install and Configure a Raspberry Pi for Use with RCP
Two different methods for installing the OTBR software in a Raspberry Pi for use with an RCP are:

  • Ho kenya letsoho
  • Docker container

Ho kenya letsoho ka letsoho
This guide covers how to build the OTBR using the tools provided by the Silicon Labs GSDK. You may also install the OTBR using the instructions detailed at https://openthread.io/guides/border-router/build .  Note that this is a different build option, and either guide may be followed to build the OTBR.
Bakeng sa ho seta ka letsoho, sebelisa mofuta o kenyellelitsoeng oa ot-br-posix ho Silicon Labs SDK: util/third_party/ot-br-posix
You can find the Thread specification for a selected SDK under util/third_party/openthread/README.md. If you have already down-loaded the SDK as part of Simplicity Studio, skip the following step.

Begin by cloning the Simplicity SDK repository:
git clone https://github.com/SiliconLabs/simplicity_sdk.git*
Check out the desired SDK branch. For this guide, we use the default branch. In the util/third_party /ot-br-posix directory run: sudo ./script/bootstrap  After running the bootstrap step, make sure to check out the right version of the openthread stack in third_party/openthread/repo by either copying or creating a symbolic link to the OpenThread stack:
util/third_party/ot-br-posix/third_party/openthread/repo -> util/third_party/openthread
Etsa bonnete ba hore boitlamo ba git tlasa third_party/openthread/repo bo tšehetsoa ke tokollo. Sheba Lintlha tsa Phallo ea OpenThread bakeng sa boitlamo bo tsitsitseng bo tšehetsoeng ke tokollo e fanoeng.
Ho sebelisa litlhophiso tse khethehileng tsa Silicon Labs bakeng sa router ea moeli, u ka tšoara hlooho e khethehileng e hlophisitsoeng ho SDK tlas'a /protocol/openthread/platform-abstraction/posix/openthread-core-silabs-posix-config.h.

Hlokomela: This configuration header overrides a lot of settings to recommended values from the certifiable OTBR configuration. Please go over the configuration file ho lekola litlhophiso life kapa life tse amanang le boemo ba hau.
Run the setup as follows:

  • # Copy the config file to a known include path sudo cp <sdk_location>/protocol/openthread/platform-abstraction/posix/openthread-core-silabs-posix-config.h <sdk_location>/util/third_party/openthread/src/posix/platform/
  • # Run the setup by specifying the above config header
  • # Adjust your infrastructure link name appropriately, such as eth0 for Ethernet or wlan0 for WiFi # (or whatever your link is named) sudo INFRA_IF_NAME=eth0 OTBR_OPTIONS=”-DOT_CONFIG=openthread-core-silabs-posix-config.h” script/setup

Ho aha OTBR ka sebopeho sa SPI, hlakisa bese ea RCP ka tsela e latelang:
sudo INFRA_IF_NAME=eth0 OTBR_OPTIONS=”-DOT_POSIX_RCP_SPI_BUS=ON” ./script/setup
Sheba /src/core/config le openthread/examples/README.md bakeng sa ho bokella li-constants tsa nako le likhetho tsa cmake, ka ho latellana.

Hlokomela: Prior to GSDK 4.4.0 the build flag for the OTBR SPI Interface was: -DOT_POSIX_CONFIG_RCP_BUS=SPI.
*For SDK 7.x and lower, users must clone the Gecko SDK repository. For more information, please visit https://github.com/Sili-conLabs/gecko_sdk .

OTBR Configurations Using UART Interface

  • Configure the desired tty* port to use for the OTBR to connect your RCP at startup. Look for the tty* port of the RCP device. The easiest way to do this is to look for a /tty/dev… entry once the RCP is connected. It should generally either be /dev/ttyUSB0 or /dev/ttyACM0.
  • Edit the /etc/default/otbr-agent file and look for the OTBR_AGENT_OPTS configuration. Include the tty* port name in that parameter as follows:
    OTBR_AGENT_OPTS=”-I wpan0 spinel+hdlc+uart:///dev/ttyACM0″
  • If running a Backbone Border Router (Thread protocol version 1.2 or above), add the backbone interface as follows:
    OTBR_AGENT_OPTS=”-I wpan0 -B eth0 spinel+hdlc+uart:///dev/ttyACM0″
  • If running a Thread 1.3 or greater Border Router, specify the Thread Radio Encapsulation Link (TREL) interface to enable Thread over Infrastructure links as follows:
    OTBR_AGENT_OPTS=”-I wpan0 -B eth0 spinel+hdlc+uart:///dev/ttyACM0 trel://eth0″

UART Baud Rate Settings

  • By default, OTBR agent (the host daemon) is built to work with a baud rate of 460800. We recommend this configuration for a lot of realistic OTBR deployment scenarios. Please make sure your RCP and WSTK/WPK/STK adapter are configured accordingly.
  • If you wish to change the default baud rate, we recommend that you update the radio URL dikgetho:

Bakeng sa mohlalaample, to lower the baud rate to 115200:
OTBR_AGENT_OPTS=”-I wpan0 spinel+hdlc+uart:///dev/ttyACM0?uart-baudrate=115200 trel://eth0″
If intending to change this value, you must also match the correct baud rate on the adapter board by issuing the following command on the admin console of the RCP’s WSTK/WPK/STK adapter: serial vcom config speed 115200 (optional if you have updated adapter firmware that will autosense this rate)
Etsa bonnete ba hore o beha sekhahla se nepahetseng sa baud projekeng ea hau ea RCP ho IO STREAM USART kapa karolo ea IO STREAM EUSART joalo ka ha ho bonts'itsoe setšoantšong se latelang:

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

  • To verify the baud rate in use, issue the command: stty -F /dev/ttyACM0

OTBR Configurations using SPI Interface

  • Configure the desired SPI ports to use for the OTBR to connect your RCP at startup. Ensure the SPI interface is enabled on the Raspberry Pi. If not:
  • Enable it by adding following in /boot/config.txt
    dtparam=spi=on dtoverlay=disable-bt #Maybe not required
  • Remove/comment dtoverlay=spi0-1cs,cs0_pin=26 if it is defined in /boot/config.txt.
  • Reboot the Raspberry Pi.
  • Use this command to validate the SPI port ‘ls /dev | grep spi’.
  •  Two devices should be visible, spidev0.0 and spidev0.1, depending on your Raspberry Pi version.
  • Edit the /etc/default/otbr-agent file and look for the OTBR_AGENT_OPTS configuration. Include the correct GPIOs in that parameter as per the hardware setup in sections 3.1.1 and 3.1.2.
  • Use the following parameters if Raspberry Pi is hardwired to SPI pins on WSTK’s expansion connector. Use spidev0.0 if using Raspberry Pi’s CS0 or replace to spidev0.1 for CS1 pin.
  • 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″
    Use the following parameters if the radio board is mounted on Raspberry Pi using wireless expansion board (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″

  • If using custom hardware connections, make sure to provide respective GPIOs pins.
  • Start otbr-agent service by either rebooting the Raspberry Pi or issue > sudo systemctl restart otbr-agent.
  • Issue the > sudo ot-ctl state command on the Raspberry Pi to see the status of the connection between the host and RCP.
  • Check whether all required services are running on the OTBR.
    sudo systemctl status should not report any services as running in a “degraded” state.
  • Check /var/log/syslog for a running log of otbr-agent.

OTBR Configuration for CSL

  • When running OTBR as a CSL transmitter, OTBR can sometimes fail to transmit CSL packets with the error “Handle transmit done failed: Abort”. This can happen if OPENTHREAD_CONFIG_MAC_CSL_REQUEST_AHEAD_US is set too low.
  • Sehlooho sa kamehla sa SiLabs POSIX se kenyelletsa boleng bo khothaletsoang (5000) bakeng sa paramethara ena. Ha u haha ​​OTBR ea hau ho latela litaelo tse karolong ea 3.2.1, etsa bonnete ba hore u sebelisa openthread-core-silabs-posix-config.h ea morao-rao.
  • Haeba u iketsetsa OTBR u le mong u sebelisa litaelo tse ho OpenThread website, then either:
  • Modify the value of OPENTHREAD_CONFIG_MAC_CSL_REQUEST_AHEAD_US in ot-br-posix/third_party/open-thread/repo/src/core/config/mac.h
    or
  • Pass the value during setup as follows:
    sudo OTBR_OPTIONS=”-DCMAKE_CXX_FLAGS=’-DOPENTHREAD_CONFIG_MAC_CSL_REQUEST_AHEAD_US=5000′”
    ./ script/setup

Tataiso ea Tlhophiso

  • Starting with GSDK 4.2.0, Silicon Labs OpenThread Border Router uses the OpenThread-based NAT64 implementation, which au-tomatically sets up a NAT64 prefix for address translation purposes. See the example ho https://openthread.io/guides/border-router/docker/test-connectivity .
    Silicon Labs ha e khothaletse ho sebelisa tlhophiso ea kamehla ea NAT marang-rang a sebelisang liaterese tsa 192.168.xx hobane NAT e sebelisa liaterese tseo ka ho sa feleng ho sebopeho sa NAT64.
  • For properly resolving mDNS queries, make sure the “hosts:” line under /etc/nsswitch.conf looks like the following: hosts: files mdns4 minimal mdns5 dns e nyane
  • For Thread 1.2 backbone routing and Thread 1.3 and 1.4 features, the onboard OTBR processes manage IPv6 prefixes and routing, so dhcpcd management of ipv6 should be disabled.
    Check that the following lines are present in /etc/dhcpcd.conf: noipv6 noipv6rs

OTBR Status

  •  Issue the > sudo ot-ctl state command on your Raspberry Pi to see the status of the connection between the host and RCP.
  • Check whether all required services are running on the OTBR.
    sudo systemctl status should not report any services as running in a “degraded” state.
  • Check /var/log/syslog for a running log of otbr-agent.

Using ot-ctl to Configure and Control the OpenThread Border Router For a full command list, run: sudo ot-ctl help
Sheba https://openthread.io/guides/border-router/external-commissioning bakeng sa mohlalaamples mabapi le mokhoa oa ho theha Network Network le examples on how to enable an external commissioner.
Run these two commands to check for a running Thread Network: sudo ot-ctl state and sudo ot-ctl ifconfig

Hlokomela: The error message OpenThread Daemon is not running indicates a problem with the RCP connection. Check both for a valid /dev/tty entry and that a valid RCP application was flashed onto the device.

OTBR Feature Configuration for Certification
For information on how to properly configure OpenThread Border Router features and services, visit https://openthread.io/guides/bor-der-router .
Lifolakha tse latelang li khothaletsoa bakeng sa OTBR "Device Under Test (DUT)" bakeng sa Setifikeiti sa Thread:
(See section 3.2.1 for instructions on obtaining Silicon Labs-specific configuration settings for border router: 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 script/bootstrap
  • sudo INFRA_IF_NAME=eth0 RELEASE=1 REFERENCE_DEVICE=0 BACKBONE_ROUTER=1 BORDER_ROUTING=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=ON –
  • DOTBR_DNSSD_DISCOVERY_PROXY=ON -DOTBR_SRP_ADVERTISING_PROXY=ON -DOTBR_TREL=ON -DOTBR_DHCP6_PD=ON” script/setup

Docker Installation

Hlokomela: The following Docker containers are only supposed to be used with RCPs built using Simplicity Studio 5 for a given release. Be sure to match the container tag mofuta oa GSDK oo u o sebelisang ho etsa liteko.
Silicon Labs recommends deploying the company’s Docker container with the OTBR. Running the OTBR in a container allows for crea-tion of easily deployable artifacts and fast development prototyping and testing.
Silicon Labs e fana ka lijana tse latelang tsa Docker tse hahiloeng esale pele (tse nang le tags), e hlophisitsoeng ho DockerHub: https://hub.docker.com/r/siliconlabsinc/openthread-border-router/tags

Bakeng sa tšehetso ea seea-le-moea se nang le thepa (ho lokolloa ha alpha):
https://hub.docker.com/r/siliconlabsinc/openthread-border-router-proprietary-na-915/tags

Lintho tse hlokahalang

  • On the SD card, make sure to flash the Raspberry Pi OS Lite image or Raspberry Pi OS with Desktop.
  • Make sure to update the local repositories and package manager (apt-get update and apt-get upgrade prior to installing Docker).
  • Optional but recommended: Install Haveged for better entropy conditions.

Tataiso ea Tlhophiso

Hlokomela: Replace the string <version> in the following commands with the actual version you are using. For example, gsdk-4.4.0, sisdk- 2024.6.0, etc.

  • Make sure to reboot after any updates:
    curl -sSL https://get.docker.com | sh
  • Once finished, you can modify the Docker user settings to not require sudo before each command:
    sudo usermod -aG docker $USER
  • Raspberry Pi and Linux users, make sure to run:
    sudo modprobe ip6table_filter
    for OTBR firewall support. This allows OTBR scripts to create rules inside the Docker container before otbr-agent starts.
    To make sure this setting persists between reboots, add the following line to /etc/modules:
    ip6table_sefe
    If this step is not completed, modprobe errors may be displayed when starting a Docker container.
  • Issue the following commands to install the containers. Note that only one Border Router container can be running at one time with the RCP. Also, be sure to verify the RCP version (Thread protocol version 1.4) that should be run against this container.
  • UART interface:
    docker pull siliconlabsinc/openthread-border-router:<version>
  • SPI interface:
    docker pull siliconlabsinc/openthread-border-router:<version>_spi
  • To run an OpenThread Border Router (default is Thread protocol version 1.4), issue the following command:
  • Example bakeng sa sebopeho sa UART
    docker run -d –name “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 -it \
    –volume /dev/ttyACM0:/dev/ttyACM0 \
    –privileged siliconlabsinc/openthread-border-router:<version> \
    –radio-url “spinel+hdlc+uart:///dev/ttyACM0” \
    –backbone-interface eth0
    (Sheba karolo ea 3.2.2 le 3.2.2.1 bakeng sa lintlha tse mabapi le ho hlophisa seea-le-moea sa UART URL)
  •  Example bakeng sa sebopeho sa SPI (bakeng sa tlhaiso-leseling e batsi, bona karolo ea 3.2.3 OTBR Configurations u sebelisa SPI Interface)
    docker run -d –name “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 -it \
    –volume /dev/spidev0.0:/dev/spidev0.0 \
    –privileged siliconlabsinc/openthread-border-router:<version> \
    –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” \
    –backbone-interface eth0

(Sheba karolo ea 3.2.3 Litlhophiso tsa OTBR tse sebelisang SPI Interface bakeng sa lintlha mabapi le ho hlophisa seea-le-moea sa SPI. URL.)
Sebelisa likhang tse eketsehileng ho lokisa lijana. Bakeng sa tlhaiso-leseling e batsi, bona 3.2.9.3 kapa Dockerfile in the ot-br-posix installa-tion directory.

Docker Configuration Notes

Hlokomela: Silicon Labs-hosted Docker containers are only supposed to be used with RCPs built using Simplicity Studio 5 for a given release.
Be sure to match the container tag mofuta oa mofuta oa GSDK oo u lekang ka ona.
Tlhokomeliso: Kenya khoele sebaka litaelong tse latelang ka mofuta oa sebele oo u o sebelisang. Bakeng sa mohlalaample, gsdk-4.4.0, sisdk- 2024.6.0, etc.

  • Configure the desired TTY port for the OTBR to connect the RCP at startup. Look for the TTY port of the RCP device. The easiest way to do this is to look for a /tty/dev… entry once the RCP is connected. It should generally either be /dev/ttyUSB0 or /dev/ttyACM0.
  • Run the Docker installation as follows (example bakeng sa sebopeho sa UART):
    docker run -d –name “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 -it \
    –volume /dev/ttyACM0:/dev/ttyACM0 \
    –privileged siliconlabsinc/openthread-border-router:<version> \
    –radio-url “spinel+hdlc+uart:///dev/ttyACM0” \
    –backbone-interface eth0
  • -d ensures that the container runs in detached mode.
  • Review the running logs for the container any time using the docker logs command.
  • –name is sticky until the docker container is properly closed (or removed).
  • Port 8080 indicates the port of the web seva e tsamaisang tsamaiso ea Border Router webleqephe.
  • Issue commands directly to the container without having to attach to it: docker exec -ti otbr sh -c “sudo ot-ctl state”
    For more information, see the docker exec documentation.
  • Directly obtain an interactive shell above by issuing this command: docker exec -ti otbr sh -c “sudo ot-ctl”
  • Check the window running the OTBR Docker container for running log output of the Border Router, or follow the container log as follows:
    docker logs [container-id] -f
  • Manage the containers as shown below if they are loaded improperly:
    # list all container images
    docker images otbr
    # remove existing container
    docker image rm -f <container ID>
    # list running containers
    docker ps -a
    # to remove running container
    docker rm -f <container name>

Lisebelisoa tsa OpenThread

Silicon Labs e fana ka likarolo le likhetho tsa tlhophiso tse u nolofalletsang ho hlophisa likarolo tsa Thread 1.4 ka s.ample likopo. Bakeng sa tlhaiso-leseling e batsi, bona AN1499: Ho hlophisa Likopo tsa OpenThread bakeng sa Khoele 1.4.
For information specific to Thread 1.3, see AN1372: Configuring OpenThread Applications for Thread 1.3. Thread 1.4 is the recom-mended protocol version starting with the silabs-2024.12 SDK for the soc and starting with silabs-2025.6 SDK for the otbr.
Ho fumana lisebelisoa tse ling kapa ho nka advantage of the OpenThread community pages, visit: https://openthread.io/resources .
For information about the OpenThread Border Router, visit: https://openthread.io/guides/border-router .

Sheba mokhoa ona oa ho rarolla mathata webmaqephe bakeng sa lintlha tse ling:

silabs.com | Ho aha lefatše le amanang haholoanyane.
Copyright © 2025 ke Silicon Laboratories

LBH

What is the communication protocol used by the RCP?

The RCP utilizes Spinel on top of a serial connection (UART or SPI) for communication.

Can the RCP be used with any host platform?

The RCP is effectively host-agnostic when correctly configured with the OpenThread Border Router on the host.

Where can I find more information on building RCP images?

Detailed instructions for building RCP images using Simplicity Studio 5 are available in the user manual under the Build and Installation Instructions for the RCP Images section.

Litokomane / Lisebelisoa

Silicon Labs AN1256 OpenThread Border Router [pdf] Bukana ea Mosebelisi
QSG113, AN1256, AN1256 OpenThread Border Router, AN1256, OpenThread Border Router, Border Router, Router

Litšupiso

Tlohela maikutlo

Aterese ea hau ea lengolo-tsoibila e ke ke ea phatlalatsoa. Libaka tse hlokahalang li tšoailoe *