MLE Service

This module includes configuration variables for the MLE service.

Summary

Macros

OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_DELAY_TO_RESET_BACKOFF_INTERVAL 20000
Specifies the delay wait interval (in milliseconds) used by attach backoff feature after a successful attach before it resets the current backoff interval back to the minimum value.
OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE 1
Define as 1 to enable attach backoff feature.
OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_JITTER_INTERVAL 2000
Specifies the maximum jitter interval (in milliseconds) used by attach backoff feature.
OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MAXIMUM_INTERVAL 1200000
Specifies the maximum backoff wait interval (in milliseconds) used by attach backoff feature.
OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MINIMUM_INTERVAL 251
Specifies the minimum backoff wait interval (in milliseconds) used by attach backoff feature.
OPENTHREAD_CONFIG_MLE_CHILD_ROUTER_LINKS 3
Specifies the desired number of router links that a REED / FED attempts to maintain.
OPENTHREAD_CONFIG_MLE_CHILD_TIMEOUT_DEFAULT 240
The default child timeout value (in seconds).
OPENTHREAD_CONFIG_MLE_DEFAULT_LEADER_WEIGHT_ADJUSTMENT 0
Specifies the default value for mLeaderWeightAdjustment in otDeviceProperties.
OPENTHREAD_CONFIG_MLE_DEVICE_PROPERTY_LEADER_WEIGHT_ENABLE (OPENTHREAD_CONFIG_THREAD_VERSION >= OT_THREAD_VERSION_1_4)
Define as 1 to enable feature to set device properties which are used for calculating the local leader weight on a device.
OPENTHREAD_CONFIG_MLE_INFORM_PREVIOUS_PARENT_ON_REATTACH 1
Define as 1 for a child to inform its previous parent when it attaches to a new parent.
OPENTHREAD_CONFIG_MLE_IP_ADDRS_PER_CHILD 4
The maximum number of supported IPv6 address registrations per child.
OPENTHREAD_CONFIG_MLE_IP_ADDRS_TO_REGISTER (OPENTHREAD_CONFIG_MLE_IP_ADDRS_PER_CHILD)
The maximum number of IPv6 address registrations for MTD.
OPENTHREAD_CONFIG_MLE_LINK_METRICS_INITIATOR_ENABLE 0
Define as 1 to enable Link Metrics initiator feature.
OPENTHREAD_CONFIG_MLE_LINK_METRICS_MAX_SERIES_SUPPORTED OPENTHREAD_CONFIG_MLE_MAX_CHILDREN
The max number of series that a Link Metrics Subject can track simultaneously.
OPENTHREAD_CONFIG_MLE_LINK_METRICS_SERIES_MTD 2
The max number of series that a Link Metrics Subject (MTD device) can track simultaneously.
OPENTHREAD_CONFIG_MLE_LINK_METRICS_SUBJECT_ENABLE 0
Define as 1 to enable Link Metrics subject feature.
OPENTHREAD_CONFIG_MLE_LINK_REQUEST_MARGIN_MIN 10
Specifies the minimum link margin in dBm required before attempting to establish a link with a neighboring router.
OPENTHREAD_CONFIG_MLE_LONG_ROUTES_ENABLE 0
Enable experimental mode for 'deep' networks, allowing packet routes up to 32 nodes.
OPENTHREAD_CONFIG_MLE_MAX_CHILDREN 10
The maximum number of children.
OPENTHREAD_CONFIG_MLE_MAX_ROUTERS 32
The maximum number of routers in a Thread network.
OPENTHREAD_CONFIG_MLE_PARENT_RESPONSE_CALLBACK_API_ENABLE 0
Define as 1 to support otThreadRegisterParentResponseCallback() API which registers a callback to notify user of received Parent Response message(s) during attach.
OPENTHREAD_CONFIG_MLE_PARTITION_MERGE_MARGIN_MIN 10
Specifies the minimum link margin in dBm required before attempting to merge to a different partition.
OPENTHREAD_CONFIG_MLE_SEND_LINK_REQUEST_ON_ADV_TIMEOUT 1
Define to 1 to send an MLE Link Request when MAX_NEIGHBOR_AGE is reached for a neighboring router.
OPENTHREAD_CONFIG_MLE_SEND_UNICAST_ANNOUNCE_RESPONSE 1
Define as 1 to enable sending of a unicast MLE Announce message in response to a received Announce message from a device.
OPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE 0
Enable setting steering data out of band.

