Thread: CoAP¶
Overview¶
The Thread CoAP sample demonstrates how to use OpenThread CoAP API. It can be built to work as a server or as a client.
By running a client and server on two boards, a local Thread network can be created. To create the network, OpenThread uses the network key provided with Kconfig. Once the boards have been flashed, the network will be automatically created and configured.
Once the network is operational, then the client could start interacting with the server. Every time the user presses the button, the LED on server should toggle.
Requirements¶
Before you start, check that you have the required hardware and software:
- 2x nRF54L15 Connect Kit with U.FL cabled 2.4 GHz Antenna
- 2x USB-C Cable
- A computer running macOS, Ubuntu, or Windows 10 or newer
Attaching the 2.4 GHz antenna¶
Before applying power to the board, ensure the U.FL cabled 2.4 GHz antenna is properly installed.
Building the sample¶
To build the sample, follow the instructions in Getting Started Guide to set up your preferred building environment.
Use the following steps to build the Thread CoAP sample on the command line.
-
Open a terminal window.
-
Go to
NCS-Project/nrf54l15-connectkit
repository cloned in the Getting Started Guide. -
Build the sample using the
west build
command, specifying the board (following the-b
option) asnrf54l15_connectkit/nrf54l15/cpuapp
.Tip
The
-p
always option forces a pristine build, and is recommended for new users. Users may also use the-p auto
option, which will use heuristics to determine if a pristine build is required, such as when building another sample. -
After building the sample successfully, the firmware with the name
merged.hex
can be found in thebuild
directory.
Flashing the firmware¶
Connect the nRF54L15 Connect Kit to the computer with a USB-C cable:
Then flash the sample using west flash
:
Tip
In case you wonder, the west flash
will execute the following command:
Testing¶
After both the server and the client are programmed, complete the following steps to test communication between boards:
-
Connect to both boards with a terminal emulator, specifying the primary COM port that your computer uses to communicate with the nRF54L15:
- Start PuTTY.
-
Configure the correct serial port and click Open:
-
Press the DFU/RST button on both boards to reset the nRF54L15.
-
The Thread network will be automatically created and configured. Invoke some of the OpenThread commands to obtain network-related details from each device:
-
Press USR button on the client and you should see the Green LED on the server toggling.
-
The example also provides a shell command to control the LED on the server from the client. To toggle the LED:
Terminal -
You can also get the USR button state on the server from the client:
-
The example uses the broadcast address by default. To control the LED of a specific server, we can use it IPv6 address:
Terminal