BDB commissioning API
BDB(Base Device Behavior) commissioning related APIs for ESP Zigbee SDK.
API Reference
Header File
Functions
-
esp_err_t esp_zb_touchlink_action_check_register(esp_zb_touchlink_action_allowed_callback_t callback)
Register the Zigbee touchlink action check handler.
- Parameters:
callback – [in] A callback that allow the user to determine whether the touchlink device can start a network or join as a router/end device, refer to esp_zb_touchlink_action_allowed_callback_t.
-
void esp_zb_touchlink_clear_factory_new(void)
Clear the factory new state.
Touchlink clear factory new
-
void esp_zb_zdo_touchlink_target_set_timeout(uint32_t timeout)
Set the timeout for Touchlink target.
- Parameters:
timeout – [in] The waiting time for the device to exit the Touchlink target mode
-
void esp_zb_zdo_touchlink_set_key_bitmask(esp_zb_touchlink_key_bitmask_t bitmask)
Set the key bitmask for Touchlink commissioning.
Configures the key bitmask used for Touchlink commissioning. The network key will be encrypted using one of the key types specified in the bitmask. Higher priority is given to keys with higher bits. By default, the certification and master keys are included in the bitmask.
- Parameters:
bitmask – [in] The bitmask to be applied for Touchlink commissioning
-
void esp_zb_zdo_touchlink_set_master_key(uint8_t *key)
Set the master key for Touchlink.
- Parameters:
key – [in] The master key that will be utilized for the Touchlink network
-
void esp_zb_zdo_touchlink_set_rssi_threshold(int8_t rssi_threshold)
Set the RSSI threshold for the Touchlink target.
Note
The default value for the RSSI threshold is set to -64
- Parameters:
rssi_threshold – [in] The RSSI threshold determines whether the Touchlink target responds to the initiator
-
int8_t esp_zb_zdo_touchlink_get_rssi_threshold(void)
Get the RSSI threshold of Touchlink target.
- Returns:
The value of RSSI threshold
-
esp_err_t esp_zb_bdb_cancel_touchlink_target(void)
Schedule to cancel touchlink target commissioning procedure.
- Returns:
RET_OK: On success
RET_ERROR: Not in touchlink target procedure
-
void esp_zb_zll_identify_req_handler_register(esp_zb_zll_identify_req_callback_t cb)
Register ZLL identify request handler.
- Parameters:
cb – [in] A callback for zll identify notificaion, refer to esp_zb_zll_identify_req_callback_t
Structures
-
struct esp_zb_bdb_signal_touchlink_nwk_params_s
BDB touchlink network parameter information.
Public Members
-
esp_zb_ieee_addr_t device_ieee_addr
address of device that started the network
-
uint8_t endpoint
endpoint of device that started the network
-
uint16_t profile_id
profile_id of device that started the network
-
esp_zb_ieee_addr_t device_ieee_addr
Type Definitions
-
typedef enum esp_zb_bdb_commissioning_mode_mask_s esp_zb_bdb_commissioning_mode_mask_t
BDB commissioning mode mask bits.
-
typedef enum esp_zb_touchlink_action_s esp_zb_touchlink_action_t
Enumeration of touchlink actions, that should be approved by end user application.
-
typedef enum esp_zb_touchlink_key_bitmask_s esp_zb_touchlink_key_bitmask_t
Enumeration of touchlink key bitmask.
-
typedef bool (*esp_zb_touchlink_action_allowed_callback_t)(uint8_t action)
Touchlink action.
Touchlink action callback
- Param action:
[in] action of the touchlink, refer to esp_zb_touchlink_action_t
- Return:
True: allow
False: reject
-
typedef void (*esp_zb_zll_identify_req_callback_t)(bool identify_on)
Zll identify callback.
- Param identify_on:
[in] An indication that needs start or stop identify
-
typedef struct esp_zb_bdb_signal_touchlink_nwk_params_s esp_zb_bdb_signal_touchlink_nwk_params_t
BDB touchlink network parameter information.
Enumerations
-
enum esp_zb_bdb_commissioning_mode_mask_s
BDB commissioning mode mask bits.
Values:
-
enumerator ESP_ZB_BDB_TOUCHLINK_COMMISSIONING
if bit is set, attempt Touchlink commissioning
-
enumerator ESP_ZB_BDB_NETWORK_STEERING
if bit is set, attempt network steering
-
enumerator ESP_ZB_BDB_NETWORK_FORMATION
if bit is set, attempt to form a network, according to device type
-
enumerator ESP_ZB_BDB_FINDING_N_BINDING
if bit is set, attempt finding and binding
-
enumerator ESP_ZB_BDB_TOUCHLINK_TARGET
if bit is set, attempt become touchlink target
-
enumerator ESP_ZB_BDB_TOUCHLINK_COMMISSIONING
-
enum esp_zb_touchlink_action_s
Enumeration of touchlink actions, that should be approved by end user application.
Values:
-
enumerator ESP_ZB_TOUCHLINK_ACTION_START_NEW_NETWORK
-
enumerator ESP_ZB_TOUCHLINK_ACTION_JOIN_ROUTER
-
enumerator ESP_ZB_TOUCHLINK_ACTION_JOIN_ED
-
enumerator ESP_ZB_TOUCHLINK_ACTION_START_NEW_NETWORK
-
enum esp_zb_touchlink_key_bitmask_s
Enumeration of touchlink key bitmask.
Values:
-
enumerator ESP_ZB_TOUCHLINK_MASTER_KEY
Master key is a secret shared by all certified touchlink devices
-
enumerator ESP_ZB_TOUCHLINK_CERTIFICATION_KEY
Certification key is is used to allow testing of the security mechanisms
-
enumerator ESP_ZB_TOUCHLINK_MASTER_KEY