nRF528xx ports extend OpenThread Diagnostics Module.
New commands allow for more accurate low level radio testing.
diag listen and diag transmit use radio frame payload specified below.
struct PlatformDiagMessage
{
const char mMessageDescriptor[11];
uint8_t mChannel;
int16_t mID;
uint32_t mCnt;
};
mMessageDescriptor
is a constant string "DiagMessage"
.
mChannel
contains the channel number on which the packet was transmitted.
mID
contains the board ID set with the diag id command.
mCnt
is a counter incremented every time the board transmits diagnostic radio packet.
If the listen mode is enabled and OpenThread was built with theDEFAULT_LOGGING
flag, JSON string is printed every time a diagnostic radio packet is received.
{"Frame":{
"LocalChannel":"<listening board channel>",
"RemoteChannel":"<mChannel>",
"CNT":"<mCnt>",
"LocalID":"<listening board ID>",
"RemoteID":"<mID>",
"RSSI":"<packet RSSI>"
}}
Get the current CCA threshold.
Set the CCA threshold.
Value range: 0 to 255.
Default: 45
.
Manage GPIO pins.
Return the current value of the gpio.
Note: <pinnum> is an integer that combines port and pin into a single, contiguous number space as follows:
pinnum = (port * 32) + pin
See also the NRF_GPIO_PIN_MAP
macro.
> diag gpio 47
gpio 47 = 0
Set the given GPIO to the output mode.
> diag gpio out 47
gpio 47: out
Sets the given GPIO to the input mode with no pull variant.
> diag gpio in 47
gpio 47: in no pull
Sets the given output gpio to high.
> diag gpio set 47
gpio 47 = 1
Sets the given output gpio to low.
> diag gpio clr 47
gpio 47 = 0
Get board ID.
Set board ID.
Value range: 0 to 32767.
Default: -1
.
Get the listen state.
Set the listen state.
0
disables the listen state.
1
enables the listen state.
By default, the listen state is disabled.
Get the temperature from the internal temperature sensor (in degrees Celsius).
Get the message count and the interval between the messages that will be transmitted after diag transmit start
.
Set the interval in ms between the transmitted messages.
Value range: 1 to 4294967295.
Default: 1
.
Set the number of messages to be transmitted.
Value range: 1 to 2147483647
or
For continuous transmission: -1
Default: 1
Stop the ongoing transmission regardless of the remaining number of messages to be sent.
Start transmiting messages with specified interval.
Start transmitting continuous carrier wave.