Data Structures | |
| struct | zb_zdo_mgmt_bind_param_s |
| Parameters for Mgmt_Bind_req. More... | |
| struct | zb_zdo_mgmt_bind_req_s |
| Request for Mgmt_Bind_req. More... | |
| struct | zb_zdo_mgmt_bind_resp_s |
| Response for Mgmt_Bind_rsp. More... | |
| struct | zb_zdo_binding_table_record_s |
| BindingTableList Record Format for mgmt_bind_resp. See ZB spec, Table 2.131. More... | |
| struct | zb_zdo_bind_req_param_s |
| Parameters for Bind_req API call. More... | |
| struct | zb_zdo_bind_req_head_s |
| Bind_req request head send to the remote. More... | |
| struct | zb_zdo_bind_req_tail_1_s |
| Bind_req request tail 1st variant send to the remote. More... | |
| struct | zb_zdo_bind_req_tail_2_s |
| Bind_req request tail 2nd variant send to the remote. More... | |
| struct | zb_zdo_bind_resp_s |
| Response by Bind_req. More... | |
| struct | zb_zdo_end_device_bind_req_head_s |
| End_Device_Bind_req command head. More... | |
| struct | zb_zdo_end_device_bind_req_tail_s |
| End_Device_Bind_req command head. More... | |
| struct | zb_end_device_bind_req_param_s |
| Parameters for End_Device_Bind_req. More... | |
| struct | zb_zdo_end_device_bind_resp_s |
| Response from End_Device_Bind_req. More... | |
Typedefs | |
| typedef zb_uint8_t | zb_bind_dst_addr_mode_t |
| Type for bind destination address mode. More... | |
| typedef struct zb_zdo_mgmt_bind_param_s | zb_zdo_mgmt_bind_param_t |
| Parameters for Mgmt_Bind_req. More... | |
| typedef struct zb_zdo_mgmt_bind_req_s | zb_zdo_mgmt_bind_req_t |
| Request for Mgmt_Bind_req. More... | |
| typedef struct zb_zdo_mgmt_bind_resp_s | zb_zdo_mgmt_bind_resp_t |
| Response for Mgmt_Bind_rsp. More... | |
| typedef struct zb_zdo_binding_table_record_s | zb_zdo_binding_table_record_t |
| BindingTableList Record Format for mgmt_bind_resp. See ZB spec, Table 2.131. | |
| typedef struct zb_zdo_bind_req_param_s | zb_zdo_bind_req_param_t |
| Parameters for Bind_req API call. More... | |
| typedef struct zb_zdo_bind_req_head_s | zb_zdo_bind_req_head_t |
| Bind_req request head send to the remote. More... | |
| typedef struct zb_zdo_bind_req_tail_1_s | zb_zdo_bind_req_tail_1_t |
| Bind_req request tail 1st variant send to the remote. More... | |
| typedef struct zb_zdo_bind_req_tail_2_s | zb_zdo_bind_req_tail_2_t |
| Bind_req request tail 2nd variant send to the remote. More... | |
| typedef struct zb_zdo_bind_resp_s | zb_zdo_bind_resp_t |
| Response by Bind_req. | |
| typedef struct zb_zdo_end_device_bind_req_head_s | zb_zdo_end_device_bind_req_head_t |
| End_Device_Bind_req command head. More... | |
| typedef struct zb_zdo_end_device_bind_req_tail_s | zb_zdo_end_device_bind_req_tail_t |
| End_Device_Bind_req command head. More... | |
| typedef struct zb_end_device_bind_req_param_s | zb_end_device_bind_req_param_t |
| Parameters for End_Device_Bind_req. More... | |
| typedef struct zb_zdo_end_device_bind_resp_s | zb_zdo_end_device_bind_resp_t |
| Response from End_Device_Bind_req. More... | |
Functions | |
| zb_uint8_t | zb_zdo_mgmt_bind_req (zb_uint8_t param, zb_callback_t cb) |
| Sends Mgmt_Bind_req request. More... | |
| void | zdo_mgmt_bind_resp (zb_uint8_t param) |
| Sends 2.4.4.3.4 Mgmt_Bind_rsp. More... | |
| zb_uint8_t | zb_zdo_bind_req (zb_uint8_t param, zb_callback_t cb) |
| Bind_req request. More... | |
| zb_uint8_t | zb_zdo_unbind_req (zb_uint8_t param, zb_callback_t cb) |
| Unbind_req request. More... | |
| zb_uint8_t | zb_end_device_bind_req (zb_uint8_t param, zb_callback_t cb) |
Bind destination address mode | |
The addressing mode for the destination address used in zb_zdo_binding_table_record_s, zb_zdo_bind_req_param_s, zb_zdo_bind_req_head_s command. This field can take one of the non-reserved values from the list of defines below (bind_dst_addr_mode). Values 0x00, 0x02, 0x04-0xff are reserved.
| |
| #define | ZB_BIND_DST_ADDR_MODE_16_BIT_GROUP 0x01U |
| #define | ZB_BIND_DST_ADDR_MODE_64_BIT_EXTENDED 0x03U |
Detailed Description
Macro Definition Documentation
◆ ZB_BIND_DST_ADDR_MODE_16_BIT_GROUP
| #define ZB_BIND_DST_ADDR_MODE_16_BIT_GROUP 0x01U |
16-bit group address for DstAddress and DstEndp not present
◆ ZB_BIND_DST_ADDR_MODE_64_BIT_EXTENDED
| #define ZB_BIND_DST_ADDR_MODE_64_BIT_EXTENDED 0x03U |
64-bit extended address for DstAddress and DstEndp present
Typedef Documentation
◆ zb_bind_dst_addr_mode_t
| typedef zb_uint8_t zb_bind_dst_addr_mode_t |
Type for bind destination address mode.
◆ zb_end_device_bind_req_param_t
| typedef struct zb_end_device_bind_req_param_s zb_end_device_bind_req_param_t |
Parameters for End_Device_Bind_req.
- See also
- ZB spec, subclause 2.4.3.2.1.
◆ zb_zdo_bind_req_head_t
| typedef struct zb_zdo_bind_req_head_s zb_zdo_bind_req_head_t |
Bind_req request head send to the remote.
- See also
- ZB spec, subclause 2.4.3.2.2.
◆ zb_zdo_bind_req_param_t
| typedef struct zb_zdo_bind_req_param_s zb_zdo_bind_req_param_t |
Parameters for Bind_req API call.
- See also
- ZB spec, subclause 2.4.3.2.2.
◆ zb_zdo_bind_req_tail_1_t
| typedef struct zb_zdo_bind_req_tail_1_s zb_zdo_bind_req_tail_1_t |
Bind_req request tail 1st variant send to the remote.
- See also
- ZB spec, subclause 2.4.3.2.2.
◆ zb_zdo_bind_req_tail_2_t
| typedef struct zb_zdo_bind_req_tail_2_s zb_zdo_bind_req_tail_2_t |
Bind_req request tail 2nd variant send to the remote.
- See also
- ZB spec, subclause 2.4.3.2.2.
◆ zb_zdo_end_device_bind_req_head_t
End_Device_Bind_req command head.
- See also
- ZB spec, subclause 2.4.3.2.1.
◆ zb_zdo_end_device_bind_req_tail_t
End_Device_Bind_req command head.
- See also
- ZB spec, subclause 2.4.3.2.1.
◆ zb_zdo_end_device_bind_resp_t
| typedef struct zb_zdo_end_device_bind_resp_s zb_zdo_end_device_bind_resp_t |
Response from End_Device_Bind_req.
- See also
- ZB spec, subclause 2.4.3.2.1.
◆ zb_zdo_mgmt_bind_param_t
| typedef struct zb_zdo_mgmt_bind_param_s zb_zdo_mgmt_bind_param_t |
Parameters for Mgmt_Bind_req.
- See also
- ZB spec, subclause 2.4.3.3.4.
◆ zb_zdo_mgmt_bind_req_t
| typedef struct zb_zdo_mgmt_bind_req_s zb_zdo_mgmt_bind_req_t |
Request for Mgmt_Bind_req.
- See also
- ZB spec, subclause 2.4.3.3.4.
◆ zb_zdo_mgmt_bind_resp_t
| typedef struct zb_zdo_mgmt_bind_resp_s zb_zdo_mgmt_bind_resp_t |
Response for Mgmt_Bind_rsp.
- See also
- ZB spec, subclause 2.4.4.3.4.
Function Documentation
◆ zb_end_device_bind_req()
| zb_uint8_t zb_end_device_bind_req | ( | zb_uint8_t | param, |
| zb_callback_t | cb | ||
| ) |
sends 2.4.3.2.1 End_Device_Bind_req command
- Parameters
-
param - index of buffer with request cb - user's function to call when got response from the remote.
- Returns
- ZDP transaction sequence number or
- 0xFF if operation cannot be performed now (nor enough memory, resources, etc.)
◆ zb_zdo_bind_req()
| zb_uint8_t zb_zdo_bind_req | ( | zb_uint8_t | param, |
| zb_callback_t | cb | ||
| ) |
Bind_req request.
- Parameters
-
param - index of buffer with request. zb_apsme_binding_req_s cb - user's function to call when got response from the remote. zb_zdo_bind_resp_s
- Returns
- ZDP transaction sequence number
- 0xFF if operation cannot be performed now (nor enough memory, resources, etc.)
Example:
{ zb_bufid_t buf = param; zb_zdo_bind_req_param_t *req; TRACE_MSG(TRACE_APP2, ">> bind_device param %hd", (FMT__H, param)); if (dev_idx != SIMPLE_GW_INVALID_DEV_INDEX) { req = ZB_BUF_GET_PARAM(buf, zb_zdo_bind_req_param_t); req->src_endp = g_device_ctx.devices[dev_idx].endpoint; req->cluster_id = ZB_ZCL_CLUSTER_ID_ON_OFF; zb_get_long_address(req->dst_address.addr_long); req->dst_endp = SIMPLE_GW_ENDPOINT; req->req_dst_addr = g_device_ctx.devices[dev_idx].short_addr; zb_zdo_bind_req(param, bind_device_cb); } else { TRACE_MSG(TRACE_APP2, "No devices in binding configuration state were found!", (FMT__0)); zb_buf_free(buf); } TRACE_MSG(TRACE_APP2, "<< bind_device", (FMT__0));}void bind_device_cb(zb_uint8_t param){ zb_bufid_t buf = param; { zb_uint8_t dev_idx = simple_gw_get_dev_index_by_state(CONFIGURE_BINDING); if (dev_idx != SIMPLE_GW_INVALID_DEV_INDEX) { g_device_ctx.devices[dev_idx].dev_state = CONFIGURE_REPORTING; ZB_SCHEDULE_APP_CALLBACK2(configure_reporting, param, dev_idx); param = 0; } } if (param) { zb_buf_free(buf); }}
◆ zb_zdo_mgmt_bind_req()
| zb_uint8_t zb_zdo_mgmt_bind_req | ( | zb_uint8_t | param, |
| zb_callback_t | cb | ||
| ) |
Sends Mgmt_Bind_req request.
- Parameters
-
param reference to the buffer to put request data to. cb callback to be called on operation finish.
- Returns
- ZDP transaction sequence number
- 0xFF if operation cannot be performed now (nor enough memory, resources, etc.)
◆ zb_zdo_unbind_req()
| zb_uint8_t zb_zdo_unbind_req | ( | zb_uint8_t | param, |
| zb_callback_t | cb | ||
| ) |
Unbind_req request.
- Parameters
-
param - index of buffer with request. zb_zdo_bind_req_param_s cb - user's function to call when got response from the remote. zb_zdo_bind_resp_s
- Returns
- ZDP transaction sequence number
- 0xFF if operation cannot be performed now (nor enough memory, resources, etc.)
Example:
{ zb_bufid_t buf = param; zb_zdo_bind_req_param_t *bind_param; TRACE_MSG(TRACE_COMMON1, "unbind_device_1", (FMT__0)); zb_buf_initial_alloc(buf, 0); bind_param = ZB_BUF_GET_PARAM(buf, zb_zdo_bind_req_param_t); bind_param->src_endp = TEST_ED1_EP; bind_param->cluster_id = TP_BUFFER_TEST_REQUEST_CLID; bind_param->dst_addr_mode = ZB_APS_ADDR_MODE_64_ENDP_PRESENT; bind_param->dst_endp = TEST_ED2_EP; bind_param->req_dst_addr = zb_address_short_by_ieee(g_ieee_addr_ed1); zb_zdo_unbind_req(buf, unbind_device1_cb);}void unbind_device1_cb(zb_uint8_t param){ zb_bufid_t buf = ZB_BUF_FROM_REF(param); { TRACE_MSG(TRACE_COMMON1, "Error bind device 1. Test status failed", (FMT__0)); } zb_free_buf(buf);}
◆ zdo_mgmt_bind_resp()
| void zdo_mgmt_bind_resp | ( | zb_uint8_t | param | ) |
Sends 2.4.4.3.4 Mgmt_Bind_rsp.
- Parameters
-
param - index of buffer with Mgmt_Bind request