The OpenThread CLI exposes configuration and management APIs via a command line interface. Use the CLI to play with OpenThread, which can also be used with additional application code. The OpenThread test scripts use the CLI to execute test cases.
The whitespace character (' '
) is used to delimit the command name and the different arguments, together with tab ('\t'
) and new line characters ('\r'
, '\n'
).
Some arguments might require to accept whitespaces on them. For those cases the backslash character ('\'
) can be used to escape separators or the backslash itself.
Example:
> networkname Test\ Network Done > networkname Test Network Done >
Show current Primary Backbone Router information for Thread 1.2 device.
> bbr BBR Primary: server16: 0xE400 seqno: 10 delay: 120 secs timeout: 300 secs Done
> bbr BBR Primary: None Done
Configure the response status for DUA.req with meshLocalIid in payload. Without meshLocalIid, simply respond any coming DUA.req next with the specified status or COAP code.
Only for testing/reference device.
known status value:
> bbr mgmt dua 1 2f7c235e5025a2fd Done > bbr mgmt dua 160 Done
Show the Multicast Listeners.
Only for testing/reference Backbone Router device.
> bbr mgmt mlr listener ff04:0:0:0:0:0:0:abcd 3534000 ff04:0:0:0:0:0:0:eeee 3537610 Done
Add a Multicast Listener with a given IPv6 multicast address and timeout (in seconds).
Only for testing/reference Backbone Router device.
> bbr mgmt mlr listener add ff04::1 Done > bbr mgmt mlr listener add ff04::2 300 Done > bbr mgmt mlr listener ff04:0:0:0:0:0:0:2 261 ff04:0:0:0:0:0:0:1 3522 Done
Removes all the Multicast Listeners.
Only for testing/reference Backbone Router device.
> bbr mgmt mlr listener clear Done > bbr mgmt mlr listener Done
Configure the response status for the next MLR.req.
Only for testing/reference device.
Known status values:
> bbr mgmt mlr response 2 Done
Show local Backbone state ([Disabled
,Primary
, Secondary
]) for Thread 1.2 FTD.
OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr state Disabled Done > bbr state Primary Done > bbr state Secondary Done
Enable Backbone Router Service for Thread 1.2 FTD. SRV_DATA.ntf
would be triggered for attached device if there is no Backbone Router Service in Thread Network Data.
OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr enable Done
Disable Backbone Router Service for Thread 1.2 FTD. SRV_DATA.ntf
would be triggered if Backbone Router is Primary state. o OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr disable Done
Register Backbone Router Service for Thread 1.2 FTD. SRV_DATA.ntf
would be triggered for attached device.
OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr register Done
Show local Backbone Router configuration for Thread 1.2 FTD.
OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr config seqno: 10 delay: 120 secs timeout: 300 secs Done
Configure local Backbone Router configuration for Thread 1.2 FTD. bbr register
should be issued explicitly to register Backbone Router service to Leader for Secondary Backbone Router. SRV_DATA.ntf
would be initiated automatically if BBR Dataset changes for Primary Backbone Router.
OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr config seqno 20 delay 30 Done
Show jitter (in seconds) for Backbone Router registration for Thread 1.2 FTD.
OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr jitter 20 Done
Set jitter (in seconds) for Backbone Router registration for Thread 1.2 FTD.
OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
is required.
> bbr jitter 10 Done
Show current Border Agent information.
Print border agent service port.
> ba port 49152 Done
Print border agent state.
Possible states are
Stopped
: Border Agent is stopped.Started
: Border Agent is running with no active connection with external commissioner.Active
: Border Agent is running and is connected with an external commissioner.> ba state Started Done
Indicates if an ephemeral key is active.
Requires OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE
.
> ba ephemeralkey inactive Done > ba ephemeralkey set Z10X20g3J15w1000P60m16 1000 Done > ba ephemeralkey active Done
Sets the ephemeral key for a given timeout duration.
Requires OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE
.
The ephemeral key can be set when Border Agent is already running and is not currently connected to any external commissioner (i.e., ba state
gives Started
).
The keystring
string is directly used as the ephemeral PSK (excluding the trailing null \0
character). Its length MUST be between 6 and 32, inclusive.
The timeout
is in milliseconds. If not provided or set to zero, the default value of 2 minutes will be used. If the timeout value is larger than 10 minutes, the 10 minutes timeout value will be used instead.
The port
specifies the UDP port to use with the ephemeral key. If UDP port is zero or is not provided, an ephemeral port will be used. ba port
will give the current UDP port in use by the Border Agent.
Setting the ephemeral key again before a previously set one is timed out, will replace the previous one.
While the timeout interval is in effect, the ephemeral key can be used only once by an external commissioner to connect. Once the commissioner disconnects, the ephemeral key is cleared, and Border Agent reverts to using PSKc.
> ba ephemeralkey set Z10X20g3J15w1000P60m16 5000 1234 Done
Cancels the ephemeral key in use if any.
Requires OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE
.
Can be used to cancel a previously set ephemeral key before it is used or times out. If the Border Agent is not running or there is no ephemeral key in use, calling this function has no effect.
If a commissioner is connected using the ephemeral key and is currently active, calling this method does not change its state. In this case the ba ephemeralkey
will continue to return active
until the commissioner disconnects.
> ba ephemeralkey clear Done
Enables callback from Border Agent for ephemeral key state changes.
> ba ephemeralkey callback enable Done > ba ephemeralkey set W10X12 5000 49155 Done BorderAgent callback: Ephemeral key active, port:49155 BorderAgent callback: Ephemeral key inactive
Disables callback from Border Agent for ephemeral key state changes.
> ba ephemeralkey callback disable Done
Show the current message buffer information.
total
shows total number of message buffers in pool.free
shows the number of free message buffers.max-used
shows the maximum number of used buffers at the same time since OT stack initialization or last bufferinfo reset
.> bufferinfo total: 40 free: 40 max-used: 5 6lo send: 0 0 0 6lo reas: 0 0 0 ip6: 0 0 0 mpl: 0 0 0 mle: 0 0 0 coap: 0 0 0 coap secure: 0 0 0 application coap: 0 0 0 Done
Reset the message buffer counter tracking maximum number buffers in use at the same time.
> bufferinfo reset Done
Get the CCA threshold in dBm measured at antenna connector per IEEE 802.15.4 - 2015 section 10.1.4.
> ccathreshold -75 dBm Done
Set the CCA threshold measured at antenna connector per IEEE 802.15.4 - 2015 section 10.1.4.
> ccathreshold -62 Done
Get the IEEE 802.15.4 Channel value.
> channel 11 Done
Set the IEEE 802.15.4 Channel value.
> channel 11 Done
Get channel manager state.
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
is required.
channel: 11 auto: 1 delay: 120 interval: 10800 supported: { 11-26} favored: { 11-26} Done
Initiate a channel change with the channel manager.
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
is required.
> channel manager change 11 channel manager change 11 Done
Request a channel selection with the channel manager.
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
are required.
> channel manager select 1 channel manager select 1 Done
Enable/disable the auto-channel-selection functionality.
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
are required.
> channel manager auto 1 channel manager auto 1 Done
Set the channel change delay (in seconds).
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
are required.
> channel manager delay 120 channel manager delay 120 Done
Set the auto-channel-selection interval (in seconds).
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
are required.
> channel manager interval 10800 channel manager interval 10800 Done
Set the supported channel mask for the auto-channel-selection.
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
are required.
> channel manager supported 0x7fffc00 channel manager supported 0x7fffc00 Done
Set the favored channel mask for the auto-channel-selection.
OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE
and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
are required.
> channel manager favored 0x7fffc00 channel manager favored 0x7fffc00 Done
Get current channel monitor state and channel occupancy.
OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
is required.
> channel monitor channel monitor enabled: 1 interval: 41000 threshold: -75 window: 960 count: 10552 occupancies: ch 11 (0x0cb7) 4.96% busy ch 12 (0x2e2b) 18.03% busy ch 13 (0x2f54) 18.48% busy ch 14 (0x0fef) 6.22% busy ch 15 (0x1536) 8.28% busy ch 16 (0x1746) 9.09% busy ch 17 (0x0b8b) 4.50% busy ch 18 (0x60a7) 37.75% busy ch 19 (0x0810) 3.14% busy ch 20 (0x0c2a) 4.75% busy ch 21 (0x08dc) 3.46% busy ch 22 (0x101d) 6.29% busy ch 23 (0x0092) 0.22% busy ch 24 (0x0028) 0.06% busy ch 25 (0x0063) 0.15% busy ch 26 (0x058c) 2.16% busy Done
Start the channel monitor.
OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
is required.
> channel monitor start channel monitor start Done
Stop the channel monitor.
OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE
is required.
> channel monitor stop channel monitor stop Done
Get preferred channel mask.
> channel preferred 0x7fff800 Done
Get supported channel mask.
> channel supported 0x7fff800 Done
List attached Child IDs.
> child list 1 2 3 6 7 8 Done
Print table of attached children.
> child table | ID | RLOC16 | Timeout | Age | LQ In | C_VN |R|D|N|Ver|CSL|QMsgCnt|Suprvsn| Extended MAC | +-----+--------+------------+------------+-------+------+-+-+-+---+---+-------+-------+------------------+ | 1 | 0xc801 | 240 | 24 | 3 | 131 |1|0|0| 3| 0 | 0 | 129 | 4ecede68435358ac | | 2 | 0xc802 | 240 | 2 | 3 | 131 |0|0|0| 3| 1 | 0 | 0 | a672a601d2ce37d8 | Done
Print diagnostic information for an attached Thread Child. The id
may be a Child ID or an RLOC16.
> child 1 Child ID: 1 Rloc: 9c01 Ext Addr: e2b3540590b0fd87 Mode: rn CSL Synchronized: 1 Net Data: 184 Timeout: 100 Age: 0 Link Quality In: 3 RSSI: -20 Supervision Interval: 129 Done
Get the list of IP addresses stored for MTD children.
> childip 3401: fdde:ad00:beef:0:3037:3e03:8c5f:bc0c Done
Get the maximum number of IP addresses that each MTD child may register with this device as parent.
> childip max 4 Done
Set the maximum number of IP addresses that each MTD child may register with this device as parent. 0 to clear the setting and restore the default.
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is required.
> childip max 2 Done
Get the Thread maximum number of allowed children.
> childmax 5 Done
Set the Thread maximum number of allowed children.
> childmax 2 Done
Get the Child Supervision interval value on the child.
Child Supervision feature provides a mechanism for parent to ensure that a message is sent to each sleepy child within the supervision interval. If there is no transmission to the child within the supervision interval, OpenThread enqueues and sends a Child Supervision Message to the child.
> childsupervision interval 30 Done
Set the Child Supervision interval value on the child.
> childsupervision interval 30 Done
Get the Child Supervision Check Timeout value on the child.
If the device is a sleepy child and it does not hear from its parent within the specified check timeout, it initiates the re-attach process (MLE Child Update Request/Response exchange with its parent).
> childsupervision checktimeout 30 Done
Set the Child Supervision Check Timeout value on the child.
> childsupervision checktimeout 30 Done
Get the current value of supervision check timeout failure counter.
The counter tracks the number of supervision check failures on the child. It is incremented when the child does not hear from its parent within the specified check timeout interval.
> childsupervision failcounter 0 Done
Reset the supervision check timeout failure counter to zero.
> childsupervision failcounter reset Done
Get the Thread Child Timeout value.
> childtimeout 300 Done
Set the Thread Child Timeout value.
> childtimeout 300 Done
Get the coex status.
OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE
is required.
> coex Enabled Done
Disable coex.
OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE
is required.
> coex disable Done
Enable coex.
OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE
is required.
> coex enable Done
Show coex metrics.
OPENTHREAD_CONFIG_PLATFORM_RADIO_COEX_ENABLE
is required.
> coex metrics Stopped: false Grant Glitch: 0 Transmit metrics Request: 0 Grant Immediate: 0 Grant Wait: 0 Grant Wait Activated: 0 Grant Wait Timeout: 0 Grant Deactivated During Request: 0 Delayed Grant: 0 Average Request To Grant Time: 0 Receive metrics Request: 0 Grant Immediate: 0 Grant Wait: 0 Grant Wait Activated: 0 Grant Wait Timeout: 0 Grant Deactivated During Request: 0 Delayed Grant: 0 Average Request To Grant Time: 0 Grant None: 0 Done
Get the CONTEXT_ID_REUSE_DELAY value.
> contextreusedelay 11 Done
Set the CONTEXT_ID_REUSE_DELAY value.
> contextreusedelay 11 Done
Get the supported counter names.
> counters br ip mac mle Done
Get the counter value.
Note:
OPENTHREAD_CONFIG_UPTIME_ENABLE
is required for MLE role time tracking in counters mle
OPENTHREAD_CONFIG_IP6_BR_COUNTERS_ENABLE
is required for counters br
> counters mac TxTotal: 10 TxUnicast: 3 TxBroadcast: 7 TxAckRequested: 3 TxAcked: 3 TxNoAckRequested: 7 TxData: 10 TxDataPoll: 0 TxBeacon: 0 TxBeaconRequest: 0 TxOther: 0 TxRetry: 0 TxErrCca: 0 TxErrBusyChannel: 0 RxTotal: 2 RxUnicast: 1 RxBroadcast: 1 RxData: 2 RxDataPoll: 0 RxBeacon: 0 RxBeaconRequest: 0 RxOther: 0 RxAddressFiltered: 0 RxDestAddrFiltered: 0 RxDuplicated: 0 RxErrNoFrame: 0 RxErrNoUnknownNeighbor: 0 RxErrInvalidSrcAddr: 0 RxErrSec: 0 RxErrFcs: 0 RxErrOther: 0 Done > counters mle Role Disabled: 0 Role Detached: 1 Role Child: 0 Role Router: 0 Role Leader: 1 Attach Attempts: 1 Partition Id Changes: 1 Better Partition Attach Attempts: 0 Parent Changes: 0 Time Disabled Milli: 10026 Time Detached Milli: 6852 Time Child Milli: 0 Time Router Milli: 0 Time Leader Milli: 16195 Time Tracked Milli: 33073 Done > counters ip TxSuccess: 10 TxFailed: 0 RxSuccess: 5 RxFailed: 0 Done > counters br Inbound Unicast: Packets 4 Bytes 320 Inbound Multicast: Packets 0 Bytes 0 Outbound Unicast: Packets 2 Bytes 160 Outbound Multicast: Packets 0 Bytes 0 RA Rx: 4 RA TxSuccess: 2 RA TxFailed: 0 RS Rx: 0 RS TxSuccess: 2 RS TxFailed: 0 Done
Reset the counter value.
> counters mac reset Done > counters mle reset Done > counters ip reset Done
Get the CSL configuration.
CSL period is shown in microseconds.
> csl Channel: 11 Period: 160000us Timeout: 1000s Done
Set CSL channel.
> csl channel 20 Done
Set CSL period in microseconds. Disable CSL by setting this parameter to 0
.
The CSL period MUST be a multiple 160 microseconds which is 802.15.4 “ten symbols time”.
> csl period 30000000 Done
Set the CSL timeout in seconds.
> csl timeout 10 Done
Executes a series of CLI commands to gather information about the device and thread network. This is intended for debugging.
The output will display each executed CLI command preceded by “$”, followed by the corresponding command's generated output.
The generated output encompasses the following information:
If the device is operating as FTD:
If the device supports and acts as an SRP client:
If the device supports and acts as an SRP sever:
If the device supports TREL:
If the device supports and acts as a border router:
Get the minimal delay timer (in seconds).
> delaytimermin 30 Done
Set the minimal delay timer (in seconds).
> delaytimermin 60 Done
Start the graceful detach process by first notifying other nodes (sending Address Release if acting as a router, or setting Child Timeout value to zero on parent if acting as a child) and then stopping Thread protocol operation.
> detach Finished detaching Done
Start the graceful detach process similar to the detach
command without blocking and waiting for the callback indicating that detach is finished.
> detach async Done
Get the current device properties.
> deviceprops PowerSupply : external IsBorderRouter : yes SupportsCcm : no IsUnstable : no WeightAdjustment : 0 Done
Set the device properties which are then used to determine and set the Leader Weight.
battery
, external
, external-stable
, or external-unstable
.> deviceprops battery 0 0 0 -5 Done > deviceprops PowerSupply : battery IsBorderRouter : no SupportsCcm : no IsUnstable : no WeightAdjustment : -5 Done > leaderweight 51 Done
Perform an MLE Discovery operation.
> discover | J | Network Name | Extended PAN | PAN | MAC Address | Ch | dBm | LQI | +---+------------------+------------------+------+------------------+----+-----+-----+ | 0 | OpenThread | dead00beef00cafe | ffff | f1d92a82c8d8fe43 | 11 | -20 | 0 | Done
Get the default query config used by DNS client.
The config includes
srv
: Query for SRV record only.txt
: Query for TXT record only.srv_txt
: Query for both SRV and TXT records in the same message.srv_txt_sep
: Query in parallel for SRV and TXT using separate messages.srv_txt_opt
: Query for TXT/SRV together first, if it fails then query separately.OPENTHREAD_CONFIG_DNS_CLIENT_NAT64_ENABLE
)OPENTHREAD_CONFIG_DNS_CLIENT_OVER_TCP_ENABLE
)> dns config Server: [fd00:0:0:0:0:0:0:1]:1234 ResponseTimeout: 5000 ms MaxTxAttempts: 2 RecursionDesired: no ServiceMode: srv_txt_opt Nat64Mode: allow TransportProtocol: udp Done >
Set the default query config.
Service mode specifies which records to query. Possible options are:
def
: Use default option.srv
: Query for SRV record only.txt
: Query for TXT record only.srv_txt
: Query for both SRV and TXT records in the same message.srv_txt_sep
: Query in parallel for SRV and TXT using separate messages.srv_txt_opt
: Query for TXT/SRV together first, if it fails then query separately.To set protocol effectively to tcp OPENTHREAD_CONFIG_DNS_CLIENT_OVER_TCP_ENABLE
is required.
> dns config fd00::1 1234 5000 2 0 srv_txt_sep tcp Done > dns config Server: [fd00:0:0:0:0:0:0:1]:1234 ResponseTimeout: 5000 ms MaxTxAttempts: 2 RecursionDesired: no ServiceMode: srv_txt_sep Nat64Mode: allow TransportProtocol: tcp Done
We can leave some of the fields as unspecified (or use value zero). The unspecified fields are replaced by the corresponding OT config option definitions OPENTHREAD_CONFIG_DNS_CLIENT_DEFAULT_{}
to form the default query config.
> dns config fd00::2 Done > dns config Server: [fd00:0:0:0:0:0:0:2]:53 ResponseTimeout: 3000 ms MaxTxAttempts: 3 RecursionDesired: yes Done
Send DNS Query to obtain IPv6 address for given hostname.
The parameters after hostname
are optional. Any unspecified (or zero) value for these optional parameters is replaced by the value from the current default config (dns config
).
To use tcp, OPENTHREAD_CONFIG_DNS_CLIENT_OVER_TCP_ENABLE
is required.
> dns resolve ipv6.google.com > DNS response for ipv6.google.com - 2a00:1450:401b:801:0:0:0:200e TTL: 300
The DNS server IP can be an IPv4 address, which will be synthesized to an IPv6 address using the preferred NAT64 prefix from the network data.
Note: The command will return
InvalidState
when the DNS server IP is an IPv4 address but the preferred NAT64 prefix is unavailable.
> dns resolve example.com 8.8.8.8 Synthesized IPv6 DNS server address: fdde:ad00:beef:2:0:0:808:808 DNS response for example.com. - fd4c:9574:3720:2:0:0:5db8:d822 TTL:20456 Done
Send DNS query to obtain IPv4 address for a given hostname and provide the NAT64 synthesized IPv6 addresses for the IPv4 addresses from the query response.
Requires OPENTHREAD_CONFIG_DNS_CLIENT_NAT64_ENABLE
.
The parameters after hostname
are optional. Any unspecified (or zero) value for these optional parameters is replaced by the value from the current default config (dns config
).
This command requires a NAT64 prefix to be configured and present in Thread Network Data.
For example, if a NAT64 prefix of 2001:db8:122:344::/96
is used within the Thread mesh, the outputted IPv6 address corresponds to an IPv4 address of 142.250.191.78
for the ipv4.google.com
host:
> dns resolve4 ipv4.google.com > DNS response for ipv4.google.com - 2001:db8:122:344:0:0:8efa:bf4e TTL: 20456
Send a browse (service instance enumeration) DNS query to get the list of services for given service-name.
The parameters after service-name
are optional. Any unspecified (or zero) value for these optional parameters is replaced by the value from the current default config (dns config
).
> dns browse _service._udp.example.com DNS browse response for _service._udp.example.com. inst1 inst2 inst3 Done
The detailed service info (port number, weight, host name, TXT data, host addresses) is outputted only when provided by server/resolver in the browse response (in additional Data Section). This is a SHOULD and not a MUST requirement, and servers/resolvers are not required to provide this.
The recommended behavior, which is supported by the OpenThread DNS-SD resolver, is to only provide the additional data when there is a single instance in the response. However, users should assume that the browse response may only contain the list of matching service instances and not any detail service info. To resolve a service instance, users can use the dns service
or dns servicehost
commands.
> dns browse _service._udp.example.com DNS browse response for _service._udp.example.com. inst1 Port:1234, Priority:1, Weight:2, TTL:7200 Host:host.example.com. HostAddress:fd00:0:0:0:0:0:0:abcd TTL:7200 TXT:[a=6531, b=6c12] TTL:7300 Done
> dns browse _airplay._tcp.default.service.arpa DNS browse response for _airplay._tcp.default.service.arpa. Gabe's Mac mini Port:7000, Priority:0, Weight:0, TTL:10 Host:Gabes-Mac-mini.default.service.arpa. HostAddress:fd97:739d:386a:1:1c2e:d83c:fcbe:9cf4 TTL:10 Done
Note: The DNS server IP can be an IPv4 address, which will be synthesized to an IPv6 address using the preferred NAT64 prefix from the network data. The command will return
InvalidState
when the DNS server IP is an IPv4 address but the preferred NAT64 prefix is unavailable. When testing DNS-SD discovery proxy, the zone is notlocal
and instead should bedefault.service.arpa
.
Send a service instance resolution DNS query for a given service instance. Service instance label is provided first, followed by the service name (note that service instance label can contain dot ‘.’ character).
The parameters after service-name
are optional. Any unspecified (or zero) value for these optional parameters is replaced by the value from the current default config (dns config
).
Note: The DNS server IP can be an IPv4 address, which will be synthesized to an IPv6 address using the preferred NAT64 prefix from the network data. The command will return
InvalidState
when the DNS server IP is an IPv4 address but the preferred NAT64 prefix is unavailable.
Send a service instance resolution DNS query for a given service instance with a potential follow-up address resolution for the host name discovered for the service instance (if the server/resolver does not provide AAAA/A records for the host name in the response to SRV query).
Service instance label is provided first, followed by the service name (note that service instance label can contain dot ‘.’ character).
The parameters after service-name
are optional. Any unspecified (or zero) value for these optional parameters is replaced by the value from the current default config (dns config
).
Enable/Disable the “DNS name compression” mode.
By default DNS name compression is enabled. When disabled, DNS names are appended as full and never compressed. This is applicable to OpenThread's DNS and SRP client/server modules.
This is intended for testing only and available under REFERENCE_DEVICE
config.
Get the current “DNS name compression” mode.
> dns compression Enabled
Set the “DNS name compression” mode.
> dns compression disable Done > > > dns compression Disabled Done
Get the Thread Domain Name for Thread 1.2 device.
> domainname Thread Done
Set the Thread Domain Name for Thread 1.2 device.
> domainname Test\ Thread Done
Get the Interface Identifier manually specified for Thread Domain Unicast Address on Thread 1.2 device.
> dua iid 0004000300020001 Done
Set the Interface Identifier manually specified for Thread Domain Unicast Address on Thread 1.2 device.
> dua iid 0004000300020001 Done
Clear the Interface Identifier manually specified for Thread Domain Unicast Address on Thread 1.2 device.
> dua iid clear Done
Print the EID-to-RLOC cache entries.
> eidcache fd49:caf4:a29f:dc0e:97fc:69dd:3c16:df7d 2000 cache canEvict=1 transTime=0 eid=fd49:caf4:a29f:dc0e:97fc:69dd:3c16:df7d fd49:caf4:a29f:dc0e:97fc:69dd:3c16:df7f fffe retry canEvict=1 timeout=10 retryDelay=30 Done
Get the factory-assigned IEEE EUI-64.
> eui64 0615aae900124b00 Done
Get the IEEE 802.15.4 Extended Address.
> extaddr dead00beef00cafe Done
Set the IEEE 802.15.4 Extended Address.
> extaddr dead00beef00cafe dead00beef00cafe Done
Get the Thread Extended PAN ID value.
NOTE The current commissioning credential becomes stale after changing this value. Use pskc to reset.
> extpanid dead00beef00cafe Done
Set the Thread Extended PAN ID value.
> extpanid dead00beef00cafe Done
Delete all stored settings, and signal a platform reset.
> factoryreset
Send fake Thread messages.
Note: Only for certification test.
> fake /a/an fdde:ad00:beef:0:0:ff:fe00:a800 fd00:7d03:7d03:7d03:55f2:bb6a:7a43:a03b 1111222233334444 Done
Get external FEM parameters.
> fem LNA gain 11 dBm Done
Get the Rx LNA gain in dBm of the external FEM.
> fem lnagain 11 Done
Set the Rx LNA gain in dBm of the external FEM.
> fem lnagain 8 Done
Show the status of the IPv6 interface.
> ifconfig down Done
Bring up the IPv6 interface.
> ifconfig up Done
Bring down the IPv6 interface.
> ifconfig down Done
Show OpenThread instance identifier.
> instanceid 468697314 Done
List all IPv6 addresses assigned to the Thread interface.
> ipaddr fdde:ad00:beef:0:0:ff:fe00:0 fdde:ad00:beef:0:558:f56b:d688:799 fe80:0:0:0:f3d9:2a82:c8d8:fe43 Done
Use -v
to get more verbose information about the address:
origin
: can be thread
, slaac
, dhcp6
, or manual
, and indicates the origin of the addressplen
: prefix length (in bits)preferred
: preferred flag (boolean)valid
: valid flag (boolean)> ipaddr -v fd5e:18fa:f4a5:b8:0:ff:fe00:fc00 origin:thread plen:64 preferred:0 valid:1 fd5e:18fa:f4a5:b8:0:ff:fe00:dc00 origin:thread plen:64 preferred:0 valid:1 fd5e:18fa:f4a5:b8:f8e:5d95:87a0:e82c origin:thread plen:64 preferred:0 valid:1 fe80:0:0:0:4891:b191:e277:8826 origin:thread plen:64 preferred:1 valid:1 Done
Add an IPv6 address to the Thread interface.
> ipaddr add 2001::dead:beef:cafe Done
Delete an IPv6 address from the Thread interface.
> ipaddr del 2001::dead:beef:cafe Done
Print Thread link-local IPv6 address.
> ipaddr linklocal fe80:0:0:0:f3d9:2a82:c8d8:fe43 Done
Print Thread Mesh Local EID address.
> ipaddr mleid fdde:ad00:beef:0:558:f56b:d688:799 Done
Print Thread Routing Locator (RLOC) address.
> ipaddr rloc fdde:ad00:beef:0:0:ff:fe00:0 Done
List all IPv6 multicast addresses subscribed to the Thread interface.
> ipmaddr ff05:0:0:0:0:0:0:1 ff33:40:fdde:ad00:beef:0:0:1 ff32:40:fdde:ad00:beef:0:0:1 Done
Subscribe the Thread interface to the IPv6 multicast address.
> ipmaddr add ff05::1 Done
Unsubscribe the Thread interface to the IPv6 multicast address.
> ipmaddr del ff05::1 Done
Get the Link-Local All Thread Nodes multicast address.
> ipmaddr llatn ff32:40:fdde:ad00:beef:0:0:1 Done
Get multicast promiscuous mode.
> ipmaddr promiscuous Disabled Done
Enable multicast promiscuous mode.
> ipmaddr promiscuous enable Done
Disable multicast promiscuous mode.
> ipmaddr promiscuous disable Done
Get the Realm-Local All Thread Nodes multicast address.
> ipmaddr rlatn ff33:40:fdde:ad00:beef:0:0:1 Done
Set the Joiner port.
> joinerport 1000 Done
Get the Thread Key Sequence Counter.
> keysequence counter 10 Done
Set the Thread Key Sequence Counter.
This command is reserved for testing and demo purposes only. Changing Key Sequence Counter will render a production application non-compliant with the Thread Specification.
> keysequence counter 10 Done
Get Thread Key Switch Guard Time (in hours)
> keysequence guardtime 0 Done
Set Thread Key Switch Guard Time (in hours).
This command is reserved for testing and demo purposes only. Changing Key Switch Guard Time will render a production application non-compliant with the Thread Specification.
> keysequence guardtime 0 Done
Show the Thread Leader Data.
> leaderdata Partition ID: 1077744240 Weighting: 64 Data Version: 109 Stable Data Version: 211 Leader Router ID: 60 Done
Get the Thread Leader Weight.
> leaderweight 128 Done
Set the Thread Leader Weight.
> leaderweight 128 Done
Send a Link Metrics Management Request to clear an Enhanced-ACK Based Probing.
> linkmetrics mgmt fe80:0:0:0:3092:f334:1455:1ad2 enhanced-ack clear Done > Received Link Metrics Management Response from: fe80:0:0:0:3092:f334:1455:1ad2 Status: Success
Send a Link Metrics Management Request to register an Enhanced-ACK Based Probing.
reserved
. This is used to verify the Probing Subject correctly handles invalid Type Id Flags. This is only available when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is enabled.> linkmetrics mgmt fe80:0:0:0:3092:f334:1455:1ad2 enhanced-ack register qm Done > Received Link Metrics Management Response from: fe80:0:0:0:3092:f334:1455:1ad2 Status: Success > linkmetrics mgmt fe80:0:0:0:3092:f334:1455:1ad2 enhanced-ack register qm r Done > Received Link Metrics Management Response from: fe80:0:0:0:3092:f334:1455:1ad2 Status: Cannot support new series
Send a Link Metrics Management Request to configure a Forward Tracking Series.
> linkmetrics mgmt fe80:0:0:0:3092:f334:1455:1ad2 forward 1 dra pqmr Done > Received Link Metrics Management Response from: fe80:0:0:0:3092:f334:1455:1ad2 Status: SUCCESS
Send a MLE Link Probe message to the peer.
> linkmetrics probe fe80:0:0:0:3092:f334:1455:1ad2 1 10 Done
Perform a Link Metrics query (Single Probe).
> linkmetrics query fe80:0:0:0:3092:f334:1455:1ad2 single qmr Done > Received Link Metrics Report from: fe80:0:0:0:3092:f334:1455:1ad2 - LQI: 76 (Exponential Moving Average) - Margin: 82 (dB) (Exponential Moving Average) - RSSI: -18 (dBm) (Exponential Moving Average)
Perform a Link Metrics query (Forward Tracking Series).
> linkmetrics query fe80:0:0:0:3092:f334:1455:1ad2 forward 1 Done > Received Link Metrics Report from: fe80:0:0:0:3092:f334:1455:1ad2 - PDU Counter: 2 (Count/Summation) - LQI: 76 (Exponential Moving Average) - Margin: 82 (dB) (Exponential Moving Average) - RSSI: -18 (dBm) (Exponential Moving Average)
Disable the Link Metrics Manager.
OPENTHREAD_CONFIG_LINK_METRICS_MANAGER_ENABLE
is required.
> linkmetricsmgr disable Done
Enable the Link Metrics Manager.
OPENTHREAD_CONFIG_LINK_METRICS_MANAGER_ENABLE
is required.
> linkmetricsmgr enable Done
Display the Link Metrics data of all subjects. The subjects are identified by its extended address.
OPENTHREAD_CONFIG_LINK_METRICS_MANAGER_ENABLE
is required.
> linkmetricsmgr show ExtAddr:827aa7f7f63e1234, LinkMargin:80, Rssi:-20 Done
Gets the current state (In Progress
or Idle
) of anycast locator.
OPENTHREAD_CONFIG_TMF_ANYCAST_LOCATOR_ENABLE
is required.
> locate Idle Done > locate fdde:ad00:beef:0:0:ff:fe00:fc10 > locate In Progress Done
Locate the closest destination of an anycast address (i.e., find the destination's mesh local EID and RLOC16).
OPENTHREAD_CONFIG_TMF_ANYCAST_LOCATOR_ENABLE
is required.
The closest destination is determined based on the the current routing table and path costs within the Thread mesh.
Locate the leader using its anycast address:
> locate fdde:ad00:beef:0:0:ff:fe00:fc00 fdde:ad00:beef:0:d9d3:9000:16b:d03b 0xc800 Done
Locate the closest destination of a service anycast address:
> srp server enable Done > netdata show Prefixes: Routes: Services: 44970 5d c002 s c800 44970 5d c002 s cc00 Done > locate fdde:ad00:beef:0:0:ff:fe00:fc10 fdde:ad00:beef:0:a477:dc98:a4e4:71ea 0xcc00 done
OPENTHREAD_EXAMPLES_SIMULATION
OPENTHREAD_CONFIG_LOG_OUTPUT == OPENTHREAD_CONFIG_LOG_OUTPUT_DEBUG_UART
Specifies filename to capture otPlatLog() messages, useful when debugging automated test scripts on Linux when logging disrupts the automated test scripts.
Get the log level.
> log level 1 Done
Set the log level.
> log level 4 Done
Discover network topology (list of routers and their connections).
This command requires OPENTHREAD_CONFIG_MESH_DIAG_ENABLE
and OPENTHREAD_FTD
.
Parameters are optional and indicate additional items to discover. Can be added in any order.
ip6-addrs
to discover the list of IPv6 addresses of every router.children
to discover the child table of every router.Output lists all discovered routers. Information per router:
me
)parent
)leader
br
)3-links
: Router IDs to which this router has a incoming link with link quality 32-links
: Router IDs to which this router has a incoming link with link quality 21-links
: Router IDs to which this router has a incoming link with link quality 1ip6-addrs
, list of IPv6 addresses of the routerchildren
, list of all children of the router. Information per child:r
rx-on-when-idle, d
Full Thread Device, n
Full Network Data, -
no flags set)me
)br
)Discover network topology:
> meshdiag topology id:02 rloc16:0x0800 ext-addr:8aa57d2c603fe16c ver:4 - me - leader 3-links:{ 46 } id:46 rloc16:0xb800 ext-addr:fe109d277e0175cc ver:4 3-links:{ 02 51 57 } id:33 rloc16:0x8400 ext-addr:d2e511a146b9e54d ver:4 3-links:{ 51 57 } id:51 rloc16:0xcc00 ext-addr:9aab43ababf05352 ver:4 3-links:{ 33 57 } 2-links:{ 46 } id:57 rloc16:0xe400 ext-addr:dae9c4c0e9da55ff ver:4 3-links:{ 46 51 } 1-links:{ 33 } Done
Discover network topology with router's IPv6 addresses and children:
> meshdiag topology children ip6-addrs id:62 rloc16:0xf800 ext-addr:ce349873897233a5 ver:4 - me - br 3-links:{ 46 } ip6-addrs: fdde:ad00:beef:0:0:ff:fe00:f800 fdde:ad00:beef:0:211d:39e9:6b2e:4ad1 fe80:0:0:0:cc34:9873:8972:33a5 children: none id:02 rloc16:0x0800 ext-addr:8aa57d2c603fe16c ver:4 - leader - br 3-links:{ 46 51 } ip6-addrs: fdde:ad00:beef:0:0:ff:fe00:fc00 fdde:ad00:beef:0:0:ff:fe00:800 fdde:ad00:beef:0:8a36:a3eb:47ae:a9b0 fe80:0:0:0:88a5:7d2c:603f:e16c children: rloc16:0x0803 lq:3, mode:rn rloc16:0x0804 lq:3, mode:rdn id:33 rloc16:0x8400 ext-addr:d2e511a146b9e54d ver:4 3-links:{ 57 } ip6-addrs: fdde:ad00:beef:0:0:ff:fe00:8400 fdde:ad00:beef:0:824:a126:cf19:a9f4 fe80:0:0:0:d0e5:11a1:46b9:e54d children: none id:51 rloc16:0xcc00 ext-addr:9aab43ababf05352 ver:4 3-links:{ 02 46 57 } ip6-addrs: fdde:ad00:beef:0:0:ff:fe00:cc00 fdde:ad00:beef:0:2986:bba3:12d0:1dd2 fe80:0:0:0:98ab:43ab:abf0:5352 children: none id:57 rloc16:0xe400 ext-addr:dae9c4c0e9da55ff ver:4 3-links:{ 33 51 } ip6-addrs: fdde:ad00:beef:0:0:ff:fe00:e400 fdde:ad00:beef:0:87d0:550:bc18:9920 fe80:0:0:0:d8e9:c4c0:e9da:55ff children: rloc16:0xe402 lq:3, mode:rn - br rloc16:0xe403 lq:3, mode:rn id:46 rloc16:0xb800 ext-addr:fe109d277e0175cc ver:4 3-links:{ 02 51 62 } ip6-addrs: fdde:ad00:beef:0:0:ff:fe00:b800 fdde:ad00:beef:0:df4d:2994:d85c:c337 fe80:0:0:0:fc10:9d27:7e01:75cc children: none Done
Discover network topology with children:
> meshdiag topology children id:02 rloc16:0x0800 ext-addr:8aa57d2c603fe16c ver:4 - parent - leader - br 3-links:{ 46 51 } children: rloc16:0x0803 lq:0, mode:rn rloc16:0x0804 lq:0, mode:rdn - me id:46 rloc16:0xb800 ext-addr:fe109d277e0175cc ver:4 3-links:{ 02 51 62 } children: none id:33 rloc16:0x8400 ext-addr:d2e511a146b9e54d ver:4 3-links:{ 57 } children: none id:51 rloc16:0xcc00 ext-addr:9aab43ababf05352 ver:4 3-links:{ 02 46 57 } children: none id:57 rloc16:0xe400 ext-addr:dae9c4c0e9da55ff ver:4 3-links:{ 33 51 } children: rloc16:0xe402 lq:3, mode:rn - br rloc16:0xe403 lq:3, mode:rn id:62 rloc16:0xf800 ext-addr:ce349873897233a5 ver:4 - br 3-links:{ 46 } children: none
Start a query for child table of a router with a given RLOC16.
Output lists all child entries. Information per child:
> meshdiag childtable 0x6400 rloc16:0x6402 ext-addr:8e6f4d323bbed1fe ver:4 timeout:120 age:36 supvn:129 q-msg:0 rx-on:yes type:ftd full-net:yes rss - ave:-20 last:-20 margin:80 err-rate - frame:11.51% msg:0.76% conn-time:00:11:07 csl - sync:no period:0 timeout:0 channel:0 rloc16:0x6403 ext-addr:ee24e64ecf8c079a ver:4 timeout:120 age:19 supvn:129 q-msg:0 rx-on:no type:mtd full-net:no rss - ave:-20 last:-20 margin:80 err-rate - frame:0.73% msg:0.00% conn-time:01:08:53 csl - sync:no period:0 timeout:0 channel:0 Done
Send a query to a parent to retrieve the IPv6 addresses of all its MTD children.
> meshdiag childip6 0xdc00 child-rloc16: 0xdc02 fdde:ad00:beef:0:ded8:cd58:b73:2c21 fd00:2:0:0:c24a:456:3b6b:c597 fd00:1:0:0:120b:95fe:3ecc:d238 child-rloc16: 0xdc03 fdde:ad00:beef:0:3aa6:b8bf:e7d6:eefe fd00:2:0:0:8ff8:a188:7436:6720 fd00:1:0:0:1fcf:5495:790a:370f Done
Start a query for router neighbor table of a router with a given RLOC16.
Output lists all router neighbor entries. Information per entry:
> meshdiag routerneighbortable 0x7400 rloc16:0x9c00 ext-addr:764788cf6e57a4d2 ver:4 rss - ave:-20 last:-20 margin:80 err-rate - frame:1.38% msg:0.00% conn-time:01:54:02 rloc16:0x7c00 ext-addr:4ed24fceec9bf6d3 ver:4 rss - ave:-20 last:-20 margin:80 err-rate - frame:0.72% msg:0.00% conn-time:00:11:27 Done
Set the Mesh Local IID.
It must be used before Thread stack is enabled.
Only for testing/reference device.
> mliid 1122334455667788 Done
Register Multicast Listeners to Primary Backbone Router, with an optional timeout
(in seconds).
Omit timeout
to use the default MLR timeout on the Primary Backbone Router.
Use timeout = 0
to deregister Multicast Listeners.
NOTE: Only for Thread 1.2 Commissioner FTD device.
> mlr reg ff04::1 status 0, 0 failed Done > mlr reg ff04::1 ff04::2 ff02::1 status 2, 1 failed ff02:0:0:0:0:0:0:1 Done > mlr reg ff04::1 ff04::2 1000 status 0, 0 failed Done > mlr reg ff04::1 ff04::2 0 status 0, 0 failed Done
Get the Thread Device Mode value.
> mode rdn Done
Set the Thread Device Mode value.
> mode rdn Done
> mode - Done
Get the list of supported radio links by the device.
This command is always available, even when only a single radio is supported by the device.
> multiradio [15.4, TREL] Done
Get the list of neighbors and their supported radios and their preference.
This command is only available when device supports more than one radio link.
> multiradio neighbor list ExtAddr:3a65bc38dbe4a5be, RLOC16:0xcc00, Radios:[15.4(255), TREL(255)] ExtAddr:17df23452ee4a4be, RLOC16:0x1300, Radios:[15.4(255)] Done
Get the radio info for specific neighbor with a given extended address.
This command is only available when device supports more than one radio link.
> multiradio neighbor 3a65bc38dbe4a5be [15.4(255), TREL(255)] Done
Gets the IPv4 configured CIDR in the NAT64 translator.
OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
is required.
> nat64 cidr 192.168.255.0/24 Done
Sets the IPv4 CIDR in the NAT64 translator.
Note:
OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
is required.> nat64 cidr 192.168.100.0/24 Done
Disable NAT64 functions, including the translator and the prefix publishing.
This command will reset the mapping table in the translator (if NAT64 translator is enabled in the build).
OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
or OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE
are required.
> nat64 disable Done
Enable NAT64 functions, including the translator and the prefix publishing.
This command can be called anytime.
OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
or OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE
are required.
> nat64 enable Done
Gets the state of NAT64 functions.
Possible results for prefix manager are (OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE
is required):
Disabled
: NAT64 prefix manager is disabled.NotRunning
: NAT64 prefix manager is enabled, but is not running, probably because the routing manager is disabled.Idle
: NAT64 prefix manager is enabled and is running, but is not publishing a NAT64 prefix. Usually when there is another border router publishing a NAT64 prefix with higher priority.Active
: NAT64 prefix manager is enabled, running and publishing a NAT64 prefix.Possible results for NAT64 translator are (OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
is required):
Disabled
: NAT64 translator is disabled.NotRunning
: NAT64 translator is enabled, but is not translating packets, probably because it is not configured with a NAT64 prefix or a CIDR for NAT64.Active
: NAT64 translator is enabled and is translating packets.OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
or OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE
are required.
> nat64 state PrefixManager: NotRunning Translator: NotRunning Done > nat64 state PrefixManager: Idle Translator: NotRunning Done > nat64 state PrefixManager: Active Translator: Active Done
Get the NAT64 translator mappings.
OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
is required.
> nat64 mappings | | Address | | 4 to 6 | 6 to 4 | +----------+---------------------------+--------+--------------+--------------+ | ID | IPv6 | IPv4 | Expiry | Pkts | Bytes | Pkts | Bytes | +----------+------------+--------------+--------+------+-------+------+-------+ | 00021cb9 | fdc7::df79 | 192.168.64.2 | 7196s | 6 | 456 | 11 | 1928 | | | TCP | 0 | 0 | 0 | 0 | | | UDP | 1 | 136 | 16 | 1608 | | | ICMP | 5 | 320 | 5 | 320 |
Get the NAT64 translator packet and error counters.
OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE
is required.
> nat64 counters | | 4 to 6 | 6 to 4 | +---------------+-------------------------+-------------------------+ | Protocol | Pkts | Bytes | Pkts | Bytes | +---------------+----------+--------------+----------+--------------+ | Total | 11 | 704 | 11 | 704 | | TCP | 0 | 0 | 0 | 0 | | UDP | 0 | 0 | 0 | 0 | | ICMP | 11 | 704 | 11 | 704 | | Errors | Pkts | Pkts | +---------------+-------------------------+-------------------------+ | Total | 8 | 4 | | Illegal Pkt | 0 | 0 | | Unsup Proto | 0 | 0 | | No Mapping | 2 | 0 | Done
Print link quality info for all neighbors.
> neighbor linkquality | RLOC16 | Extended MAC | Frame Error | Msg Error | Avg RSS | Last RSS | Age | +--------+------------------+-------------+-----------+---------+----------+-------+ | 0xe800 | 9e2fa4e1b84f92db | 0.00 % | 0.00 % | -46 | -48 | 1 | | 0xc001 | 0ad7ed6beaa6016d | 4.67 % | 0.08 % | -68 | -72 | 10 | Done
List RLOC16 of neighbors.
> neighbor list 0xcc01 0xc800 0xf000 Done
Print table of neighbors.
> neighbor table | Role | RLOC16 | Age | Avg RSSI | Last RSSI |R|D|N| Extended MAC | +------+--------+-----+----------+-----------+-+-+-+------------------+ | C | 0xcc01 | 96 | -46 | -46 |1|1|1| 1eb9ba8a6522636b | | R | 0xc800 | 2 | -29 | -29 |1|1|1| 9a91556102c39ddb | | R | 0xf000 | 3 | -28 | -28 |1|1|1| 0ad7ed6beaa6016d | Done
Print connection time and age of neighbors.
The table provides the following info per neighbor:
Duration intervals are formatted as <hh>:<mm>:<ss>
for hours, minutes, and seconds if the duration is less than one day. If the duration is longer than one day, the format is <dd>d.<hh>:<mm>:<ss>
.
> neighbor conntime | RLOC16 | Extended MAC | Last Heard (Age) | Connection Time | +--------+------------------+------------------+------------------+ | 0x8401 | 1a28be396a14a318 | 00:00:13 | 00:07:59 | | 0x5c00 | 723ebf0d9eba3264 | 00:00:03 | 00:11:27 | | 0xe800 | ce53628a1e3f5b3c | 00:00:02 | 00:00:15 | Done
Print connection time and age of neighbors.
This command is similar to neighbor conntime
, but it displays the information in a list format. The age and connection time are both displayed in seconds.
> neighbor conntime list 0x8401 1a28be396a14a318 age:63 conn-time:644 0x5c00 723ebf0d9eba3264 age:23 conn-time:852 0xe800 ce53628a1e3f5b3c age:23 conn-time:180 Done
List all UDP sockets.
> netstat | Local Address | Peer Address | +-------------------------------------------------+-------------------------------------------------+ | [0:0:0:0:0:0:0:0]:49153 | [0:0:0:0:0:0:0:0]:0 | | [0:0:0:0:0:0:0:0]:49152 | [0:0:0:0:0:0:0:0]:0 | | [0:0:0:0:0:0:0:0]:61631 | [0:0:0:0:0:0:0:0]:0 | | [0:0:0:0:0:0:0:0]:19788 | [0:0:0:0:0:0:0:0]:0 | Done
Send network diagnostic request to retrieve tlv of <type>s.
If <addr> is unicast address, Diagnostic Get
will be sent. if <addr> is multicast address, Diagnostic Query
will be sent.
> networkdiagnostic get fdde:ad00:beef:0:0:ff:fe00:fc00 0 1 6 > DIAG_GET.rsp/ans: 00080e336e1c41494e1c01020c000608640b0f674074c503 Ext Address: '0e336e1c41494e1c' Rloc16: 0x0c00 Leader Data: PartitionId: 0x640b0f67 Weighting: 64 DataVersion: 116 StableDataVersion: 197 LeaderRouterId: 0x03 Done > networkdiagnostic get ff02::1 0 1 > DIAG_GET.rsp/ans: 00080e336e1c41494e1c01020c00 Ext Address: '0e336e1c41494e1c' Rloc16: 0x0c00 Done DIAG_GET.rsp/ans: 00083efcdb7e3f9eb0f201021800 Ext Address: '3efcdb7e3f9eb0f2' Rloc16: 0x1800 Done
Send network diagnostic request to reset <addr>'s tlv of <type>s. Currently only MAC Counters
(9) is supported.
> diagnostic reset fd00:db8::ff:fe00:0 9 Done
Get the NETWORK_ID_TIMEOUT parameter used in the Router role.
> networkidtimeout 120 Done
Set the NETWORK_ID_TIMEOUT parameter used in the Router role.
> networkidtimeout 120 Done
Get the Thread Network Key value.
> networkkey 00112233445566778899aabbccddeeff Done
Set the Thread Network Key value.
> networkkey 00112233445566778899aabbccddeeff Done
Get the Thread Network Name.
> networkname OpenThread Done
Set the Thread Network Name.
NOTE The current commissioning credential becomes stale after changing this value. Use pskc to reset.
> networkname OpenThread Done
Get the Thread network time and the time sync parameters.
> networktime Network Time: 21084154us (synchronized) Time Sync Period: 100s XTAL Threshold: 300ppm Done
Set time sync parameters
> networktime 100 300 Done
Output the table of allocated Router IDs and the current next hop (as Router ID) and path cost for each ID.
> nexthop | ID |NxtHop| Cost | +------+------+------+ | 9 | 9 | 1 | | 25 | 25 | 0 | | 30 | 30 | 1 | | 46 | - | - | | 50 | 30 | 3 | | 60 | 30 | 2 | Done
Get the next hop (as RLOC16) and path cost towards a given RLOC16 destination.
> nexthop 0xc000 0xc000 cost:0 Done nexthop 0x8001 0x2000 cost:3 Done
Get the IEEE 802.15.4 PAN ID value.
> panid 0xdead Done
Set the IEEE 802.15.4 PAN ID value.
> panid 0xdead Done
Get the diagnostic information for a Thread Router as parent.
Note: When operating as a Thread Router when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is enabled, this command will return the cached information from when the device was previously attached as a Thread Child. Returning cached information is necessary to support the Thread Test Harness - Test Scenario 8.2.x requests the former parent (i.e. Joiner Router's) MAC address even if the device has already promoted to a router.
> parent Ext Addr: be1857c6c21dce55 Rloc: 5c00 Link Quality In: 3 Link Quality Out: 3 Age: 20 Version: 4 Done
Note: When OPENTHREAD_CONFIG_MAC_CSL_RECEIVER_ENABLE
is enabled, this command will return two extra lines with information relevant for CSL Receiver operation.
CSL clock accuracy: 20 CSL uncertainty: 5
Get the assigned parent priority value, -2 means not assigned.
> parentpriority 1 Done
Set the assigned parent priority value: 1, 0, -1 or -2.
> parentpriority 1 Done
Get the Thread Network Partition ID.
> partitionid 4294967295 Done
Get the preferred Thread Leader Partition ID.
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is required.
> partitionid preferred 4294967295 Done
Set the preferred Thread Leader Partition ID.
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is required.
> partitionid preferred 0xffffffff Done
Send an ICMPv6 Echo Request.
0.5
.3.5
.> ping fd00:db8:0:0:76b:6a05:3ae9:a61a > 16 bytes from fd00:db8:0:0:76b:6a05:3ae9:a61a: icmp_seq=5 hlim=64 time=0ms 1 packets transmitted, 1 packets received. Packet loss = 0.0%. Round-trip min/avg/max = 0/0.0/0 ms. Done > ping -I fd00:db8:0:0:76b:6a05:3ae9:a61a ff02::1 100 1 1 1 > 108 bytes from fd00:db8:0:0:f605:fb4b:d429:d59a: icmp_seq=4 hlim=64 time=7ms 1 packets transmitted, 1 packets received. Round-trip min/avg/max = 7/7.0/7 ms. Done
The address can be an IPv4 address, which will be synthesized to an IPv6 address using the preferred NAT64 prefix from the network data.
Note: The command will return
InvalidState
when the preferred NAT64 prefix is unavailable.
> ping 172.17.0.1 Pinging synthesized IPv6 address: fdde:ad00:beef:2:0:0:ac11:1 > 16 bytes from fdde:ad00:beef:2:0:0:ac11:1: icmp_seq=5 hlim=64 time=0ms 1 packets transmitted, 1 packets received. Packet loss = 0.0%. Round-trip min/avg/max = 0/0.0/0 ms. Done
Stop sending ICMPv6 Echo Requests.
> ping stop Done
Print the current platform
> platform NRF52840 Done
Get the customized data poll period of sleepy end device (milliseconds). Only for certification test.
> pollperiod 0 Done
Set the customized data poll period for sleepy end device (milliseconds >= 10ms). Only for certification test.
> pollperiod 10 Done
Get pskc in hex format.
> pskc 00000000000000000000000000000000 Done
With -p
generate pskc from <passphrase> (UTF-8 encoded) together with current network name and extended PAN ID, otherwise set pskc as <key> (hex format).
> pskc 67c0c203aa0b042bfb5381c47aef4d9e Done > pskc -p 123456 Done
Get pskc key reference.
OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE
is required.
> pskcref 0x80000000 Done
Set pskc key reference as <keyref>.
OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE
is required.
> pskcref 0x20017 Done
Prefer a Router ID when solicit router id from Leader.
> preferrouterid 16 Done
Get the prefix list in the local Network Data. Note: For the Thread 1.2 border router with backbone capability, the local Domain Prefix would be listed as well (with flag D
), with preceding -
if backbone functionality is disabled.
> prefix 2001:dead:beef:cafe::/64 paros med - fd00:7d03:7d03:7d03::/64 prosD med Done
Add a valid prefix to the Network Data.
Note: The Domain Prefix flag (D
) is only available for Thread 1.2.
> prefix add 2001:dead:beef:cafe::/64 paros med Done > prefix add fd00:7d03:7d03:7d03::/64 prosD med Done
Get the mesh local prefix.
> prefix meshlocal fdde:ad00:beef:0::/64 Done
Set the mesh local prefix.
> prefix meshlocal fdde:ad00:beef:0::/64 Done
Invalidate a prefix in the Network Data.
> prefix remove 2001:dead:beef:cafe::/64 Done
Get radio promiscuous property.
> promiscuous Disabled Done
Enable radio promiscuous operation and print raw packet content.
> promiscuous enable Done
Disable radio promiscuous operation.
> promiscuous disable Done
Enable radio.
> radio enable Done
Disable radio.
> radio disable Done
OPENTHREAD_CONFIG_RADIO_STATS_ENABLE
is required. This feature is only available on FTD and MTD.
The radio statistics shows the time when the radio is in sleep/tx/rx state. The command will show the time of these states since last reset in unit of microseconds. It will also show the percentage of the time.
> radio stats Radio Statistics: Total Time: 67.756s Tx Time: 0.022944s (0.03%) Rx Time: 1.482353s (2.18%) Sleep Time: 66.251128s (97.77%) Disabled Time: 0.000080s (0.00%) Done
OPENTHREAD_CONFIG_RADIO_STATS_ENABLE
is required. This feature is only available on FTD and MTD.
This command resets the radio statistics. It sets all the time to 0.
> radio stats clear Done
OPENTHREAD_CONFIG_MAC_FILTER_ENABLE
is required.
The radio filter is mainly intended for testing. It can be used to temporarily block all tx/rx on the IEEE 802.15.4 radio.
When radio filter is enabled, radio is put to sleep instead of receive (to ensure device does not receive any frame and/or potentially send ack). Also the frame transmission requests return immediately without sending the frame over the air (return “no ack” error if ack is requested, otherwise return success).
Get radio filter status (enabled or disabled).
> radiofilter Disabled Done
OPENTHREAD_CONFIG_MAC_FILTER_ENABLE
is required.
Enable radio radio filter.
> radiofilter enable Done
OPENTHREAD_CONFIG_MAC_FILTER_ENABLE
is required.
Disable radio radio filter.
> radiofilter disable Done
RCP-related commands.
Set the radio region, this can affect the transmit power limit.
> region US Done > region US Done
Print RCP version string.
> rcp version OPENTHREAD/20191113-00825-g82053cc9d-dirty; SIMULATION; Jun 4 2020 17:53:16 Done
Release a Router ID that has been allocated by the device in the Leader role.
> releaserouterid 16 Done
Signal a platform reset.
> reset
Signal a platform reset to bootloader mode, if supported.
Requires OPENTHREAD_CONFIG_PLATFORM_BOOTLOADER_MODE_ENABLE
.
> reset bootloader Done
Get the Thread RLOC16 value.
> rloc16 0xdead Done
Get the external route list in the local Network Data.
> route 2001:dead:beef:cafe::/64 s med Done
Add a valid external route to the Network Data.
> route add 2001:dead:beef:cafe::/64 s med Done
Invalidate a external route in the Network Data.
> route remove 2001:dead:beef:cafe::/64 Done
List allocated Router IDs.
> router list 8 24 50 Done
Print table of routers.
> router table | ID | RLOC16 | Next Hop | Path Cost | LQ In | LQ Out | Age | Extended MAC | Link | +----+--------+----------+-----------+-------+--------+-----+------------------+------+ | 22 | 0x5800 | 63 | 0 | 0 | 0 | 0 | 0aeb8196c9f61658 | 0 | | 49 | 0xc400 | 63 | 0 | 3 | 3 | 0 | faa1c03908e2dbf2 | 1 | Done
Print diagnostic information for a Thread Router. The id
may be a Router ID or an RLOC16.
> router 50 Alloc: 1 Router ID: 50 Rloc: c800 Next Hop: c800 Link: 1 Ext Addr: e2b3540590b0fd87 Cost: 0 Link Quality In: 3 Link Quality Out: 3 Age: 3 Done
> router 0xc800 Alloc: 1 Router ID: 50 Rloc: c800 Next Hop: c800 Link: 1 Ext Addr: e2b3540590b0fd87 Cost: 0 Link Quality In: 3 Link Quality Out: 3 Age: 7 Done
Get the ROUTER_DOWNGRADE_THRESHOLD value.
> routerdowngradethreshold 23 Done
Set the ROUTER_DOWNGRADE_THRESHOLD value.
> routerdowngradethreshold 23 Done
Indicates whether the router role is enabled or disabled.
> routereligible Enabled Done
Enable the router role.
> routereligible enable Done
Disable the router role.
> routereligible disable Done
Get the ROUTER_SELECTION_JITTER value.
> routerselectionjitter 120 Done
Set the ROUTER_SELECTION_JITTER value.
> routerselectionjitter 120 Done
Get the ROUTER_UPGRADE_THRESHOLD value.
> routerupgradethreshold 16 Done
Set the ROUTER_UPGRADE_THRESHOLD value.
> routerupgradethreshold 16 Done
Get the MLE_CHILD_ROUTER_LINKS value.
> childrouterlinks 16 Done
Set the MLE_CHILD_ROUTER_LINKS value.
> childrouterlinks 16 Done
Perform an IEEE 802.15.4 Active Scan.
> scan | PAN | MAC Address | Ch | dBm | LQI | +------+------------------+----+-----+-----+ | ffff | f1d92a82c8d8fe43 | 11 | -20 | 0 | Done
Perform an IEEE 802.15.4 Energy Scan.
> scan energy 10 | Ch | RSSI | +----+------+ | 11 | -59 | | 12 | -62 | | 13 | -67 | | 14 | -61 | | 15 | -87 | | 16 | -86 | | 17 | -86 | | 18 | -52 | | 19 | -58 | | 20 | -82 | | 21 | -76 | | 22 | -82 | | 23 | -74 | | 24 | -81 | | 25 | -88 | | 26 | -71 | Done
> scan energy 10 20 | Ch | RSSI | +----+------+ | 20 | -82 | Done
Module for controlling service registration in Network Data. Each change in service registration must be sent to leader by netdata register
command before taking effect.
Add service to the Network Data.
> service add 44970 112233 aabbcc Done > netdata register Done
Remove service from Network Data.
> service remove 44970 112233 Done > netdata register Done
Return true when there are no other nodes in the network, otherwise return false.
> singleton true or false Done
Send SNTP Query to obtain current unix epoch time (from 1st January 1970). The latter two parameters have following default values:
> sntp query > SNTP response - Unix time: 1540894725 (era: 0)
You can use NAT64 of OpenThread Border Router to reach e.g. Google IPv4 NTP Server:
> sntp query 64:ff9b::d8ef:2308 > SNTP response - Unix time: 1540898611 (era: 0)
Return state of current state.
> state offline, disabled, detached, child, router or leader Done
Try to switch to state detached
, child
, router
or leader
.
> state leader Done
Enable Thread protocol operation and attach to a Thread network.
> thread start Done
Disable Thread protocol operation and detach from a Thread network.
> thread stop Done
Get the Thread Version number.
> thread version 2 Done
Print the tx queue time-in-queue histogram.
Requires OPENTHREAD_CONFIG_TX_QUEUE_STATISTICS_ENABLE
.
The time-in-queue is tracked for direct transmissions only and is measured as the duration from when a message is added to the transmit queue until it is passed to the MAC layer for transmission or dropped.
Each table row shows min and max time-in-queue (in milliseconds) followed by number of messages with time-in-queue within the specified min-max range. The histogram information is collected since the OpenThread instance was initialized or since the last time statistics collection was reset by the timeinqueue reset
command.
The collected statistics can be reset by timeinqueue reset
.
> timeinqueue | Min | Max |Msg Count| +------+------+---------+ | 0 | 9 | 1537 | | 10 | 19 | 156 | | 20 | 29 | 57 | | 30 | 39 | 108 | | 40 | 49 | 60 | | 50 | 59 | 76 | | 60 | 69 | 88 | | 70 | 79 | 51 | | 80 | 89 | 86 | | 90 | 99 | 45 | | 100 | 109 | 43 | | 110 | 119 | 44 | | 120 | 129 | 38 | | 130 | 139 | 44 | | 140 | 149 | 35 | | 150 | 159 | 41 | | 160 | 169 | 34 | | 170 | 179 | 13 | | 180 | 189 | 24 | | 190 | 199 | 3 | | 200 | 209 | 0 | | 210 | 219 | 0 | | 220 | 229 | 2 | | 230 | 239 | 0 | | 240 | 249 | 0 | | 250 | 259 | 0 | | 260 | 269 | 0 | | 270 | 279 | 0 | | 280 | 289 | 0 | | 290 | 299 | 1 | | 300 | 309 | 0 | | 310 | 319 | 0 | | 320 | 329 | 0 | | 330 | 339 | 0 | | 340 | 349 | 0 | | 350 | 359 | 0 | | 360 | 369 | 0 | | 370 | 379 | 0 | | 380 | 389 | 0 | | 390 | 399 | 0 | | 400 | 409 | 0 | | 410 | 419 | 0 | | 420 | 429 | 0 | | 430 | 439 | 0 | | 440 | 449 | 0 | | 450 | 459 | 0 | | 460 | 469 | 0 | | 470 | 479 | 0 | | 480 | 489 | 0 | | 490 | inf | 0 | Done
Print the maximum observed time-in-queue in milliseconds.
Requires OPENTHREAD_CONFIG_TX_QUEUE_STATISTICS_ENABLE
.
The time-in-queue is tracked for direct transmissions only and is measured as the duration from when a message is added to the transmit queue until it is passed to the MAC layer for transmission or dropped.
> timeinqueue max 291
Reset the TX queue time-in-queue statistics.
> timeinqueue reset Done
Indicate whether TREL radio operation is enabled or not.
OPENTHREAD_CONFIG_RADIO_LINK_TREL_ENABLE
is required for all trel
sub-commands.
> trel Enabled Done
Enable TREL operation.
> trel enable Done
Disable TREL operation.
> trel disable Done
Indicate whether TREL filter mode is enabled or not
When filter mode is enabled, any rx and tx traffic through TREL interface is silently dropped. This is mainly intended for use during testing.
> trel filter Disabled Done
Enable TREL filter mode.
> trel filter enable Done
Disable TREL filter mode.
> trel filter disable Done
Get the TREL peer table in table format or as a list.
> trel peers | No | Ext MAC Address | Ext PAN Id | IPv6 Socket Address | +-----+------------------+------------------+--------------------------------------------------+ | 1 | 5e5785ba3a63adb9 | f0d9c001f00d2e43 | [fe80:0:0:0:cc79:2a29:d311:1aea]:9202 | | 2 | ce792a29d3111aea | dead00beef00cafe | [fe80:0:0:0:5c57:85ba:3a63:adb9]:9203 | Done > trel peers list 001 ExtAddr:5e5785ba3a63adb9 ExtPanId:f0d9c001f00d2e43 SockAddr:[fe80:0:0:0:cc79:2a29:d311:1aea]:9202 002 ExtAddr:ce792a29d3111aea ExtPanId:dead00beef00cafe SockAddr:[fe80:0:0:0:5c57:85ba:3a63:adb9]:9203 Done
Enable thread version check when upgrading to router or leader.
Note: Thread version check is enabled by default.
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is required.
> tvcheck enable Done
Enable thread version check when upgrading to router or leader.
Note: Thread version check is enabled by default.
OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is required.
> tvcheck disable Done
Get the transmit power in dBm.
> txpower -10 dBm Done
Set the transmit power in dBm.
> txpower -10 Done
Add a port to the allowed unsecured port list.
> unsecureport add 1234 Done
Remove a port from the allowed unsecured port list.
> unsecureport remove 1234 Done
Remove all ports from the allowed unsecured port list.
> unsecureport remove all Done
Print all ports from the allowed unsecured port list.
> unsecureport get 1234 Done
This command requires OPENTHREAD_CONFIG_UPTIME_ENABLE
to be enabled.
Print the OpenThread stack uptime (duration since OpenThread stack initialization).
> uptime 12:46:35.469 Done >
This command requires OPENTHREAD_CONFIG_UPTIME_ENABLE
to be enabled.
Print the OpenThread stack uptime in msec.
> uptime ms 426238 Done >
Get the vendor name.
> vendor name nest Done
Set the vendor name (requires OPENTHREAD_CONFIG_NET_DIAG_VENDOR_INFO_SET_API_ENABLE
).
> vendor name nest Done
Get the vendor model.
> vendor model Hub Max Done
Set the vendor model (requires OPENTHREAD_CONFIG_NET_DIAG_VENDOR_INFO_SET_API_ENABLE
).
> vendor model Hub\ Max Done
Get the vendor SW version.
> vendor swversion Marble3.5.1 Done
Set the vendor SW version (requires OPENTHREAD_CONFIG_NET_DIAG_VENDOR_INFO_SET_API_ENABLE
).
> vendor swversion Marble3.5.1 Done
Calculates the Verhoeff checksum for a given decimal string.
Requires OPENTHREAD_CONFIG_VERHOEFF_CHECKSUM_ENABLE
.
The input string MUST consist of characters in ['0'-'9']
.
> verhoeff calculate 30731842 1 Done
Validates the Verhoeff checksum for a given decimal string.
Requires OPENTHREAD_CONFIG_VERHOEFF_CHECKSUM_ENABLE
.
The input string MUST consist of characters in ['0'-'9']
. The last digit is treated as checksum.
> verhoeff validate 307318421 Done > verhoeff validate 307318425 Error 1: Failed
Print the build version information.
> version OPENTHREAD/gf4f2f04; Jul 1 2016 17:00:09 Done
Print API version number.
> version api 28 Done
Get the number of direct TX retries on the MAC layer.
> mac retries direct 3 Done
Set the number of direct TX retries on the MAC layer.
> mac retries direct 5 Done
Get the number of indirect TX retries on the MAC layer.
> mac retries indirect 3 Done
Set the number of indirect TX retries on the MAC layer.
> mac retries indirect 5 Done
Instruct an Rx-Off-When-Idle device to send a mac frame to its parent. The mac frame could be either a mac data request or an empty mac data frame. Use datarequest
to send a mac data request and data
to send an empty mac data. This feature is for certification, it can only be used when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
is enabled.
> mac send datarequest Done
> mac send emptydata Done
List the macfilter status, including address and received signal strength filter settings.
> macfilter Address Mode: Allowlist 0f6127e33af6b403 : rss -95 (lqi 1) 0f6127e33af6b402 RssIn List: 0f6127e33af6b403 : rss -95 (lqi 1) Default rss: -50 (lqi 3) Done
List the address filter status.
> macfilter addr Allowlist 0f6127e33af6b403 : rss -95 (lqi 1) 0f6127e33af6b402 Done
Disable address filter mode.
> macfilter addr disable Done
Enable allowlist address filter mode.
> macfilter addr allowlist Done
Enable denylist address filter mode.
> macfilter addr denylist Done
Add an IEEE 802.15.4 Extended Address to the address filter, and fixed the received signal strength for the messages from the address if rss is specified.
> macfilter addr add 0f6127e33af6b403 -95 Done
> macfilter addr add 0f6127e33af6b402 Done
Remove the IEEE802.15.4 Extended Address from the address filter.
> macfilter addr remove 0f6127e33af6b402 Done
Clear all the IEEE802.15.4 Extended Addresses from the address filter.
> macfilter addr clear Done
List the rss filter status
> macfilter rss 0f6127e33af6b403 : rss -95 (lqi 1) Default rss: -50 (lqi 3) Done
Set the received signal strength for the messages from the IEEE802.15.4 Extended Address. If extaddr is *, default received signal strength for all received messages would be set.
> macfilter rss add * -50 Done
> macfilter rss add 0f6127e33af6b404 -85 Done
Set the received link quality for the messages from the IEEE802.15.4 Extended Address. Valid lqi range [0,3] If extaddr is *, default received link quality for all received messages would be set. Equivalent with ‘filter rss add’ with similar usage
> macfilter rss add-lqi * 3 Done
> macfilter rss add-lqi 0f6127e33af6b404 2 Done
Removes the received signal strength or received link quality setting on the Extended Address. If extaddr is *, default received signal strength or link quality for all received messages would be unset.
> macfilter rss remove * Done
> macfilter rss remove 0f6127e33af6b404 Done
Clear all the received signal strength or received link quality settings.
> macfilter rss clear Done
Factory Diagnostics module is enabled only when building OpenThread with OPENTHREAD_CONFIG_DIAG_ENABLE=1
option. Go diagnostics module for more information.