Instance
This module includes functions that control the OpenThread Instance.
Summary
Typedefs |
|
---|---|
otChangedFlags
|
typedefuint32_t
This type represents a bit-field indicating specific state/configuration that has changed. |
otInstance
|
typedefstruct otInstance
This structure represents the OpenThread instance structure. |
otStateChangedCallback)(otChangedFlags aFlags, void *aContext)
|
typedefvoid(*
This function pointer is called to notify certain configuration or state changes within OpenThread. |
Functions |
|
---|---|
otGetRadioVersionString(otInstance *aInstance)
|
const char *
This function gets the OpenThread radio version string.
|
otGetVersionString(void)
|
const char *
This function gets the OpenThread version string.
|
otInstanceErasePersistentInfo(otInstance *aInstance)
|
This function erases all the OpenThread persistent info (network settings) stored on non-volatile memory.
|
otInstanceFactoryReset(otInstance *aInstance)
|
void
This method deletes all the settings stored on non-volatile memory, and then triggers platform reset.
|
otInstanceFinalize(otInstance *aInstance)
|
void
This function disables the OpenThread library.
|
otInstanceGetUptime(otInstance *aInstance)
|
uint64_t
This function returns the current instance uptime (in msec).
|
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
|
void
This function returns the current instance uptime as a human-readable string.
|
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
|
This function initializes the OpenThread library.
|
otInstanceInitSingle(void)
|
This function initializes the static single instance of the OpenThread library.
|
otInstanceIsInitialized(otInstance *aInstance)
|
bool
This function indicates whether or not the instance is valid/initialized.
|
otInstanceReset(otInstance *aInstance)
|
void
This method triggers a platform reset.
|
otInstanceResetRadioStack(otInstance *aInstance)
|
void
This method resets the internal states of the OpenThread radio stack.
|
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
|
void
This function removes a callback to indicate when certain configuration or state changes within OpenThread.
|
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
|
This function registers a callback to indicate when certain configuration or state changes within OpenThread.
|
Macros |
|
---|---|
OT_UPTIME_STRING_SIZE 24
|
Recommended size for string representation of uptime.
|
Enumerations
Anonymous Enum 7
Anonymous Enum 7
This enumeration defines flags that are passed as part of otStateChangedCallback
.
Properties | |
---|---|
OT_CHANGED_ACTIVE_DATASET
|
Active Operational Dataset changed. |
OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL
|
Channel Manager new pending Thread channel changed. |
OT_CHANGED_COMMISSIONER_STATE
|
Commissioner state changed. |
OT_CHANGED_IP6_ADDRESS_ADDED
|
IPv6 address was added. |
OT_CHANGED_IP6_ADDRESS_REMOVED
|
IPv6 address was removed. |
OT_CHANGED_IP6_MULTICAST_SUBSCRIBED
|
Subscribed to a IPv6 multicast address. |
OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED
|
Unsubscribed from a IPv6 multicast address. |
OT_CHANGED_JOINER_STATE
|
Joiner state changed. |
OT_CHANGED_NETWORK_KEY
|
Network key changed. |
OT_CHANGED_PENDING_DATASET
|
Pending Operational Dataset changed. |
OT_CHANGED_PSKC
|
PSKc changed. |
OT_CHANGED_SECURITY_POLICY
|
Security Policy changed. |
OT_CHANGED_SUPPORTED_CHANNEL_MASK
|
Supported channel mask changed. |
OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL
|
Local Backbone Router configuration changed. |
OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE
|
Backbone Router state changed. |
OT_CHANGED_THREAD_CHANNEL
|
Thread network channel changed. |
OT_CHANGED_THREAD_CHILD_ADDED
|
Child was added. |
OT_CHANGED_THREAD_CHILD_REMOVED
|
Child was removed. |
OT_CHANGED_THREAD_EXT_PANID
|
Thread network extended PAN ID changed. |
OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER
|
Thread Key Sequence changed. |
OT_CHANGED_THREAD_LL_ADDR
|
The link-local address changed. |
OT_CHANGED_THREAD_ML_ADDR
|
The mesh-local address changed. |
OT_CHANGED_THREAD_NETDATA
|
Thread Network Data changed. |
OT_CHANGED_THREAD_NETIF_STATE
|
Thread network interface state changed. |
OT_CHANGED_THREAD_NETWORK_NAME
|
Thread network name changed. |
OT_CHANGED_THREAD_PANID
|
Thread network PAN Id changed. |
OT_CHANGED_THREAD_PARTITION_ID
|
Partition ID changed. |
OT_CHANGED_THREAD_RLOC_ADDED
|
RLOC was added. |
OT_CHANGED_THREAD_RLOC_REMOVED
|
RLOC was removed. |
OT_CHANGED_THREAD_ROLE
|
Role (disabled, detached, child, router, leader) changed. |
Typedefs
otChangedFlags
uint32_t otChangedFlags
This type represents a bit-field indicating specific state/configuration that has changed.
See OT_CHANGED_*
definitions.
otInstance
struct otInstance otInstance
This structure represents the OpenThread instance structure.
otStateChangedCallback
void(* otStateChangedCallback)(otChangedFlags aFlags, void *aContext)
This function pointer is called to notify certain configuration or state changes within OpenThread.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
Functions
otGetRadioVersionString
const char * otGetRadioVersionString( otInstance *aInstance )
This function gets the OpenThread radio version string.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
A pointer to the OpenThread radio version.
|
otGetVersionString
const char * otGetVersionString( void )
This function gets the OpenThread version string.
Details | |
---|---|
Returns |
A pointer to the OpenThread version.
|
otInstanceErasePersistentInfo
otError otInstanceErasePersistentInfo( otInstance *aInstance )
This function erases all the OpenThread persistent info (network settings) stored on non-volatile memory.
Erase is successful only if the device is in disabled
state/role.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otInstanceFactoryReset
void otInstanceFactoryReset( otInstance *aInstance )
This method deletes all the settings stored on non-volatile memory, and then triggers platform reset.
Details | |||
---|---|---|---|
Parameters |
|
otInstanceFinalize
void otInstanceFinalize( otInstance *aInstance )
This function disables the OpenThread library.
Call this function when OpenThread is no longer in use.
Details | |||
---|---|---|---|
Parameters |
|
otInstanceGetUptime
uint64_t otInstanceGetUptime( otInstance *aInstance )
This function returns the current instance uptime (in msec).
This function requires OPENTHREAD_CONFIG_UPTIME_ENABLE
to be enabled.
The uptime is given as number of milliseconds since OpenThread instance was initialized.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
The uptime (number of milliseconds).
|
otInstanceGetUptimeAsString
void otInstanceGetUptimeAsString( otInstance *aInstance, char *aBuffer, uint16_t aSize )
This function returns the current instance uptime as a human-readable string.
This function requires OPENTHREAD_CONFIG_UPTIME_ENABLE
to be enabled.
The string follows the format "
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.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameters |
|
otInstanceInit
otInstance * otInstanceInit( void *aInstanceBuffer, size_t *aInstanceBufferSize )
This function initializes the OpenThread library.
This function initializes OpenThread and prepares it for subsequent OpenThread API calls. This function must be called before any other calls to OpenThread.
This function is available and can only be used when support for multiple OpenThread instances is enabled.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Returns |
A pointer to the new OpenThread instance.
|
otInstanceFinalize
otInstanceInitSingle
otInstance * otInstanceInitSingle( void )
This function initializes the static single instance of the OpenThread library.
This function initializes OpenThread and prepares it for subsequent OpenThread API calls. This function must be called before any other calls to OpenThread.
This function is available and can only be used when support for multiple OpenThread instances is disabled.
Details | |
---|---|
Returns |
A pointer to the single OpenThread instance.
|
otInstanceIsInitialized
bool otInstanceIsInitialized( otInstance *aInstance )
This function indicates whether or not the instance is valid/initialized.
The instance is considered valid if it is acquired and initialized using either otInstanceInitSingle()
(in single instance case) or otInstanceInit()
(in multi instance case). A subsequent call to otInstanceFinalize()
causes the instance to be considered as uninitialized.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
TRUE if the given instance is valid/initialized, FALSE otherwise.
|
otInstanceReset
void otInstanceReset( otInstance *aInstance )
This method triggers a platform reset.
The reset process ensures that all the OpenThread state/info (stored in volatile memory) is erased. Note that the otPlatformReset
does not erase any persistent state/info saved in non-volatile memory.
Details | |||
---|---|---|---|
Parameters |
|
otInstanceResetRadioStack
void otInstanceResetRadioStack( otInstance *aInstance )
This method resets the internal states of the OpenThread radio stack.
Callbacks and configurations are preserved.
This API is only available under radio builds (OPENTHREAD_RADIO = 1
).
Details | |||
---|---|---|---|
Parameters |
|
otRemoveStateChangeCallback
void otRemoveStateChangeCallback( otInstance *aInstance, otStateChangedCallback aCallback, void *aContext )
This function removes a callback to indicate when certain configuration or state changes within OpenThread.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameters |
|
otSetStateChangedCallback
otError otSetStateChangedCallback( otInstance *aInstance, otStateChangedCallback aCallback, void *aContext )
This function registers a callback to indicate when certain configuration or state changes within OpenThread.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameters |
|
||||||
Return Values |
|
Macros
OT_UPTIME_STRING_SIZE
OT_UPTIME_STRING_SIZE 24
Recommended size for string representation of uptime.
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.