Macros

OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_DELAY_TO_RESET_BACKOFF_INTERVAL

 OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_DELAY_TO_RESET_BACKOFF_INTERVAL 20000

Specifies the delay wait interval (in milliseconds) used by attach backoff feature after a successful attach before it resets the current backoff interval back to the minimum value.

If it is set to zero then the device resets its backoff attach interval immediately after a successful attach. With a non-zero value, if after a successful attach, the device happens to detach within the delay interval, the reattach process resumes with the previous backoff interval (as if the attach did not happen).

This behavior is helpful in the situation where a battery-powered device has poor link quality to its parent and therefore attaches and detaches frequently from the parent. Using a non-zero wait interval ensures that the attach backoff interval does not reset on each attach and that the device does not drain its battery quickly trying to re-attach too frequently.

OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE

 OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE 1

Define as 1 to enable attach backoff feature.

When this feature is enabled, an exponentially increasing backoff wait time is added between attach attempts. If device is sleepy, the radio will be put to sleep during the wait time. This ensures that a battery-powered sleepy end-device does not drain its battery by continuously searching for a parent to attach to (when there is no router/parent for it to attach).

The backoff time starts from a minimum interval specified by OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MINIMUM_INTERVAL, and every attach attempt the wait time is doubled up to OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MAXIMUM_INTERVAL which specifies the maximum wait time.

Once the wait time reaches the maximum, a random jitter interval is added to it. The maximum value for jitter is specified by OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_JITTER_INTERVAL. The random jitter is selected uniformly within range [-JITTER, +JITTER]. It is only added when the backoff wait interval is at maximum value.

OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_JITTER_INTERVAL

 OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_JITTER_INTERVAL 2000

Specifies the maximum jitter interval (in milliseconds) used by attach backoff feature.

Applicable only if attach backoff feature is enabled (see OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE).

Please see OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE description for more details.

OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MAXIMUM_INTERVAL

 OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MAXIMUM_INTERVAL 1200000

Specifies the maximum backoff wait interval (in milliseconds) used by attach backoff feature.

Applicable only if attach backoff feature is enabled (see OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE).

Please see OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE description for more details.

OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MINIMUM_INTERVAL

 OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_MINIMUM_INTERVAL 251

Specifies the minimum backoff wait interval (in milliseconds) used by attach backoff feature.

Applicable only if attach backoff feature is enabled (see OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE).

Please see OPENTHREAD_CONFIG_MLE_ATTACH_BACKOFF_ENABLE description for more details.

 OPENTHREAD_CONFIG_MLE_CHILD_ROUTER_LINKS 3

Specifies the desired number of router links that a REED / FED attempts to maintain.

OPENTHREAD_CONFIG_MLE_CHILD_TIMEOUT_DEFAULT

 OPENTHREAD_CONFIG_MLE_CHILD_TIMEOUT_DEFAULT 240

The default child timeout value (in seconds).

OPENTHREAD_CONFIG_MLE_DEFAULT_LEADER_WEIGHT_ADJUSTMENT

 OPENTHREAD_CONFIG_MLE_DEFAULT_LEADER_WEIGHT_ADJUSTMENT 0

Specifies the default value for mLeaderWeightAdjustment in otDeviceProperties.

MUST be from -16 up to +16.

This value is used to adjust the calculated Leader Weight from otDeviceProperties.

OPENTHREAD_CONFIG_MLE_DEVICE_PROPERTY_LEADER_WEIGHT_ENABLE

 OPENTHREAD_CONFIG_MLE_DEVICE_PROPERTY_LEADER_WEIGHT_ENABLE (OPENTHREAD_CONFIG_THREAD_VERSION >= OT_THREAD_VERSION_1_4)

Define as 1 to enable feature to set device properties which are used for calculating the local leader weight on a device.

It is enabled by default on Thread Version 1.4 or later.

