Logo
Developing with ZBOSS for Zigbee
zb_zcl_commands.h File Reference

Data Structures

struct  zb_zcl_default_resp_payload_s
 Default response payload structure. More...
 
struct  zb_zcl_read_attr_req_s
 ZCL Read Attribute Command frame. More...
 
struct  zb_zcl_read_attr_res_s
 ZCL Read Attribute Response Command frame. More...
 
struct  zb_zcl_write_attr_req_s
 ZCL Write Attribute Command frame. More...
 
struct  zb_zcl_write_attr_res_s
 ZCL Write Attribute Command frame. More...
 
struct  zb_zcl_disc_attr_req_s
 ZCL Discover Attribute Command frame. More...
 
struct  zb_zcl_disc_attr_info_s
 ZCL Description for Discover Attribute Response frame. More...
 
struct  zb_zcl_disc_attr_res_s
 ZCL Discover Attribute Response frame. More...
 
struct  zb_zcl_configure_reporting_req_clnt_s
 
struct  zb_zcl_configure_reporting_req_srv_s
 
union  zb_zcl_configure_reporting_req_u_s
 General type for Configure Reporting Request command. More...
 
struct  zb_zcl_configure_reporting_req_s
 One chunk of Configure reporting command request. More...
 
struct  zb_zcl_configure_reporting_res_s
 
struct  zb_zcl_report_attr_req_s
 ZCL Report Attribute Command frame. More...
 
struct  zb_zcl_read_reporting_cfg_req_s
 
struct  zb_zcl_read_reporting_cfg_rsp_s
 

Macros

#define ZB_ZCL_DEBUG_DUMP_COMMAND(buf)   zb_zcl_dump_cmd(buf)
 
#define ZB_ZCL_DEBUG_DUMP_HEADER(header)   dump_zcl_header(header)
 
#define ZB_ZCL_BROADCAST_ENDPOINT   0xFFU
 ZCL broadcast endpoint. More...
 
#define ZB_ZCL_BROADCAST_ENDPOINT_CMD_RESP_JITTER   (ZB_MILLISECONDS_TO_BEACON_INTERVAL(100))
 Minimum time delay between responses to ZCL command sent to broadcast endpoint. More...
 
#define ZB_ZCL_SEND_DEFAULT_RESP_DIRECTION(buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id, seq_num, cmd, status_code, direction)
 Send default response command with custom Direction. More...
 
#define ZB_ZCL_SEND_DEFAULT_RESP_WITH_CB(buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id, seq_num, cmd, status_code, callback)
 Send default response command and execute callback when it is acknowledged or expired. More...
 
#define ZB_ZCL_SEND_DEFAULT_RESP_WITH_CB_NEW(buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id, seq_num, cmd, status_code, callback, aps_secured)
 
#define ZB_ZCL_SEND_DEFAULT_RESP_MANUF_WITH_CB(buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id, seq_num, cmd, status_code, manuf_code, direction, callback)
 Send default response command and execute callback when it's acknowledged or expired. More...
 
#define ZB_ZCL_CHECK_IF_SEND_DEFAULT_RESP_EXT( _is_broadcast, _delivery_mode, _disable_def_resp, _status, _is_def_resp_frame)
 check whether command requires default response to be sent More...
 
#define ZB_ZCL_CHECK_IF_SEND_DEFAULT_RESP(_cmd_info, _status)
 API call that is used to check if it is needed to send Default response for the command. More...
 
#define ZB_ZCL_SEND_DEFAULT_RESP_EXT(_buffer, _dst_addr, _dst_addr_mode, _dst_ep, _src_ep, _prof_id, _cluster_id, _seq_num, _cmd, _status_code, _direction, _is_manuf_specific, _manuf_code, _callback, _aps_secured)
 General API for sending Default response command. More...
 
#define ZB_ZCL_SEND_DEFAULT_RESP_EXT_SECURED(_buffer, _dst_addr, _dst_addr_mode, _dst_ep, _src_ep, _prof_id, _cluster_id, _seq_num, _cmd, _status_code, _direction, _is_manuf_specific, _manuf_code, _callback, _aps_secured)
 
