CLI Command Reference

ba ephemeralkey

Indicates whether or not an ephemeral key is currently active.

Requires OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE.

Parameters

No parameters.

Examples

ba ephemeralkey
active
Done

CLI and API References

ba ephemeralkey callback (enable, disable)

Sets the callback function used by the Border Agent to notify any changes related to use of ephemeral key.

Requires OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE.

A subsequent call to this function will replace any previously set callback.

Parameters

No parameters.

Examples

ba ephemeralkey callback enable
Done
ba ephemeralkey set W10X1 5000 49155
Done
BorderAgent callback: Ephemeral key active, port:49155
BorderAgent callback: Ephemeral key inactive

CLI and API References

ba ephemeralkey clear

Cancels the ephemeral key that is in use.

Requires OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE.

Can be used to cancel a previously set ephemeral key before it 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 function does not change its state. In this case the otBorderAgentIsEphemeralKeyActive() will continue to return TRUE until the commissioner disconnects.

Parameters

No parameters.

Examples

ba ephemeralkey clear
Done

CLI and API References

ba ephemeralkey set [timeout-in-msec] [port]

Sets the ephemeral key for a given timeout duration.

Requires OPENTHREAD_CONFIG_BORDER_AGENT_EPHEMERAL_KEY_ENABLE.

The ephemeral key can be set when the Border Agent is already running and is not currently connected to any external commissioner (i.e., it is in OT_BORDER_AGENT_STATE_STARTED state). Otherwise OT_ERROR_INVALID_STATE is returned.

The given aKeyString is directly used as the ephemeral PSK (excluding the trailing null \0 character ). The aKeyString length must be between OT_BORDER_AGENT_MIN_EPHEMERAL_KEY_LENGTH and OT_BORDER_AGENT_MAX_EPHEMERAL_KEY_LENGTH, inclusive.

Setting the ephemeral key again before a previously set key has timed out will replace the previously set key and reset the timeout.

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 the Border Agent reverts to using PSKc.

Parameters

No parameters.

Examples

ba ephemeralkey set Z10X20g3J15w1000P60m16 5000 1234
Done

CLI and API References

ba id (get,set)

Gets or sets the 16 bytes Border Router ID which can uniquely identifies the device among multiple BRs.

Parameters

ba id [border-agent-id]

Use the optional border-agent-id argument to set the Border Agent ID.

Examples

ba id
cb6da1e0c0448aaec39fa90f3d58f45c
Done
ba id 00112233445566778899aabbccddeeff
Done

CLI and API References

ba port

Gets the UDP port of the Thread Border Agent service.

Parameters

No parameters.

Examples

ba port
49153
Done

CLI and API References

ba state

Gets the otBorderAgentState of the Thread Border Agent role.

Parameters

No parameters.

Examples

ba state
Started
Done

CLI and API References

bbr

Returns the current Primary Backbone Router information for the Thread device.

Parameters

No parameters.

Examples

bbr
BBR Primary:
server16: 0xE400
seqno:    10
delay:    120 secs
timeout:  300 secs
Done
bbr
BBR Primary: None
Done

CLI and API References

  • No associated API

bbr config (set)

Sets the local Backbone Router configuration otBackboneRouterConfig.

A Server Data Request message SRV_DATA.ntf is initiated automatically if BBR Dataset changes for Primary Backbone Router.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE is enabled.

bbr register should be issued explicitly to register Backbone Router service to Leader for Secondary Backbone Router.

Parameters

bbr config [seqno seqno] [delay delay] [timeout timeout]

Examples

bbr config seqno 20 delay 30
Done

CLI and API References

bbr config

Gets the local Backbone Router configuration.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE is enabled.

Parameters

No parameters.

Examples

bbr config
seqno:    10
delay:    120 secs
timeout:  300 secs
Done

CLI and API References

bbr disable

Enables or disables Backbone functionality.

If enabled, a Server Data Request message SRV_DATA.ntf is triggered for the attached device if there is no Backbone Router Service in the Thread Network Data.

If disabled, SRV_DATA.ntf is triggered if the Backbone Router is in the Primary state.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE is enabled.

Parameters

No parameters.

Examples

bbr disable
Done

CLI and API References

bbr enable

Enables or disables Backbone functionality.

If enabled, a Server Data Request message SRV_DATA.ntf is triggered for the attached device if there is no Backbone Router Service in the Thread Network Data.

If disabled, SRV_DATA.ntf is triggered if the Backbone Router is in the Primary state.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE is enabled.

Parameters

No parameters.

Examples

bbr enable
Done

CLI and API References

bbr jitter (get,set)

Gets or sets jitter (in seconds) for Backbone Router registration.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE is enabled.

Parameters

bbr jitter [jitter]

Examples

bbr jitter
20
Done
bbr jitter 10
Done

CLI and API References

bbr mgmt dua

With the meshLocalIid included, this command configures the response status for the next DUA registration. Without meshLocalIid, respond to the next DUA.req with the specified status or coap-code.

Available when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is enabled.

Parameters

bbr mgmt dua status|coap-code [meshLocalIid]

For status or coap-code, use:

  • 0: ST_DUA_SUCCESS
  • 1: ST_DUA_REREGISTER
  • 2: ST_DUA_INVALID
  • 3: ST_DUA_DUPLICATE
  • 4: ST_DUA_NO_RESOURCES
  • 5: ST_DUA_BBR_NOT_PRIMARY
  • 6: ST_DUA_GENERAL_FAILURE
  • 160: COAP code 5.00

Examples

bbr mgmt dua 1 2f7c235e5025a2fd
Done
bbr mgmt dua 160
Done

CLI and API References

bbr mgmt mlr listener add

Adds a Multicast Listener with a timeout value, in seconds.

Pass 0 to use the default MLR timeout.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE, OPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLE, and OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE are enabled.

Parameters

bbr mgmt mlr listener add ipaddress [timeout-seconds]

Examples

bbr mgmt mlr listener add ff04::1
Done
bbr mgmt mlr listener add ff04::2 300
Done

CLI and API References

bbr mgmt mlr listener

Returns the Multicast Listeners with the otBackboneRouterMulticastListenerInfomTimeout in seconds.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE and OPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLE are enabled.

Parameters

No parameters.

Examples

bbr mgmt mlr listener
ff04:0:0:0:0:0:0:abcd 3534000
ff04:0:0:0:0:0:0:eeee 3537610
Done

CLI and API References

bbr mgmt mlr listener clear

Clears the Multicast Listeners.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE, OPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLE, and OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE are enabled.

Parameters

No parameters.

Examples

bbr mgmt mlr listener clear
Done

CLI and API References

bbr mgmt mlr response

Configures the response status for the next Multicast Listener Registration.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE, OPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLE, and OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE are enabled.

Parameters

bbr mgmt mlr response status-code

For status-code, use:

  • 0: ST_MLR_SUCCESS
  • 2: ST_MLR_INVALID
  • 3: ST_MLR_NO_PERSISTENT
  • 4: ST_MLR_NO_RESOURCES
  • 5: ST_MLR_BBR_NOT_PRIMARY
  • 6: ST_MLR_GENERAL_FAILURE

Examples

bbr mgmt mlr response 2
Done

CLI and API References

bbr register

Explicitly registers local Backbone Router configuration.

A Server Data Request message SRV_DATA.ntf is triggered for the attached device.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE is enabled.

Parameters

No parameters.

Examples

bbr register
Done

CLI and API References

bbr state

Gets the Backbone Router otBackboneRouterState.

Available when OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE is enabled.

Parameters

No parameters.

Examples

bbr state
Disabled
Done
bbr state
Primary
Done
bbr state
Secondary
Done

CLI and API References

br disable

Disables the Border Routing Manager.

Parameters

No parameters.

Examples

br disable
Done

CLI and API References

br enable

Enables the Border Routing Manager.

Parameters

No parameters.

Examples

br enable
Done

CLI and API References

br init

Initializes the Border Routing Manager.

Parameters

br init infrastructure-network-index is-running

Examples

br init 2 1
Done

CLI and API References

br nat64prefix

Outputs both local and favored NAT64 prefixes.

Parameters

No parameters.

Examples

br nat64prefix
Local: fd14:1078:b3d5:b0b0:0:0::/96
Favored: fd14:1078:b3d5:b0b0:0:0::/96 prf:low
Done

CLI and API References

br nat64prefix favored

Gets the currently favored NAT64 prefix.

The favored NAT64 prefix can be discovered from infrastructure link or can be this device's local NAT64 prefix.

Parameters

No parameters.

Examples

br nat64prefix favored
fd14:1078:b3d5:b0b0:0:0::/96 prf:low
Done

CLI and API References

br nat64prefix local

Gets the local NAT64 Prefix of the Border Router.

NAT64 Prefix might not be advertised in the Thread network.

OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE must be enabled.

Parameters

No parameters.

Examples

br nat64prefix local
fd14:1078:b3d5:b0b0:0:0::/96
Done

CLI and API References

br omrprefix

Outputs both local and favored OMR prefix.

Parameters

No parameters.

Examples

br omrprefix
Local: fdfc:1ff5:1512:5622::/64
Favored: fdfc:1ff5:1512:5622::/64 prf:low
Done

CLI and API References

br omrprefix favored

Gets the currently favored Off-Mesh-Routable (OMR) Prefix.

The favored OMR prefix can be discovered from Network Data or can be this device's local OMR prefix.

Parameters

No parameters.

Examples

br omrprefix favored
fdfc:1ff5:1512:5622::/64 prf:low
Done

CLI and API References

br omrprefix local

Gets the local Off-Mesh-Routable (OMR) Prefix, for example fdfc:1ff5:1512:5622::/64.

An OMR Prefix is a randomly generated 64-bit prefix that's published in the Thread network if there isn't already an OMR prefix. This prefix can be reached from the local Wi-Fi or Ethernet network.

Parameters

No parameters.

Examples

br omrprefix local
fdfc:1ff5:1512:5622::/64
Done

CLI and API References

br onlinkprefix

Outputs both local and favored on-link prefixes.

Parameters

No parameters.

Examples

br onlinkprefix
Local: fd41:2650:a6f5:0::/64
Favored: 2600::0:1234:da12::/64
Done

CLI and API References

br onlinkprefix favored

Gets the currently favored On-Link Prefix.

The favored prefix is either a discovered on-link prefix on the infrastructure link or the local on-link prefix.

Parameters

No parameters.

Examples

br onlinkprefix favored
2600::0:1234:da12::/64
Done

CLI and API References

br onlinkprefix local

Gets the local On-Link Prefix for the adjacent infrastructure link.

The local On-Link Prefix is a 64-bit prefix that's advertised on the infrastructure link if there isn't already a usable on-link prefix being advertised on the link.

Parameters

No parameters.

Examples

br onlinkprefix local
fd41:2650:a6f5:0::/64
Done

CLI and API References

br prefixtable

Get the discovered prefixes by Border Routing Manager on the infrastructure link. Info per prefix entry:

  • The prefix
  • Whether the prefix is on-link or route
  • Milliseconds since last received Router Advertisement containing this prefix
  • Prefix lifetime in seconds
  • Preferred lifetime in seconds only if prefix is on-link
  • Route preference (low, med, high) only if prefix is route (not on-link)
  • The router IPv6 address which advertising this prefix
  • Flags in received Router Advertisement header:
    • M: Managed Address Config flag
    • O: Other Config flag
    • Stub: Stub Router flag (indicates whether the router is a stub router)

Parameters

No parameters.

Examples

br prefixtable
prefix:fd00:1234:5678:0::/64, on-link:no, ms-since-rx:29526, lifetime:1800, route-prf:med,
router:ff02:0:0:0:0:0:0:1 (M:0 O:0 Stub:1)
prefix:1200:abba:baba:0::/64, on-link:yes, ms-since-rx:29527, lifetime:1800, preferred:1800,
router:ff02:0:0:0:0:0:0:1 (M:0 O:0 Stub:1)
Done

CLI and API References

br rioprf (high,med,low)

Explicitly sets the preference to use when advertising Route Info Options (RIO) in Router Advertisement messages sent over the infrastructure link.

After a call to this function, BR will use the given preference for all its advertised RIOs. The preference can be cleared by calling otBorderRoutingClearRouteInfoOptionPreference() .

Parameters

br rioprf [high|med|low]

Examples

br rioprf low
Done

CLI and API References

br rioprf

Gets the current preference used when advertising Route Info Options (RIO) in Router Advertisement messages sent over the infrastructure link.

The RIO preference is determined as follows:

  • If explicitly set by user by calling otBorderRoutingSetRouteInfoOptionPreference(), the given preference is used.
  • Otherwise, it is determined based on device's current role: Medium preference when in router/leader role and low preference when in child role.

Parameters

No parameters.

Examples

br rioprf
med
Done

CLI and API References

br rioprf clear

Clears a previously set preference value for advertised Route Info Options.

After a call to this function, BR will use device's role to determine the RIO preference: Medium preference when in router/leader role and low preference when in child role.

Parameters

No parameters.

Examples

br rioprf clear
Done

CLI and API References

br routeprf (high,med,low)

Explicitly sets the preference of published routes in Network Data.

After a call to this function, BR will use the given preference. The preference can be cleared by calling otBorderRoutingClearRoutePreference() .

Parameters

br routeprf [high|med|low]

Examples

br routeprf low
Done

CLI and API References

br routeprf

Gets the current preference used for published routes in Network Data.

The preference is determined as follows:

  • If explicitly set by user by calling otBorderRoutingSetRoutePreference(), the given preference is used.
  • Otherwise, it is determined automatically by RoutingManager based on the device's role and link quality.

Parameters

No parameters.

Examples

br routeprf
med
Done

CLI and API References

br routeprf clear

Clears a previously set preference value for published routes in Network Data.

After a call to this function, BR will determine the preference automatically based on the device's role and link quality (to the parent when acting as end-device).

Parameters

No parameters.

Examples

br routeprf clear
Done

CLI and API References

br routers

Get the list of discovered routers by Border Routing Manager on the infrastructure link. Info per router:

  • The router IPv6 address
  • Flags in received Router Advertisement header:
    • M: Managed Address Config flag
    • O: Other Config flag
    • Stub: Stub Router flag (indicates whether the router is a stub router)

Parameters

No parameters.

Examples

br routers
ff02:0:0:0:0:0:0:1 (M:0 O:0 Stub:1)
Done

CLI and API References

br state

Gets the current state of Border Routing Manager.

Parameters

No parameters.

Examples

br state
running

CLI and API References

bufferinfo

Gets the current message buffer information.

  • total displays the total number of message buffers in pool.
  • free displays the number of free message buffers.
  • max-used displays max number of used buffers at the same time since OT stack initialization or last bufferinfo reset.

Next, the CLI displays info about different queues used by the OpenThread stack, for example 6lo send. Each line after the queue represents info about a queue:

  • The first number shows number messages in the queue.
  • The second number shows number of buffers used by all messages in the queue.
  • The third number shows total number of bytes of all messages in the queue.

Parameters

No parameters.

Examples

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

CLI and API References

bufferinfo reset

Reset the Message Buffer information counter tracking the maximum number buffers in use at the same time.

This resets mMaxUsedBuffers in otBufferInfo .

Parameters

No parameters.

Examples

bufferinfo reset
Done

CLI and API References

ccathreshold (get,set)

Gets or sets the CCA threshold in dBm measured at the antenna connector per IEEE 802.15.4 - 2015 section 10.1.4.

Parameters

ccathreshold [CCA-threshold-dBm]

Use the optional CCA-threshold-dBm argument to set the CCA threshold.

Examples

ccathreshold
-75 dBm
Done
ccathreshold -62
Done

CLI and API References

channel (get,set)

Gets or sets the IEEE 802.15.4 Channel value.

Parameters

channel [channel-num]

Use channel-num to set the channel.

Examples

channel
11
Done
channel 11
Done

CLI and API References

  • No associated API

channel manager auto

Enables or disables the auto-channel-selection functionality.

When enabled, ChannelManager will periodically invoke a RequestChannelSelect(false). The period interval can be set by SetAutoChannelSelectionInterval().

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE are required.

Parameters

channel manager auto enable

1 is a boolean to enable.

Examples

channel manager auto 1
channel manager auto 1
Done

CLI and API References

channel manager change

Requests a Thread network channel change.

The network switches to the given channel after a specified delay (see otChannelManagerSetDelay()). The channel change is performed by updating the Pending Operational Dataset.

A subsequent call will cancel an ongoing previously requested channel change.

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE is required.

Parameters

channel manager change channel-num

Examples

channel manager change 11
channel manager change 11
Done

CLI and API References

channel manager

Get the channel manager state. OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE is required.

Parameters

No parameters.

Examples

channel manager
channel: 11
auto: 1
delay: 120
interval: 10800
supported: { 11-26}
favored: { 11-26}
Done

CLI and API References

channel manager delay

Sets the delay (in seconds) used for a channel change.

The delay should preferably be longer than the maximum data poll interval used by all sleepy-end-devices within the Thread network.

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE are required.

Parameters

channel manager delay delay-seconds

Examples

channel manager delay 120
channel manager delay 120
Done

CLI and API References

channel manager favored

Sets the favored channel mask.

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE are required.

Parameters

channel manager favored mask

Examples

channel manager favored 0x7fffc00
channel manager favored 0x7fffc00
Done

CLI and API References

channel manager interval

Sets the period interval (in seconds) used by auto-channel-selection functionality.

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE are required.

Parameters

channel manager interval interval-seconds

Examples

channel manager interval 10800
channel manager interval 10800
Done

CLI and API References

channel manager select

Requests that ChannelManager checks and selects a new channel and starts a channel change.

Unlike the otChannelManagerRequestChannelChange() where the channel must be given as a parameter, this function asks the ChannelManager to select a channel by itself (based on collected channel quality info).

Once called, the Channel Manager will perform the following 3 steps:

1) ChannelManager decides if the channel change would be helpful. This check can be skipped if aSkipQualityCheck is set to true (forcing a channel selection to happen and skipping the quality check). This step uses the collected link quality metrics on the device (such as CCA failure rate, frame and message error rates per neighbor, etc.) to determine if the current channel quality is at the level that justifies a channel change.

2) If the first step passes, then ChannelManager selects a potentially better channel. It uses the collected channel quality data by ChannelMonitor module. The supported and favored channels are used at this step. (see otChannelManagerSetSupportedChannels() and otChannelManagerSetFavoredChannels()).

3) If the newly selected channel is different from the current channel, ChannelManager requests/starts the channel change process (internally invoking a RequestChannelChange()).

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE are required.

Parameters

channel manager select skip-quality-check

Use a 1 or 0 for the boolean skip-quality-check.

Examples

channel manager select 1
channel manager select 1
Done

CLI and API References

channel manager supported

Sets the supported channel mask.

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE are required.

Parameters

channel manager supported mask

Examples

channel manager supported 0x7fffc00
channel manager supported 0x7fffc00
Done

CLI and API References

channel manager threshold

Sets the CCA failure rate threshold.

OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE and OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE are required.

Parameters

channel manager threshold threshold-percent

Use a hex value for threshold-percent. 0 maps to 0% and 0xffff maps to 100%.

Examples

channel manager threshold 0xffff
channel manager threshold 0xffff
Done

CLI and API References

channel monitor

Get the current channel monitor state and channel occupancy. OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE is required.

Parameters

No parameters.

Examples

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

CLI and API References

  • No associated API

channel monitor start

Start the channel monitor. OT CLI sends a boolean value of true to otChannelMonitorSetEnabled. OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE is required.

Parameters

No parameters.

Examples

channel monitor start
channel monitor start
Done

CLI and API References

channel monitor stop

Stop the channel monitor. OT CLI sends a boolean value of false to otChannelMonitorSetEnabled. OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE is required.

Parameters

No parameters.

Examples

channel monitor stop
channel monitor stop
Done

CLI and API References

channel preferred

Gets the radio preferred channel mask that the device prefers to form on.

Parameters

No parameters.

Examples

channel preferred
0x7fff800
Done

CLI and API References

channel supported

Get the radio supported channel mask that the device is allowed to be on.

Parameters

No parameters.

Examples

channel supported
0x7fff800
Done

CLI and API References

child (id)

Gets diagnostic information for an attached Child by its Child ID or RLOC16.

Parameters

child child-id

Examples

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
Done

CLI and API References

child list

Returns a list of attached Child IDs.

Parameters

No parameters.

Examples

child list
1 2 3 6 7 8
Done

CLI and API References

child table

Prints a table of the attached children.

Parameters

No parameters.

Examples

child table
| ID  | RLOC16 | Timeout    | Age        | LQ In | C_VN |R|D|N|Ver|CSL|QMsgCnt| Extended MAC     |
+-----+--------+------------+------------+-------+------+-+-+-+---+---+-------+------------------+
|   1 | 0xc801 |        240 |         24 |     3 |  131 |1|0|0|  3| 0 |     0 | 4ecede68435358ac |
|   2 | 0xc802 |        240 |          2 |     3 |  131 |0|0|0|  3| 1 |     0 | a672a601d2ce37d8 |
Done

CLI and API References

childip

Gets a list of IP addresses stored for MTD children.

Parameters

No parameters.

Examples

childip
3401: fdde:ad00:beef:0:3037:3e03:8c5f:bc0c
Done

CLI and API References

childip max (set)

Sets or restores the maximum number of IP addresses that each MTD child may register with this device as parent.

Pass 0 to clear the setting and restore the default.

Available when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is enabled.

Parameters

childip max count

Examples

childip max 2
Done

CLI and API References

childip max

Gets the maximum number of IP addresses that each MTD child may register with this device as parent.

Parameters

No parameters.

Examples

childip max
4
Done

CLI and API References

childmax (set)

Sets the maximum number of children currently allowed.

This parameter can only be set when Thread protocol operation has been stopped.

Parameters

childmax count

Examples

childmax 2
Done

CLI and API References

childmax

Gets the maximum number of children currently allowed.

Parameters

No parameters.

Examples

childmax
5
Done

CLI and API References

Gets or sets the MLE_CHILD_ROUTER_LINKS value.

Parameters

childrouterlinks [links]

Examples

childrouterlinks
16
Done
childrouterlinks 16
Done

CLI and API References

childsupervision checktimeout (set)

Sets the supervision check timeout interval (in seconds) on the child.

Parameters

childsupervision checktimeout timeout-seconds

Examples

childsupervision checktimeout 30
Done