OPENTHREAD_CONFIG_MLE_INFORM_PREVIOUS_PARENT_ON_REATTACH

 OPENTHREAD_CONFIG_MLE_INFORM_PREVIOUS_PARENT_ON_REATTACH 1

Define as 1 for a child to inform its previous parent when it attaches to a new parent.

If this feature is enabled, when a device attaches to a new parent, it will send an IP message (with empty payload and mesh-local IP address as the source address) to its previous parent.

OPENTHREAD_CONFIG_MLE_IP_ADDRS_PER_CHILD

 OPENTHREAD_CONFIG_MLE_IP_ADDRS_PER_CHILD 4

The maximum number of supported IPv6 address registrations per child.

OPENTHREAD_CONFIG_MLE_IP_ADDRS_TO_REGISTER

 OPENTHREAD_CONFIG_MLE_IP_ADDRS_TO_REGISTER (OPENTHREAD_CONFIG_MLE_IP_ADDRS_PER_CHILD)

The maximum number of IPv6 address registrations for MTD.

 OPENTHREAD_CONFIG_MLE_LINK_METRICS_INITIATOR_ENABLE 0

Define as 1 to enable Link Metrics initiator feature.

 OPENTHREAD_CONFIG_MLE_LINK_METRICS_MAX_SERIES_SUPPORTED OPENTHREAD_CONFIG_MLE_MAX_CHILDREN

The max number of series that a Link Metrics Subject can track simultaneously.

 OPENTHREAD_CONFIG_MLE_LINK_METRICS_SERIES_MTD 2

The max number of series that a Link Metrics Subject (MTD device) can track simultaneously.

 OPENTHREAD_CONFIG_MLE_LINK_METRICS_SUBJECT_ENABLE 0

Define as 1 to enable Link Metrics subject feature.

 OPENTHREAD_CONFIG_MLE_LINK_REQUEST_MARGIN_MIN 10

Specifies the minimum link margin in dBm required before attempting to establish a link with a neighboring router.

OPENTHREAD_CONFIG_MLE_LONG_ROUTES_ENABLE

 OPENTHREAD_CONFIG_MLE_LONG_ROUTES_ENABLE 0

Enable experimental mode for 'deep' networks, allowing packet routes up to 32 nodes.

This mode is incompatible with Thread 1.1.1 and older.

OPENTHREAD_CONFIG_MLE_MAX_CHILDREN

 OPENTHREAD_CONFIG_MLE_MAX_CHILDREN 10

The maximum number of children.

OPENTHREAD_CONFIG_MLE_MAX_ROUTERS

 OPENTHREAD_CONFIG_MLE_MAX_ROUTERS 32

The maximum number of routers in a Thread network.

OPENTHREAD_CONFIG_MLE_PARENT_RESPONSE_CALLBACK_API_ENABLE

 OPENTHREAD_CONFIG_MLE_PARENT_RESPONSE_CALLBACK_API_ENABLE 0

Define as 1 to support otThreadRegisterParentResponseCallback() API which registers a callback to notify user of received Parent Response message(s) during attach.

This API is mainly intended for debugging and therefore is disabled by default.

OPENTHREAD_CONFIG_MLE_PARTITION_MERGE_MARGIN_MIN

 OPENTHREAD_CONFIG_MLE_PARTITION_MERGE_MARGIN_MIN 10

Specifies the minimum link margin in dBm required before attempting to merge to a different partition.

 OPENTHREAD_CONFIG_MLE_SEND_LINK_REQUEST_ON_ADV_TIMEOUT 1

Define to 1 to send an MLE Link Request when MAX_NEIGHBOR_AGE is reached for a neighboring router.

OPENTHREAD_CONFIG_MLE_SEND_UNICAST_ANNOUNCE_RESPONSE

 OPENTHREAD_CONFIG_MLE_SEND_UNICAST_ANNOUNCE_RESPONSE 1

Define as 1 to enable sending of a unicast MLE Announce message in response to a received Announce message from a device.

OPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE

 OPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE 0

Enable setting steering data out of band.

Resources

OpenThread API Reference topics originate from the source code, available on GitHub. For more information, or to contribute to our documentation, refer to Resources.