ZLL Commissioning Common#

API and Callbacks for the ZLL Commissioning Common Component.

Common code for the ZigBee 3.0 touchlink commissioning mechanism. This component is required for both server and client side implementations.

Modules#

Zll Commissioning Common

API#

Generate a random network key and initializes the security state of the device.

bool

Indicate whether a touch link procedure is currently in progress.

void

Reset the local device to a factory new state.

void

Unsets the factory new status for a Zigbee device.

Disable touchlink processing.

Enable touchlink processing.

Enumerations#

enum
INITIAL = 0x0000
SCAN_FOR_TOUCH_LINK = 0x0001
SCAN_FOR_DEVICE_INFORMATION = 0x0002
SCAN_FOR_IDENTIFY = 0x0004
SCAN_FOR_RESET = 0x0008
TARGET_NETWORK_FOUND = 0x0010
ABORTING_TOUCH_LINK = 0x0020
SCAN_COMPLETE = 0x0040
TOUCH_LINK_TARGET = 0x0080
FORMING_NETWORK = 0x0100
RESETTING_TO_FACTORY_NEW = 0x0200
}

Macros#

#define
#define
#define
#define
#define
#define
#define
#define
#define
sl_zigbee_af_zll_commissioning_initial_security_state_cb sl_zigbee_af_zll_commissioning_common_initial_security_state_cb
#define
sl_zigbee_af_zll_commissioning_touch_link_complete_cb sl_zigbee_af_zll_commissioning_common_touch_link_complete_cb
#define
sl_zigbee_af_zll_commissioning_reset_to_factory_new_cb sl_zigbee_af_zll_commissioning_common_reset_to_factory_new_cb

API Documentation#

sl_zigbee_af_zll_set_initial_security_state#

sl_status_t sl_zigbee_af_zll_set_initial_security_state (void )

Generate a random network key and initializes the security state of the device.

Parameters
TypeDirectionArgument NameDescription
voidN/A

This function is a convenience wrapper for ::sl_zigbee_zll_set_initial_security_state, which must be called before starting or joining a network. The plugin initializes the security state for the initiator during touch linking. The target must initialize its own security state prior to forming a network either by using this function or by calling ::sl_zigbee_zll_set_initial_security_state directly.

Returns

  • An sl_status_t value that indicates the success or failure of the command.


sl_zigbee_af_zll_touch_link_in_progress#

bool sl_zigbee_af_zll_touch_link_in_progress (void )

Indicate whether a touch link procedure is currently in progress.

Parameters
TypeDirectionArgument NameDescription
voidN/A

Returns

  • True if a touch link is in progress or false otherwise.


sl_zigbee_af_zll_reset_to_factory_new#

void sl_zigbee_af_zll_reset_to_factory_new (void )

Reset the local device to a factory new state.

Parameters
TypeDirectionArgument NameDescription
voidN/A

This function causes the device to leave the network and clear its network parameters, resets its attributes to their default values, and clears the group and scene tables.


sl_zigbee_af_zll_unset_factory_new#

void sl_zigbee_af_zll_unset_factory_new (void )

Unsets the factory new status for a Zigbee device.

Parameters
TypeDirectionArgument NameDescription
voidN/A

This function is used to clear the factory new status of a Zigbee device, indicating that the device has been previously commissioned and is no longer in its factory default state.


sl_zigbee_af_zll_disable#

sl_status_t sl_zigbee_af_zll_disable (void )

Disable touchlink processing.

Parameters
TypeDirectionArgument NameDescription
voidN/A

This function will cause the device to refuse network start/join requests if it receives them and will not allow touchlinking. Note that this will have the effect of overriding the sl_zigbee_af_zll_no_touchlink_for_nfn function.


sl_zigbee_af_zll_enable#

sl_status_t sl_zigbee_af_zll_enable (void )

Enable touchlink processing.

Parameters
TypeDirectionArgument NameDescription
voidN/A

This function will cause the device to accept network start/join requests if it receives them and will not allow touchlinking. Note that this will have the effect of overriding the sl_zigbee_af_zll_no_touchlink_for_nfn function.