CLI and API References

childsupervision checktimeout

Gets the supervision check timeout interval (in seconds) 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).

Parameters

No parameters.

Examples

childsupervision checktimeout
30
Done

CLI and API References

childsupervision interval (set)

Sets the child supervision interval (in seconds) on the child.

Parameters

childsupervision interval interval-seconds

Examples

childsupervision interval 30
Done

CLI and API References

childsupervision interval

Gets the Child Supervision interval (in seconds) on a 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.

Parameters

No parameters.

Examples

childsupervision interval
30
Done

CLI and API References

childtimeout (set)

Sets the Thread Child Timeout (in seconds) used when operating in the Child role.

Parameters

childtimeout timeout-seconds

Examples

childtimeout 300
Done

CLI and API References

childtimeout

Gets the Thread Child Timeout (in seconds) used when operating in the Child role.

Parameters

No parameters.

Examples

childtimeout
300
Done

CLI and API References

coap cancel

Cancels an existing observation subscription to a remote resource on the CoAP server.

Parameters

No parameters.

Examples

coap cancel
Done

CLI and API References

coap delete

Deletes the specified CoAP resource.

Parameters

coap delete address uri-path [type] [payload]
  • address: IPv6 address of the CoAP server.
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
  • payload: The CoAP payload string. For example, hellothere.

Examples

coap delete fdde:ad00:beef:0:2780:9423:166c:1aac test-resource con hellothere
Done

CLI and API References

  • No associated API

coap get

Gets information about the specified CoAP resource on the CoAP server.

Parameters

coap get address uri-path [type]
  • address: IPv6 address of the CoAP server.
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
    • block-: Use this option, followed by the block-wise value, if the response should be transferred block-wise. Valid values are: block-16, block-32, block-64, block-128, block-256, block-512, or block-1024.

Examples

coap get fdde:ad00:beef:0:2780:9423:166c:1aac test-resource
Done
coap get fdde:ad00:beef:0:2780:9423:166c:1aac test-resource block-1024
Done

CLI and API References

  • No associated API

coap observe

Triggers a subscription request which allows the CoAP client to observe the specified resource on the CoAP server for possible changes in its state.

Parameters

coap observe address uri-path [type]
  • address: IPv6 address of the CoAP server.
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default).

Examples

coap observe fdde:ad00:beef:0:2780:9423:166c:1aac test-resource
Done

CLI and API References

  • No associated API

coap parameters(get,set)

Gets current CoAP parameter values if the command is run with no optional parameters.

Sets the CoAP parameters either to their default values or to the values you specify, depending on the syntax chosen.

Parameters

coap parameters type [default | ack_timeout ack_random_factor_numerator ack_random_factor_denominator max_retransmit]
  • type: request for CoAP requests, or response for CoAP responses. If no more parameters are given, the command prints the current configuration.
  • default: Sets the transmission parameters to the following default values:
    • ack_timeout: 2000 milliseconds
    • ack_random_factor_numerator: 3
    • ack_random_factor_denominator: 2
    • max_retransmit: 4
  • ack_timeout: The ACK_TIMEOUT (0-UINT32_MAX) in milliseconds. Refer to RFC7252.
  • ack_random_factor_numerator: The ACK_RANDOM_FACTOR numerator, with possible values of 0-255. Refer to RFC7252.
  • ack_random_factor_denominator: The ACK_RANDOM_FACTOR denominator, with possible values of 0-255. Refer to RFC7252.
  • max_retransmit: The MAX_RETRANSMIT (0-255). Refer to RFC7252.

Examples

coap parameters request
Transmission parameters for request:
ACK_TIMEOUT=1000 ms, ACK_RANDOM_FACTOR=255/254, MAX_RETRANSMIT=2
Done
coap parameters request default
Transmission parameters for request:
default
Done
coap parameters request 1000 255 254 2
Transmission parameters for request:
ACK_TIMEOUT=1000 ms, ACK_RANDOM_FACTOR=255/254, MAX_RETRANSMIT=2
Done

CLI and API References

  • No associated API

coap post

Creates the specified CoAP resource. For more information, refer to Test Connectivity to a Constrained Application Protocol (CoAP) Resource Using the OT CLI.

Parameters

coap post address uri-path [type] [payload]
  • address: IPv6 address of the CoAP server.
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
    • block-: Use this option, followed by the block-wise value, to send blocks with a randomly generated number of bytes for the payload. Valid values are: block-16, block-32, block-64, block-128, block-256, block-512, or block-1024.
  • payload: CoAP payload request, which if used is either a string or an integer, depending on the type. If the type is con or non-con, the payload parameter is optional. If you leave out the payload parameter, an empty payload is sent. However, If you use the payload parameter, its value must be a string, such as hellothere. If the type is block-, the value of thepayload parameter must be an integer that specifies the number of blocks to send. The block- type requires OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE to be set.

Examples

coap post fdde:ad00:beef:0:2780:9423:166c:1aac test-resource con hellothere
Done
coap post fdde:ad00:beef:0:2780:9423:166c:1aac test-resource block-1024 10
Done

CLI and API References

  • No associated API

coap put

Modifies the specified CoAP resource. For more information, refer to Test Connectivity to a Constrained Application Protocol (CoAP) Resource Using the OT CLI.

Parameters

coap put address uri-path [type] [payload]
  • address: IPv6 address of the CoAP server.
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
    • block-: Use this option, followed by the block-wise value, to send blocks with a randomly generated number of bytes for the payload. Valid values are: block-16, block-32, block-64, block-128, block-256, block-512, or block-1024.
  • payload: CoAP payload request, which if used is either a string or an integer, depending on the type. If the type is con or non-con, the payload parameter is optional. If you leave out the payload parameter, an empty payload is sent. However, If you use the payload parameter, its value must be a string, such as hellothere. If the type is block-, the value of thepayload parameter must be an integer that specifies the number of blocks to send. The block- type requires OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE to be set.

Examples

coap put fdde:ad00:beef:0:2780:9423:166c:1aac test-resource con hellothere
Done
coap put fdde:ad00:beef:0:2780:9423:166c:1aac test-resource block-1024 10
Done

CLI and API References

  • No associated API

coap resource (get,set)

Gets or sets the URI path of the CoAP server resource.

Parameters

coap resource [uri-path]

Examples

coap resource test-resource
Done
coap resource
test-resource
Done

CLI and API References

coap set

Sets the content sent by the resource on the CoAP server. If a CoAP client is observing the resource, a notification is sent to that client.

Parameters

coap set new-content

Examples

coap set Testing123
Done

CLI and API References

coap start

Starts the CoAP server. For more information, refer to Test Connectivity to a Constrained Application Protocol (CoAP) Resource Using the OT CLI.

Parameters

No parameters.

Examples

coap start
Done

CLI and API References

coap stop

Stops the CoAP server.

Parameters

No parameters.

Examples

coap stop
Done

CLI and API References

coaps connect

Initializes a Datagram Transport Layer Security (DTLS) session with a peer. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

coaps connect address

The address parameter is the IPv6 address of the peer.

Examples

coaps connect fdde:ad00:beef:0:9903:14b:27e0:5744
Done
coaps connected

CLI and API References

coaps delete

The CoAPS payload string to delete.

Parameters

coaps delete uri-path [type] [payload]
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
  • payload: CoAPS payload request.

Examples

coaps delete test-resource con hellothere
Done

CLI and API References

  • No associated API

coaps disconnect

Stops the DTLS session.

Parameters

No parameters.

Examples

coaps disconnect
coaps disconnected
Done

CLI and API References

coaps get

Gets information about the specified CoAPS resource on the CoAPS server. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

coaps get uri-path [type]
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
    • block-: Use this option, followed by the block-wise value, if the response should be transferred block-wise. Valid values are: block-16, block-32, block-64, block-128, block-256, block-512, or block-1024.

Examples

coaps get test-resource
Done
coaps get test-resource block-1024
Done

CLI and API References

  • No associated API

coaps isclosed

Indicates if the CoAP Secure service is closed. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

No parameters.

Examples

coaps isclosed
no
Done

CLI and API References

coaps isconnactive

Indicates if the CoAP Secure service connection is active (either already connected or in the process of establishing a connection). For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

No parameters.

Examples

coaps isconnactive
yes
Done

CLI and API References

coaps isconnected

Indicates if the CoAP Secure service is connected. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

No parameters.

Examples

coaps isconnected
yes
Done

CLI and API References

coaps post

Creates the specified CoAPS resource. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

uri-path [type] [payload]
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
    • block-: Use this option, followed by the block-wise value, to send blocks with a randomly generated number of bytes for the payload. Valid values are: block-16, block-32, block-64, block-128, block-256, block-512, or block-1024.
  • payload: CoAPS payload request, which if used is either a string or an integer, depending on the type. If the type is con or non-con, the payload parameter is optional. If you leave out the payload parameter, an empty payload is sent. However, If you use the payload parameter, its value must be a string, such as hellothere. If the type is block-, the value of the payload parameter must be an integer that specifies the number of blocks to send. The block- type requires OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE to be set.

Examples

coaps post test-resource con hellothere
Done
coaps post test-resource block-1024 10
Done

CLI and API References

  • No associated API

coaps psk

Sets the pre-shared key (PSK) and cipher suite DTLS_PSK_WITH_AES_128_CCM_8.

Parameters

coaps psk psk-value psk-id
  • psk-value: The pre-shared key
  • psk-id: The pre-shared key identifier.

Examples

coaps psk 1234 key1
Done

CLI and API References

coaps put

Modifies the specified CoAPS resource. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

uri-path [type] [payload]
  • uri-path: URI path of the resource.
  • type:
    • con: Confirmable
    • non-con: Non-confirmable (default)
    • block-: Use this option, followed by the block-wise value, to send blocks with a randomly generated number of bytes for the payload. Valid values are: block-16, block-32, block-64, block-128, block-256, block-512, or block-1024.
  • payload: CoAPS payload request, which if used is either a string or an integer, depending on the type. If the type is con or non-con, the payload parameter is optional. If you leave out the payload parameter, an empty payload is sent. However, If you use the payload parameter, its value must be a string, such as hellothere. If the type is block-, the value of the payload parameter must be an integer that specifies the number of blocks to send. The block- type requires OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE to be set.

Examples

coaps put test-resource con hellothere
Done
coaps put test-resource block-1024 10
Done

CLI and API References

  • No associated API

coaps resource (get,set)

Gets or sets the URI path of the CoAPS server resource. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

coaps resource [uri-path]

Examples

coaps resource test-resource
Done
coaps resource
test-resource
Done

CLI and API References

coaps set

Sets the content sent by the resource on the CoAPS server. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

coaps set new-content

Examples

coaps set Testing123
Done

CLI and API References

  • No associated API

coaps start

Starts the CoAP Secure service. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

coaps start [check-peer-cert | max-conn-attempts]

The check-peer-cert parameter determines if the peer-certificate check is enabled (default) or disabled. The max-conn-attempts parameter sets the maximum number of allowed attempts, successful or failed, to connect to the CoAP Secure server. The default value of this parameter is 0, which means that there is no limit to the number of attempts. The check-peer-cert and max-conn-attempts parameters work together in the following combinations, even though you can only specify one argument:

  • No argument specified: Defaults are used.
  • Setting check-peer-cert to true: Has the same effect as omitting the argument, which is that the check-peer-cert value is true, and the max-conn-attempts value is 0.
  • Setting check-peer-cert to false: check-peer-cert value is false, and the max-conn-attempts value is 0.
  • Specifying a number: check-peer-cert is true, and the max-conn-attempts value is the number specified in the argument.

Examples

coaps start
Done
coaps start false
Done
coaps start 8
Done

CLI and API References

coaps stop

Stops the CoAP Secure service. For more information, refer to Test Connectivity to a Constrained Application Protocol Secure (CoAPS) Resource Using the OT CLI.

Parameters

No parameters.

Examples

coaps stop
Done

CLI and API References

coaps x509

Sets the X509 certificate of the local device with the corresponding private key for the DTLS session with DTLS_ECDHE_ECDSA_WITH_AES_128_CCM_8.

Parameters

No parameters.

Examples

coaps x509
Done

CLI and API References

commissioner announce

Sends an Announce Begin message.

Parameters

commissioner announce mask count period destination
  • mask: Bitmask that identifies channels for sending MLE Announce messages.
  • count: Number of MLE Announce transmissions per channel.
  • period: Number of milliseconds between successive MLE Announce transmissions.
  • destination: Destination IPv6 address for the message. The message may be multicast.

Examples

commissioner announce 0x00050000 2 32 fdde:ad00:beef:0:0:ff:fe00:c00
Done

CLI and API References

commissioner energy

Sends an Energy Scan Query message. Command output is printed as it is received.

Parameters

commissioner energy mask count period scanDuration destination
  • mask: Bitmask that identifies channels for performing IEEE 802.15.4 energy scans.
  • count: Number of IEEE 802.15.4 energy scans per channel.
  • period: Number of milliseconds between successive IEEE 802.15.4 energy scans.
  • scanDuration: Scan duration in milliseconds to use when performing an IEEE 802.15.4 energy scan.
  • destination: Destination IPv6 address for the message. The message may be multicast.

Examples

commissioner energy 0x00050000 2 32 1000 fdde:ad00:beef:0:0:ff:fe00:c00
Done
Energy: 00050000 0 0 0 0

CLI and API References

commissioner id (get,set)

Gets or sets the OpenThread Commissioner ID name.

Parameters

commissioner id name

Examples

commissioner id OpenThread Commissioner
Done
commissioner id
OpenThread Commissioner
Done

CLI and API References

commissioner joiner add

Adds a joiner entry.

Parameters

commissioner joiner add eui64|discerner pksd [timeout]
  • eui64: IEEE EUI-64 of the Joiner. To match any joiner, use *.
  • discerner: The Joiner discerner in the format number/length.
  • pksd: Pre-Shared Key for the joiner.
  • timeout: The Joiner timeout in seconds.

Examples

commissioner joiner add d45e64fa83f81cf7 J01NME
Done
commissioner joiner add 0xabc/12 J01NME
Done

CLI and API References

commissioner joiner remove

Removes a Joiner entry.

Parameters

commissioner joiner remove eui64|discerner
  • eui64: IEEE EUI-64 of the joiner. To match any joiner, use *.
  • discerner: The joiner discerner in the format number/length.

Examples

commissioner joiner remove d45e64fa83f81cf7
Done
commissioner joiner remove 0xabc/12
Done

CLI and API References

commissioner joiner table

Lists all Joiner entries in table format.

Parameters

No parameters.

Examples

commissioner joiner table
| ID                    | PSKd                             | Expiration |
+-----------------------+----------------------------------+------------+
|                     * |                           J01NME |      81015 |
|      d45e64fa83f81cf7 |                           J01NME |     101204 |
| 0x0000000000000abc/12 |                           J01NME |     114360 |
Done

CLI and API References

  • No associated API

commissioner mgmtget

Sends a MGMT_GET (Management Get) message to the Leader. Variable values that have been set using the commissioner mgmtset command are returned.

Parameters

commissioner mgmtget [locator] [sessionid] [steeringdata] [joinerudpport] [-x TLVs]
  • locator: Border Router RLOC16.
  • sessionid: Session ID of the Commissioner.
  • steeringdata: Steering data.
  • joinerudpport: Joiner UDP port.
  • TLVs: The set of TLVs to be retrieved.

Examples

commissioner mgmtget locator sessionid
Done

CLI and API References

commissioner mgmtset

Sends a MGMT_SET (Management Set) message to the Leader, and sets the variables to the values specified.

Parameters

commissioner mgmtset [locator locator] [sessionid sessionid] [steeringdata steeringdata] [joinerudpport joinerudpport] [-x TLVs]
  • locator: Border Router RLOC16.
  • sessionid: Session ID of the Commissioner.
  • steeringdata: Steering data.
  • joinerudpport: Joiner UDP port.
  • TLVs: The set of TLVs to be retrieved.

Examples

commissioner mgmtset joinerudpport 9988
Done

CLI and API References

commissioner panid

Sends a PAN ID query. Command output is returned as it is received.

Parameters

commissioner panid panid mask destination
  • paind: PAN ID to use to check for conflicts.
  • mask; Bitmask that identifies channels to perform IEEE 802.15.4 Active Scans.
  • destination: IPv6 destination address for the message. The message may be multicast.

Examples

commissioner panid 0xdead 0x7fff800 fdde:ad00:beef:0:0:ff:fe00:c00
Done
Conflict: dead, 00000800

CLI and API References

commissioner provisioningurl

Sets the Commissioner provisioning URL.

Parameters

commissioner provisioningurl provisioningurl

Examples

commissioner provisioningurl http://github.com/openthread/openthread
Done

CLI and API References

commissioner sessionid

Gets the current Commissioner session ID.

Parameters

No parameters.

Examples

commissioner sessionid
0
Done

CLI and API References

commissioner start

Starts the Thread Commissioner role.

Parameters

No parameters.

Examples

commissioner start
Commissioner: petitioning
Done
Commissioner: active

CLI and API References

commissioner state

Returns the current state of the Commissioner. Possible values are active, disabled, or petition (petitioning to become Commissioner).

Parameters

No parameters.

Examples

commissioner state
active
Done

CLI and API References

commissioner stop

Stops the Thread Commissioner role.

Parameters

No parameters.

Examples

commissioner stop
Done

CLI and API References

contextreusedelay (get,set)

Gets or sets the CONTEXT_ID_REUSE_DELAY value.

Parameters

contextreusedelay delay

Use the optional delay argument to set the CONTEXT_ID_REUSE_DELAY.

Examples

contextreusedelay
11
Done
contextreusedelay 11
Done

CLI and API References

counters (mac)

Get the MAC layer counters.

Parameters

counters mac

Examples

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

CLI and API References

counters (mle)

Gets the Thread MLE counters.

Parameters

counters mle

Examples

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
Done

CLI and API References

counters

Gets the supported counter names.

Parameters

No parameters.

Examples

counters
ip
mac
mle
Done

CLI and API References

  • No associated API

counters ip

Gets the IPv6 counters.

Parameters

counters ip

Examples

counters ip
TxSuccess: 10
TxFailed: 0
RxSuccess: 5
RxFailed: 0
Done

CLI and API References

counters ip reset

Resets the IPv6 counters.

Parameters

counters ip reset

Examples

counters ip reset
Done

CLI and API References

counters mac reset

Resets the MAC layer counters.

Parameters

counters mac reset

Examples

counters mac reset
Done

CLI and API References

counters mle reset

Resets the Thread MLE counters.

Parameters

counters mle reset

Examples

counters mle reset
Done

CLI and API References

csl channel

Sets the CSL channel.

Parameters

csl channel channel

Examples

csl channel 20
Done

CLI and API References

csl

Gets the CSL configuration.

Parameters

No parameters.

Examples

csl
Channel: 11
Period: 160000us
Timeout: 1000s
Done

CLI and API References

csl period

Sets the CSL period in microseconds.

Disable CSL by setting this parameter to 0.

The CSL period MUST be a multiple of OT_LINK_CSL_PERIOD_TEN_SYMBOLS_UNIT_IN_USEC, otherwise OT_ERROR_INVALID_ARGS is returned.

Parameters

csl period period

Examples

csl period 3000000
Done

CLI and API References

csl timeout

Sets the CSL timeout in seconds.

Parameters

csl timeout timeout

Examples

cls timeout 10
Done

CLI and API References

dataset active

Gets the Active Operational Dataset.

OT CLI uses otOperationalDataset members to return dataset values to the console.

Parameters

dataset active [-x]

The optional -x argument prints the Active Operational Dataset values as hex-encoded TLVs.

Examples

dataset active
Active Timestamp: 1
Channel: 13
Channel Mask: 0x07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d::/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset active -x
0e08000000000001000000030000103506000...3023d82c841eff0e68db86f35740c030000ff
Done

CLI and API References

dataset activetimestamp (get, set)

Gets or sets otOperationalDataset::mActiveTimestamp.

Parameters

dataset activetimestamp [timestamp]

Pass the optional timestamp argument to set the active timestamp.

Examples

dataset activetimestamp
123456789
Done
dataset activetimestamp 123456789
Done

CLI and API References

  • No associated API

dataset channel (get,set)

Gets or sets otOperationalDataset::mChannel.

Parameters

dataset channel [channel-num]

Use the optional channel-num argument to set the channel.

Examples

dataset channel
12
Done
dataset channel 12
Done

CLI and API References

  • No associated API

dataset channelmask (get,set)

Gets or sets otOperationalDataset::mChannelMask

Parameters

dataset channelmask [channel-mask]

Use the optional channel-mask argument to set the channel mask.

Examples

dataset channelmask
0x07fff800
Done
dataset channelmask 0x07fff800
Done

CLI and API References

  • No associated API

dataset clear

Reset the Operational Dataset buffer.

Parameters

No parameters.

Examples

dataset clear
Done

CLI and API References

  • No associated API

dataset commit active

Commit the Operational Dataset buffer to Active Operational Dataset.

Parameters

No parameters.

Examples

dataset commit active
Done

CLI and API References

dataset commit pending

Commit the Operational Dataset buffer to Pending Operational Dataset.

Parameters

No parameters.

Examples

dataset commit pending
Done

CLI and API References

dataset delay (get,set)

Gets or sets otOperationalDataset::mDelay.

Parameters

dataset delay [delay]

Use the optional delay argument to set the delay timer value.

Examples

dataset delay
1000
Done
dataset delay 1000
Done

CLI and API References

dataset extpanid (get,set)

Gets or sets otOperationalDataset::mExtendedPanId.

Parameters

dataset extpanid [extpanid]

Use the optional extpanid argument to set the Extended Personal Area Network ID.

Examples

dataset extpanid
000db80123456789
Done
dataset extpanid 000db80123456789
Done

CLI and API References

dataset help

Gets a list of dataset CLI commands. For more information, refer to Display and Manage Datasets with OT CLI.

Parameters

No parameters.

Examples

dataset help
help
active
activetimestamp
channel
channelmask
clear
commit
delay
extpanid
init
meshlocalprefix
mgmtgetcommand
mgmtsetcommand
networkkey
networkname
panid
pending
pendingtimestamp
pskc
securitypolicy
set
tlvs
Done

CLI and API References

  • No associated API

dataset init (active,new,pending,tlvs)