#define ZB_ZCL_SEND_DEFAULT_RESP(buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id, seq_num, cmd, status_code)
 Send default response command. More...
 
#define ZB_ZCL_SEND_DEFAULT_RESP_NEW(buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id, seq_num, cmd, status_code, aps_secured)
 
#define ZB_ZCL_SEND_DEFAULT_RESP_MANUF( buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id, seq_num, cmd, status_code, manuf_code, direction)
 Send default response command. More...
 
#define ZB_ZCL_READ_DEFAULT_RESP(buffer)
 Default response structured reading. More...
 
#define ZB_ZCL_GENERAL_GET_NEXT_READ_ATTR_RES(data_buf, read_attr_resp)
 Parses Read attribute response and returns next Read attribute status record or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_INIT_READ_ATTR_REQ(buffer, cmd_ptr, def_resp)
 Initialize Read attribute command. More...
 
#define ZB_ZCL_GENERAL_INIT_READ_ATTR_REQ_A(buffer, cmd_ptr, direction, def_resp)
 Initialize Read Attribute Request command. More...
 
#define ZB_ZCL_GENERAL_INIT_READ_ATTR_REQ_MANUF(buffer, cmd_ptr, direction, def_resp, manuf_code)
 Initialize Read Attribute Request command with manufacturer code. More...
 
#define ZB_ZCL_GENERAL_ADD_ID_READ_ATTR_REQ(cmd_ptr, attr_id)
 Add attribute id to command payload. More...
 
#define ZB_ZCL_GENERAL_SEND_READ_ATTR_REQ(buffer, cmd_ptr, addr, dst_addr_mode, dst_ep, ep, profile_id, cluster_id, cb)
 Sends Read attribute command. More...
 
#define ZB_ZCL_GENERAL_GET_READ_ATTR_REQ(_data_buf, _read_attr_req)
 Parses Read attribute request and returns next Read attribute record or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_INIT_READ_ATTR_RESP(_buffer, _cmd_ptr, _seq)
 Initialize Read Attribute Response command. More...
 
#define ZB_ZCL_GENERAL_INIT_READ_ATTR_RESP_EXT(_buffer, _cmd_ptr, _direction, _seq, _is_manuf, _manuf_id)
 Initialize Read Attribute Response command. More...
 
#define ZB_ZCL_GENERAL_SEND_READ_ATTR_RESP( _buffer, _cmd_ptr, _addr, _dst_addr_mode, _dst_ep, _ep, _profile_id, _cluster_id, _cb)
 Send Read attribute response command. More...
 
#define ZB_ZCL_GENERAL_GET_NEXT_WRITE_ATTR_REQ(data_ptr, data_len, write_attr_req)
 Parses Write attribute request and returns next Write attribute record or NULL if there is no more data. More...
 
#define ZB_ZCL_GET_NEXT_WRITE_ATTR_RES(data_buf, write_attr_resp)
 Parses Write attribute response and returns next Write attribute status or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_REQ_BY_TYPE(buffer, cmd_ptr, def_resp, write_attr_type)
 Initialize Write attribute command. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_REQ(buffer, cmd_ptr, def_resp)
 Initialize Write attribute command. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_REQ_MANUF(buffer, cmd_ptr, direction, def_resp, manuf_code)
 Initialize Write attribute command. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_REQ_NO_RESP(buffer, cmd_ptr, def_resp)
 Initialize Write Attribute No Response command. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_REQ_UNDIV(buffer, cmd_ptr, def_resp)
 Initialize Write Attribute Undivided command. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_REQ_A(buffer, cmd_ptr, direction, def_resp)
 Initialize Write attribute command. More...
 
#define ZB_ZCL_GENERAL_ADD_VALUE_WRITE_ATTR_REQ(cmd_ptr, attr_id, attr_type, attr_val)
 Add attribute value to command payload. More...
 
#define ZB_ZCL_GENERAL_SEND_WRITE_ATTR_REQ( buffer, cmd_ptr, addr, dst_addr_mode, dst_ep, ep, profile_id, cluster_id, cb)
 Send Write attribute command. More...
 
