OpenThread Radio Co-processor design allows to add Thread network capabilities to devices that do not natively support Thread.
You can build and program OpenThread Radio Co-Processor (RCP) firmware onto Nordic Semiconductor's nRF52840 Dongle. Once programmed, the dongle can be used for configuring Thread network on a Linux machine.
Run the following commands to build and program the RCP firmware onto an nRF52840 Dongle:
Clone the OpenThread nRF528xx platform repository into the current directory:
$ git clone --recursive https://github.com/openthread/ot-nrf528xx.git
Enter the ot-nrf528xx directory:
$ cd ot-nrf528xx
Install OpenThread dependencies:
$ ./script/bootstrap
Build OpenThread for the nRF52840 Dongle:
$ script/build nrf52840 USB_trans -DOT_BOOTLOADER=USB -DOT_THREAD_VERSION=1.2
This creates an RCP image at build/bin/ot-rcp
.
Convert the RCP image to the .hex
format:
$ arm-none-eabi-objcopy -O ihex build/bin/ot-rcp build/bin/ot-rcp.hex
Install nRF Util:
$ python3 -m pip install -U nrfutil
Generate the RCP firmware package:
$ nrfutil pkg generate --hw-version 52 --sd-req=0x00 \ --application build/bin/ot-rcp.hex \ --application-version 1 build/bin/ot-rcp.zip
Connect the nRF52840 Dongle to the USB port.
Press the Reset button on the dongle to put it into the DFU mode. Red LED on the dongle starts blinking.
To install the RCP firmware package onto the dongle, run the following command, with /dev/ttyACM0 replaced with the device node name of your nRF52840 Dongle:
$ nrfutil dfu usb-serial -pkg build/bin/ot-rcp.zip -p /dev/ttyACM0