OT CLI checks for active, pending, or tlvs and returns the corresponding values. Otherwise, OT CLI creates a new, random network and returns a new dataset.

Parameters

dataset init {active|new|pending|tlvs} [hex-encoded-tlvs]

Use new to initialize a new dataset, then enter the command dataset commit active. Use tlvs for hex-encoded TLVs.

Examples

dataset init new
Done

CLI and API References

dataset meshlocalprefix (get,set)

Gets or sets otOperationalDataset::mMeshLocalPrefix.

Parameters

dataset meshlocalprefix [meshlocalprefix]

Use the optional meshlocalprefix argument to set the Mesh-Local Prefix.

Examples

dataset meshlocalprefix
fd00:db8:0:0::/64
Done
dataset meshlocalprefix fd00:db8:0:0::
Done

CLI and API References

  • No associated API

dataset mgmtgetcommand active

Sends MGMT_ACTIVE_GET.

OT CLI sends a MGMT_ACTIVE_GET with the relevant arguments. To learn more about these parameters and argument mappings, refer to Display and Manage Datasets with OT CLI.

Parameters

dataset mgmtgetcommand active [address leader-address] [dataset-components] [-x tlv-list]
  • Use address to specify the IPv6 destination; otherwise, the Leader ALOC is used as default.
  • For dataset-components, you can pass any combination of otOperationalDatasetComponents, for example activetimestamp, pendingtimestamp, or networkkey.
  • The optional -x argument specifies raw TLVs to be requested.

Examples

dataset mgmtgetcommand active address fdde:ad00:beef:0:558:f56b:d688:799 activetimestamp securitypolicy
Done
dataset mgmtgetcommand active networkname
Done

CLI and API References

dataset mgmtgetcommand pending

Sends MGMT_PENDING_GET.

Parameters

dataset mgmtgetcommand pending [address leader-address] [dataset-components] [-x tlv-list]

To learn more about these parameters and argument mappings, refer to Display and Manage Datasets with OT CLI.

Examples

dataset mgmtgetcommand pending address fdde:ad00:beef:0:558:f56b:d688:799 activetimestamp securitypolicy
Done
dataset mgmtgetcommand pending networkname
Done

CLI and API References

dataset mgmtsetcommand active

Sends MGMT_ACTIVE_SET.

Parameters

dataset mgmtsetcommand active [dataset-components] [-x tlv-list]

To learn more about these parameters and argument mappings, refer to Display and Manage Datasets with OT CLI.

Examples

dataset mgmtsetcommand active activetimestamp 123 securitypolicy 1 onrcb
Done

CLI and API References

dataset mgmtsetcommand pending

Sends MGMT_PENDING_SET.

Parameters

dataset mgmtsetcommand pending [dataset-components] [-x tlv-list]

To learn more about these parameters and argument mappings, refer to Display and Manage Datasets with OT CLI.

Examples

dataset mgmtsetcommand pending activetimestamp 123 securitypolicy 1 onrcb
Done

CLI and API References

dataset networkkey (get,set)

Gets or sets otOperationalDataset::mNetworkKey.

Parameters

dataset networkkey [key]

Use the optional key argument to set the Network Key.

Examples

dataset networkkey
00112233445566778899aabbccddeeff
Done
dataset networkkey 00112233445566778899aabbccddeeff
Done

CLI and API References

  • No associated API

dataset networkname (get,set)

Gets or sets otOperationalDataset::mNetworkName.

Parameters

dataset networkname [name]

Use the optional name argument to set the Network Name.

Examples

dataset networkname
OpenThread
Done
dataset networkname OpenThread
Done

CLI and API References

dataset panid (get,set)

Gets or sets otOperationalDataset::mPanId.

Parameters

dataset panid [panid]

Use the optional panid argument to set the PAN ID.

Examples

dataset panid
0x1234
Done
dataset panid 0x1234
Done

CLI and API References

  • No associated API

dataset pendingtimestamp (get,set)

Gets or sets otOperationalDataset::mPendingTimestamp.

Parameters

dataset pendingtimestamp [timestamp]

Use the optional timestamp argument to set the pending timestamp seconds.

Examples

dataset pendingtimestamp
123456789
Done
dataset pendingtimestamp 123456789
Done

CLI and API References

  • No associated API

dataset pskc (get,set)

Gets or sets otOperationalDataset::mPskc.

Parameters

dataset pskc [-p passphrase] | [key]

For FTD only, use -p with the passphrase argument. -p generates a pskc from the UTF-8 encoded passphrase that you provide, together with the network name and extended PAN ID. If set, -p uses the dataset buffer; otherwise, it uses the current stack. Alternatively, you can set pskc as key (hex format).

Examples

dataset pskc
67c0c203aa0b042bfb5381c47aef4d9e
Done
dataset pskc -p 123456
Done
dataset pskc 67c0c203aa0b042bfb5381c47aef4d9e
Done

CLI and API References

  • No associated API

dataset securitypolicy (get,set)

Gets or sets the Dataset security policy.

Parameters

dataset securitypolicy [rotationtime [onrcCepR]]

Examples

dataset securitypolicy
672 onrc
Done
dataset securitypolicy 672 onrc
Done

CLI and API References

  • No associated API

dataset set (active,pending)

Sets the Active Operational Dataset.

If the dataset does not include an Active Timestamp, the dataset is only partially complete.

If Thread is enabled on a device that has a partially complete Active Dataset, the device will attempt to attach to an existing Thread network using any existing information in the dataset. Only the Thread Network Key is needed to attach to a network.

If channel is not included in the dataset, the device will send MLE Announce messages across different channels to find neighbors on other channels.

If the device successfully attaches to a Thread network, the device will then retrieve the full Active Dataset from its Parent. Note that a router-capable device will not transition to the Router or Leader roles until it has a complete Active Dataset.

The CLI dataset set command sets the Active Operational Dataset using hex-encoded TLVs.

Parameters

dataset set {active|pending} tlvs

Examples

dataset set active 0e08000000000001000000030000103506000...3023d82c841eff0e68db86f35740c030000ff
Done
dataset set pending 0e08000000000001000000030000103506000...3023d82c841eff0e68db86f35740c030000ff
Done

CLI and API References

dataset tlvs

Converts a given Operational Dataset to otOperationalDatasetTlvs .

Parameters

No parameters.

Examples

dataset tlvs
0e080000000000010000000300001635060004001fffe0020...f7f8
Done

CLI and API References

debug

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:

  • Version
  • Current state
  • RLOC16, extended MAC address
  • Unicast and multicast IPv6 address list
  • Channel
  • PAN ID and extended PAN ID
  • Network Data
  • Partition ID
  • Leader Data

If the device is operating as FTD:

  • Child and neighbor table
  • Router table and next hop info
  • Address cache table
  • Registered MTD child IPv6 address
  • Device properties

If the device supports and acts as an SRP client:

  • SRP client state
  • SRP client services and host info

If the device supports and acts as an SRP sever:

  • SRP server state and address mode
  • SRP server registered hosts and services

If the device supports TREL:

  • TREL status and peer table

If the device supports and acts as a border router:

  • BR state
  • BR prefixes (OMR, on-link, NAT64)
  • Discovered prefix table

Parameters

No parameters.

Examples

CLI and API References

  • No associated API

delaytimermin (set)

Sets the minimal delay timer (in seconds).

Parameters

delaytimermin delaytimermin

Examples

delaytimermin 60
Done

CLI and API References

delaytimermin

Get the minimal delay timer (in seconds).

Parameters

No parameters.

Examples

delaytimermin
30
Done

CLI and API References

detach async

Start the graceful detach process similar to the detach command without blocking and waiting for the callback indicating that detach is finished.

Parameters

No parameters.

Examples

detach async
Done

CLI and API References

detach

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.

Parameters

No parameters.

Examples

detach
Finished detaching
Done

CLI and API References

deviceprops (set)

Sets the device properties.

Parameters

deviceprops powerSupply isBr supportsCcm isUnstable weightAdjustment

powerSupply: should be 'battery', 'external', 'external-stable', 'external-unstable'.

Examples

deviceprops battery 0 0 0 -5
Done
deviceprops
PowerSupply      : battery
IsBorderRouter   : no
SupportsCcm      : no
IsUnstable       : no
WeightAdjustment : -5
Done

CLI and API References

deviceprops

Get the current device properties.

Requires OPENTHREAD_CONFIG_MLE_DEVICE_PROPERTY_LEADER_WEIGHT_ENABLE.

Parameters

No parameters.

Examples

deviceprops
PowerSupply      : external
IsBorderRouter   : yes
SupportsCcm      : no
IsUnstable       : no
WeightAdjustment : 0
Done

CLI and API References

discover

Perform an MLE Discovery operation.

Parameters

discover [channel]

channel: The channel to discover on. If no channel is provided, the discovery will cover all valid channels.

Examples

discover
| J | Network Name     | Extended PAN     | PAN  | MAC Address      | Ch | dBm | LQI |
+---+------------------+------------------+------+------------------+----+-----+-----+
| 0 | OpenThread       | dead00beef00cafe | ffff | f1d92a82c8d8fe43 | 11 | -20 |   0 |
Done

CLI and API References

discover reqcallback (enable,disable)

Sets a callback to receive MLE Discovery Request data.

Parameters

discover reqcallback enable|disable

Examples

discover reqcallback enable
Done

CLI and API References

dns browse

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).

Parameters

dns browse service-name [dns-server-IP] [dns-server-port] [response-timeout-ms] [max-tx-attempts] [recursion-desired-boolean]

Examples

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
instance2
    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=1234] TTL:7300
Done
dns browse _airplay._tcp.default.service.arpa
DNS browse response for _airplay._tcp.default.service.arpa.
Mac mini
    Port:7000, Priority:0, Weight:0, TTL:10
    Host:Mac-mini.default.service.arpa.
    HostAddress:fd97:739d:386a:1:1c2e:d83c:fcbe:9cf4 TTL:10
Done

CLI and API References

dns compression (enable,disable)

Set 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." OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is required.

Parameters

dns compression [enable|disable]

Examples

dns compression enable
Enabled
dns compression disable
Done
dns compression
Disabled
Done

CLI and API References

dns compression

Indicates whether the "DNS name compression" mode is enabled or not.

This is intended for testing only and available when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE config is enabled.

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." OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is required.

Parameters

dns compression [enable|disable]

Examples

dns compression
Enabled

CLI and API References

dns config (set)

Sets the default query config on DNS client.

In a non-NULL aConfig, caller can choose to leave some of the fields in otDnsQueryConfig instance unspecified (value zero). The unspecified fields are replaced by the corresponding OT config option definitions OPENTHREAD_CONFIG_DNS_CLIENTDEFAULT{} to form the default query config.

When OPENTHREAD_CONFIG_DNS_CLIENT_DEFAULT_SERVER_ADDRESS_AUTO_SET_ENABLE is enabled, the server's IPv6 address in the default config is automatically set and updated by DNS client. This is done only when user does not explicitly set or specify it. This behavior requires SRP client and its auto-start feature to be enabled. SRP client will then monitor the Thread Network Data for DNS/SRP Service entries to select an SRP server. The selected SRP server address is also set as the DNS server address in the default config.

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. OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE is required.

Parameters

dns config [dns-server-IP] [dns-server-port] [response-timeout-ms] [max-tx-attempts] [recursion-desired-boolean] [service-mode]

Examples

dns config fd00::1 1234 5000 2 0
Done
dns config
Server: [fd00:0:0:0:0:0:0:1]:1234
ResponseTimeout: 5000 ms
MaxTxAttempts: 2
RecursionDesired: no
Done
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

CLI and API References

dns config

Gets the current default query config used by DNS client.

When OpenThread stack starts, the default DNS query config is determined from a set of OT config options such as OPENTHREAD_CONFIG_DNS_CLIENT_DEFAULT_SERVER_IP6_ADDRESS, _DEFAULT_SERVER_PORT, _DEFAULT_RESPONSE_TIMEOUT, etc. (see config/dns_client.h for all related config options).

The config includes the server IPv6 address and port, response timeout in msec (wait time to rx response), maximum tx attempts before reporting failure, boolean flag to indicate whether the server can resolve the query recursively or not. OPENTHREAD_CONFIG_DNS_CLIENT_ENABLE is required.

Parameters

No parameters.

Examples

dns config
Server: [fd00:0:0:0:0:0:0:1]:1234
ResponseTimeout: 5000 ms
MaxTxAttempts: 2
RecursionDesired: no
ServiceMode: srv
Nat64Mode: allow
Done

CLI and API References

dns resolve

Sends an address resolution DNS query for AAAA (IPv6) record(s) for a given host name.

The aConfig can be NULL. In this case the default config (from otDnsClientGetDefaultConfig() ) will be used as the config for this query. In a non-NULL aConfig, some of the fields can be left unspecified (value zero). The unspecified fields are then replaced by the values from the default config.

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).

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.

Parameters

dns resolve hostname [dns-server-IP] [dns-server-port] [response-timeout-ms] [max-tx-attempts] [recursion-desired-boolean]

Examples

dns resolve ipv6.google.com
DNS response for ipv6.google.com - 2a00:1450:401b:801:0:0:0:200e TTL: 300
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

CLI and API References

dns service

Starts a DNS service instance resolution for a given service instance.

Is available when OPENTHREAD_CONFIG_DNS_CLIENT_SERVICE_DISCOVERY_ENABLE is enabled.

The aConfig can be NULL. In this case the default config (from otDnsClientGetDefaultConfig() ) will be used as the config for this query. In a non-NULL aConfig, some of the fields can be left unspecified (value zero). The unspecified fields are then replaced by the values from the default config.

The function sends queries for SRV and/or TXT records for the given service instance. The mServiceMode field in otDnsQueryConfig determines which records to query (SRV only, TXT only, or both SRV and TXT) and how to perform the query (together in the same message, separately in parallel, or in optimized mode where client will try in the same message first and then separately if it fails to get a response).

The SRV record provides information about service port, priority, and weight along with the host name associated with the service instance. This function DOES NOT perform address resolution for the host name discovered from SRV record. The server/resolver may provide AAAA/A record(s) for the host name in the Additional Data section of the response to SRV/TXT query and this information can be retrieved using otDnsServiceResponseGetServiceInfo() in otDnsServiceCallback. Users of this API MUST NOT assume that host address will always be available from otDnsServiceResponseGetServiceInfo() .

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).

Parameters

dns service service-instance-label service-name [DNS-server-IP] [DNS-server-port] [response-timeout-ms] [max-tx-attempts] [recursion-desired-boolean]

Examples

CLI and API References

dns servicehost

Starts a DNS service instance resolution for a given service instance, with a potential follow-up address resolution for the host name discovered for the service instance.

Is available when OPENTHREAD_CONFIG_DNS_CLIENT_SERVICE_DISCOVERY_ENABLE is enabled.

The aConfig can be NULL. In this case the default config (from otDnsClientGetDefaultConfig() ) will be used as the config for this query. In a non-NULL aConfig, some of the fields can be left unspecified (value zero). The unspecified fields are then replaced by the values from the default config. This function cannot be used with mServiceMode in DNS config set to OT_DNS_SERVICE_MODE_TXT (i.e., querying for TXT record only) and will return OT_ERROR_INVALID_ARGS.

Behaves similarly to otDnsClientResolveService() sending queries for SRV and TXT records. However, if the server/resolver does not provide AAAA/A records for the host name in the response to SRV query (in the Additional Data section), it will perform host name resolution (sending an AAAA query) for the discovered host name from the SRV record. The callback aCallback is invoked when responses for all queries are received (i.e., both service and host address resolutions are finished).

Send a service instance resolution DNS query for a given service instance with potential follow-up host name resolution. 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).

Parameters

dns servicehost service-instance-label service-name [DNS-server-IP] [DNS-server-port] [response-timeout-ms] [max-tx-attempts] [recursion-desired-boolean]

Examples

CLI and API References

domainname (set)

Sets the Thread Domain Name.

Only succeeds when Thread protocols are disabled.

Parameters

domainname name

Use a backslash to escape spaces.

Examples

domainname Test\ Thread
Done

CLI and API References

domainname

Gets the Thread Domain Name.

Parameters

No parameters.

Examples

domainname
Thread
Done

CLI and API References

dua iid (set,clear)

Sets or clears the Interface Identifier manually specified for the Thread Domain Unicast Address.

Available when OPENTHREAD_CONFIG_DUA_ENABLE is enabled.

Parameters

dua iid iid|clear

dua iid clear passes a nullptr to otThreadSetFixedDuaInterfaceIdentifier. Otherwise, you can pass the iid.

Examples

dua iid 0004000300020001
Done
dua iid clear
Done

CLI and API References

dua iid

Gets the Interface Identifier manually specified for the Thread Domain Unicast Address.

Available when OPENTHREAD_CONFIG_DUA_ENABLE is enabled.

Parameters

No parameters.

Examples

dua iid
0004000300020001
Done

CLI and API References

eidcache

Returns the EID-to-RLOC cache entries.

Parameters

No parameters.

Examples

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

CLI and API References

eui64

Gets the factory-assigned IEEE EUI-64 for this interface.

Parameters

No parameters.

Examples

eui64
0615aae900124b00
Done

CLI and API References

extaddr (set)

Sets the IEEE 802.15.4 Extended Address.

Parameters

extaddr extaddr

Examples

extaddr dead00beef00cafe
dead00beef00cafe
Done

CLI and API References

extaddr

Gets the IEEE 802.15.4 Extended Address.

Parameters

No parameters.

Examples

extaddr
dead00beef00cafe
Done

CLI and API References

extpanid (set)

Sets the IEEE 802.15.4 Extended PAN ID.

Parameters

extpanid extpanid

Examples

extpanid dead00beef00cafe
Done

CLI and API References

extpanid

Gets the IEEE 802.15.4 Extended PAN ID.

Parameters

No parameters.

Examples

extpanid
dead00beef00cafe
Done

CLI and API References

factoryreset

Deletes all the settings stored on non-volatile memory, and then triggers a platform reset.

Parameters

No parameters.

Examples

factoryreset

CLI and API References

fake (a,an)

Sends fake Thread messages.

Available when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is enabled.

Parameters

fake /a/an dst-ipaddr target meshLocalIid

Examples

fake /a/an fdde:ad00:beef:0:0:ff:fe00:a800 fd00:7d03:7d03:7d03:55f2:bb6a:7a43:a03b 1111222233334444
Done

CLI and API References

fem

Gets external FEM parameters.

Parameters

No parameters.

Examples

fem
LNA gain 11 dBm
Done

CLI and API References

fem lnagain (get)

Gets the external FEM's Rx LNA gain in dBm.

Parameters

No parameters.

Examples

fem lnagain
11
Done

CLI and API References

fem lnagain (set)

Sets the external FEM's Rx LNA gain in dBm.

Parameters

No parameters.

Examples

fem lnagain 8
Done

CLI and API References

history ipaddr

Displays the unicast IPv6 address history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Event: Possible values are Added or Removed.
  • Address/Prefix Length: Unicast address with its prefix length (in bits).
  • Origin: Possible value are thread, slaac, dhcp6, or manual.
  • Scope: IPv6 address scope.
  • P: Preferred flag.
  • V: Valid flag.
  • RLOC (R): This flag indicates if the IPv6 address is a routing locator.

Parameters