#define ZB_ZCL_GENERAL_SEND_WRITE_ATTRS_REQ( buffer, addr, addr_mode, dst_ep, ep, prof_id, cluster_id)
 Send "write attributes" request. deprecate. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_RESP(_buffer, _cmd_ptr, _seq)
 Initialize Write attribute response command. More...
 
#define ZB_ZCL_GENERAL_INIT_WRITE_ATTR_RESP_EXT(_buffer, _cmd_ptr, _direction, _seq, _is_manuf, _manuf_id)
 Initialize Write attribute response command. More...
 
#define ZB_ZCL_GENERAL_SUCCESS_WRITE_ATTR_RESP(_cmd_ptr)
 Add Success status value to Write attribute response command payload. More...
 
#define ZB_ZCL_GENERAL_SEND_WRITE_ATTR_RESP( _buffer, _cmd_ptr, _addr, _dst_addr_mode, _dst_ep, _ep, _profile_id, _cluster_id, _cb)
 Send Write attribute response command. More...
 
#define ZB_ZCL_GENERAL_GET_COMPLETE_DISC_RES(data_buf, complete)
 Parses Discovery attribute response and returns next Read attribute status record or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_GET_NEXT_DISC_ATTR_RES(data_buf, disc_attr_info)
 Discovery attribute response and returns next Discovery attribute status record or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_DISC_READ_ATTR_REQ(buffer, def_resp, start_attr_id, max_len, addr, dst_addr_mode, dst_ep, ep, profile_id, cluster_id, cb)
 Discover attribute command. More...
 
#define ZB_ZCL_GENERAL_DISC_ATTR_REQ_A(buffer, cmd_ptr, direction, def_resp, start_attr_id, max_len, addr, dst_addr_mode, dst_ep, ep, profile_id, cluster_id, cb)
 Discover Attribute Request. More...
 
#define ZB_ZCL_GENERAL_DISC_ATTR_REQ_MANUF(buffer, cmd_ptr, direction, def_resp, manuf_code, start_attr_id, max_len, addr, dst_addr_mode, dst_ep, ep, profile_id, cluster_id, cb)
 Discover Attribute Request. More...
 
#define ZB_ZCL_GENERAL_GET_NEXT_CONFIGURE_REPORTING_REQ(data_buf, config_rep_req)
 Parses Configure reporting command request and returns next Attribute reporting configuration record or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_GET_NEXT_CONFIGURE_REPORTING_RES(data_buf, config_rep_res)
 Parses Configure reporting response and returns next configure attribute status record or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_INIT_CONFIGURE_REPORTING_SRV_REQ(buffer, ptr, def_resp)
 Initialize Configure reporting command (report send case) More...
 
#define ZB_ZCL_GENERAL_INIT_CONFIGURE_REPORTING_SRV_REQ_MANUF(buffer, ptr, def_resp, manuf_code)
 Initialize Configure reporting command (report send case) More...
 
#define ZB_ZCL_GENERAL_INIT_CONFIGURE_REPORTING_CLI_REQ(buffer, ptr, def_resp)
 Initialize Configure reporting command (report receive case) More...
 
#define ZB_ZCL_GENERAL_ADD_SEND_REPORT_CONFIGURE_REPORTING_REQ( ptr, attr_id, attr_type, min_interval, max_interval, report_change)
 Add attribute reporting configuration record to command payload (report send case) More...
 
#define ZB_ZCL_GENERAL_ADD_RECV_REPORT_CONFIGURE_REPORTING_REQ(ptr, attr_id, timeout)
 Add attribute reporting configuration record to command payload (report receive case) More...
 
#define ZB_ZCL_GENERAL_SEND_CONFIGURE_REPORTING_REQ( buffer, ptr, addr, dst_addr_mode, dst_ep, ep, prfl_id, cluster_id, cb)
 Sends Configure reporting command. More...
 
#define ZB_ZCL_GENERAL_GET_NEXT_REPORT_ATTR_REQ(data_buf, rep_attr_req)
 Parses Report attribute command and returns next Attribute report or NULL if there is no more data. More...
 