Enumeration Documentation#

StateEnum#

StateEnum
Enumerator
INITIAL
SCAN_FOR_TOUCH_LINK
SCAN_FOR_DEVICE_INFORMATION
SCAN_FOR_IDENTIFY
SCAN_FOR_RESET
TARGET_NETWORK_FOUND
ABORTING_TOUCH_LINK
SCAN_COMPLETE
TOUCH_LINK_TARGET
FORMING_NETWORK
RESETTING_TO_FACTORY_NEW

Variable Documentation#

sli_zigbee_af_zll_network#

sl_zigbee_zll_network_t sli_zigbee_af_zll_network

sli_zigbee_af_zll_flags#

uint16_t sli_zigbee_af_zll_flags

sli_zigbee_af_initiator_rejoin_retry_count#

uint8_t sli_zigbee_af_initiator_rejoin_retry_count

Macro Definition Documentation#

touchLinkInProgress#

#define touchLinkInProgress
Value:
(sli_zigbee_af_zll_flags \
& (SCAN_FOR_TOUCH_LINK \
| SCAN_FOR_DEVICE_INFORMATION \
| SCAN_FOR_IDENTIFY \
| SCAN_FOR_RESET \
| TOUCH_LINK_TARGET))

scanForTouchLink#

#define scanForTouchLink
Value:
()

scanForDeviceInformation#

#define scanForDeviceInformation
Value:
()

scanForIdentify#

#define scanForIdentify
Value:
()

scanForReset#

#define scanForReset
Value:
()

targetNetworkFound#

#define targetNetworkFound
Value:
()

abortingTouchLink#

#define abortingTouchLink
Value:
()

scanComplete#

#define scanComplete
Value:
()

touchLinkTarget#

#define touchLinkTarget
Value:
()

formingNetwork#

#define formingNetwork
Value:
()

resettingToFactoryNew#

#define resettingToFactoryNew
Value:
()

ZLL_FRAME_CONTROL_LEGACY#

#define ZLL_FRAME_CONTROL_LEGACY
Value:
0x00

ZLL_FRAME_CONTROL_CLIENT_TO_SERVER#

#define ZLL_FRAME_CONTROL_CLIENT_TO_SERVER
Value:
0x11

ZLL_FRAME_CONTROL_SERVER_TO_CLIENT#

#define ZLL_FRAME_CONTROL_SERVER_TO_CLIENT
Value:
0x19

ZLL_HEADER_FRAME_CONTROL_OFFSET#

#define ZLL_HEADER_FRAME_CONTROL_OFFSET
Value:
0

ZLL_HEADER_SEQUENCE_NUMBER_OFFSET#

#define ZLL_HEADER_SEQUENCE_NUMBER_OFFSET
Value:
1

ZLL_HEADER_COMMAND_ID_OFFSET#

#define ZLL_HEADER_COMMAND_ID_OFFSET
Value:
2

ZLL_HEADER_TRANSACTION_ID_OFFSET#

#define ZLL_HEADER_TRANSACTION_ID_OFFSET
Value:
3

ZLL_HEADER_OVERHEAD#

#define ZLL_HEADER_OVERHEAD
Value:
7

debugPrintln#

#define debugPrintln

debugPrint#

#define debugPrint

debugExec#

#define debugExec

sl_zigbee_af_zll_commissioning_initial_security_state_cb#

#define sl_zigbee_af_zll_commissioning_initial_security_state_cb
Value:
sl_zigbee_af_zll_commissioning_common_initial_security_state_cb

sl_zigbee_af_zll_commissioning_touch_link_complete_cb#

#define sl_zigbee_af_zll_commissioning_touch_link_complete_cb
Value:
sl_zigbee_af_zll_commissioning_common_touch_link_complete_cb

sl_zigbee_af_zll_commissioning_reset_to_factory_new_cb#

#define sl_zigbee_af_zll_commissioning_reset_to_factory_new_cb
Value:
sl_zigbee_af_zll_commissioning_common_reset_to_factory_new_cb