history ipaddr [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history ipaddr
| Age                  | Event   | Address / Prefix Length                     | Origin |Scope| P | V | R |
+----------------------+---------+---------------------------------------------+--------+-----+---+---+---+
|         00:00:04.991 | Removed | 2001:dead:beef:cafe:c4cb:caba:8d55:e30b/64  | slaac  |  14 | Y | Y | N |
|         00:00:44.647 | Added   | 2001:dead:beef:cafe:c4cb:caba:8d55:e30b/64  | slaac  |  14 | Y | Y | N |
|         00:01:07.199 | Added   | fd00:0:0:0:0:0:0:1/64                       | manual |  14 | Y | Y | N |
|         00:02:17.885 | Added   | fdde:ad00:beef:0:0:ff:fe00:fc00/64          | thread |   3 | N | Y | N |
|         00:02:17.885 | Added   | fdde:ad00:beef:0:0:ff:fe00:5400/64          | thread |   3 | N | Y | Y |
|         00:02:20.107 | Removed | fdde:ad00:beef:0:0:ff:fe00:5400/64          | thread |   3 | N | Y | Y |
|         00:02:21.575 | Added   | fdde:ad00:beef:0:0:ff:fe00:5400/64          | thread |   3 | N | Y | Y |
|         00:02:21.575 | Added   | fdde:ad00:beef:0:ecea:c4fc:ad96:4655/64     | thread |   3 | N | Y | N |
|         00:02:23.904 | Added   | fe80:0:0:0:3c12:a4d2:fbe0:31ad/64           | thread |   2 | Y | Y | N |
Done
history ipaddr list 5
00:00:20.327 -> event:Removed address:2001:dead:beef:cafe:c4cb:caba:8d55:e30b prefixlen:64 origin:slaac scope:14 preferred:yes valid:yes rloc:no
00:00:59.983 -> event:Added address:2001:dead:beef:cafe:c4cb:caba:8d55:e30b prefixlen:64 origin:slaac scope:14 preferred:yes valid:yes rloc:no
00:01:22.535 -> event:Added address:fd00:0:0:0:0:0:0:1 prefixlen:64 origin:manual scope:14 preferred:yes valid:yes rloc:no
00:02:33.221 -> event:Added address:fdde:ad00:beef:0:0:ff:fe00:fc00 prefixlen:64 origin:thread scope:3 preferred:no valid:yes rloc:no
00:02:33.221 -> event:Added address:fdde:ad00:beef:0:0:ff:fe00:5400 prefixlen:64 origin:thread scope:3 preferred:no valid:yes rloc:yes
Done

CLI and API References

history ipmaddr

Displays the multicast IPv6 address history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Event: Possible values are Subscribed or Unsubscribed.
  • Multicast Address
  • Origin: Possible values are Thread or Manual.

Parameters

history ipmaddr [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history ipmaddr
| Age                  | Event        | Multicast Address                       | Origin |
+----------------------+--------------+-----------------------------------------+--------+
|         00:00:08.592 | Unsubscribed | ff05:0:0:0:0:0:0:1                      | Manual |
|         00:01:25.353 | Subscribed   | ff05:0:0:0:0:0:0:1                      | Manual |
|         00:01:54.953 | Subscribed   | ff03:0:0:0:0:0:0:2                      | Thread |
|         00:01:54.953 | Subscribed   | ff02:0:0:0:0:0:0:2                      | Thread |
|         00:01:59.329 | Subscribed   | ff33:40:fdde:ad00:beef:0:0:1            | Thread |
|         00:01:59.329 | Subscribed   | ff32:40:fdde:ad00:beef:0:0:1            | Thread |
|         00:02:01.129 | Subscribed   | ff03:0:0:0:0:0:0:fc                     | Thread |
|         00:02:01.129 | Subscribed   | ff03:0:0:0:0:0:0:1                      | Thread |
|         00:02:01.129 | Subscribed   | ff02:0:0:0:0:0:0:1                      | Thread |
Done
history ipmaddr list
00:00:25.447 -> event:Unsubscribed address:ff05:0:0:0:0:0:0:1 origin:Manual
00:01:42.208 -> event:Subscribed address:ff05:0:0:0:0:0:0:1 origin:Manual
00:02:11.808 -> event:Subscribed address:ff03:0:0:0:0:0:0:2 origin:Thread
00:02:11.808 -> event:Subscribed address:ff02:0:0:0:0:0:0:2 origin:Thread
00:02:16.184 -> event:Subscribed address:ff33:40:fdde:ad00:beef:0:0:1 origin:Thread
00:02:16.184 -> event:Subscribed address:ff32:40:fdde:ad00:beef:0:0:1 origin:Thread
00:02:17.984 -> event:Subscribed address:ff03:0:0:0:0:0:0:fc origin:Thread
00:02:17.984 -> event:Subscribed address:ff03:0:0:0:0:0:0:1 origin:Thread
00:02:17.984 -> event:Subscribed address:ff02:0:0:0:0:0:0:1 origin:Thread
Done

CLI and API References

history neighbor

Displays the neighbor history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Type: Child or Router.
  • Event: Possible values are Added, Removed, or Changed.
  • Extended Address
  • RLOC16
  • Mode: MLE link mode. Possible values:
    • -: no flags set (rx-off-when-idle, minimal Thread device, stable network data).
    • r: rx-on-when-idle
    • d: Full Thread Device.
    • n: Full Network Data
  • Ave RSS: Average number of frames (in dBm) received from the neighbor at the time the entry was recorded.

Parameters

history neighbor [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history neighbor
| Age                  | Type   | Event     | Extended Address | RLOC16 | Mode | Ave RSS |
+----------------------+--------+-----------+------------------+--------+------+---------+
|         00:00:29.233 | Child  | Added     | ae5105292f0b9169 | 0x8404 | -    |     -20 |
|         00:01:38.368 | Child  | Removed   | ae5105292f0b9169 | 0x8401 | -    |     -20 |
|         00:04:27.181 | Child  | Changed   | ae5105292f0b9169 | 0x8401 | -    |     -20 |
|         00:04:51.236 | Router | Added     | 865c7ca38a5fa960 | 0x9400 | rdn  |     -20 |
|         00:04:51.587 | Child  | Removed   | 865c7ca38a5fa960 | 0x8402 | rdn  |     -20 |
|         00:05:22.764 | Child  | Changed   | ae5105292f0b9169 | 0x8401 | rn   |     -20 |
|         00:06:40.764 | Child  | Added     | 4ec99efc874a1841 | 0x8403 | r    |     -20 |
|         00:06:44.060 | Child  | Added     | 865c7ca38a5fa960 | 0x8402 | rdn  |     -20 |
|         00:06:49.515 | Child  | Added     | ae5105292f0b9169 | 0x8401 | -    |     -20 |
Done
history neighbor list
00:00:34.753 -> type:Child event:Added extaddr:ae5105292f0b9169 rloc16:0x8404 mode:- rss:-20
00:01:43.888 -> type:Child event:Removed extaddr:ae5105292f0b9169 rloc16:0x8401 mode:- rss:-20
00:04:32.701 -> type:Child event:Changed extaddr:ae5105292f0b9169 rloc16:0x8401 mode:- rss:-20
00:04:56.756 -> type:Router event:Added extaddr:865c7ca38a5fa960 rloc16:0x9400 mode:rdn rss:-20
00:04:57.107 -> type:Child event:Removed extaddr:865c7ca38a5fa960 rloc16:0x8402 mode:rdn rss:-20
00:05:28.284 -> type:Child event:Changed extaddr:ae5105292f0b9169 rloc16:0x8401 mode:rn rss:-20
00:06:46.284 -> type:Child event:Added extaddr:4ec99efc874a1841 rloc16:0x8403 mode:r rss:-20
00:06:49.580 -> type:Child event:Added extaddr:865c7ca38a5fa960 rloc16:0x8402 mode:rdn rss:-20
00:06:55.035 -> type:Child event:Added extaddr:ae5105292f0b9169 rloc16:0x8401 mode:- rss:-20
Done

CLI and API References

history netinfo

Displays the network info history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Role: Device role. Possible values are router, child, detached, or disabled.
  • Mode: MLE link mode. Possible values:
    • -: no flags set (rx-off-when-idle, minimal Thread device, stable network data).
    • r: rx-on-when-idle
    • d: Full Thread Device.
    • n: Full Network Data
  • RLOC16
  • Partition ID.

Parameters

history netinfo [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history netinfo
| Age                  | Role     | Mode | RLOC16 | Partition ID |
+----------------------+----------+------+--------+--------------+
|         00:00:10.069 | router   | rdn  | 0x6000 |    151029327 |
|         00:02:09.337 | child    | rdn  | 0x2001 |    151029327 |
|         00:02:09.338 | child    | rdn  | 0x2001 |    151029327 |
|         00:07:40.806 | child    | -    | 0x2001 |    151029327 |
|         00:07:42.297 | detached | -    | 0x6000 |            0 |
|         00:07:42.968 | disabled | -    | 0x6000 |            0 |
Done
history netinfo list
00:00:59.467 -> role:router mode:rdn rloc16:0x6000 partition-id:151029327
00:02:58.735 -> role:child mode:rdn rloc16:0x2001 partition-id:151029327
00:02:58.736 -> role:child mode:rdn rloc16:0x2001 partition-id:151029327
00:08:30.204 -> role:child mode:- rloc16:0x2001 partition-id:151029327
00:08:31.695 -> role:detached mode:- rloc16:0x6000 partition-id:0
00:08:32.366 -> role:disabled mode:- rloc16:0x6000 partition-id:0
Done
history netinfo 2
| Age                  | Role     | Mode | RLOC16 | Partition ID |
+----------------------+----------+------+--------+--------------+
|         00:02:05.451 | router   | rdn  | 0x6000 |    151029327 |
|         00:04:04.719 | child    | rdn  | 0x2001 |    151029327 |
Done

CLI and API References

history prefix

Displays the network data for the mesh prefix history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Event: Possible values are Added or Removed.
  • Prefix
  • Flags/meaning:
    • p: Preferred flag
    • a: Stateless IPv6 address auto-configuration flag.
    • d: DHCPv6 IPv6 address configuration flag.
    • c: DHCPv6 other-configuration flag.
    • r: Default route flag.
    • o: On mesh flag.
    • s: Stable flag.
    • n: Nd Dns flag.
    • D: Domain prefix flag.
  • Pref: Preference. Values can be either high, med, or low.
  • RLOC16

Parameters

history prefix [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history prefix
| Age                  | Event   | Prefix                                      | Flags     | Pref | RLOC16 |
+----------------------+---------+---------------------------------------------+-----------+------+--------+
|         00:00:10.663 | Added   | fd00:1111:2222:3333::/64                    | paro      | med  | 0x5400 |
|         00:01:02.054 | Removed | fd00:dead:beef:1::/64                       | paros     | high | 0x5400 |
|         00:01:21.136 | Added   | fd00:abba:cddd:0::/64                       | paos      | med  | 0x5400 |
|         00:01:45.144 | Added   | fd00:dead:beef:1::/64                       | paros     | high | 0x3c00 |
|         00:01:50.944 | Added   | fd00:dead:beef:1::/64                       | paros     | high | 0x5400 |
|         00:01:59.887 | Added   | fd00:dead:beef:1::/64                       | paros     | med  | 0x8800 |
Done
history prefix list
00:04:12.487 -> event:Added prefix:fd00:1111:2222:3333::/64 flags:paro pref:med rloc16:0x5400
00:05:03.878 -> event:Removed prefix:fd00:dead:beef:1::/64 flags:paros pref:high rloc16:0x5400
00:05:22.960 -> event:Added prefix:fd00:abba:cddd:0::/64 flags:paos pref:med rloc16:0x5400
00:05:46.968 -> event:Added prefix:fd00:dead:beef:1::/64 flags:paros pref:high rloc16:0x3c00
00:05:52.768 -> event:Added prefix:fd00:dead:beef:1::/64 flags:paros pref:high rloc16:0x5400
00:06:01.711 -> event:Added prefix:fd00:dead:beef:1::/64 flags:paros pref:med rloc16:0x8800
Done

CLI and API References

history route

Displays the network data external-route history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Event: Possible values are Added or Removed.
  • Route
  • Flags/meaning:
    • s: Stable flag.
    • n: NAT64 flag.
  • Pref: Preference. Values can be either high, med, or low.
  • RLOC16

Parameters

history route [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history route
| Age                  | Event   | Route                                       | Flags     | Pref | RLOC16 |
+----------------------+---------+---------------------------------------------+-----------+------+--------+
|         00:00:05.456 | Removed | fd00:1111:0::/48                            | s         | med  | 0x3c00 |
|         00:00:29.310 | Added   | fd00:1111:0::/48                            | s         | med  | 0x3c00 |
|         00:00:42.822 | Added   | fd00:1111:0::/48                            | s         | med  | 0x5400 |
|         00:01:27.688 | Added   | fd00:aaaa:bbbb:cccc::/64                    | s         | med  | 0x8800 |
Done
history route list 2
00:00:48.704 -> event:Removed route:fd00:1111:0::/48 flags:s pref:med rloc16:0x3c00
00:01:12.558 -> event:Added route:fd00:1111:0::/48 flags:s pref:med rloc16:0x3c00
Done

CLI and API References

history router

Displays the route-table history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Event: Possible values are Added, Removed, NextHopChanged, or CostChanged.
  • ID (RLOC16): Router ID and RLOC16 of the router.
  • Next Hop: Router ID and RLOC16 of the next hop. If there is no next hop, none is shown.
  • Path Cost: old cost -> new cost. A value of inf indicates an infinite path cost.

Parameters

history router [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history router
| Age                  | Event          | ID (RLOC16) | Next Hop    | Path Cost  |
+----------------------+----------------+-------------+-------------+------------+
|         00:00:05.258 | NextHopChanged |  7 (0x1c00) | 34 (0x8800) | inf ->   3 |
|         00:00:08.604 | NextHopChanged | 34 (0x8800) | 34 (0x8800) | inf ->   2 |
|         00:00:08.604 | Added          |  7 (0x1c00) |        none | inf -> inf |
|         00:00:11.931 | Added          | 34 (0x8800) |        none | inf -> inf |
|         00:00:14.948 | Removed        | 59 (0xec00) |        none | inf -> inf |
|         00:00:14.948 | Removed        | 54 (0xd800) |        none | inf -> inf |
|         00:00:14.948 | Removed        | 34 (0x8800) |        none | inf -> inf |
|         00:00:14.948 | Removed        |  7 (0x1c00) |        none | inf -> inf |
|         00:00:54.795 | NextHopChanged | 59 (0xec00) | 34 (0x8800) |   1 ->   5 |
|         00:02:33.735 | NextHopChanged | 54 (0xd800) |        none |  15 -> inf |
|         00:03:10.915 | CostChanged    | 54 (0xd800) | 34 (0x8800) |  13 ->  15 |
|         00:03:45.716 | NextHopChanged | 54 (0xd800) | 34 (0x8800) |  15 ->  13 |
|         00:03:46.188 | CostChanged    | 54 (0xd800) | 59 (0xec00) |  13 ->  15 |
|         00:04:19.124 | CostChanged    | 54 (0xd800) | 59 (0xec00) |  11 ->  13 |
|         00:04:52.008 | CostChanged    | 54 (0xd800) | 59 (0xec00) |   9 ->  11 |
|         00:05:23.176 | CostChanged    | 54 (0xd800) | 59 (0xec00) |   7 ->   9 |
|         00:05:51.081 | CostChanged    | 54 (0xd800) | 59 (0xec00) |   5 ->   7 |
|         00:06:48.721 | CostChanged    | 54 (0xd800) | 59 (0xec00) |   3 ->   5 |
|         00:07:13.792 | NextHopChanged | 54 (0xd800) | 59 (0xec00) |   1 ->   3 |
|         00:09:28.681 | NextHopChanged |  7 (0x1c00) | 34 (0x8800) | inf ->   3 |
|         00:09:31.882 | Added          |  7 (0x1c00) |        none | inf -> inf |
|         00:09:51.240 | NextHopChanged | 54 (0xd800) | 54 (0xd800) | inf ->   1 |
|         00:09:54.204 | Added          | 54 (0xd800) |        none | inf -> inf |
|         00:10:20.645 | NextHopChanged | 34 (0x8800) | 34 (0x8800) | inf ->   2 |
|         00:10:24.242 | NextHopChanged | 59 (0xec00) | 59 (0xec00) | inf ->   1 |
|         00:10:24.242 | Added          | 34 (0x8800) |        none | inf -> inf |
|         00:10:41.900 | NextHopChanged | 59 (0xec00) |        none |   1 -> inf |
|         00:10:42.480 | Added          |  3 (0x0c00) |  3 (0x0c00) | inf -> inf |
|         00:10:43.614 | Added          | 59 (0xec00) | 59 (0xec00) | inf ->   1 |
Done
history router list 20
00:00:06.959 -> event:NextHopChanged router:7(0x1c00) nexthop:34(0x8800) old-cost:inf new-cost:3
00:00:10.305 -> event:NextHopChanged router:34(0x8800) nexthop:34(0x8800) old-cost:inf new-cost:2
00:00:10.305 -> event:Added router:7(0x1c00) nexthop:none old-cost:inf new-cost:inf
00:00:13.632 -> event:Added router:34(0x8800) nexthop:none old-cost:inf new-cost:inf
00:00:16.649 -> event:Removed router:59(0xec00) nexthop:none old-cost:inf new-cost:inf
00:00:16.649 -> event:Removed router:54(0xd800) nexthop:none old-cost:inf new-cost:inf
00:00:16.649 -> event:Removed router:34(0x8800) nexthop:none old-cost:inf new-cost:inf
00:00:16.649 -> event:Removed router:7(0x1c00) nexthop:none old-cost:inf new-cost:inf
00:00:56.496 -> event:NextHopChanged router:59(0xec00) nexthop:34(0x8800) old-cost:1 new-cost:5
00:02:35.436 -> event:NextHopChanged router:54(0xd800) nexthop:none old-cost:15 new-cost:inf
00:03:12.616 -> event:CostChanged router:54(0xd800) nexthop:34(0x8800) old-cost:13 new-cost:15
00:03:47.417 -> event:NextHopChanged router:54(0xd800) nexthop:34(0x8800) old-cost:15 new-cost:13
00:03:47.889 -> event:CostChanged router:54(0xd800) nexthop:59(0xec00) old-cost:13 new-cost:15
00:04:20.825 -> event:CostChanged router:54(0xd800) nexthop:59(0xec00) old-cost:11 new-cost:13
00:04:53.709 -> event:CostChanged router:54(0xd800) nexthop:59(0xec00) old-cost:9 new-cost:11
00:05:24.877 -> event:CostChanged router:54(0xd800) nexthop:59(0xec00) old-cost:7 new-cost:9
00:05:52.782 -> event:CostChanged router:54(0xd800) nexthop:59(0xec00) old-cost:5 new-cost:7
00:06:50.422 -> event:CostChanged router:54(0xd800) nexthop:59(0xec00) old-cost:3 new-cost:5
00:07:15.493 -> event:NextHopChanged router:54(0xd800) nexthop:59(0xec00) old-cost:1 new-cost:3
00:09:30.382 -> event:NextHopChanged router:7(0x1c00) nexthop:34(0x8800) old-cost:inf new-cost:3
Done

CLI and API References

history rx

Displays the IPv6 message RX history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Type:
    • IPv6 message type, such as UDP, TCP, HopOpts, and ICMP6 (and its subtype).
    • src: Source IPv6 address and port number.
    • dst: Destination IPv6 address and port number (port number is valid for UDP/TCP, otherwise it is 0).
  • Len: IPv6 payload length (excluding the IPv6 header).
  • Chksum: Message checksum (valid for UDP, TCP, or ICMP6 messages).
  • Sec: Indicates if link-layer security was used.
  • Prio: Message priority. Possible values are low, norm, high, or net (for Thread control messages).
  • RSS: Received Signal Strength (in dBm), averaged over all received fragment frames that formed the message. For TX history, NA (not applicable) is displayed.
  • Dir: Shows whether the message was sent (TX) or received (RX). A failed transmission is indicated with TX-F in table format or tx-success:no in list format. Examples of a failed transmission include a txgetting aborted and no ack getting sent from the peer for any of the message fragments.
  • Neighb: Short address (RLOC16) of the neighbor with whom the message was sent/received. If the frame was broadcast, it is shown as bcast in table format or 0xffff in list format. If the short address of the neighbor is not available, it is shown as unknwn in table format or 0xfffe in list format.
  • Radio: Radio link on which the message was sent/received (useful when OPENTHREAD_CONFIG_MULTI_RADIO is enabled). Can be 15.4, trel, or all (if sent on all radio links).

Parameters

history rx [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history rx
| Age                  | Type             | Len   | Chksum | Sec | Prio | RSS  |Dir | Neighb | Radio |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0xbd26 |  no |  net |  -20 | RX | 0x4800 |  15.4 |
|         00:00:07.640 | src: [fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:1]:19788                                             |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | HopOpts          |    44 | 0x0000 | yes | norm |  -20 | RX | 0x4800 |  15.4 |
|         00:00:09.263 | src: [fdde:ad00:beef:0:0:ff:fe00:4800]:0                                    |
|                      | dst: [ff03:0:0:0:0:0:0:2]:0                                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    12 | 0x3f7d | yes |  net |  -20 | RX | 0x4800 |  15.4 |
|         00:00:09.302 | src: [fdde:ad00:beef:0:0:ff:fe00:4800]:61631                                |
|                      | dst: [fdde:ad00:beef:0:0:ff:fe00:4801]:61631                                |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | ICMP6(EchoReqst) |    16 | 0x942c | yes | norm |  -20 | RX | 0x4800 |  15.4 |
|         00:00:09.304 | src: [fdde:ad00:beef:0:ac09:a16b:3204:dc09]:0                               |
|                      | dst: [fdde:ad00:beef:0:dc0e:d6b3:f180:b75b]:0                               |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | HopOpts          |    44 | 0x0000 | yes | norm |  -20 | RX | 0x4800 |  15.4 |
|         00:00:09.304 | src: [fdde:ad00:beef:0:0:ff:fe00:4800]:0                                    |
|                      | dst: [ff03:0:0:0:0:0:0:2]:0                                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0x2e37 |  no |  net |  -20 | RX | 0x4800 |  15.4 |
|         00:00:21.622 | src: [fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:1]:19788                                             |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0xe177 |  no |  net |  -20 | RX | 0x4800 |  15.4 |
|         00:00:26.640 | src: [fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:1]:19788                                             |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |   165 | 0x82ee | yes |  net |  -20 | RX | 0x4800 |  15.4 |
|         00:00:30.000 | src: [fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788                                 |
|                      | dst: [fe80:0:0:0:a4a5:bbac:a8e:bd07]:19788                                  |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    93 | 0x52df |  no |  net |  -20 | RX | unknwn |  15.4 |
|         00:00:30.480 | src: [fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788                                 |
|                      | dst: [fe80:0:0:0:a4a5:bbac:a8e:bd07]:19788                                  |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0x5ccf |  no |  net |  -20 | RX | unknwn |  15.4 |
|         00:00:30.772 | src: [fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:1]:19788                                             |
Done
history rx list 4
00:00:13.368
    type:UDP len:50 checksum:0xbd26 sec:no prio:net rss:-20 from:0x4800 radio:15.4
    src:[fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788
    dst:[ff02:0:0:0:0:0:0:1]:19788
00:00:14.991
    type:HopOpts len:44 checksum:0x0000 sec:yes prio:norm rss:-20 from:0x4800 radio:15.4
    src:[fdde:ad00:beef:0:0:ff:fe00:4800]:0
    dst:[ff03:0:0:0:0:0:0:2]:0
00:00:15.030
    type:UDP len:12 checksum:0x3f7d sec:yes prio:net rss:-20 from:0x4800 radio:15.4
    src:[fdde:ad00:beef:0:0:ff:fe00:4800]:61631
    dst:[fdde:ad00:beef:0:0:ff:fe00:4801]:61631
00:00:15.032
    type:ICMP6(EchoReqst) len:16 checksum:0x942c sec:yes prio:norm rss:-20 from:0x4800 radio:15.4
    src:[fdde:ad00:beef:0:ac09:a16b:3204:dc09]:0
    dst:[fdde:ad00:beef:0:dc0e:d6b3:f180:b75b]:0
Done

CLI and API References

history rxtx

Displays the combined IPv6 message RX and TX history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Type:
    • IPv6 message type, such as UDP, TCP, HopOpts, and ICMP6 (and its subtype).
    • src: Source IPv6 address and port number.
    • dst: Destination IPv6 address and port number (port number is valid for UDP/TCP, otherwise it is 0).
  • Len: IPv6 payload length (excluding the IPv6 header).
  • Chksum: Message checksum (valid for UDP, TCP, or ICMP6 messages).
  • Sec: Indicates if link-layer security was used.
  • Prio: Message priority. Possible values are low, norm, high, or net (for Thread control messages).
  • RSS: Received Signal Strength (in dBm), averaged over all received fragment frames that formed the message. For TX history, NA (not applicable) is displayed.
  • Dir: Shows whether the message was sent (TX) or received (RX). A failed transmission is indicated with TX-F in table format or tx-success:no in list format. Examples of a failed transmission include a txgetting aborted and no ack getting sent from the peer for any of the message fragments.
  • Neighb: Short address (RLOC16) of the neighbor with whom the message was sent/received. If the frame was broadcast, it is shown as bcast in table format or 0xffff in list format. If the short address of the neighbor is not available, it is shown as unknwn in table format or 0xfffe in list format.
  • Radio: Radio link on which the message was sent/received (useful when OPENTHREAD_CONFIG_MULTI_RADIO is enabled). Can be 15.4, trel, or all (if sent on all radio links).

Parameters

history rxtx [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history rxtx
| Age                  | Type             | Len   | Chksum | Sec | Prio | RSS  |Dir | Neighb | Radio |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | HopOpts          |    44 | 0x0000 | yes | norm |  -20 | RX | 0x0800 |  15.4 |
|         00:00:09.267 | src: [fdde:ad00:beef:0:0:ff:fe00:800]:0                                     |
|                      | dst: [ff03:0:0:0:0:0:0:2]:0                                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    12 | 0x6c6b | yes |  net |  -20 | RX | 0x0800 |  15.4 |
|         00:00:09.290 | src: [fdde:ad00:beef:0:0:ff:fe00:800]:61631                                 |
|                      | dst: [fdde:ad00:beef:0:0:ff:fe00:801]:61631                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | ICMP6(EchoReqst) |    16 | 0xc6a2 | yes | norm |  -20 | RX | 0x0800 |  15.4 |
|         00:00:09.292 | src: [fdde:ad00:beef:0:efe8:4910:cf95:dee9]:0                               |
|                      | dst: [fdde:ad00:beef:0:af4c:3644:882a:3698]:0                               |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | ICMP6(EchoReply) |    16 | 0xc5a2 | yes | norm |  NA  | TX | 0x0800 |  15.4 |
|         00:00:09.292 | src: [fdde:ad00:beef:0:af4c:3644:882a:3698]:0                               |
|                      | dst: [fdde:ad00:beef:0:efe8:4910:cf95:dee9]:0                               |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0xaa0d | yes |  net |  NA  | TX | 0x0800 |  15.4 |
|         00:00:09.294 | src: [fdde:ad00:beef:0:0:ff:fe00:801]:61631                                 |
|                      | dst: [fdde:ad00:beef:0:0:ff:fe00:800]:61631                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | HopOpts          |    44 | 0x0000 | yes | norm |  -20 | RX | 0x0800 |  15.4 |
|         00:00:09.296 | src: [fdde:ad00:beef:0:0:ff:fe00:800]:0                                     |
|                      | dst: [ff03:0:0:0:0:0:0:2]:0                                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0xc1d8 |  no |  net |  -20 | RX | 0x0800 |  15.4 |
|         00:00:09.569 | src: [fe80:0:0:0:54d9:5153:ffc6:df26]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:1]:19788                                             |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0x3cb1 |  no |  net |  -20 | RX | 0x0800 |  15.4 |
|         00:00:16.519 | src: [fe80:0:0:0:54d9:5153:ffc6:df26]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:1]:19788                                             |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0xeda0 |  no |  net |  -20 | RX | 0x0800 |  15.4 |
|         00:00:20.599 | src: [fe80:0:0:0:54d9:5153:ffc6:df26]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:1]:19788                                             |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |   165 | 0xbdfa | yes |  net |  -20 | RX | 0x0800 |  15.4 |
|         00:00:21.059 | src: [fe80:0:0:0:54d9:5153:ffc6:df26]:19788                                 |
|                      | dst: [fe80:0:0:0:8893:c2cc:d983:1e1c]:19788                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    64 | 0x1c11 |  no |  net |  NA  | TX | 0x0800 |  15.4 |
|         00:00:21.062 | src: [fe80:0:0:0:8893:c2cc:d983:1e1c]:19788                                 |
|                      | dst: [fe80:0:0:0:54d9:5153:ffc6:df26]:19788                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    93 | 0xedff |  no |  net |  -20 | RX | unknwn |  15.4 |
|         00:00:21.474 | src: [fe80:0:0:0:54d9:5153:ffc6:df26]:19788                                 |
|                      | dst: [fe80:0:0:0:8893:c2cc:d983:1e1c]:19788                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    44 | 0xd383 |  no |  net |  NA  | TX | bcast  |  15.4 |
|         00:00:21.811 | src: [fe80:0:0:0:8893:c2cc:d983:1e1c]:19788                                 |
|                      | dst: [ff02:0:0:0:0:0:0:2]:19788                                             |
Done
history rxtx list 5
00:00:02.100
    type:UDP len:50 checksum:0xd843 sec:no prio:net rss:-20 from:0x0800 radio:15.4
    src:[fe80:0:0:0:54d9:5153:ffc6:df26]:19788
    dst:[ff02:0:0:0:0:0:0:1]:19788
00:00:15.331
    type:HopOpts len:44 checksum:0x0000 sec:yes prio:norm rss:-20 from:0x0800 radio:15.4
    src:[fdde:ad00:beef:0:0:ff:fe00:800]:0
    dst:[ff03:0:0:0:0:0:0:2]:0
00:00:15.354
    type:UDP len:12 checksum:0x6c6b sec:yes prio:net rss:-20 from:0x0800 radio:15.4
    src:[fdde:ad00:beef:0:0:ff:fe00:800]:61631
    dst:[fdde:ad00:beef:0:0:ff:fe00:801]:61631
00:00:15.356
    type:ICMP6(EchoReqst) len:16 checksum:0xc6a2 sec:yes prio:norm rss:-20 from:0x0800 radio:15.4
    src:[fdde:ad00:beef:0:efe8:4910:cf95:dee9]:0
    dst:[fdde:ad00:beef:0:af4c:3644:882a:3698]:0
00:00:15.356
    type:ICMP6(EchoReply) len:16 checksum:0xc5a2 sec:yes prio:norm tx-success:yes to:0x0800 radio:15.4
    src:[fdde:ad00:beef:0:af4c:3644:882a:3698]:0
    dst:[fdde:ad00:beef:0:efe8:4910:cf95:dee9]:0
Done

CLI and API References

history tx

Displays the IPv6 message TX history in table or list format.

Each table or list entry provides:

  • Age: Time elapsed since the command was issued, and given in the format: hours:minutes:seconds:milliseconds
  • Type:
    • IPv6 message type, such as UDP, TCP, HopOpts, and ICMP6 (and its subtype).
    • src: Source IPv6 address and port number.
    • dst: Destination IPv6 address and port number (port number is valid for UDP/TCP, otherwise it is 0).
  • Len: IPv6 payload length (excluding the IPv6 header).
  • Chksum: Message checksum (valid for UDP, TCP, or ICMP6 messages).
  • Sec: Indicates if link-layer security was used.
  • Prio: Message priority. Possible values are low, norm, high, or net (for Thread control messages).
  • RSS: Received Signal Strength (in dBm), averaged over all received fragment frames that formed the message. For TX history, NA (not applicable) is displayed.
  • Dir: Shows whether the message was sent (TX) or received (RX). A failed transmission is indicated with TX-F in table format or tx-success:no in list format. Examples of a failed transmission include a txgetting aborted and no ack getting sent from the peer for any of the message fragments.
  • Neighb: Short address (RLOC16) of the neighbor with whom the message was sent/received. If the frame was broadcast, it is shown as bcast in table format or 0xffff in list format. If the short address of the neighbor is not available, it is shown as unknwn in table format or 0xfffe in list format.
  • Radio: Radio link on which the message was sent/received (useful when OPENTHREAD_CONFIG_MULTI_RADIO is enabled). Can be 15.4, trel, or all (if sent on all radio links).

Parameters

history tx [list] [num-entries]
  • Use the list option to display the output in list format. Otherwise, the output is shown in table format.
  • Use the num-entries option to limit the output to the number of most-recent entries specified. If this option is not used, all stored entries are shown in the output.

Examples

history tx
| Age                  | Type             | Len   | Chksum | Sec | Prio | RSS  |Dir | Neighb | Radio |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | ICMP6(EchoReply) |    16 | 0x932c | yes | norm |  NA  | TX | 0x4800 |  15.4 |
|         00:00:18.798 | src: [fdde:ad00:beef:0:dc0e:d6b3:f180:b75b]:0                               |
|                      | dst: [fdde:ad00:beef:0:ac09:a16b:3204:dc09]:0                               |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    50 | 0xce87 | yes |  net |  NA  | TX | 0x4800 |  15.4 |
|         00:00:18.800 | src: [fdde:ad00:beef:0:0:ff:fe00:4801]:61631                                |
|                      | dst: [fdde:ad00:beef:0:0:ff:fe00:4800]:61631                                |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    64 | 0xf7ba |  no |  net |  NA  | TX | 0x4800 |  15.4 |
|         00:00:39.499 | src: [fe80:0:0:0:a4a5:bbac:a8e:bd07]:19788                                  |
|                      | dst: [fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788                                 |
+----------------------+------------------+-------+--------+-----+------+------+----+--------+-------+
|                      | UDP              |    44 | 0x26d4 |  no |  net |  NA  | TX | bcast  |  15.4 |
|         00:00:40.256 | src: [fe80:0:0:0:a4a5:bbac:a8e:bd07]:19788                                  |
|                      | dst: [ff02:0:0:0:0:0:0:2]:19788                                             |
Done
history tx list
00:00:23.957
    type:ICMP6(EchoReply) len:16 checksum:0x932c sec:yes prio:norm tx-success:yes to:0x4800 radio:15.4
    src:[fdde:ad00:beef:0:dc0e:d6b3:f180:b75b]:0
    dst:[fdde:ad00:beef:0:ac09:a16b:3204:dc09]:0
00:00:23.959
    type:UDP len:50 checksum:0xce87 sec:yes prio:net tx-success:yes to:0x4800 radio:15.4
    src:[fdde:ad00:beef:0:0:ff:fe00:4801]:61631
    dst:[fdde:ad00:beef:0:0:ff:fe00:4800]:61631
00:00:44.658
    type:UDP len:64 checksum:0xf7ba sec:no prio:net tx-success:yes to:0x4800 radio:15.4
    src:[fe80:0:0:0:a4a5:bbac:a8e:bd07]:19788
    dst:[fe80:0:0:0:d03d:d3e7:cc5e:7cd7]:19788
00:00:45.415
    type:UDP len:44 checksum:0x26d4 sec:no prio:net tx-success:yes to:0xffff radio:15.4
    src:[fe80:0:0:0:a4a5:bbac:a8e:bd07]:19788
    dst:[ff02:0:0:0:0:0:0:2]:19788
Done

CLI and API References

ifconfig (up,down)

Brings the IPv6 interface up or down.

Call this to enable or disable IPv6 communication.

Parameters

ifconfig up|down

Examples

ifconfig up
Done
ifconfig down
Done

CLI and API References

ifconfig

Indicates whether or not the IPv6 interface is up.

Parameters

No parameters.

Examples

ifconfig
down
Done
ifconfig
up
Done

CLI and API References

instanceid

Gets the instance identifier.

The instance identifier is set to a random value when the instance is constructed, and then its value will not change after initialization.

Parameters

No parameters.

Examples

instanceid
468697314
Done

CLI and API References

ipaddr add

Adds a Network Interface Address to the Thread interface.

The passed-in instance aAddress is copied by the Thread interface. The Thread interface only supports a fixed number of externally added unicast addresses. See OPENTHREAD_CONFIG_IP6_MAX_EXT_UCAST_ADDRS.

Parameters

ipaddr add aAddress

Examples

ipaddr add 2001::dead:beef:cafe
Done

CLI and API References

ipaddr del

Removes a Network Interface Address from the Thread interface.

Parameters

ipaddr del aAddress

Examples

ipaddr del 2001::dead:beef:cafe
Done

CLI and API References

ipaddr

Gets the list of IPv6 addresses assigned to the Thread interface.

Parameters

ipaddr [-v]

Use -v to get more verbose information about the address:

  • origin: can be thread, slaac, dhcp6, manual and indicates the origin of the address
  • plen: prefix length
  • preferred: preferred flag (boolean)
  • valid: valid flag (boolean)

Examples

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
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

CLI and API References

ipaddr linklocal

Gets the Thread link-local IPv6 address.

The Thread link local address is derived using IEEE802.15.4 Extended Address as Interface Identifier.

Parameters

No parameters.

Examples

ipaddr linklocal
fe80:0:0:0:f3d9:2a82:c8d8:fe43
Done

CLI and API References

ipaddr mleid

Gets the Mesh Local EID address.

Parameters

No parameters.

Examples

ipaddr mleid
fdde:ad00:beef:0:558:f56b:d688:799
Done

CLI and API References

ipaddr rloc

Gets the Thread Routing Locator (RLOC) address.

Parameters

No parameters.

Examples

ipaddr rloc
fdde:ad00:beef:0:0:ff:fe00:0
Done

CLI and API References

ipmaddr add

Subscribes the Thread interface to a Network Interface Multicast Address.

The passed in instance aAddress will be copied by the Thread interface. The Thread interface only supports a fixed number of externally added multicast addresses. See OPENTHREAD_CONFIG_IP6_MAX_EXT_MCAST_ADDRS.

Parameters

ipmaddr add aAddress

Examples

ipmaddr add ff05::1
Done

CLI and API References

ipmaddr del

Unsubscribes the Thread interface to a Network Interface Multicast Address.

Parameters

ipmaddr del aAddress

Examples

ipmaddr del ff05::1
Done

CLI and API References

ipmaddr

Gets the list of IPv6 multicast addresses subscribed to the Thread interface.

Parameters

No parameters.

Examples

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

CLI and API References

ipmaddr llatn

Gets the Thread Link-Local All Thread Nodes multicast address.

The address is a link-local Unicast Prefix-Based Multicast Address [RFC 3306], with:

  • flgs set to 3 (P = 1 and T = 1)
  • scop set to 2
  • plen set to 64
  • network prefix set to the Mesh Local Prefix
  • group ID set to 1

Parameters

No parameters.

Examples

ipmaddr llatn
ff32:40:fdde:ad00:beef:0:0:1
Done

CLI and API References

ipmaddr promiscuous (enable,disable)

Enables or disables multicast promiscuous mode on the Thread interface.

Parameters

ipmaddr promiscuous enable|disable

Examples

ipmaddr promiscuous enable
Done
ipmaddr promiscuous disable
Done

CLI and API References

ipmaddr promiscuous

Checks if multicast promiscuous mode is enabled on the Thread interface.

Parameters

No parameters.

Examples

ipmaddr promiscuous
Disabled
Done

CLI and API References

ipmaddr rlatn

Gets the Thread Realm-Local All Thread Nodes multicast address.

The address is a realm-local Unicast Prefix-Based Multicast Address [RFC 3306], with:

  • flgs set to 3 (P = 1 and T = 1)
  • scop set to 3
  • plen set to 64
  • network prefix set to the Mesh Local Prefix
  • group ID set to 1

Parameters

No parameters.

Examples

ipmaddr rlatn
ff33:40:fdde:ad00:beef:0:0:1
Done

CLI and API References

joiner discerner (set)

Sets the Joiner Discerner.

Parameters

joiner discerner discerner
  • Use {number}/{length} to set the discerner.
  • joiner discerner clear sets aDiscerner to nullptr.

Examples

joiner discerner 0xabc/12
Done

CLI and API References

joiner discerner clear

Clear the Joiner discerner.

Parameters

No parameters.

Examples

joiner discerner clear
Done

CLI and API References

  • No associated API

joiner discerner

Gets the Joiner Discerner.

For more information, refer to otJoinerSetDiscerner.

Parameters

No parameters.

Examples

joiner discerner
0xabc/12
Done

CLI and API References

joiner help

Print the joiner help menu.

Parameters

No parameters.

Examples

joiner help
help
id
start
state
stop
Done

CLI and API References

  • No associated API

joiner id

Gets the Joiner ID.

If a Joiner Discerner is not set, Joiner ID is the first 64 bits of the result of computing SHA-256 over factory-assigned IEEE EUI-64. Otherwise the Joiner ID is calculated from the Joiner Discerner value.

The Joiner ID is also used as the device's IEEE 802.15.4 Extended Address during the commissioning process.

Parameters

No parameters.

Examples

joiner id
d65e64fa83f81cf7
Done

CLI and API References

joiner start

Enables the Thread Joiner role.

Parameters

joiner start joining-device-credential [provisioning-url]
  • joining-device-credential: Joiner Passphrase. Must be a string of all uppercase alphanumeric characters (0-9 and A-Y, excluding I, O, Q, and Z for readability), with a length between 6 and 32 characters.
  • provisioning-url: Provisioning URL for the Joiner (optional).

Examples

joiner start J01NM3
Done

CLI and API References

joiner state

Gets the Joiner State.

Returns one of the following states:

  • Idle
  • Discover
  • Connecting
  • Connected
  • Entrust
  • Joined

Parameters

No parameters.

Examples

joiner state
Idle
Done

CLI and API References

joiner stop

Disables the Thread Joiner role.

Parameters

No parameters.

Examples

joiner stop
Done

CLI and API References

joinerport (set)

Sets the Joiner UDP Port.

Parameters

joinerport udp-port

Examples

joinerport 1000
Done

CLI and API References

joinerport

Gets the Joiner UDP Port.

Parameters

No parameters.

Examples

joinerport
1000
Done

CLI and API References

keysequence counter (set)

Sets the thrKeySequenceCounter.

Parameters

keysequence counter counter

Examples

keysequence counter 10
Done

CLI and API References

keysequence counter

Gets the thrKeySequenceCounter.

Parameters

No parameters.

Examples

keysequence counter
10
Done

CLI and API References

keysequence guardtime (set)

Sets the thrKeySwitchGuardTime (in hours).

Parameters

keysequence guardtime guardtime-hours

Use 0 to Thread Key Switch immediately if there's a key index match.

Examples

keysequence guardtime 0
Done

CLI and API References

keysequence guardtime

Gets the thrKeySwitchGuardTime (in hours).

Parameters

No parameters.

Examples

keysequence guardtime
0
Done

CLI and API References

leaderdata

Gets the Thread Leader Data.

Parameters

No parameters.

Examples

leaderdata
Partition ID: 1077744240
Weighting: 64
Data Version: 109
Stable Data Version: 211
Leader Router ID: 60
Done

CLI and API References

leaderweight (set)

Sets the Thread Leader Weight used when operating in the Leader role.

Directly sets the Leader Weight to the new value, replacing its previous value (which may have been determined from the current otDeviceProperties ).

Parameters

leaderweight weight

Examples

leaderweight 128
Done

CLI and API References

leaderweight

Gets the Thread Leader Weight used when operating in the Leader role.

Parameters

No parameters.

Examples

leaderweight
128
Done

CLI and API References

linkmetrics mgmt enhanced-ack clear

Sends a Link Metrics Management Request to clear an Enhanced-ACK Based Probing.

Parameters

linkmetrics mgmt peer-ipaddr enhanced-ack clear

peer-ipaddr should be the Link Local address of the neighboring device.

Examples

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

CLI and API References

linkmetrics mgmt enhanced-ack register

Sends a Link Metrics Management Request to register an Enhanced-ACK Based Probing.

Parameters

linkmetrics mgmt peer-ipaddr enhanced-ack register [qmr][r]

[q, m, and r] map to otLinkMetricsValues. Per spec 4.11.3.4.4.6, you can only use a maximum of two options at once, for example q, or qm.

  • q: Layer 2 LQI.
  • m: Link Margin.
  • r: RSSI.
The additional r is optional and only used for reference devices. When this option is specified, Type/Average Enum of each Type Id Flags is set to reserved. This is used to verify that the Probing Subject correctly handles invalid Type Id Flags, and only available when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is enabled.

Examples

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

CLI and API References

linkmetrics mgmt forward

Sends an MLE Link Metrics Management Request to configure or clear a Forward Tracking Series.

Parameters

linkmetrics mgmt peer-ipaddr forward series-id [ldraX][pqmr]
  • peer-ipaddr: Peer address.
  • series-id: The Series ID.
  • [l, d, r, and a] map to otLinkMetricsSeriesFlags. X represents none of the otLinkMetricsSeriesFlags, and stops the accounting and removes the series.
    • l: MLE Link Probe.
    • d: MAC Data.
    • r: MAC Data Request.
    • a: MAC Ack.
    • X: Can only be used without any other flags.
  • [p, q, m, and r] map to otLinkMetricsValues.
    • p: Layer 2 Number of PDUs received.
    • q: Layer 2 LQI.
    • m: Link Margin.
    • r: RSSI.

Examples

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

CLI and API References

linkmetrics probe

Sends an MLE Link Probe message.

Parameters

linkmetrics probe peer-ipaddr series-id length
  • peer-ipaddr: Peer address.
  • series-id: The Series ID for which this Probe message targets.
  • length: The length of the Probe message. A valid range is [0, 64].

Examples

linkmetrics probe fe80:0:0:0:3092:f334:1455:1ad2 1 10
Done

CLI and API References

linkmetrics query forward

Perform a Link Metrics query (Forward Tracking Series).

Parameters

linkmetrics query peer-ipaddr forward series-id
  • peer-ipaddr: Peer address.
  • series-id: The Series ID.

Examples

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)

CLI and API References

linkmetrics query single

Perform a Link Metrics query (Single Probe).

Parameters

linkmetrics query peer-ipaddr single [pqmr]
  • peer-ipaddr: Peer address.
  • [p, q, m, and r] map to otLinkMetrics.
    • p: Layer 2 Number of PDUs received.
    • q: Layer 2 LQI.
    • m: Link Margin.
    • r: RSSI.

Examples

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)

CLI and API References

linkmetricsmgr (enable,disable)

Enable or disable Link Metrics Manager.

Parameters

linkmetricsmgr enable|disable

Examples

linkmetricmgr enable
Done
linkmetricmgr disable
Done

CLI and API References

linkmetricsmgr show

Get Link Metrics data of a neighbor by its extended address.

Parameters

No parameters.

Examples

linkmetricsmgr show
ExtAddr:827aa7f7f63e1234, LinkMargin:80, Rssi:-20
Done

CLI and API References

locate (set)

Locate the closest destination of an anycast address (i.e., find the destination's mesh local EID and RLOC16).

The closest destination is determined based on the current routing table and path costs within the Thread mesh.

Available when OPENTHREAD_CONFIG_TMF_ANYCAST_LOCATOR_ENABLE is enabled.

Parameters

locate anycastaddr

Examples

locate fdde:ad00:beef:0:0:ff:fe00:fc00
fdde:ad00:beef:0:d9d3:9000:16b:d03b 0xc800
Done

CLI and API References

locate

Gets the current state (In Progress or Idle) of anycast locator.

Available when OPENTHREAD_CONFIG_TMF_ANYCAST_LOCATOR_ENABLE is enabled.

Parameters

No parameters.

Examples

locate
Idle
Done
locate fdde:ad00:beef:0:0:ff:fe00:fc10
locate
In Progress
Done

CLI and API References

log filename

Specifies filename to capture otPlatLog() messages, useful when debugging automated test scripts on Linux when logging disrupts the automated test scripts.

Requires OPENTHREAD_CONFIG_LOG_OUTPUT == OPENTHREAD_CONFIG_LOG_OUTPUT_DEBUG_UART and OPENTHREAD_POSIX.

Parameters

log filename filename

Examples

CLI and API References

log level (set)

Sets the log level.

Parameters

log level level

Examples

log level 4
Done

CLI and API References

log level

Get the log level.

Parameters

No parameters.

Examples

log level
1
Done

CLI and API References

mac retries direct (get,set)

Gets or sets the number of direct TX retries on the MAC layer.

Parameters

mac retries direct [number]

Use the optional number argument to set the number of direct TX retries.

Examples

mac retries direct
3
Done
mac retries direct 5
Done

CLI and API References

mac retries indirect (get,set)

Gets or sets the number of indirect TX retries on the MAC layer.

Parameters

mac retries indirect [number]

Use the optional number argument to set the number of indirect Tx retries.

Examples

mac retries indirect
3
Done
 max retries indirect 5
Done

CLI and API References

mac send

Instructs an Rx-Off-When-Idle device to send a MAC frame to its parent. This command is for certification, and can only be used when OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is enabled.

Parameters

mac send datarequest | emptydata

You must choose one of the following two arguments:

  • datarequest: Enqueues an IEEE 802.15.4 Data Request message for transmission.
  • emptydata: Instructs the device to send an empty IEEE 802.15.4 data frame.

Examples

mac send datarequest
Done
mac send emptydata
Done

CLI and API References

macfilter addr add

Is available only when OPENTHREAD_CONFIG_MAC_FILTER_ENABLE configuration is enabled.

Adds an IEEE 802.15.4 Extended Address to the MAC filter list. If you specify the optional rss argument, this fixes the received signal strength for messages from the address. If you do not use the rss option, the address will use whatever default value you have set. If you have not set a default, the signal strength will be the over-air signal.

Parameters

macfilter addr add extaddr [rss]

Examples

macfilter addr add 0f6127e33af6b403 -95
Done
macfilter addr add 0f6127e33af6b402
Done

CLI and API References

macfilter addr allowlist

Enables the allowlist MAC filter mode, which means that only the MAC addresses in the MAC filter list will be allowed access.

Parameters

No parameters.

Examples

macfilter addr allowlist
Done

CLI and API References

macfilter addr clear

Is available when OPENTHREAD_CONFIG_MAC_FILTER_ENABLE configuration is enabled.

This command clears all the extended addresses from the MAC filter list.

Parameters

No parameters.

Examples

macfilter addr clear
Done

CLI and API References

macfilter addr denylist

Enables the denylist MAC filter mode, which means that all MAC addresses in the MAC filter list will be denied access.

Parameters

No parameters.

Examples

macfilter addr denylist
Done

CLI and API References

macfilter addr disable

Disables MAC filter modes.

Parameters

No parameters.

Examples

macfilter addr disable
Done

CLI and API References

  • No associated API

macfilter addr

Is available when OPENTHREAD_CONFIG_MAC_FILTER_ENABLE configuration is enabled.

Provides the following information:

  • Current mode of the MAC filter list: Either AllowList, DenyList, or Disabled
  • A list of all the extended addresses in the filter. The received signal strength (rss) and link quality indicator (lqi) are listed next to the address if these values have been set to be different from the default values.

Parameters

No parameters.

Examples

macfilter addr
Allowlist
0f6127e33af6b403 : rss -95 (lqi 1)
0f6127e33af6b402
Done

CLI and API References

macfilter addr remove

Is available when OPENTHREAD_CONFIG_MAC_FILTER_ENABLE configuration is enabled.

This command removes the specified extended address from the MAC filter list.

Parameters

macfilter addr remove extaddr

Examples

macfilter addr remove 0f6127e33af6b402
Done

CLI and API References

macfilter

Provides the following information:

  • Address Mode: Current mode of the MAC filter: Either AllowList, DenyList, or Disabled
  • A list of all the extended addresses in the MAC filter list. The received signal strength (rss) and link quality indicator (lqi) are listed next to the address if these values have been set to be different from the default values.
  • A separate list (RssIn List) that shows all the extended addresses where the rss has been set to be different from the default value.
  • Default rss: Shows the default values, if applicable, for the rss and lqi settings.

Parameters

No parameters.

Examples

macfilter
Address Mode: Allowlist
0f6127e33af6b403 : rss -95 (lqi 1)
0f6127e33af6b402
RssIn List:
0f6127e33af6b403 : rss -95 (lqi 1)
Default rss: -50 (lqi 3)
Done

CLI and API References

macfilter rss add

Adds the specified Extended Address to the RssIn list (or modifies an existing address in the RssIn list) and sets the received signal strength (in dBm) entry for messages from that address.

Parameters

macfilter rss add extaddr rss

To set a default value for the received signal strength for all received messages, use the * for the extaddr argument.

Examples

macfilter rss add * -50
Done
macfilter rss add 0f6127e33af6b404 -85
Done

CLI and API References

macfilter rss add-lqi

Adds the specified Extended Address to the RssIn list (or modifies an existing address in the RssIn list) and sets the fixed link quality indicator for messages from that address. The Extended Address does not necessarily have to be in the address allowlist/denylist filter to set the lqi.

This is available when OPENTHREAD_CONFIG_MAC_FILTER_ENABLE configuration is enabled.

Parameters

macfilter rss add-lqi extaddr lqi

To set a default value for the link quality indicator for all received messages, use the * for the extaddr argument. The allowed range is 0 to 3.

Examples

macfilter rss add-lqi * 3
Done
macfilter rss add-lqi 0f6127e33af6b404 2
Done

CLI and API References

macfilter rss clear

Clears all the received signal strength (rss) and link quality indicator (lqi) entries (including defaults) from the RssIn list.

Performing this action means that all Extended Addresses will use the on-air signal.

Is available when OPENTHREAD_CONFIG_MAC_FILTER_ENABLE configuration is enabled.

Parameters

No parameters.

Examples

macfilter rss clear
Done

CLI and API References

macfilter rss

Provides the following information:

  • Listing of all the extended addresses where the received signal strength (rss) has been set to be different from the default value. The link quality indicator (lqi) is also shown. The rss and lqi settings map to each other. If you set one, the value of the other gets set automatically. This list of addresses is called the RssIn List. Setting either the rsi or the lqi adds the corresponding extended address to the RssIn list.
  • Default rss: Shows the default values, if applicable, for the rss and lqi settings.

Parameters

No parameters.

Examples

macfilter rss
0f6127e33af6b403 : rss -95 (lqi 1)
Default rss: -50 (lqi 3)
Done

CLI and API References

macfilter rss remove

Removes the specified Extended Address from the RssIn list.

Once removed from the RssIn list, this MAC address will instead use the default rss and lqi settings, assuming defaults have been set. (If no defaults have been set, the over-air signal is used.)

Is available when OPENTHREAD_CONFIG_MAC_FILTER_ENABLE configuration is enabled.

No action is performed if there is no existing entry in the RssIn list matching the specified Extended Address.

Parameters

macfilter rss remove extaddr

If you wish to remove the default received signal strength and link quality indicator settings, use the * as the extaddr. This unsets the defaults but does not remove entries from the RssIn list.

Examples

macfilter rss remove *
Done
macfilter rss remove 0f6127e33af6b404
Done

CLI and API References

meshdiag childip6

Send a query to a parent to retrieve the IPv6 addresses of all its MTD children.

Parameters

meshdiag childip6 parent-rloc16

Examples

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

CLI and API References

meshdiag childtable

Start a query for child table of a router with a given RLOC16. Output lists all child entries. Information per child:

  • RLOC16
  • Extended MAC address
  • Thread Version
  • Timeout (in seconds)
  • Age (seconds since last heard)
  • Supervision interval (in seconds)
  • Number of queued messages (in case child is sleepy)
  • Device Mode
  • RSS (average and last)
  • Error rates: frame tx (at MAC layer), IPv6 message tx (above MAC)
  • Connection time (seconds since link establishment {dd}d.{hh}:{mm}:{ss} format)
  • CSL info:
    • If synchronized
    • Period (in unit of 10-symbols-time)
    • Timeout (in seconds)

Parameters

No parameters.

Examples

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

CLI and API References

  • No associated API

meshdiag routerneighbortable

Start a query for router neighbor table of a router with a given RLOC16. Output lists all router neighbor entries. Information per entry:

  • RLOC16
  • Extended MAC address
  • Thread Version
  • RSS (average and last) and link margin
  • Error rates, frame tx (at MAC layer), IPv6 message tx (above MAC)
  • Connection time (seconds since link establishment {dd}d.{hh}:{mm}:{ss} format)

Parameters

meshdiag routerneighbortable router-rloc16

Examples

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

CLI and API References

meshdiag topology

Discover network topology (list of routers and their connections). 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.

Information per router:

  • Router ID
  • RLOC16
  • Extended MAC address
  • Thread Version (if known)
  • Whether the router is this device is itself (me)
  • Whether the router is the parent of this device when device is a child (parent)
  • Whether the router is leader
  • Whether the router acts as a border router providing external connectivity (br)
  • List of routers to which this router has a link:
    • 3-links: Router IDs to which this router has a incoming link with link quality 3
    • 2-links: Router IDs to which this router has a incoming link with link quality 2
    • 1-links: Router IDs to which this router has a incoming link with link quality 1
    • If a list if empty, it is omitted in the out.
  • If ip6-addrs, list of IPv6 addresses of the router
  • If children, list of all children of the router. Information per child:
    • RLOC16
    • Incoming Link Quality from perspective of parent to child (zero indicates unknown)
    • Child Device mode (r rx-on-when-idle, d Full Thread Device, n Full Network Data, - no flags set)
    • Whether the child is this device itself (me)
    • Whether the child acts as a border router providing external connectivity (br)

Parameters

meshdiag topology [ip6-addrs] [children]

Examples

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

CLI and API References

mleadvimax

Gets the current Interval Max value used by Advertisement trickle timer.

This API requires OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE, and is intended for testing only.

Parameters

No parameters.

Examples

mleadvimax
12000
Done

CLI and API References

mliid

Sets the Mesh Local IID (for test purpose).

Requires OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE.

It must be used before Thread stack is enabled.

Only for testing/reference device.

Parameters

mliid iid

Examples

mliid 1122334455667788
Done

CLI and API References

mlr reg

Registers Multicast Listeners to Primary Backbone Router.

OPENTHREAD_CONFIG_TMF_PROXY_MLR_ENABLE and OPENTHREAD_CONFIG_COMMISSIONER_ENABLE must be enabled.

Omit timeout to use the default MLR timeout on the Primary Backbone Router.

Use timeout = 0 to deregister Multicast Listeners.

Parameters

mlr reg ipaddr [timeout]

Examples

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

CLI and API References

mode (get,set)

Set the MLE Link Mode configuration.

Parameters

mode [rdn]
  • -: no flags set (rx-off-when-idle, minimal Thread device, stable network data)
  • r: rx-on-when-idle
  • d: Full Thread Device
  • n: Full Network Data

Examples

mode rdn
Done
mode -
Done

CLI and API References

multiradio

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.

Parameters

No parameters.

Examples

multiradio
[15.4, TREL]
Done

CLI and API References

  • No associated API

multiradio neighbor list

Gets the multi radio link information associated with a neighbor with a given Extended Address.

OPENTHREAD_CONFIG_MULTI_RADIO must be enabled.

Parameters

No parameters.

Examples

multiradio neighbor list
ExtAddr:3a65bc38dbe4a5be, RLOC16:0xcc00, Radios:[15.4(255), TREL(255)]
ExtAddr:17df23452ee4a4be, RLOC16:0x1300, Radios:[15.4(255)]
Done

CLI and API References

multiradio neighbor

Gets the multi radio link information associated with a neighbor with a given Extended Address.

OPENTHREAD_CONFIG_MULTI_RADIO must be enabled.

Parameters

multiradio neighbor ext-address

Examples

multiradio neighbor 3a65bc38dbe4a5be
[15.4(255), TREL(255)]
Done

CLI and API References

nat64 (enable,disable)

Enable or disable NAT64 functions.

When OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE is enabled, setting disabled to true resets the mapping table in the translator.

Available when OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE or OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE is enabled.

Parameters

nat64 enable|disable

Examples

nat64 enable
Done
nat64 disable
Done

CLI and API References

nat64 cidr

Parameters

No parameters.

Examples

nat64 cidr 192.168.255.0/24
Done

CLI and API References

nat64 cidr

Gets the IPv4 CIDR configured in the NAT64 translator.

Available when OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE is enabled.

Parameters

No parameters.

Examples

nat64 cidr
192.168.255.0/24
Done

CLI and API References

nat64 counters

Gets the NAT64 translator packet and error counters.

Available when OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE is enabled.

Parameters

No parameters.

Examples

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

CLI and API References

nat64 mappings

Gets the next AddressMapping info (using an iterator).

Available when OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE is enabled.

Parameters

No parameters.

Examples

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 |

CLI and API References

nat64 state

Gets the state of NAT64 functions.

PrefixManager state is available when OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE is enabled. Translator state is available when OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE is enabled.

When OPENTHREAD_CONFIG_NAT64_BORDER_ROUTING_ENABLE is enabled, PrefixManager returns one of the following states:

  • Disabled: NAT64 prefix manager is disabled.
  • NotRunning: NAT64 prefix manager is enabled, but is not running. This could mean that the routing manager is disabled.
  • Idle: NAT64 prefix manager is enabled and is running, but is not publishing a NAT64 prefix. This can happen when there is another border router publishing a NAT64 prefix with a higher priority.
  • Active: NAT64 prefix manager is enabled, running, and publishing a NAT64 prefix.

When OPENTHREAD_CONFIG_NAT64_TRANSLATOR_ENABLE is enabled, Translator returns one of the following states:

  • Disabled: NAT64 translator is disabled.
  • NotRunning: NAT64 translator is enabled, but is not translating packets. This could mean that the Translator is not configured with a NAT64 prefix or a CIDR for NAT64.
  • Active: NAT64 translator is enabled and is translating packets.

Parameters

No parameters.

Examples

nat64 state
PrefixManager: Active
Translator: Active
Done

CLI and API References

neighbor conntime list

Prints the 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.

Parameters

No parameters.

Examples

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

CLI and API References

neighbor conntime

Prints the connection time and age of neighbors. Information per neighbor:

  • RLOC16
  • Extended MAC
  • Last Heard (Age): Number of seconds since last heard from neighbor.
  • Connection Time: Number of seconds since link establishment with 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}.

Parameters

No parameters.

Examples

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

CLI and API References

neighbor linkquality

Prints link quality information about all neighbors.

Parameters

No parameters.

Examples

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

CLI and API References

  • No associated API

neighbor list

Lists the RLOC16 of each neighbor.

Parameters

No parameters.

Examples

neighbor list
0xcc01 0xc800 0xf000
Done

CLI and API References

  • No associated API

neighbor table

Prints information in table format about all neighbors.

For Role, the only possible values for this table are C (Child) or R (Router).

The following columns provide information about the device mode of neighbors. Each column has a value of 0 (off) or 1 (on).

  • R: RX on when idle
  • D: Full Thread device
  • N: Full network data

Parameters

No parameters.

Examples

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

CLI and API References

netdata full

Print "yes" or "no" indicating whether or not the "net data full" callback has been invoked since start of Thread operation or since the last time netdata full reset was used to reset the flag. This command requires OPENTHREAD_CONFIG_BORDER_ROUTER_SIGNAL_NETWORK_DATA_FULL. The "net data full" callback is invoked whenever:

  • The device is acting as a leader and receives a Network Data registration from a Border Router (BR) that it cannot add to Network Data (running out of space).
  • The device is acting as a BR and new entries cannot be added to its local Network Data.
  • The device is acting as a BR and tries to register its local Network Data entries with the leader, but determines that its local entries will not fit.

Parameters

No parameters.

Examples

netdata full
no
Done

CLI and API References

netdata full reset

Reset the flag tracking whether "net data full" callback was invoked.

Parameters

No parameters.

Examples

netdata full reset
Done

CLI and API References

  • No associated API

netdata help

Gets a list of netdata CLI commands.

Parameters

No parameters.

Examples

netdata help
length
maxlength
publish
register
show
steeringdata
unpublish
Done

CLI and API References

netdata length

Get the current length (number of bytes) of Partition's Thread Network Data.

Parameters

No parameters.

Examples

netdata length
23
Done

CLI and API References

netdata maxlength

Get the maximum observed length of the Thread Network Data since OT stack initialization or since the last call to otNetDataResetMaxLength() .

Parameters

No parameters.

Examples

netdata maxlength
40
Done

CLI and API References

netdata maxlength reset

Reset the tracked maximum length of the Thread Network Data.

Parameters

No parameters.

Examples

netdata maxlength reset
Done

CLI and API References

netdata publish dnssrp anycast

Publishes a DNS/SRP Service Anycast Address with a sequence number. Any current DNS/SRP Service entry being published from a previous publish dnssrp{anycast|unicast} command is removed and replaced with the new arguments.

OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE must be enabled.

Parameters

netdata publish dnssrp anycast seq-num

Examples

netdata publish dnssrp anycast 1
Done

CLI and API References

netdata publish dnssrp unicast (addr,port)

Publishes a DNS/SRP Service Unicast Address with an address and port number. The address and port information is included in Service TLV data. Any current DNS/SRP Service entry being published from a previous publish dnssrp{anycast|unicast} command is removed and replaced with the new arguments.

OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE must be enabled.

Parameters

netdata publish dnssrp unicast address port

Examples

netdata publish dnssrp unicast fd00::1234 51525
Done

CLI and API References

netdata publish dnssrp unicast (mle)

Publishes the device's Mesh-Local EID with a port number. MLE and port information is included in the Server TLV data. To use a different Unicast address, use the netdata publish dnssrp unicast (addr,port) command.

Any current DNS/SRP Service entry being published from a previous publish dnssrp{anycast|unicast} command is removed and replaced with the new arguments.

OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE must be enabled.

Parameters

netdata publish dnssrp unicast port

Examples

netdata publish dnssrp unicast 50152
Done

CLI and API References

netdata publish prefix

Publish an on-mesh prefix entry. For more information, refer to Display and Manage Network Data with OT CLI.

Parameters

netdata publish prefix prefix [padcrosnD] [high|med|low]

OT CLI uses mapped arguments to configure otBorderRouterConfig values. For more information, refer to the OpenThread CLI Overview.

Examples

netdata publish prefix fd00:1234:5678::/64 paos med
Done

CLI and API References

netdata publish replace

Replaces a previously published external route entry. For more information, refer to Display and Manage Network Data with OT CLI.

Parameters

netdata publish replace oldprefix prefix [sn] [high|med|low]

OT CLI uses mapped arguments to configure otExternalRouteConfig values. For more information, refer to the OpenThread CLI Overview.

Examples

netdata publish replace ::/0 fd00:1234:5678::/64 s high
Done

CLI and API References

netdata publish route

Publish an external route entry. For more information, refer to Display and Manage Network Data with OT CLI.

Parameters

publish route prefix [sn] [high|med|low]

OT CLI uses mapped arguments to configure otExternalRouteConfig values. For more information, refer to the OpenThread CLI Overview.

Examples

netdata publish route fd00:1234:5678::/64 s high
Done

CLI and API References

netdata register

Register configured prefixes, routes, and services with the Leader.

OT CLI checks for OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE. If OTBR is enabled, it registers local Network Data with the Leader. Otherwise, it calls the CLI function otServerRegister. For more information, refer to Display and Manage Network Data with OT CLI.

Parameters

No parameters.

Examples

netdata register
Done

CLI and API References

netdata show local

Print local Network Data to sync with the Leader.

Parameters

netdata show local [-x]
  • The optional -x argument gets local Network Data as hex-encoded TLVs.

Examples

netdata show local
Prefixes:
fd00:dead:beef:cafe::/64 paros med dc00
Routes:
Services:
Done
netdata show local -x
08040b02174703140040fd00deadbeefcafe0504dc00330007021140
Done

CLI and API References

netdata show

netdata show from OT CLI gets full Network Data received from the Leader. This command uses several API functions to combine prefixes, routes, and services, including otNetDataGetNextOnMeshPrefix, otNetDataGetNextRoute, otNetDataGetNextService and otNetDataGetNextLowpanContextInfo.

On-mesh prefixes are listed under Prefixes header:

  • The on-mesh prefix
  • Flags
    • p: Preferred flag
    • a: Stateless IPv6 Address Autoconfiguration flag
    • d: DHCPv6 IPv6 Address Configuration flag
    • c: DHCPv6 Other Configuration flag
    • r: Default Route flag
    • o: On Mesh flag
    • s: Stable flag
    • n: Nd Dns flag
    • D: Domain Prefix flag (only available for Thread 1.2).
  • Preference high, med, or low
  • RLOC16 of device which added the on-mesh prefix

External Routes are listed under Routes header:

  • The route prefix
  • Flags
    • s: Stable flag
    • n: NAT64 flag
  • Preference high, med, or low
  • RLOC16 of device which added the route prefix

Service entries are listed under Services header:

  • Enterprise number
  • Service data (as hex bytes)
  • Server data (as hex bytes)
  • Flags
    • s: Stable flag
  • RLOC16 of devices which added the service entry

6LoWPAN Context IDs are listed under Contexts header:

  • The prefix
  • Context ID
  • Compress flag (c if marked or - otherwise).

Commissioning Dataset information is printed under Commissioning header:

  • Session ID if present in Dataset or - otherwise
  • Border Agent RLOC16 (in hex) if present in Dataset or - otherwise
  • Joiner UDP port number if present in Dataset or - otherwise
  • Steering Data (as hex bytes) if present in Dataset or - otherwise
  • Flags:
    • e: If Dataset contains any extra unknown TLV

For more information, refer to Display and Manage Network Data with OT CLI.

Parameters

netdata show [-x]
  • The optional -x argument gets Network Data as hex-encoded TLVs.

Examples

netdata show
Prefixes:
fd00:dead:beef:cafe::/64 paros med dc00
Routes:
fd49:7770:7fc5:0::/64 s med 4000
Services:
44970 5d c000 s 4000
44970 01 9a04b000000e10 s 4000
Contexts:
fd00:dead:beef:cafe::/64 1 c
Commissioning:
1248 dc00 9988 00000000000120000000000000000000 e
Done
netdata show -x
08040b02174703140040fd00deadbeefcafe0504dc00330007021140
Done

CLI and API References

netdata steeringdata check (discerner)

Check if the steering data includes a Joiner with a given discerner value.

Parameters

netdata steeringdata check discerner
  • discerner: The Joiner discerner in format {number}/{length}.

Examples

netdata steeringdata check 0xabc/12
Done
netdata steeringdata check 0xdef/12
Error 23: NotFound

CLI and API References

netdata steeringdata check (eui64)

Check if the steering data includes a Joiner.

Parameters

netdata steeringdata check eui64
  • eui64: The IEEE EUI-64 of the Joiner.

Examples

netdata steeringdata check d45e64fa83f81cf7
Done

CLI and API References

netdata unpublish (prefix)

Unpublishes a previously published On-Mesh or External Route Prefix.

OPENTHREAD_CONFIG_BORDER_ROUTER_ENABLE must be enabled.

For more information, refer to Display and Manage Network Data with OT CLI.

Parameters

netdata unpublish prefix

Examples

netdata unpublish fd00:1234:5678::/64
Done

CLI and API References

netdata unpublish dnssrp

Unpublishes any previously added DNS/SRP (Anycast or Unicast) Service entry from the Thread Network Data.

OPENTHREAD_CONFIG_TMF_NETDATA_SERVICE_ENABLE must be enabled.

Parameters

No parameters.

Examples

netdata unpublish dnssrp
Done

CLI and API References

netstat

Gets the head of linked list of UDP Sockets.

Parameters

No parameters.

Examples

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

CLI and API References

networkdiagnostic get

Sends a network diagnostic request to retrieve specified Type Length Values (TLVs) for the specified addresses(es).

Parameters

networkdiagnostic get addr type(s)

For addr, a unicast address triggers a Diagnostic Get. A multicast address triggers a Diagnostic Query. TLV values you can specify (separated by a space if you specify more than one TLV):

  • 0: MAC Extended Address TLV
  • 1: Address16 TLV
  • 2: Mode TLV
  • 3: Timeout TLV (the maximum polling time period for SEDs)
  • 4: Connectivity TLV
  • 5: Route64 TLV
  • 6: Leader Data TLV
  • 7: Network Data TLV
  • 8: IPv6 Address List TLV
  • 9: MAC Counters TLV
  • 14: Battery Level TLV
  • 15: Supply Voltage TLV
  • 16: Child Table TLV
  • 17: Channel Pages TLV
  • 19: Max Child Timeout TLV
  • 23: EUI64 TLV
  • 24: Version TLV (version number for the protocols and features)
  • 25: Vendor Name TLV
  • 26: Vendor Model TLV
  • 27: Vendor SW Version TLV
  • 28: Thread Stack Version TLV (version identifier as UTF-8 string for Thread stack codebase/commit/version)
  • 29: Child TLV
  • 34: MLE Counters TLV
  • 35: Vendor App URL TLV

Examples

networkdiagnostic get fdde:ad00:beef:0:0:ff:fe00:fc00 0 1 6 23
DIAG_GET.rsp/ans: 00080e336e1c41494e1c01020c000608640b0f674074c503
Ext Address: 0e336e1c41494e1c
Rloc16: 0x0c00
Leader Data:
    PartitionId: 0x640b0f67
    Weighting: 64
    DataVersion: 116
    StableDataVersion: 197
    LeaderRouterId: 0x03
EUI64: 18b4300000000004
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

CLI and API References

networkdiagnostic reset

Sends a network diagnostic request to reset the specified Type Length Values (TLVs) on the specified address(es). This command only supports the following TLV values: 9 (MAC Counters TLV) or 34 (MLE Counters TLV)

Parameters

networkdiagnostic reset addr type(s)

Examples

networkdiagnostic reset fd00:db8::ff:fe00:0 9
Done

CLI and API References

networkidtimeout (get,set)

Gets or sets the NETWORK_ID_TIMEOUT parameter.

Parameters

networkidtimeout [timeout]

Use the optional timeout argument to set the value of the NETWORK_ID_TIMEOUT parameter.

Examples

networkidtimeout 120
Done
networkidtimeout
120
Done

CLI and API References

networkkey (key)

Set the Thread Network Key.

Succeeds only when Thread protocols are disabled. A successful call to this function invalidates the Active and Pending Operational Datasets in non-volatile memory.

Parameters

networkkey key

Examples

networkkey 00112233445566778899aabbccddeeff
Done

CLI and API References

networkkey

Get the Thread Network Key.

Parameters

No parameters.

Examples

networkkey
00112233445566778899aabbccddeeff
Done

CLI and API References

networkname (name)

Set the Thread Network Name.

Succeeds only when Thread protocols are disabled. A successful call to this function invalidates the Active and Pending Operational Datasets in non-volatile memory.

Parameters

networkname name

Examples

networkname OpenThread
Done

CLI and API References

networkname

Get the Thread Network Name.

Parameters

No parameters.

Examples

networkname
OpenThread
Done

CLI and API References

networktime (set)

Sets the time sync parameters.

  • timesyncperiod: The time synchronization period, in seconds.
  • xtalthreshold: The XTAL accuracy threshold for a device to become Router-Capable device, in PPM.

Parameters

networktime timesyncperiod xtalthreshold

Examples

networktime 100 300
Done

CLI and API References

networktime

Gets the Thread network time and the time sync parameters.

Parameters

No parameters.

Examples

networktime
Network Time:     21084154us (synchronized)
Time Sync Period: 100s
XTAL Threshold:   300ppm
Done

CLI and API References

nexthop (get)

Gets the next hop and path cost towards a given RLOC16 destination.

Can be used with either aNextHopRloc16 or aPathCost being NULL indicating caller does not want to get the value.

Parameters

nexthop rloc16

Examples

nexthop 0xc000
0xc000 cost:0
Done
nexthop 0x8001
0x2000 cost:3
Done

CLI and API References

nexthop

Output table of allocated Router IDs and current next hop and path cost for each router.

Parameters

No parameters.

Examples

nexthop
| ID   |NxtHop| Cost |
+------+------+------+
|    9 |    9 |    1 |
|   25 |   25 |    0 |
|   30 |   30 |    1 |
|   46 |    - |    - |
|   50 |   30 |    3 |
|   60 |   30 |    2 |
Done

CLI and API References

panid (panid)

Set the IEEE 802.15.4 PAN ID.

Succeeds only when Thread protocols are disabled. A successful call to this function also invalidates the Active and Pending Operational Datasets in non-volatile memory.

Parameters

panid panid

Examples

panid 0xdead
Done

CLI and API References

panid

Get the IEEE 802.15.4 PAN ID.

Parameters

No parameters.

Examples

panid
0xdead
Done

CLI and API References

parent

Get the diagnostic information for a Thread Router as parent.

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.

Parameters

No parameters.

Examples

parent
Ext Addr: be1857c6c21dce55
Rloc: 5c00
Link Quality In: 3
Link Quality Out: 3
Age: 20
Version: 4
Done

CLI and API References

Starts the process for child to search for a better parent while staying attached to its current parent.

Must be used when device is attached as a child.

Parameters

No parameters.

Examples

parent search
Done

CLI and API References

parentpriority (get,set)

Gets or sets the assigned parent priority value: 1, 0, -1 or -2. -2 means not assigned.

Parameters

parentpriority [parentpriority]

Examples

parentpriority
1
Done
parentpriority 1
Done

CLI and API References

partitionid

Get the Thread Network Partition ID.

Parameters

No parameters.

Examples

partitionid
4294967295
Done

CLI and API References

partitionid preferred (get,set)

OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE is required.

Parameters

partitionid preferred partitionid

Examples

partitionid preferred
4294967295
Done
partitionid preferred 0xffffffff
Done

CLI and API References

platform

Print the current platform

Parameters

No parameters.

Examples

platform
NRF52840
Done

CLI and API References

  • No associated API

pollperiod (get,set)

Get or set the customized data poll period of sleepy end device (milliseconds). Only for certification test.

Parameters

No parameters.

Examples

pollperiod
0
Done
pollperiod 10
Done

CLI and API References

preferrouterid

Specifies the preferred router ID that the leader should provide when solicited.

Parameters

preferrouterid routerid

Examples

preferrouterid 16
Done

CLI and API References

prefix add

Adds a valid prefix to the Network Data.

Parameters

prefix add prefix [padcrosnD] [high|med|low]

OT CLI uses mapped arguments to configure otBorderRouterConfig values. For more information, refer to the OpenThread CLI Overview.

Examples

prefix add 2001:dead:beef:cafe::/64 paros med
Done
prefix add fd00:7d03:7d03:7d03::/64 prosD low
Done

CLI and API References

prefix meshlocal

Get the mesh local prefix.

Parameters

No parameters.

Examples

prefix meshlocal
fdde:ad00:beef:0::/64
Done

CLI and API References

  • No associated API

prefix

Get the prefix list in the local Network Data.

For more information about otBorderRouterConfig flags, refer to OpenThread CLI Overview.

Parameters

No parameters.

Examples

prefix
2001:dead:beef:cafe::/64 paros med
- fd00:7d03:7d03:7d03::/64 prosD med
Done

CLI and API References

prefix remove

Remove a border router configuration from the local network data.

Parameters

No parameters.

Examples

prefix remove 2001:dead:beef:cafe::/64
Done

CLI and API References

promiscuous (enable,disable)

Enables or disables the link layer promiscuous mode.

Parameters

promiscuous enable|disable

Examples

promiscuous enable
Done
promiscuous disable
Done

CLI and API References

promiscuous

Indicates whether or not promiscuous mode is enabled at the link layer.

Parameters

No parameters.

Examples

promiscuous
Disabled
Done

CLI and API References

pskc (set)

Sets the pskc in hexadecimal format.

Parameters

pskc key

Examples

pskc 67c0c203aa0b042bfb5381c47aef4d9e
Done

CLI and API References

  • No associated API

pskc -p

Generates the pskc from the passphrase (UTF-8 encoded), together with the current network name and extended PAN ID.

Parameters

pskc -p passphrase

Examples

pskc -p 123456
Done

CLI and API References

  • No associated API

pskc

Get the Thread PSKc.

Parameters

No parameters.

Examples

pskc
67c0c203aa0b042bfb5381c47aef4d9e
Done

CLI and API References

pskcref (set)

Set the Key Reference to the Thread PSKc.

Requires the build-time feature OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE to be enabled.

Will only succeed when Thread protocols are disabled. Upon success, this will also invalidate the Active and Pending Operational Datasets in non-volatile memory.

Parameters

pskc keyref

Examples

pskc 0x20017
Done

CLI and API References

pskcref

Get Key Reference to Thread PSKc stored.

Requires the build-time feature OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE to be enabled.

Parameters

No parameters.

Examples

pskcref
0x80000000
Done

CLI and API References

radio (enable,disable)

Enables or disables the radio.

Parameters

radio enable|disable

Examples

radio enable
Done
radio disable
Done

CLI and API References

radio stats clear

Resets the radio statistics.

All times are reset to 0.

Parameters

No parameters.

Examples

radio stats clear
Done

CLI and API References

radio stats

Gets the radio statistics.

The radio statistics include the time when the radio is in TX/RX/Sleep state. These times are in units of microseconds. All times are calculated from the last reset of radio statistics.

Parameters

No parameters.

Examples

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

CLI and API References

rcp version

Get the radio version string.

Parameters

No parameters.

Examples

rcp version
OPENTHREAD/20191113-00825-g82053cc9d-dirty; SIMULATION; Jun  4 2020 17:53:16
Done

CLI and API References

region (set)

Sets the region code.

The radio region format is the 2-bytes ascii representation of the ISO 3166 alpha-2 code.

Changing this can affect the transmit power limit.

Parameters

No parameters.

Examples

region US
Done

CLI and API References

region

Get the region code.

The radio region format is the 2-bytes ascii representation of the ISO 3166 alpha-2 code.

Parameters

No parameters.

Examples

region
US
Done

CLI and API References

releaserouterid (routerid)

Release a Router ID that has been allocated by the device in the Leader role.

Parameters

releaserouterid [routerid]

Examples

releaserouterid 16
Done

CLI and API References

rloc16

Get the RLOC16.

Parameters

No parameters.

Examples

rloc16
0xdead
Done

CLI and API References

route add

For parameters, use:

  • s: Stable flag
  • n: NAT64 flag
  • prf: Default Router Preference, [high, med, low].

Add a valid external route to the Network Data.

Parameters

route add prefix [sn] [high|med|low]

Examples

route add 2001:dead:beef:cafe::/64 s med
Done

CLI and API References

route remove

Remove an external route configuration from the local network data.

Parameters

route remove [prefix]

Examples

route remove 2001:dead:beef:cafe::/64
Done

CLI and API References

route

Get the external route list in the local Network Data.

Parameters

No parameters.

Examples

route
2001:dead:beef:cafe::/64 s med
Done

CLI and API References

router (id)

The function retains diagnostic information for a given Thread Router.

Print diagnostic information for a Thread Router. The id may be a Router ID or an RLOC16.

Parameters

router [id]

Examples

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

CLI and API References

router list

List allocated Router IDs.

Parameters

No parameters.

Examples

router list
8 24 50
Done

CLI and API References

router table

Prints a list of routers in a table format.

Parameters

No parameters.

Examples

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

CLI and API References

routerdowngradethreshold (get,set)

Gets or sets the ROUTER_DOWNGRADE_THRESHOLD value.

Parameters

routerdowngradethreshold [threshold]

Examples

 routerdowngradethreshold
23
Done
 routerdowngradethreshold 23
Done

CLI and API References

routereligible (enable,disable)

Enables or disables the router role.

Parameters

routereligible [enable|disable]

Examples

routereligible enable
Done
routereligible disable
Done

CLI and API References

routereligible

Indicates whether the router role is enabled or disabled.

Parameters

No parameters.

Examples

routereligible
Enabled
Done

CLI and API References

routerselectionjitter

Gets or sets the ROUTER_SELECTION_JITTER value.

Parameters

routerselectionjitter [jitter]

Examples

routerselectionjitter
120
Done
routerselectionjitter 120
Done

CLI and API References

routerupgradethreshold (get,set)

Gets or sets the ROUTER_UPGRADE_THRESHOLD value.

Parameters

routerupgradethreshold [threshold]

Examples

routerupgradethreshold
16
Done
routerupgradethreshold 16
Done

CLI and API References

scan energy

Performs an IEEE 802.15.4 energy scan, and displays the time in milliseconds to use for scanning each channel. All channels are shown unless you specify a certain channel by using the channel option.

Parameters

scan energy [duration] [channel]

Examples

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

CLI and API References

scan

Performs an active IEEE 802.15.4 scan. The scan covers all channels if no channel is specified; otherwise the span covers only the channel specified.

Parameters

scan [channel]

Examples

scan
| PAN  | MAC Address      | Ch | dBm | LQI |
+------+------------------+----+-----+-----+
| ffff | f1d92a82c8d8fe43 | 11 | -20 |   0 |
Done

CLI and API References

service add

Adds service to the network data.

  • enterpriseNumber: IANA enterprise number
  • serviceData: Hex-encoded binary service data
  • serverData: Hex-encoded binary server data

Parameters

service add enterpriseNumber serviceData serverData

Examples

service add 44970 112233 aabbcc
Done
netdata register
Done

CLI and API References

service remove

Removes service from the network data.

  • enterpriseNumber: IANA enterprise number
  • serviceData: Hex-encoded binary service data

Parameters

service remove enterpriseNumber serviceData

Examples

service remove 44970 112233
Done
netdata register
Done

CLI and API References

singleton

Indicates whether a node is the only router on the network. Returns either true or false.

Parameters

No parameters.

Examples

singleton
true
Done

CLI and API References

sntp query

Sends an SNTP query to obtain the current unix epoch time (from January 1, 1970).

  • SNTP server default IP address: 2001:4860:4806:8:: (Google IPv6 NTP Server)
  • SNTP server default port: 123

Parameters

sntp query [SNTP server IP] [SNTP server port]

Examples

sntp query
SNTP response - Unix time: 1540894725 (era: 0)
Done
sntp query 64:ff9b::d8ef:2308
SNTP response - Unix time: 1540898611 (era: 0)
Done

CLI and API References

srp client autostart (get)

Indicates the current state of auto-start mode (enabled or disabled). For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

No parameters.

Examples

srp client autostart
Disabled
Done

CLI and API References

srp client autostart disable

Disables the auto-start mode.

Disabling auto-start mode does not stop a running client. However, the SRP client stops monitoring Thread network data.

Parameters

No parameters.

Examples

srp client autostart disable
Done

CLI and API References

srp client autostart enable

Enables auto-start mode.

When auto-start is enabled, the SRP client monitors Thread network data to discover SRP servers, to select the preferred server, and to automatically start and stop the client when an SRP server is detected.

Three categories of network data entries indicate the presence of an SRP sever, and are preferred in the following order:

  1. Unicast entries in which the server address is included in the service data. If there are multiple options, the option with the lowest numerical IPv6 address is preferred.
  2. Anycast entries that each have a sequence number. The largest sequence number as specified by Serial Number Arithmetic Logic in RFC-1982 is preferred.
  3. Unicast entries in which the server address information is included with the server data. If there are multiple options, the option with the lowest numerical IPv6 address is preferred.

Parameters

No parameters.

Examples

srp client autostart enable
Done

CLI and API References

srp client callback (get,enable,disable)

Gets or enables/disables printing callback events from the SRP client. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp client callback [enable|disable]

Examples

srp client callback enable
Done
srp client callback
Enabled
Done

CLI and API References

srp client host address (get)

Indicates whether auto address mode is enabled. If auto address mode is not enabled, then the list of SRP client host addresses is returned. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

No parameters.

Examples

srp client host address
auto
Done
srp client host address
fd00:0:0:0:0:0:0:1234
fd00:0:0:0:0:0:0:beef
Done

CLI and API References

srp client host address (set)

Enable auto host address mode or explicitly set the list of host addresses. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp client host address [auto|address...]
  • Use the auto parameter to enable auto host address mode. When enabled, the client automatically uses all preferred Thread netif unicast addresses except for link-local and mesh-local addresses. If there is no valid address, the mesh local EID address gets added. The SRP client automatically re-registers if addresses on the Thread netif are added or removed or marked as non-preferred.
  • Explicitly specify the list of host addresses, separating each address by a space. You can set this list while the client is running. This will also disable auto host address mode.

Examples

srp client host address auto
Done
srp client host address fd00::cafe
Done

CLI and API References

srp client host clear

Clears all host information and all services.

Parameters

No parameters.

Examples

srp client host clear
Done

CLI and API References

srp client host name (get,set)

Gets or sets the host name of the SRP client. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp client host name [name]

To set the client host name when the host has either been removed or not yet registered with the server, use the name parameter.

Examples

srp client host name dev4312
Done
srp client host name
dev4312
Done

CLI and API References

srp client host remove

Removes SRP client host information and all services from the SRP server. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp client host remove [removekeylease] [sendunregtoserver]
  • The parameter removekeylease is an optional boolean value that indicates whether the host key lease should also be removed (default is false).
  • The parameter sendunregtoserver is an optional boolean value that indicates whether the client host should send an "update" message to the server even when the client host information has not yet been registered with the server (default is false). This parameter can be specified only if the removekeylease parameter is specified first in the command.

Examples

srp client host remove 1
Done

CLI and API References

srp client host

Gets the host info.

Parameters

No parameters.

Examples

srp client host
name:"dev4312", state:Registered, addrs:[fd00:0:0:0:0:0:0:1234, fd00:0:0:0:0:0:0:beef]
Done

CLI and API References

srp client host state

Returns the state of the SRP client host. Possible states:

  • ToAdd: Item to be added/registered.
  • Adding: Item is being added/registered.
  • ToRefresh: Item to be refreshed for lease renewal.
  • Refreshing: Item is beig refreshed.
  • ToRemove: Item to be removed.
  • Removing: Item is being removed.
  • Registered: Item is registered with server.
  • Removed: Item has been removed.

Parameters

No parameters.

Examples

srp client host state
Registered
Done

CLI and API References

  • No associated API

srp client keyleaseinterval (get,set)

Gets or sets the key lease interval in seconds.

Parameters

srp client keyleaseinterval [interval]

Examples

srp client keyleaseinterval 864000
Done
srp client keyleaseinterval
864000
Done

CLI and API References

srp client leaseinterval (get,set)

Gets or sets the lease interval in seconds.

Parameters

srp client leaseinterval [interval]

Examples

srp client leaseinterval 3600
Done
srp client leaseinterval
3600
Done

CLI and API References

srp client server address

Returns the server's IPv6 address.

Parameters

No parameters.

Examples

srp client server address
fd00:0:0:0:d88a:618b:384d:e760
Done

CLI and API References

  • No associated API

srp client server port

Returns the server's port number.

Parameters

No parameters.

Examples

srp client server port
4724
Done

CLI and API References

  • No associated API

srp client server

Gets the socket address (IPv6 address and port number) of the SRP server that is being used by the SRP client. If the client is not running, the address is unspecified (all zeros) with a port number of 0. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

No parameters.

Examples

srp client server
[fd00:0:0:0:d88a:618b:384d:e760]:4724
Done

CLI and API References

srp client service add

Adds a service with a given instance name, service name, and port number. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp client service add instancename servicename port [priority] [weight] [txt]

The servicename parameter can optionally include a list of service subtype labels that are separated by commas. The examples here use generic naming. The priority and weight (both are uint16_t values) parameters are optional, and if not provided zero is used. The optional txt parameter sets the TXT data associated with the service. The txt value must be in hex-string format and is treated as an already encoded TXT data byte sequence.

Examples

srp client service add ins1 _test1._udp 777
Done
srp client service add ins2 _test2._udp,_sub1,_sub2 111 1 1
Done

CLI and API References

srp client service key (get,set)

Gets or sets the service key record inclusion mode in the SRP client. This command is intended for testing only, and requires that OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE be enabled. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

No parameters.

Examples

srp client service key enable
Done
srp client service key
Enabled
Done

CLI and API References

srp client service name clear

Clears a service, immediately removing it from the client service list, with no interaction with the SRP server.

Parameters

srp client service clear instancename servicename

Examples

srp client service clear ins2 _test2._udp
Done

CLI and API References

srp client service remove

Requests a service to be unregistered with the SRP server.

Parameters

srp client service remove instancename servicename

Examples

srp client service remove ins2 _test2._udp
Done

CLI and API References

srp client service

Gets the list of services being managed by client.

Parameters

No parameters.

Examples

srp client service
instance:"ins2", name:"_test2._udp,_sub1,_sub2", state:Registered, port:111, priority:1, weight:1
instance:"ins1", name:"_test1._udp", state:Registered, port:777, priority:0, weight:0
Done

CLI and API References

srp client start

Starts the SRP client operation. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp client start serveraddr serverport

Examples

srp client start fd00::d88a:618b:384d:e760 4724
Done

CLI and API References

srp client state

Indicates whether the SRP client is running or not.

Parameters

No parameters.

Examples

srp client state
Enabled
Done

CLI and API References

srp client stop

Stops the SRP client operation.

Stops any further interactions with the SRP server. Note that it does not remove or clear host info and/or list of services. It marks all services to be added/removed again once the client is (re)started.

Parameters

No parameters.

Examples

srp client stop
Done

CLI and API References

srp client ttl (get,set)

Gets or sets the ttl(time to live) value in seconds.

Parameters

srp client ttl [value]

Examples

srp client ttl 3600
Done
srp client ttl
3600
Done

CLI and API References

srp server (enable,disable)

Enables or disables the SRP server. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp server [enable|disable]

Examples

srp server disable
Done

CLI and API References

srp server addrmode (get,set)

Gets or sets the address mode used by the SRP server.

The address mode tells the SRP server how to determine its address and port number, which then get published in the Thread network data.

Parameters

srp server addrmode [anycast|unicast]

Examples

srp server addrmode anycast
Done
srp server addrmode
anycast
Done

CLI and API References

srp server auto (enable,disable)

Enables or disables the auto-enable mode on the SRP server.

When this mode is enabled, the Border Routing Manager controls if and when to enable or disable the SRP server.

This command requires that OPENTHREAD_CONFIG_BORDER_ROUTING_ENABLE be enabled. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

srp server auto [enable|disable]

Examples

srp server auto enable
Done
srp server auto
Enabled
Done

CLI and API References

srp server domain (get,set)

Gets or sets the domain name of the SRP server.

Parameters

srp server domain [domain-name]

Examples

srp server domain thread.service.arpa.
Done
srp server domain
thread.service.arpa.
Done

CLI and API References

srp server host

Returns information about all registered hosts. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

No parameters.

Examples

srp server host
srp-api-test-1.default.service.arpa.
    deleted: false
    addresses: [fdde:ad00:beef:0:0:ff:fe00:fc10]
srp-api-test-0.default.service.arpa.
    deleted: false
    addresses: [fdde:ad00:beef:0:0:ff:fe00:fc10]
Done

CLI and API References

srp server lease (get,set)

Gets or sets the SRP server lease values in number of seconds.

Parameters

srp server lease [min-lease max-lease min-key-lease max-key-lease]

Examples

srp server lease 1800 7200 86400 1209600
Done
srp server lease
min lease: 1800
max lease: 7200
min key-lease: 86400
max key-lease: 1209600
Done

CLI and API References

srp server seqnum (get,set)

Gets or sets the sequence number used with the anycast address mode. The sequence number is included in the "DNS/SRP Service Anycast Address" entry that is published in the Network Data.

Parameters

srp server seqnum [seqnum]

Examples

srp server seqnum 20
Done
srp server seqnum
20
Done

CLI and API References

srp server service

Returns information about registered services.

The TXT record is displayed as an array of entries. If an entry contains a key, the key is printed in ASCII format. The value portion is printed in hexadecimal bytes. For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

No parameters.

Examples

srp server service
srp-api-test-1._ipps._tcp.default.service.arpa.
    deleted: false
    subtypes: (null)
    port: 49152
    priority: 0
    weight: 0
    ttl: 7200
    lease: 7200
    key-lease: 1209600
    TXT: [616263, xyz=585960]
    host: srp-api-test-1.default.service.arpa.
    addresses: [fdde:ad00:beef:0:0:ff:fe00:fc10]
srp-api-test-0._ipps._tcp.default.service.arpa.
    deleted: false
    subtypes: _sub1,_sub2
    port: 49152
    priority: 0
    weight: 0
    ttl: 3600
    lease: 3600
    key-lease: 1209600
    TXT: [616263, xyz=585960]
    host: srp-api-test-0.default.service.arpa.
    addresses: [fdde:ad00:beef:0:0:ff:fe00:fc10]
Done

CLI and API References

srp server state

Returns one of the following possible states of the SRP server:

  • disabled: The SRP server is not enabled.
  • stopped: The SRP server is enabled but not active due to existing SRP servers that are already active in the Thread network. The SRP server may become active when the existing SRP servers are no longer active within the Thread network.
  • running: The SRP server is active and can handle service registrations.

For more information, refer to Set Up Service Registration Protocol (SRP) Server-Client Connectivity With OT CLI.

Parameters

No parameters.

Examples

srp server state
running
Done

CLI and API References

state

Returns the current role of the Thread device, or changes the role as specified with one of the options. Possible values returned when inquiring about the device role:

  • child: The device is currently operating as a Thread child.
  • router: The device is currently operating as a Thread router.
  • leader: The device is currently operating as a Thread leader.
  • detached: The device is not currently participating in a Thread network/partition.
  • disabled: The Thread stack is currently disabled.

Using one of the options allows you to change the current role of a device, with the exclusion of changing to or from a disabled state.

Parameters

state [child|router|leader|detached]

Examples

state
child
Done
state leader
Done

CLI and API References

tcp abort

Unceremoniously ends the TCP connection associated with the example TCP endpoint, transitioning the TCP endpoint to the closed state.

Parameters

No parameters.

Examples

tcp abort
TCP: Connection reset
Done

CLI and API References

tcp benchmark result

Shows the latest result of the TCP benchmark test. Possible status values:

  • Ongoing
  • Completed
  • Untested

This command is primarily intended for creating scripts that automate the TCP benchmark test.

Parameters

No parameters.

Examples

tcp benchmark result
TCP Benchmark Status: Ongoing
Done
tcp benchmark result
TCP Benchmark Status: Completed
TCP Benchmark Complete: Transferred 73728 bytes in 7056 milliseconds
TCP Goodput: 83.592 kb/s

CLI and API References

  • No associated API

tcp benchmark run

Transfers the specified number of bytes using the TCP connection currently associated with the example TCP endpoint provided by the tcp CLI.

Parameters

tcp benchmark run [size]

Use the size parameter to specify the number of bytes to send for the benchmark. If you do not use the size parameter, the default value (OPENTHREAD_CONFIG_CLI_TCP_DEFAULT_BENCHMARK_SIZE) is used.

Examples

tcp benchmark run
Done
TCP Benchmark Complete: Transferred 73728 bytes in 7233 milliseconds
TCP Goodput: 81.546 kb/s

CLI and API References

  • No associated API

tcp bind

Associates an IPv6 address and a port to the example TCP endpoint provided by the tcp CLI. Associating the TCP endpoint to an IPv6 address and port is referred to as "naming the TCP endpoint." This binds the endpoint for communication. For more information, refer to Test TCP Functionality With OT CLI.

Parameters

tcp bind ip port
  • ip: IPv6 address to bind to. If you wish to have the TCP/IPv6 stack assign the binding IPv6 address, use the unspecified IPv6 address: ::.
  • port: TCP port number to bind to.

Examples

tcp bind :: 30000
Done

CLI and API References

tcp connect

Establishes a connection with the specified peer.

If the connection establishment is successful, the resulting TCP connection is associated with the example TCP endpoint. For more information, refer to Test TCP Functionality With OT CLI.

Parameters

tcp connect ip port [fastopen]
  • ip: IP address of the peer The address can be an IPv4 address, which gets synthesized to an IPv6 address using the preferred NAT64 prefix from the network data. The command returns InvalidState when the preferred NAT64 prefix is unavailable.
  • port: TCP port number of the peer.
  • fastopen: This parameter is optional. If set to fast, TCP Fast Open is enabled for this connection. Otherwise, if this parameter is set to slow or not used, TCP Fast Open is disabled.

Examples

tcp connect fe80:0:0:0:a8df:580a:860:ffa4 30000
Done
TCP: Connection established
tcp connect 172.17.0.1 1234
Connecting to synthesized IPv6 address: fdde:ad00:beef:2:0:0:ac11:1
Done

CLI and API References

tcp deinit

Deinitializes this TCP endpoint.

This means that OpenThread no longer keeps track of this TCP endpoint and deallocates all resources it has internally allocated for this TCP endpoint. The application can reuse the memory backing the TCP endpoint as it sees fit.

If it corresponds to a live TCP connection, the connection is terminated unceremoniously (as in otTcpAbort()). All resources the application has provided for this TCP endpoint (linked buffers for the send buffer, memory for the receive buffer, the aEndpoint structure itself, etc.) are immediately returned to the application.

Parameters

No parameters.

Examples

tcp deinit
Done

CLI and API References

tcp init

Initializes the example TCP listener and the example TCP endpoint provided by the tcp CLI.

Parameters

tcp init [mode] [size]
  • The mode has three possible values:
    • tls: Specifies that the TCP connection between two nodes should also use the TLS protocol on top of TCP. When two nodes communicate over TCP, both nodes must either use TLS or neither node should use TLS because a non-TLS endpoint cannot communicate with a TLS endpoint.
    • linked or circular: Either one of these options means that TLS is not to be used, and the specified buffering type should be used for TCP buffering. The behavior of linked and circular is identical. Examine the code for the differences between these two buffering types. Two endpoints of a TCP connection are not required to use the same buffering type.
  • The size parameter sets the size of the receive buffer to associate with the example TCP endpoint. If left unspecified, the maximum size is used. The maximum size is set in OPENTHREAD_CONFIG_CLI_TCP_RECEIVE_BUFFER_SIZE.

Examples

tcp init tls
Done

CLI and API References

tcp listen

Uses the example TCP listener to listen for incoming connections on the specified IPv6 address and port. For more information, refer to Test TCP Functionality With OT CLI.

Parameters

tcp listen ip port

The following parameters are required:

  • ip: IPv6 address or the unspecified IPv6 address (::) of the example TCP listener provided by the tcp CLI.
  • port: TCP port of the example TCP listener. If no TCP connection is associated with the example TCP endpoint, then any incoming connections matching the specified IPv6 address and port are accepted and are associated with the example TCP endpoint.

Examples

tcp listen :: 30000
Done

CLI and API References

tcp send

Sends data over the TCP connection associated with the example TCP endpoint that is provided with the tcp CLI. For more information, refer to Test TCP Functionality With OT CLI.

Parameters

tcp send message

The message parameter contains the message you want to send to the remote TCP endpoint.

Examples

tcp send hello
Done

CLI and API References

  • No associated API

tcp sendend

Sends the "end of stream" signal over the TCP connection associated with the example TCP endpoint provided by the tcp CLI. This alerts the peer that it will not receive any more data over this TCP connection.

Parameters

No parameters.

Examples

tcp sendend
Done

CLI and API References

tcp stoplistening

Instructs the example TCP listener to stop listening for incoming TCP connections.

Parameters

No parameters.

Examples

tcp stoplistening
Done

CLI and API References

thread start

Starts the Thread protocol operation.

Parameters

No parameters.

Examples

thread start
Done

CLI and API References

thread stop

Stops the Thread protocol operation.

Parameters

No parameters.

Examples

thread stop
Done

CLI and API References

  • No associated API

thread version

Gets the Thread protocol version.

Parameters

No parameters.

Examples

 thread version
2
Done

CLI and API References

timeinqueue max

Gets the maximum time-in-queue for messages in the TX queue.

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.

The collected statistics can be reset by calling otThreadResetTimeInQueueStat() .

Parameters

No parameters.

Examples

timeinqueue max
281
Done

CLI and API References

timeinqueue reset

Resets the TX queue time-in-queue statistics.

Requires OPENTHREAD_CONFIG_TX_QUEUE_STATISTICS_ENABLE.

Parameters

No parameters.

Examples

timeinqueue reset
Done

CLI and API References

timeinqueue

Gets the time-in-queue histogram for messages in the TX queue.

Requires OPENTHREAD_CONFIG_TX_QUEUE_STATISTICS_ENABLE.

Histogram of the time-in-queue of messages in the transmit queue is collected. 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.

The histogram is returned as an array of uint32_t values with aNumBins entries. The first entry in the array (at index 0) represents the number of messages with a time-in-queue less than aBinInterval. The second entry represents the number of messages with a time-in-queue greater than or equal to aBinInterval, but less than 2 * aBinInterval. And so on. The last entry represents the number of messages with time-in-queue greater than or equal to (aNumBins - 1) * aBinInterval.

The collected statistics can be reset by calling otThreadResetTimeInQueueStat() . The histogram information is collected since the OpenThread instance was initialized or since the last time statistics collection was reset by calling the otThreadResetTimeInQueueStat() .

Pointers aNumBins and aBinInterval MUST NOT be NULL.

Parameters

No parameters.

Examples

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

CLI and API References

trel (enable,disable)

Enables or disables the TREL radio operation.

Parameters

trel enable|disable

Examples

trel enable
Done
trel disable
Done

CLI and API References

trel counters reset

Resets the TREL counters.

Parameters

No parameters.

Examples

trel counters reset
Done

CLI and API References

trel counters

Gets the TREL counters.

Parameters

No parameters.

Examples

trel counters
Inbound:  Packets 32 Bytes 4000
Outbound: Packets 4 Bytes 320 Failures 1
Done

CLI and API References

trel filter (enable,disable)

Enables or disables TREL filter mode.

Parameters

trel filter enable|disable

Examples

trel filter enable
Done
trel filter disable
Done

CLI and API References

trel filter

Indicates whether TREL filter mode is enabled.

When filter mode is enabled, all Rx and Tx traffic sent through the TREL interface gets silently dropped.

Parameters

No parameters.

Examples

trel filter
Disabled
Done

CLI and API References

trel peers

Gets the TREL peer table in table or list format.

Parameters

trel peers [list]

Examples

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

CLI and API References

trel

Indicates whether the TREL operation is enabled.

Parameters

No parameters.

Examples

trel
Enabled
Done

CLI and API References

tvcheck (enable,disable)

Enables or disables the Thread version check when upgrading to router or leader. This check is enabled by default.

Parameters

No parameters.

Examples

tvcheck enable
Done
tvcheck disable
Done

CLI and API References

txpower (get,set)

Gets (or sets with the use of the optional txpower argument) the transmit power in dBm.

Parameters

txpower [txpower]

Examples

txpower -10
Done
txpower
-10 dBm
Done

CLI and API References

udp bind

Assigns an IPv6 address and a port to an open socket, which binds the socket for communication. Assigning the IPv6 address and port is referred to as naming the socket. For more information, refer to Test UDP Functionality With OT CLI.

Parameters

udp bind [netif] ip port
  • netif: The binding network interface, which is determined as follows:
    • No value (leaving out this parameter from the command): Thread network interface is used.
    • -u: Unspecified network interface, which means that the UDP/IPv6 stack determines which network interface to bind the socket to.
    • -b: Backbone network interface is used.
  • ip: IPv6 address to bind to. If you wish to have the UDP/IPv6 stack assign the binding IPv6 address, then you can use the following value to use the unspecified IPv6 address: ::. Each example uses the unspecified IPv6 address.
  • port: UDP port number to bind to. Each of the examples is using port number 1234.

Examples

udp bind :: 1234
Done
udp bind -u :: 1234
Done
udp bind -b :: 1234
Done

CLI and API References

udp close

Close a UDP/IPv6 socket.

Parameters

No parameters.

Examples

udp close
Done

CLI and API References

udp connect

Connect a UDP/IPv6 socket.

Parameters

udp connect ip port

The following parameters are required:

  • ip: IP address of the peer.
  • port: UDP port number of the peer. The address can be an IPv4 address, which gets synthesized to an IPv6 address using the preferred NAT64 prefix from the network data. The command returns InvalidState when the preferred NAT64 prefix is unavailable.

Examples

udp connect fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234
Done
udp connect 172.17.0.1 1234
Connecting to synthesized IPv6 address: fdde:ad00:beef:2:0:0:ac11:1
Done

CLI and API References

udp linksecurity (enable,disable)

Enables or disables link security.

Parameters

No parameters.

Examples

udp linksecurity enable
Done
udp linksecurity disable
Done

CLI and API References

  • No associated API

udp linksecurity

Indicates whether link security is enabled or disabled.

Parameters

No parameters.

Examples

udp linksecurity
Enabled
Done

CLI and API References

  • No associated API

udp open

Open a UDP/IPv6 socket.

Parameters

No parameters.

Examples

udp open
Done

CLI and API References

udp send

Sends a UDP message using the socket. For more information, refer to Test UDP Functionality With OT CLI.

Parameters

udp send [ip port] [type] value

The ip and port are optional as a pair, but if you specify one you must specify the other. If ip and port are not specified, the socket peer address is used from udp connect.

  • ip: Destination address. This address can be either an IPv4 or IPv6 address, An IPv4 address gets synthesized to an IPv6 address with the preferred NAT64 prefix from the network data. (If the preferred NAT64 prefix is unavailable, the command returns InvalidState).
  • port: UDP destination port.
  • type/value combinations:
    • -t: The payload in the value parameter is treated as text. If no type value is entered, the payload in the value parameter is also treated as text.
    • -s: Auto-generated payload with the specified length given in the value parameter.
    • -x: Binary data in hexadecimal representation given in the value parameter.

Examples

udp send hello
Done
udp send -t hello
Done
udp send -x 68656c6c6f
Done
udp send -s 800
Done
udp send fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234 hello
Done
udp send 172.17.0.1 1234 hello
Sending to synthesized IPv6 address: fdde:ad00:beef:2:0:0:ac11:1
Done
udp send fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234 -t hello
Done
udp send fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234 -x 68656c6c6f
Done
udp send fdde:ad00:beef:0:bb1:ebd6:ad10:f33 1234 -s 800
Done

CLI and API References

unsecure get

Lists all ports from the allowed unsecured port list.

Parameters

No parameters.

Examples

unsecure get
1234
Done

CLI and API References

unsecureport add

Adds a port to the allowed unsecured port list.

Parameters

unsecureport add port

Examples

unsecureport add 1234
Done

CLI and API References

unsecureport remove

Removes a specified port or all ports from the allowed unsecured port list.

Parameters

unsecureport remove port|all

Examples

unsecureport remove 1234
Done
unsecureport remove all
Done

CLI and API References

uptime ms

Returns the current instance uptime (in msec).

Requires OPENTHREAD_CONFIG_UPTIME_ENABLE to be enabled.

The uptime is given as number of milliseconds since OpenThread instance was initialized.

Parameters

No parameters.

Examples

uptime ms
426238
Done

CLI and API References

uptime

Returns the current instance uptime as a human-readable string.

Requires OPENTHREAD_CONFIG_UPTIME_ENABLE to be enabled.

The string follows the format "::." for hours, minutes, seconds and millisecond (if uptime is shorter than one day) or "

d.::." (if longer than a day).

If the resulting string does not fit in aBuffer (within its aSize characters), the string will be truncated but the outputted string is always null-terminated.

Parameters

No parameters.

Examples

uptime
12:46:35.469
Done

CLI and API References

vendor appurl (set)

Set the vendor app URL string.

Requires OPENTHREAD_CONFIG_NET_DIAG_VENDOR_INFO_SET_API_ENABLE.

aVendorAppUrl should be UTF8 with max length of 64 chars (MAX_VENDOR_APPL_URL_TLV_LENGTH). Maximum length does not include the null \0 character.

Parameters

vendor appurl url

Examples

vendor appurl http://www.example.com
Done

CLI and API References

vendor appurl

Get the vendor app URL string.

Parameters

No parameters.

Examples

vendor appurl
http://www.example.com
Done

CLI and API References

vendor model (set)

Set the vendor model string.

Requires OPENTHREAD_CONFIG_NET_DIAG_VENDOR_INFO_SET_API_ENABLE.

aVendorModel should be UTF8 with max length of 32 chars (MAX_VENDOR_MODEL_TLV_LENGTH). Maximum length does not include the null \0 character.

Parameters

vendor model name

Examples

vendor model Hub\ Max
Done

CLI and API References

vendor model

Get the vendor model string.

Parameters

No parameters.

Examples

vendor model
Hub Max
Done

CLI and API References

vendor name (set)

Set the vendor name string.

Requires OPENTHREAD_CONFIG_NET_DIAG_VENDOR_INFO_SET_API_ENABLE.

aVendorName should be UTF8 with max length of 32 chars (MAX_VENDOR_NAME_TLV_LENGTH). Maximum length does not include the null \0 character.

Parameters

vendor name name

Examples

vendor name nest
Done

CLI and API References

vendor name

Get the vendor name string.

Parameters

No parameters.

Examples

vendor name
nest
Done

CLI and API References

vendor swversion (set)

Set the vendor software version string.

Requires OPENTHREAD_CONFIG_NET_DIAG_VENDOR_INFO_SET_API_ENABLE.

aVendorSwVersion should be UTF8 with max length of 16 chars(MAX_VENDOR_SW_VERSION_TLV_LENGTH). Maximum length does not include the null \0 character.

Parameters

vendor swversion version

Examples

vendor swversion Marble3.5.1
Done

CLI and API References

vendor swversion

Get the vendor software version string.

Parameters

No parameters.

Examples

vendor swversion
Marble3.5.1
Done

CLI and API References

version api

Prints the API version number.

Parameters

No parameters.

Examples

version api
28
Done

CLI and API References

  • No associated API

version

Gets the OpenThread version string.

Parameters

No parameters.

Examples

version
OPENTHREAD/gf4f2f04; Jul 1 2016 17:00:09
Done

CLI and API References