#define ZB_ZCL_READ_REP_CFG_REQ_SIZE   sizeof(zb_zcl_read_reporting_cfg_req_t)
 Minimal size of Write attribute request, it will be more if attr_value size is more than 1 byte. More...
 
#define ZB_ZCL_GENERAL_GET_NEXT_READ_REP_CFG_REQ(data_buf, rep_cfg_req, rslt)
 Parses read reporting configuration request and returns next Read reporting configuration attribute record or NULL if there is no more data. More...
 
#define ZB_ZCL_GENERAL_INIT_READ_REPORTING_CONFIGURATION_SRV_REQ(buffer, ptr, def_resp)
 Initialize Read reporting configuration command (report send case) More...
 
#define ZB_ZCL_GENERAL_INIT_READ_REPORTING_CONFIGURATION_SRV_REQ_MANUF(buffer, ptr, def_resp, manuf_code)
 Initialize Read reporting configuration command (report send case) More...
 
#define ZB_ZCL_GENERAL_INIT_READ_REPORTING_CONFIGURATION_CLI_REQ(buffer, ptr, def_resp)
 Initialize Read reporting configuration command (report receive case) More...
 
#define ZB_ZCL_GENERAL_ADD_SEND_READ_REPORTING_CONFIGURATION_REQ(ptr, attr_id)
 Add Read reporting configuration record to command payload (report send case) More...
 
#define ZB_ZCL_GENERAL_ADD_RECV_READ_REPORTING_CONFIGURATION_REQ(ptr, attr_id)
 Add Read reporting configuration record to command payload (report receive case) More...
 
#define ZB_ZCL_GENERAL_SEND_READ_REPORTING_CONFIGURATION_REQ( buffer, ptr, addr, dst_addr_mode, dst_ep, ep, prfl_id, cluster_id, cb)
 Sends Read reporting configuration command. More...
 
#define ZB_ZCL_GENERAL_GET_READ_REPORTING_CONFIGURATION_RES(data_buf, read_rep_conf_res)
 Parses Read reporting configuration response and returns next read reporting configuration record or NULL if there is no more data. More...
 
ZCL common command IDs

See also
ZCL spec, clause 2.4
Note
These values do not contain commands not unused in ZB HA profile
#define ZB_ZCL_CMD_READ_ATTRIB   0x00U
 
#define ZB_ZCL_CMD_READ_ATTRIB_RESP   0x01U
 
#define ZB_ZCL_CMD_WRITE_ATTRIB   0x02U
 
#define ZB_ZCL_CMD_WRITE_ATTRIB_UNDIV   0x03U
 
#define ZB_ZCL_CMD_WRITE_ATTRIB_RESP   0x04U
 
#define ZB_ZCL_CMD_WRITE_ATTRIB_NO_RESP   0x05U
 
#define ZB_ZCL_CMD_CONFIG_REPORT   0x06U
 
#define ZB_ZCL_CMD_CONFIG_REPORT_RESP   0x07U
 
#define ZB_ZCL_CMD_READ_REPORT_CFG   0x08U
 
#define ZB_ZCL_CMD_READ_REPORT_CFG_RESP   0x09U
 
#define ZB_ZCL_CMD_REPORT_ATTRIB   0x0aU
 
#define ZB_ZCL_CMD_DEFAULT_RESP   0x0bU
 
#define ZB_ZCL_CMD_DISC_ATTRIB   0x0cU
 
#define ZB_ZCL_CMD_DISC_ATTRIB_RESP   0x0dU
 
#define ZB_ZCL_CMD_READ_ATTRIB_STRUCT   0x0eU
 
#define ZB_ZCL_CMD_WRITE_ATTRIB_STRUCT   0x0fU
 
#define ZB_ZCL_CMD_WRITE_ATTRIB_STRUCT_RESP   0x10U
 
#define ZB_ZCL_CMD_DISCOVER_COMMANDS_RECEIVED   0x11U
 
#define ZB_ZCL_CMD_DISCOVER_COMMANDS_RECEIVED_RES   0x12U
 
#define ZB_ZCL_CMD_DISCOVER_COMMANDS_GENERATED   0x13U
 
#define ZB_ZCL_CMD_DISCOVER_COMMANDS_GENERATED_RES   0x14U
 
