
Data Structures | |
| struct | zb_zcl_tunnel_transfer_data_req_s |
| Tunnel Transfer Data Request command payload. More... | |
| struct | zb_zcl_tunnel_transfer_data_req_internal_s |
| Tunnel Transfer Data Request command internal payload. More... | |
| struct | zb_zcl_tunnel_transfer_data_resp_s |
| Tunnel Transfer Data Response command payload. More... | |
| struct | zb_zcl_tunnel_op_status_s |
| struct | zb_zcl_tunnel_io_param_s |
| struct | zb_zcl_tunnel_io_slot_s |
| struct | zb_zcl_tunnel_io_slot_continue_s |
| struct | zb_zcl_tunnel_context_s |
Macros | |
| #define | ZB_ZCL_TUNNEL_TIMEOUT (10*ZB_TIME_ONE_SECOND) |
| #define | ZB_ZCL_TUNNEL_MAX_IO_SLOT_NUMBER 16 |
| Maximum slots for send/receive data. More... | |
| #define | ZB_ZCL_TUNNEL_IO_SLOT_UNKNOWN 0xff |
| Not slots index. More... | |
Typedefs | |
| typedef struct zb_zcl_tunnel_io_slot_s | zb_zcl_tunnel_io_slot_t |
| typedef struct zb_zcl_tunnel_io_slot_continue_s | zb_zcl_tunnel_io_slot_continue_t |
| typedef struct zb_zcl_tunnel_context_s | zb_zcl_tunnel_context_t |
Functions | |
| zb_ret_t | zb_zcl_tunnel_transfer_data_req_handler (zb_uint8_t buf_param) |
| zb_ret_t | zb_zcl_tunnel_transfer_data_resp_handler (zb_uint8_t buf_param) |
| void | zb_zcl_tunnel_transfer_data_resp_send (zb_uint8_t param, zb_uint16_t endpoint16) |
| void | zb_zcl_tunnel_send_fist_block (zb_uint8_t param, zb_uint16_t index16) |
| void | zb_zcl_tunnel_timeout (zb_uint8_t index) |
| void | zb_zcl_tunnel_invoke_user_app (zb_uint8_t param) |
| zb_ret_t | zb_zcl_process_tunnel_default_response_commands (zb_uint8_t param) |
| zb_bool_t | zb_zcl_process_tunnel_specific_commands (zb_uint8_t param) |
Manufacture specific cluster for transmit custom data between peers Model: One (client) to More (servers) Usually a device has MIXED role
| #define ZB_ZCL_CLUSTER_ID_TUNNEL_FC00_CLIENT_ROLE_GENERATED_CMD_LIST ZB_ZCL_CMD_TUNNEL_TRANSFER_DATA_REQ |
| #define ZB_ZCL_CLUSTER_ID_TUNNEL_FC00_CLIENT_ROLE_RECEIVED_CMD_LIST ZB_ZCL_CLUSTER_ID_TUNNEL_FC00_SERVER_ROLE_GENERATED_CMD_LIST |
| #define ZB_ZCL_CLUSTER_ID_TUNNEL_FC00_SERVER_ROLE_GENERATED_CMD_LIST ZB_ZCL_CMD_TUNNEL_TRANSFER_DATA_RESP |
| #define ZB_ZCL_CLUSTER_ID_TUNNEL_FC00_SERVER_ROLE_RECEIVED_CMD_LIST ZB_ZCL_CLUSTER_ID_TUNNEL_FC00_CLIENT_ROLE_GENERATED_CMD_LIST |
| #define ZB_ZCL_TUNNEL_GET_TRANSFER_REQ | ( | _data_ptr, | |
| _buffer, | |||
| _status | |||
| ) |
Macro for getting Send Transfer Data command.
| _data_ptr | - pointer to a variable of type zb_zcl_tunnel_transfer_data_req_data_internal_t. |
| _buffer | containing the packet (by pointer). |
| _status | - variable to put parse status to (see zb_zcl_parse_status_t). |
| #define ZB_ZCL_TUNNEL_GET_TRANSFER_RESP | ( | _data_ptr, | |
| _buffer, | |||
| _status | |||
| ) |
Macro for getting Send Transfer Data response command.
| _data_ptr | - pointer to a variable of type zb_zcl_tunnel_transfer_data_resp_t. |
| _buffer | containing the packet (by pointer). |
| _status | - variable to put parse status to (see zb_zcl_parse_status_t). |
| #define ZB_ZCL_TUNNEL_IO_SLOT_UNKNOWN 0xff |
| #define ZB_ZCL_TUNNEL_MAX_IO_SLOT_NUMBER 16 |
Maximum slots for send/receive data.
| #define ZB_ZCL_TUNNEL_SEND_TRANSFER_REQ | ( | _buffer, | |
| _addr, | |||
| _dst_addr_mode, | |||
| _dst_ep, | |||
| _ep, | |||
| _prfl_id, | |||
| _def_resp, | |||
| _cb, | |||
| _manufacturer_id, | |||
| _flag, | |||
| _byte_num, | |||
| _data_size, | |||
| _image_data | |||
| ) |
Send Transfer Data command.
| _buffer | - to put packet to |
| _addr | - address to send packet to |
| _dst_addr_mode | - addressing mode |
| _dst_ep | - destination endpoint |
| _ep | - sending endpoint |
| _prfl_id | - profile identifier |
| _def_resp | - enable or disable default response |
| _cb | - callback for getting command send status |
| _manufacturer_id | - Manufacturer code |
| _flag | - command flag, see zb_zcl_tunnel_tx_flags_e |
| _byte_num | - all transfer length or current offset, see zb_zcl_tunnel_transfer_data_req_t |
| _data_size | - data size |
| _image_data | - image data |
| #define ZB_ZCL_TUNNEL_SEND_TRANSFER_RESP | ( | _buffer, | |
| _addr, | |||
| _dst_addr_mode, | |||
| _dst_ep, | |||
| _ep, | |||
| _prfl_id, | |||
| _seq, | |||
| _cb, | |||
| _manufacturer_id, | |||
| _tun_status | |||
| ) |
Send Transfer Data response command.
| _buffer | - to put packet to |
| _addr | - address to send packet to |
| _dst_addr_mode | - addressing mode |
| _dst_ep | - destination endpoint |
| _ep | - sending endpoint |
| _prfl_id | - profile identifier |
| _seq | - request sequence |
| _cb | - callback for getting command send status |
| _manufacturer_id | - Manufacturer code |
| _tun_status | - command status, see zb_zcl_tunnel_status_e |
| #define ZB_ZCL_TUNNEL_TIMEOUT (10*ZB_TIME_ONE_SECOND) |
| typedef void( * zb_zcl_tunnel_cb_t) (zb_uint8_t param) |
Callback to inform user about tx operation status or rx data;
| param | - param is reference to a buffer; zb_zcl_tunnel_io_param_t is stored as buffer parameter |
| typedef struct zb_zcl_tunnel_context_s zb_zcl_tunnel_context_t |
| typedef struct zb_zcl_tunnel_io_param_s zb_zcl_tunnel_io_param_t |
structure to pass parameters for data i/o Save in first of each buffer
| typedef struct zb_zcl_tunnel_io_slot_continue_s zb_zcl_tunnel_io_slot_continue_t |
struct for next buffer in multi-buffer chain
| typedef struct zb_zcl_tunnel_io_slot_s zb_zcl_tunnel_io_slot_t |
| typedef struct zb_zcl_tunnel_op_status_s zb_zcl_tunnel_op_status_t |
Tunnel operation status
| typedef enum zb_zcl_tunnel_status_e zb_zcl_tunnel_status_t |
Tunnel status; range: 0x00 - 0x3F (6-bit value)
| typedef struct zb_zcl_tunnel_transfer_data_req_internal_s zb_zcl_tunnel_transfer_data_req_data_internal_t |
Tunnel Transfer Data Request command internal payload.
Tunnel Transfer Data Request command payload.
Tunnel Transfer Data Response command payload.
| enum zb_zcl_tunnel_cmd_e |
Tunnel status; range: 0x00 - 0x3F (6-bit value)
| zb_ret_t zb_zcl_process_tunnel_default_response_commands | ( | zb_uint8_t | param | ) |
| zb_bool_t zb_zcl_process_tunnel_specific_commands | ( | zb_uint8_t | param | ) |
| void zb_zcl_tunnel_default_user_app | ( | zb_uint8_t | param | ) |
Default user application Contain default handle (usually free buffer) for different Tunnel Status command
| void zb_zcl_tunnel_init | ( | zb_uint16_t | manuf_id | ) |
Init CTX data table
| manuf_id | - manufacturer ID |
| void zb_zcl_tunnel_invoke_user_app | ( | zb_uint8_t | param | ) |
| void zb_zcl_tunnel_register_cb | ( | zb_zcl_tunnel_cb_t | tunnel_cb | ) |
Register user callback
| void zb_zcl_tunnel_send_fist_block | ( | zb_uint8_t | param, |
| zb_uint16_t | index16 | ||
| ) |
| void zb_zcl_tunnel_timeout | ( | zb_uint8_t | index | ) |
| zb_ret_t zb_zcl_tunnel_transfer_data_req_handler | ( | zb_uint8_t | buf_param | ) |
| zb_ret_t zb_zcl_tunnel_transfer_data_resp_handler | ( | zb_uint8_t | buf_param | ) |
| void zb_zcl_tunnel_transfer_data_resp_send | ( | zb_uint8_t | param, |
| zb_uint16_t | endpoint16 | ||
| ) |
| zb_ret_t zb_zcl_tunnel_transmit_data | ( | zb_uint8_t | buf_param | ) |
Start user data transmit. buf_param is a reference to a buffer; zb_zcl_tunnel_io_param_t is stored as a buffer parameter; data to be transmitted is stored as buffer data