Sample description
The Radio test (Multi domain) sample demonstrates how to configure the Wi-Fi® radio in a specific mode and then test its performance. It provides a set of predefined commands that allow you to configure the radio in the following modes:
Modulated carrier TX
Modulated carrier RX
Tone transmission
IQ sample capture at ADC output
The sample also shows how to program the user region of FICR parameters on the development kit using a set of predefined commands.
Requirements
The sample supports the following development kits:
Hardware platforms |
PCA |
Board name |
Shields |
|
|---|---|---|---|---|
PCA20065 |
|
|||
PCA20053 |
|
|
||
PCA10090 |
|
|
||
nRF7120 DK |
nrf7120dk |
|
||
PCA10143 |
|
|||
PCA10143 |
|
|||
PCA10175 |
|
|
||
PCA10095 |
|
|
||
PCA10056 |
|
|
Overview
To run the tests, connect to the development kit through the serial port and send shell commands. Zephyr’s Shell module is used to handle the commands.
You can start running wifi_radio_test subcommands to set up and control the radio.
See Radio test subcommands for a list of available subcommands.
In the Modulated carrier RX mode, you can use the get_stats subcommand to display the statistics.
See Radio test subcommands for a list of available statistics.
You can use wifi_radio_ficr_prog subcommands to read or write OTP registers.
See FICR programming subcommands for a list of available subcommands.
Note
All the FICR registers are stored in the one-time programmable (OTP) memory. Consequently, the write commands are destructive. Once written, the contents of the OTP registers cannot be reprogrammed.
Building and running
This sample can be found under samples/wifi/radio_test/multi_domain in the nRF Connect SDK folder structure.
To build the sample, follow the instructions in Building an application for your preferred building environment. See also Programming an application for programming steps and Testing and optimization for general information about testing and debugging in the nRF Connect SDK.
Note
When building repository applications in the SDK repositories, building with sysbuild is enabled by default.
If you work with out-of-tree freestanding applications, you need to manually pass the --sysbuild parameter to every build command or configure west to always use it.
To build for the nRF7002 DK, use the nrf7002dk/nrf5340/cpuapp board target.
The following is an example of the CLI command:
west build -b nrf7002dk/nrf5340/cpuapp
To build for the nRF7002 EK and nRF5340 DK, use the nrf5340dk/nrf5340/cpuapp board target with the SHIELD CMake option set to nrf7002ek.
The following is an example of the CLI command:
west build -b nrf5340dk/nrf5340/cpuapp -- -DSHIELD=nrf7002ek
See also Providing CMake options for instructions on how to provide CMake options.
Refer to the sample.yaml file for a complete list of supported boards and their corresponding build command options.
Dependencies
This sample uses the following Zephyr library:
-
include/shell/shell.h