#define ZB_ZCL_CMD_DISCOVER_ATTR_EXT   0x15U
 
#define ZB_ZCL_CMD_DISCOVER_ATTR_EXT_RES   0x16U
 
ZCL Discover Attribute Response - complete field

See also
ZCL spec, clause 2.4.14
#define ZB_ZCL_DISC_NON_COMPLETE   0x00U
 
#define ZB_ZCL_DISC_COMPLETE   0x01U
 

Typedefs

typedef zb_uint8_t zb_zcl_cmd_t
 Type for ZCL common command IDs. More...
 
typedef struct zb_zcl_default_resp_payload_s zb_zcl_default_resp_payload_t
 Default response payload structure. More...
 
typedef struct zb_zcl_read_attr_req_s zb_zcl_read_attr_req_t
 ZCL Read Attribute Command frame. More...
 
typedef struct zb_zcl_read_attr_res_s zb_zcl_read_attr_res_t
 ZCL Read Attribute Response Command frame. More...
 
typedef struct zb_zcl_write_attr_req_s zb_zcl_write_attr_req_t
 ZCL Write Attribute Command frame. More...
 
typedef struct zb_zcl_write_attr_res_s zb_zcl_write_attr_res_t
 ZCL Write Attribute Command frame. More...
 
typedef struct zb_zcl_disc_attr_req_s zb_zcl_disc_attr_req_t
 ZCL Discover Attribute Command frame. More...
 
typedef struct zb_zcl_disc_attr_info_s zb_zcl_disc_attr_info_t
 ZCL Description for Discover Attribute Response frame. More...
 
typedef struct zb_zcl_disc_attr_res_s zb_zcl_disc_attr_res_t
 ZCL Discover Attribute Response frame. More...
 
typedef zb_uint8_t zb_zcl_disc_complete_t
 Type for possible values of ZCL Discover Attribute Response. More...
 
typedef struct zb_zcl_configure_reporting_req_clnt_s zb_zcl_configure_reporting_req_clnt_t
 
typedef struct zb_zcl_configure_reporting_req_srv_s zb_zcl_configure_reporting_req_srv_t
 
typedef union zb_zcl_configure_reporting_req_u_s zb_zcl_configure_reporting_req_u_t
 General type for Configure Reporting Request command. More...
 
typedef struct zb_zcl_configure_reporting_req_s zb_zcl_configure_reporting_req_t
 One chunk of Configure reporting command request. More...
 
typedef enum zb_zcl_configure_reporting_direction_value_e zb_zcl_configure_reporting_direction_value_t
 
typedef struct zb_zcl_configure_reporting_res_s zb_zcl_configure_reporting_res_t
 
typedef struct zb_zcl_report_attr_req_s zb_zcl_report_attr_req_t
 ZCL Report Attribute Command frame. More...
 
typedef struct zb_zcl_read_reporting_cfg_req_s zb_zcl_read_reporting_cfg_req_t
 
typedef struct zb_zcl_read_reporting_cfg_rsp_s zb_zcl_read_reporting_cfg_rsp_t
 

Enumerations

enum  zb_zcl_configure_reporting_direction_value_e { ZB_ZCL_CONFIGURE_REPORTING_SEND_REPORT = 0x00, ZB_ZCL_CONFIGURE_REPORTING_RECV_REPORT = 0x01 }
 

Functions

void zb_zcl_dump_cmd (zb_bufid_t buf)
 
void dump_zcl_header (zb_zcl_parsed_hdr_t *header)
 

Macro Definition Documentation

§ ZB_ZCL_DEBUG_DUMP_COMMAND

#define ZB_ZCL_DEBUG_DUMP_COMMAND (   buf)    zb_zcl_dump_cmd(buf)

§ ZB_ZCL_DEBUG_DUMP_HEADER

#define ZB_ZCL_DEBUG_DUMP_HEADER (   header)    dump_zcl_header(header)

Function Documentation

§ dump_zcl_header()

void dump_zcl_header ( zb_zcl_parsed_hdr_t header)

§ zb_zcl_dump_cmd()

void zb_zcl_dump_cmd ( zb_bufid_t  buf)