Data Structures | |
| struct | zb_zcl_ias_zone_init_test_mode_ha_s |
| Structure representsation of Initiate Test Mode - Errata to 05-3520-29 Spec, 1.1.23.2.2.1. More... | |
| struct | zb_zcl_ias_zone_status_change_not_s |
| Structure representsation of Zone Status Change Notification see ZCL spec 8.2.2.4.1.1. More... | |
| struct | zb_zcl_ias_zone_enroll_request_s |
| Structure representsation of "Zone Enroll Request" command see ZCL spec 8.2.2.4.1.2. More... | |
| struct | zb_zcl_ias_zone_enroll_res_s |
| Structure representsation of Enroll response command payload see ZCL spec 8.2.2.3.1.1. More... | |
| struct | zb_zcl_ias_zone_status_param_s |
| Declare Set/Clear Zone Status bits. More... | |
| struct | zb_zcl_ias_zone_notification_param_s |
| Structure is used to pass parameters for ZoneStatus notification command. More... | |
| struct | zb_zcl_ias_zone_int_ctx_s |
| struct | zb_zcl_ias_zone_enroll_response_value_param_s |
| Declare run Enroll Response command for User Application. More... | |
| struct | zb_zcl_ias_zone_enroll_response_user_app_schedule_e |
Macros | |
| #define | ZB_ZCL_IAS_ZONE_SET_BITS(buffer, ep, set_bits) |
| Set Zone Status bits custom server command. More... | |
| #define | ZB_ZCL_IAS_ZONE_CLEAR_BITS(buffer, ep, set_bits) |
| Clear Zone Status bits custom server command. More... | |
| #define | ZB_ZCL_IAS_ZONE_ENROLL_RESPONSE_SCHEDULE_USER_APP(buffer, pcmd_info, enroll_response_, zone_id_) |
Typedefs | |
| typedef struct zb_zcl_ias_zone_status_param_s | zb_zcl_ias_zone_status_param_t |
| Declare Set/Clear Zone Status bits. | |
| typedef struct zb_zcl_ias_zone_notification_param_s | zb_zcl_ias_zone_notification_param_t |
| Structure is used to pass parameters for ZoneStatus notification command. | |
| typedef zb_ret_t(* | zb_ias_zone_app_callback_t) (zb_uint8_t param, zb_uint16_t general_val) |
| typedef struct zb_zcl_ias_zone_int_ctx_s | zb_zcl_ias_zone_int_ctx_t |
| typedef struct zb_zcl_ias_zone_enroll_response_value_param_s | zb_zcl_ias_zone_enroll_response_value_param_t |
| Declare run Enroll Response command for User Application. | |
| typedef struct zb_zcl_ias_zone_enroll_response_user_app_schedule_e | zb_zcl_ias_zone_enroll_response_user_app_schedule_t |
Enumerations | |
| enum | zb_zcl_general_cb_params_e { ZB_ZCL_VALID_CIE_ADDR_SET = 1, ZB_ZCL_CURR_ZONE_SENSITIVITY_LEVEL_SET = 2, ZB_ZCL_INIT_TEST_MODE = 3, ZB_ZCL_INIT_NORMAL_MODE = 4 } |
Functions | |
| void | zb_zcl_ias_zone_change_status (zb_uint8_t param) |
| zb_bool_t | zb_zcl_ias_zone_set_status (zb_uint8_t ep, zb_uint16_t new_val, zb_uint16_t delay, zb_uint8_t buf_param) |
| Use this function to change IAS Zone status. This function will set new value of ZoneStatus and will send Zone status change notification. More... | |
| void | zb_zcl_ias_zone_register_cb (zb_uint8_t endpoint, zb_callback_t process_result_cb, zb_ias_zone_app_callback_t general_cb) |
| Registry callbacks to get status of Zone Status Change Notification command. More... | |
| zb_bool_t | zb_zcl_ias_zone_check_attr_notify (zb_uint8_t buf_param) |
| checks, if Zone Status change notification should be sent and schedules command if it is needed More... | |
| void | zb_zcl_ias_zone_send_status_change_not (zb_uint8_t param) |
| fills in notification command and sends it | |
| void | zb_zcl_ias_zone_check_cie_addr_on_zcl_initialization (zb_uint8_t ep_id) |
| checks cie address on zcl initialization | |
| zb_ret_t | zb_zcl_ias_zone_put_cie_address_to_binding_whitelist (zb_uint8_t endpoint) |
| puts cie command to binding whitelist table | |
| void | zb_zcl_ias_set_attr_val_post_process (zb_zcl_parsed_hdr_t *cmd_info, zb_uint16_t attr_id, zb_uint8_t *value) |
| IAS Zone specific set attribute value postprocessing. | |
IAS Zone cluster commands | |
| enum | zb_zcl_ias_zone_cmd_e { ZB_ZCL_CMD_IAS_ZONE_ZONE_ENROLL_RESPONSE_ID = 0x00, ZB_ZCL_CMD_IAS_ZONE_INITIATE_NORMAL_OPERATION_MODE_ID = 0x01, ZB_ZCL_CMD_IAS_ZONE_INITIATE_TEST_MODE_ID = 0x02 } |
| IAS Zone cluster command identifiers. More... | |
| enum | zb_zcl_ias_zone_resp_cmd_e { ZB_ZCL_CMD_IAS_ZONE_ZONE_STATUS_CHANGE_NOT_ID = 0x00, ZB_ZCL_CMD_IAS_ZONE_ZONE_ENROLL_REQUEST_ID = 0x01 } |
| IAS Zone cluster response command identifiers. More... | |
| enum | zb_zcl_ias_zone_enroll_responce_code_e { ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_SUCCESS = 0x00, ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_NOT_SUPPORTED = 0x01, ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_NO_ENROLL = 0x02, ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_TOO_MANY_ZONES = 0x03 } |
| Values of the Enroll Response Code see ZCL spec 8.2.2.3.1.1. More... | |
| typedef struct zb_zcl_ias_zone_init_test_mode_ha_s | zb_zcl_ias_zone_init_test_mode_t |
| Structure representsation of Initiate Test Mode - Errata to 05-3520-29 Spec, 1.1.23.2.2.1. | |
| typedef struct zb_zcl_ias_zone_status_change_not_s | zb_zcl_ias_zone_status_change_not_t |
| Structure representsation of Zone Status Change Notification see ZCL spec 8.2.2.4.1.1. | |
| typedef struct zb_zcl_ias_zone_enroll_request_s | zb_zcl_ias_zone_enroll_request_t |
| Structure representsation of "Zone Enroll Request" command see ZCL spec 8.2.2.4.1.2. | |
| typedef struct zb_zcl_ias_zone_enroll_res_s | zb_zcl_ias_zone_enroll_res_t |
| Structure representsation of Enroll response command payload see ZCL spec 8.2.2.3.1.1. | |
| #define | ZB_ZCL_IAS_ZONE_GET_INITIATE_TEST_MODE_REQ(data_ptr, buffer, status) |
| Macro for getting "Initiate Test Mode" command. More... | |
| #define | ZB_ZCL_IAS_ZONE_SEND_INITIATE_TEST_MODE_REQ( buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, cb, test_mode_duration, current_zone_sens_level) |
| Initiate Test Mode command. More... | |
| #define | ZB_ZCL_IAS_ZONE_SEND_INITIATE_NORMAL_OPERATION_MODE_REQ( buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, cb) |
| Initiate Normal Operation Mode command. More... | |
| #define | ZB_ZCL_IAS_ZONE_SEND_STATUS_CHANGE_NOTIFICATION_REQ( buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, cb, zone_status, extended_status, zone_id, delay) |
| Zone Status Change Notification command. More... | |
| #define | ZB_ZCL_IAS_ZONE_GET_STATUS_CHANGE_NOTIFICATION_REQ(data_ptr, buffer, status) |
| Macro for getting Zone Status Change Notification command. More... | |
| #define | ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_REQUEST_REQ( buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, cb, zone_type, manufacturer_code) |
| Zone "Zone Enroll Request" command, see ZCL spec 8.2.2.4.2. More... | |
| #define | ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_REQUEST_REQ(data_ptr, buffer, status) |
| Macro for getting Zone Status Change Notification command, see ZCL spec 8.2.2.4.1. More... | |
| #define | ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_RES( buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, def_resp, cb, code, zone_id) |
| Send "Zone Enroll response" command, see ZCL spec 8.2.2.3.1. More... | |
| #define | ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_RES_EXT( buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, def_resp, cb, code, zone_id, seq) |
| Send "Zone Enroll response with add parameters - sequency" command, see ZCL spec 8.2.2.3.1. More... | |
| #define | ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_RES(data_ptr, buffer, status) |
| Macro for getting "Zone Enroll response" command. More... | |
Detailed Description
IAS Zone cluster definitions
Macro Definition Documentation
◆ ZB_ZCL_DECLARE_IAS_ZONE_ATTRIB_LIST
| #define ZB_ZCL_DECLARE_IAS_ZONE_ATTRIB_LIST | ( | attr_list, | |
| zone_state, | |||
| zone_type, | |||
| zone_status, | |||
| ias_cie_address, | |||
| cie_short_addr, | |||
| cie_ep | |||
| ) |
zb_uint8_t cie_addr_is_set_##attr_list; \ ZB_ZCL_START_DECLARE_ATTRIB_LIST_CLUSTER_REVISION(attr_list, ZB_ZCL_IAS_ZONE) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_ZONESTATE_ID, (zone_state)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_ZONETYPE_ID, (zone_type)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_ZONESTATUS_ID, (zone_status)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_IAS_CIE_ADDRESS_ID, (ias_cie_address)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_CUSTOM_CIE_SHORT_ADDR, (cie_short_addr)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_CUSTOM_CIE_EP, (cie_ep)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_CUSTOM_CIE_ADDR_IS_SET, &(cie_addr_is_set_##attr_list)) \ ZB_ZCL_FINISH_DECLARE_ATTRIB_LISTZoneStatus attribute, ZCL spec 8.2.2.2.1.3. Definition: zb_zcl_ias_zone.h:81
ZoneState attribute, ZCL spec 8.2.2.2.1.1. Definition: zb_zcl_ias_zone.h:77
unsigned char zb_uint8_tProject-local 1-byte unsigned int type. Definition: zb_types.h:155
ZoneType attribute, ZCL spec 8.2.2.2.1.2. Definition: zb_zcl_ias_zone.h:79
IAS_CIE_Address attribute, ZCL spec 8.2.2.2.2.1. Definition: zb_zcl_ias_zone.h:83
Declare attribute list for IAS Zone cluster - server side.
- Parameters
-
attr_list - attribute list name zone_state - pointer to variable to store ZoneState attribute zone_type - pointer to variable to store ZoneType attribute zone_status - pointer to variable to store ZoneStatus attribute ias_cie_address - pointer to variable to store IAS-CIE address attribute cie_short_addr - custom attribute to store CIE short address cie_ep - custom attribute to store CIE Endpoint number
◆ ZB_ZCL_DECLARE_IAS_ZONE_ATTRIB_LIST_EXT
| #define ZB_ZCL_DECLARE_IAS_ZONE_ATTRIB_LIST_EXT | ( | attr_list, | |
| zone_state, | |||
| zone_type, | |||
| zone_status, | |||
| number_of_zone_sens_levels_supported, | |||
| current_zone_sens_level, | |||
| ias_cie_address, | |||
| zone_id, | |||
| cie_short_addr, | |||
| cie_ep | |||
| ) |
zb_uint8_t cie_addr_is_set_##attr_list; \ zb_uint16_t last_change_##attr_list; \ zb_zcl_ias_zone_int_ctx_t int_ctx_##attr_list; \ ZB_ZCL_START_DECLARE_ATTRIB_LIST_CLUSTER_REVISION(attr_list, ZB_ZCL_IAS_ZONE) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_ZONESTATE_ID, (zone_state)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_ZONETYPE_ID, (zone_type)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_ZONESTATUS_ID, (zone_status)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_IAS_CIE_ADDRESS_ID, (ias_cie_address)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_ZONEID_ID, (zone_id)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_ID, \ (number_of_zone_sens_levels_supported)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_CURRENT_ZONE_SENSITIVITY_LEVEL_ID, \ (current_zone_sens_level)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_IAS_ZONE_INT_CTX_ID, &(int_ctx_##attr_list)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_CUSTOM_CIE_SHORT_ADDR, (cie_short_addr)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_CUSTOM_CIE_EP, (cie_ep)) \ ZB_ZCL_SET_ATTR_DESC(ZB_ZCL_ATTR_CUSTOM_CIE_ADDR_IS_SET, &(cie_addr_is_set_##attr_list)) \ ZB_ZCL_FINISH_DECLARE_ATTRIB_LISTZoneStatus attribute, ZCL spec 8.2.2.2.1.3. Definition: zb_zcl_ias_zone.h:81
ZoneState attribute, ZCL spec 8.2.2.2.1.1. Definition: zb_zcl_ias_zone.h:77
NumberOfZoneSensitivityLevelsSupported attribute, ZCL spec 8.2.2.1.2.3. Definition: zb_zcl_ias_zone.h:87
CurrentZoneSensitivityLevel attribute, ZCL spec 8.2.2.1.2.4. Definition: zb_zcl_ias_zone.h:89
unsigned char zb_uint8_tProject-local 1-byte unsigned int type. Definition: zb_types.h:155
Struct with pointers on User App callbacks. Definition: zb_zcl_ias_zone.h:99
ZoneType attribute, ZCL spec 8.2.2.2.1.2. Definition: zb_zcl_ias_zone.h:79
ZoneID attribute, ZCL spec 8.2.2.1.2.2. Definition: zb_zcl_ias_zone.h:85
IAS_CIE_Address attribute, ZCL spec 8.2.2.2.2.1. Definition: zb_zcl_ias_zone.h:83
Declare attribute list for IAS Zone cluster - server side (extended attribute set)
- Parameters
-
attr_list - attribute list name zone_state - pointer to variable to store ZoneState attribute zone_type - pointer to variable to store ZoneType attribute zone_status - pointer to variable to store ZoneStatus attribute ias_cie_address - pointer to variable to store IAS-CIE address attribute zone_id - pointer to variable to store Zone ID attribute number_of_zone_sens_levels_supported - pointer to variable to store NumberOfZoneSensitivityLevelsSupported attribute current_zone_sens_level - pointer to variable to store CurrentZoneSensitivityLevel attribute cie_short_addr - custom attribute to store CIE short address cie_ep - custom attribute to store CIE Endpoint number
◆ ZB_ZCL_IAS_ZONE_CLEAR_BITS
| #define ZB_ZCL_IAS_ZONE_CLEAR_BITS | ( | buffer, | |
| ep, | |||
| set_bits | |||
| ) |
{ \ zb_zcl_ias_zone_status_param_t* cmd_data = \ ZB_BUF_GET_PARAM((buffer), zb_zcl_ias_zone_status_param_t); \ cmd_data->endpoint = (ep); \ cmd_data->bits = (set_bits); \ cmd_data->is_set = ZB_FALSE; \ ZB_SCHEDULE_CALLBACK(zb_zcl_ias_zone_change_status, ((buffer))); \}
Clear Zone Status bits custom server command.
- Parameters
-
buffer - to put packet to ep - sending endpoint set_bits - flag set of Zone Status, see zb_zcl_ias_zone_zonestatus_e
◆ ZB_ZCL_IAS_ZONE_ENROLL_RESPONSE_SCHEDULE_USER_APP
| #define ZB_ZCL_IAS_ZONE_ENROLL_RESPONSE_SCHEDULE_USER_APP | ( | buffer, | |
| pcmd_info, | |||
| enroll_response_, | |||
| zone_id_ | |||
| ) |
{ \ zb_zcl_ias_zone_enroll_response_user_app_schedule_t* user_data = \ ZB_BUF_GET_PARAM((buffer), zb_zcl_ias_zone_enroll_response_user_app_schedule_t); \ ZB_MEMMOVE(&(user_data->cmd_info), (pcmd_info), sizeof(zb_zcl_parsed_hdr_t)); \ user_data->param.enroll_response = (enroll_response_); \ user_data->param.zone_id = (zone_id_); \ ZB_SCHEDULE_CALLBACK(zb_zcl_ias_zone_enroll_response_invoke_user_app, ((buffer))); \}Definition: zb_zcl_common.h:1145
Definition: zb_zcl_ias_zone.h:859
◆ ZB_ZCL_IAS_ZONE_GET_INITIATE_TEST_MODE_REQ
| #define ZB_ZCL_IAS_ZONE_GET_INITIATE_TEST_MODE_REQ | ( | data_ptr, | |
| buffer, | |||
| status | |||
| ) |
{ \ { \ (status) = ZB_ZCL_PARSE_STATUS_FAILURE; \ } \ else \ { \ zb_zcl_ias_zone_init_test_mode_t *src_ptr = \ (zb_zcl_ias_zone_init_test_mode_t*)zb_buf_begin((buffer)); \ (status) = ZB_ZCL_PARSE_STATUS_SUCCESS; \ (data_ptr)->test_mode_duration = src_ptr->test_mode_duration; \ (data_ptr)->current_zone_sens_level = src_ptr->current_zone_sens_level; \ } \}Definition: zb_zcl_common.h:348
Definition: zb_zcl_common.h:347
Structure representsation of Initiate Test Mode - Errata to 05-3520-29 Spec, 1.1.23.2.2.1. Definition: zb_zcl_ias_zone.h:423
Macro for getting "Initiate Test Mode" command.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
data_ptr - pointer to a variable of type zb_zcl_ias_zone_init_test_mode_t. buffer containing the packet (by pointer). status - variable to put parse status to (see zb_zcl_parse_status_t).
◆ ZB_ZCL_IAS_ZONE_GET_STATUS_CHANGE_NOTIFICATION_REQ
| #define ZB_ZCL_IAS_ZONE_GET_STATUS_CHANGE_NOTIFICATION_REQ | ( | data_ptr, | |
| buffer, | |||
| status | |||
| ) |
{ \ { \ (status) = ZB_ZCL_PARSE_STATUS_FAILURE; \ } \ else \ { \ zb_zcl_ias_zone_status_change_not_t *src_ptr = \ (zb_zcl_ias_zone_status_change_not_t*)zb_buf_begin((buffer)); \ (status) = ZB_ZCL_PARSE_STATUS_SUCCESS; \ ZB_HTOLE16(&((data_ptr)->zone_status), &(src_ptr->zone_status)); \ (data_ptr)->extended_status = src_ptr->extended_status; \ (data_ptr)->zone_id = src_ptr->zone_id; \ ZB_HTOLE16(&((data_ptr)->delay), &(src_ptr->delay)); \ } \}Definition: zb_zcl_common.h:348
Definition: zb_zcl_common.h:347
Structure representsation of Zone Status Change Notification see ZCL spec 8.2.2.4.1.1. Definition: zb_zcl_ias_zone.h:507
Macro for getting Zone Status Change Notification command.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
data_ptr - pointer to a variable of type zb_zcl_ias_zone_status_change_not_s. buffer containing the packet (by pointer). status - variable to put parse status to (see zb_zcl_parse_status_t).
◆ ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_REQUEST_REQ
| #define ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_REQUEST_REQ | ( | data_ptr, | |
| buffer, | |||
| status | |||
| ) |
{ \ { \ (status) = ZB_ZCL_PARSE_STATUS_FAILURE; \ } \ else \ { \ zb_zcl_ias_zone_enroll_request_t *src_ptr = \ (zb_zcl_ias_zone_enroll_request_t*)zb_buf_begin((buffer)); \ (status) = ZB_ZCL_PARSE_STATUS_SUCCESS; \ ZB_HTOLE16(&((data_ptr)->zone_type), &(src_ptr->zone_type)); \ ZB_HTOLE16(&((data_ptr)->manufacturer_code), &(src_ptr->manufacturer_code)); \ } \}Structure representsation of "Zone Enroll Request" command see ZCL spec 8.2.2.4.1.2. Definition: zb_zcl_ias_zone.h:580
Definition: zb_zcl_common.h:348
Definition: zb_zcl_common.h:347
Macro for getting Zone Status Change Notification command, see ZCL spec 8.2.2.4.1.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
data_ptr - pointer to a variable of type zb_zcl_ias_zone_enroll_request_s. buffer containing the packet (by pointer). status - variable to put parse status to (see zb_zcl_parse_status_t).
◆ ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_RES
| #define ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_RES | ( | data_ptr, | |
| buffer, | |||
| status | |||
| ) |
{ \ { \ (status) = ZB_ZCL_PARSE_STATUS_FAILURE; \ } \ else \ { \ zb_zcl_ias_zone_enroll_res_t *src_ptr = \ (zb_zcl_ias_zone_enroll_res_t*)zb_buf_begin((buffer)); \ (status) = ZB_ZCL_PARSE_STATUS_SUCCESS; \ (data_ptr)->code = src_ptr->code; \ (data_ptr)->zone_id = src_ptr->zone_id; \ } \}Structure representsation of Enroll response command payload see ZCL spec 8.2.2.3.1.1. Definition: zb_zcl_ias_zone.h:657
Definition: zb_zcl_common.h:348
Definition: zb_zcl_common.h:347
Macro for getting "Zone Enroll response" command.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
data_ptr - pointer to a variable of type zb_zcl_ias_zone_enroll_res_s. buffer containing the packet (by pointer). status - variable to put parse status to (see zb_zcl_parse_status_t).
◆ ZB_ZCL_IAS_ZONE_SEND_INITIATE_NORMAL_OPERATION_MODE_REQ
| #define ZB_ZCL_IAS_ZONE_SEND_INITIATE_NORMAL_OPERATION_MODE_REQ | ( | buffer, | |
| addr, | |||
| dst_addr_mode, | |||
| dst_ep, | |||
| ep, | |||
| prfl_id, | |||
| cb | |||
| ) |
{ \ zb_uint8_t* ptr = ZB_ZCL_START_PACKET_REQ(buffer) \ ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_REQ_FRAME_CONTROL(ptr, ZB_ZCL_ENABLE_DEFAULT_RESPONSE) \ ZB_ZCL_CONSTRUCT_COMMAND_HEADER_REQ(ptr, ZB_ZCL_GET_SEQ_NUM(), \ ZB_ZCL_FINISH_PACKET((buffer), ptr) \ ZB_ZCL_SEND_COMMAND_SHORT( \ buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, \ ZB_ZCL_CLUSTER_ID_IAS_ZONE, cb); \}Definition: zb_zcl_ias_zone.h:388
#define ZB_ZCL_GET_SEQ_NUM()Return next sequence number for ZCL frame. Definition: zb_zcl_common.h:1443
#define ZB_ZCL_ENABLE_DEFAULT_RESPONSEDefinition: zb_zcl_common.h:1030
Initiate Normal Operation Mode command.
- Parameters
-
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 cb - callback for getting command send status
◆ ZB_ZCL_IAS_ZONE_SEND_INITIATE_TEST_MODE_REQ
| #define ZB_ZCL_IAS_ZONE_SEND_INITIATE_TEST_MODE_REQ | ( | buffer, | |
| addr, | |||
| dst_addr_mode, | |||
| dst_ep, | |||
| ep, | |||
| prfl_id, | |||
| cb, | |||
| test_mode_duration, | |||
| current_zone_sens_level | |||
| ) |
{ \ zb_uint8_t* ptr = ZB_ZCL_START_PACKET_REQ(buffer) \ ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_REQ_FRAME_CONTROL(ptr, ZB_ZCL_ENABLE_DEFAULT_RESPONSE) \ ZB_ZCL_CONSTRUCT_COMMAND_HEADER_REQ(ptr, ZB_ZCL_GET_SEQ_NUM(), \ ZB_ZCL_CMD_IAS_ZONE_INITIATE_TEST_MODE_ID); \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (test_mode_duration)); \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (current_zone_sens_level)); \ ZB_ZCL_FINISH_PACKET((buffer), ptr) \ ZB_ZCL_SEND_COMMAND_SHORT( \ buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, \ ZB_ZCL_CLUSTER_ID_IAS_ZONE, cb); \}#define ZB_ZCL_GET_SEQ_NUM()Return next sequence number for ZCL frame. Definition: zb_zcl_common.h:1443
#define ZB_ZCL_ENABLE_DEFAULT_RESPONSEDefinition: zb_zcl_common.h:1030
Initiate Test Mode command.
- Parameters
-
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 cb - callback for getting command send status test_mode_duration - Test Mode duration current_zone_sens_level - CurrentZoneSensitivityLevel
◆ ZB_ZCL_IAS_ZONE_SEND_STATUS_CHANGE_NOTIFICATION_REQ
| #define ZB_ZCL_IAS_ZONE_SEND_STATUS_CHANGE_NOTIFICATION_REQ | ( | buffer, | |
| addr, | |||
| dst_addr_mode, | |||
| dst_ep, | |||
| ep, | |||
| prfl_id, | |||
| cb, | |||
| zone_status, | |||
| extended_status, | |||
| zone_id, | |||
| delay | |||
| ) |
{ \ zb_uint8_t* ptr = ZB_ZCL_START_PACKET(buffer); \ ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_RES_FRAME_CONTROL(ptr); \ ZB_ZCL_CONSTRUCT_COMMAND_HEADER(ptr, ZB_ZCL_GET_SEQ_NUM(), \ ZB_ZCL_PACKET_PUT_DATA16_VAL(ptr, (zone_status)); \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (extended_status)); \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (zone_id)); \ ZB_ZCL_PACKET_PUT_DATA16_VAL(ptr, (delay)); \ ZB_ZCL_FINISH_PACKET((buffer), ptr) \ ZB_ZCL_SEND_COMMAND_SHORT( \ buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, \ ZB_ZCL_CLUSTER_ID_IAS_ZONE, cb); \}#define ZB_ZCL_GET_SEQ_NUM()Return next sequence number for ZCL frame. Definition: zb_zcl_common.h:1443
#define ZB_ZCL_START_PACKET(zbbuf)Initializes zb_buf_t buffer and returns pointer to the beginning of array. Definition: zb_zcl_common.h:1523
Definition: zb_zcl_ias_zone.h:399
Zone Status Change Notification command.
- Parameters
-
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 cb - callback for getting command send status zone_status - Zone Status, see zb_zcl_ias_zone_zonestatus_e extended_status - Extended Status zone_id - Zone ID delay - Delay
◆ ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_REQUEST_REQ
| #define ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_REQUEST_REQ | ( | buffer, | |
| addr, | |||
| dst_addr_mode, | |||
| dst_ep, | |||
| ep, | |||
| prfl_id, | |||
| cb, | |||
| zone_type, | |||
| manufacturer_code | |||
| ) |
{ \ zb_uint8_t* ptr = ZB_ZCL_START_PACKET(buffer); \ ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_RES_FRAME_CONTROL(ptr); \ ZB_ZCL_CONSTRUCT_COMMAND_HEADER(ptr, ZB_ZCL_GET_SEQ_NUM(), \ ZB_ZCL_PACKET_PUT_DATA16_VAL(ptr, (zone_type)); \ ZB_ZCL_PACKET_PUT_DATA16_VAL(ptr, (manufacturer_code)); \ ZB_ZCL_FINISH_PACKET((buffer), ptr) \ ZB_ZCL_SEND_COMMAND_SHORT( \ buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, \ ZB_ZCL_CLUSTER_ID_IAS_ZONE, cb); \}Definition: zb_zcl_ias_zone.h:401
#define ZB_ZCL_GET_SEQ_NUM()Return next sequence number for ZCL frame. Definition: zb_zcl_common.h:1443
#define ZB_ZCL_START_PACKET(zbbuf)Initializes zb_buf_t buffer and returns pointer to the beginning of array. Definition: zb_zcl_common.h:1523
Zone "Zone Enroll Request" command, see ZCL spec 8.2.2.4.2.
- Parameters
-
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 cb - callback for getting command send status zone_type - Zone Type, see zb_zcl_ias_zone_zonetype_e manufacturer_code - Manufacture code
◆ ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_RES
| #define ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_RES | ( | buffer, | |
| addr, | |||
| dst_addr_mode, | |||
| dst_ep, | |||
| ep, | |||
| prfl_id, | |||
| def_resp, | |||
| cb, | |||
| code, | |||
| zone_id | |||
| ) |
{ \ zb_uint8_t* ptr = ZB_ZCL_START_PACKET_REQ(buffer) \ ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_REQ_FRAME_CONTROL(ptr, (def_resp)) \ ZB_ZCL_CONSTRUCT_COMMAND_HEADER_REQ(ptr, ZB_ZCL_GET_SEQ_NUM(), \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (code)); \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (zone_id)); \ ZB_ZCL_FINISH_PACKET((buffer), ptr) \ ZB_ZCL_SEND_COMMAND_SHORT( \ buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, \ ZB_ZCL_CLUSTER_ID_IAS_ZONE, cb); \}#define ZB_ZCL_GET_SEQ_NUM()Return next sequence number for ZCL frame. Definition: zb_zcl_common.h:1443
Definition: zb_zcl_ias_zone.h:385
Send "Zone Enroll response" command, see ZCL spec 8.2.2.3.1.
- Parameters
-
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/disable default response cb - callback code - Enroll response code, see zb_zcl_ias_zone_enroll_responce_code_e zone_id - Zone ID
◆ ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_RES_EXT
| #define ZB_ZCL_IAS_ZONE_SEND_ZONE_ENROLL_RES_EXT | ( | buffer, | |
| addr, | |||
| dst_addr_mode, | |||
| dst_ep, | |||
| ep, | |||
| prfl_id, | |||
| def_resp, | |||
| cb, | |||
| code, | |||
| zone_id, | |||
| seq | |||
| ) |
{ \ zb_uint8_t* ptr = ZB_ZCL_START_PACKET_REQ(buffer) \ ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_REQ_FRAME_CONTROL(ptr, (def_resp)) \ ZB_ZCL_CONSTRUCT_COMMAND_HEADER_REQ(ptr, (seq), \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (code)); \ ZB_ZCL_PACKET_PUT_DATA8(ptr, (zone_id)); \ ZB_ZCL_FINISH_PACKET((buffer), ptr) \ ZB_ZCL_SEND_COMMAND_SHORT( \ buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, \ ZB_ZCL_CLUSTER_ID_IAS_ZONE, cb); \}Definition: zb_zcl_ias_zone.h:385
Send "Zone Enroll response with add parameters - sequency" command, see ZCL spec 8.2.2.3.1.
- Parameters
-
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/disable default response cb - callback code - Enroll response code, see zb_zcl_ias_zone_enroll_responce_code_e zone_id - Zone ID seq - known sequency
◆ ZB_ZCL_IAS_ZONE_SET_BITS
| #define ZB_ZCL_IAS_ZONE_SET_BITS | ( | buffer, | |
| ep, | |||
| set_bits | |||
| ) |
{ \ zb_zcl_ias_zone_status_param_t* cmd_data = \ ZB_BUF_GET_PARAM((buffer), zb_zcl_ias_zone_status_param_t); \ cmd_data->endpoint = (ep); \ cmd_data->bits = (set_bits); \ cmd_data->is_set = ZB_TRUE; \ ZB_SCHEDULE_CALLBACK(zb_zcl_ias_zone_change_status, ((buffer))); \}
Set Zone Status bits custom server command.
- Parameters
-
buffer - to put packet to ep - endpoint set_bits - flag set of Zone Status, see zb_zcl_ias_zone_zonestatus_e
Typedef Documentation
◆ zb_zcl_ias_zone_enroll_response_user_app_schedule_t
Struct for invoke User App & continue after
Enumeration Type Documentation
◆ zb_zcl_ias_zone_attr_e
IAS Zone cluster attribute identifiers.
- See also
- ZCL spec, IAS Zone Cluster 8.2.2.2
◆ zb_zcl_ias_zone_cmd_e
IAS Zone cluster command identifiers.
- See also
- ZCL spec, IAS Zone Cluster, 8.2.2.3
◆ zb_zcl_ias_zone_enroll_responce_code_e
Values of the Enroll Response Code see ZCL spec 8.2.2.3.1.1.
◆ zb_zcl_ias_zone_resp_cmd_e
IAS Zone cluster response command identifiers.
- See also
- ZCL spec, IAS Zone Cluster, 8.2.2.4
◆ zb_zcl_ias_zone_zonestate_e
◆ zb_zcl_ias_zone_zonestatus_e
IAS Zone ZoneStatus attribute flags.
- See also
- ZCL spec 8.2.2.2.1.3
◆ zb_zcl_ias_zone_zonetype_e
IAS Zone ZoneType value.
Function Documentation
◆ zb_zcl_ias_zone_check_attr_notify()
| zb_bool_t zb_zcl_ias_zone_check_attr_notify | ( | zb_uint8_t | buf_param | ) |
checks, if Zone Status change notification should be sent and schedules command if it is needed
- Returns
- ZB_TRUE if command is sent
◆ zb_zcl_ias_zone_register_cb()
| void zb_zcl_ias_zone_register_cb | ( | zb_uint8_t | endpoint, |
| zb_callback_t | process_result_cb, | ||
| zb_ias_zone_app_callback_t | general_cb | ||
| ) |
Registry callbacks to get status of Zone Status Change Notification command.
- Parameters
-
endpoint - local endpoint number process_result_cb - notification sent callback function general_cb - general callback function
◆ zb_zcl_ias_zone_set_status()
| zb_bool_t zb_zcl_ias_zone_set_status | ( | zb_uint8_t | ep, |
| zb_uint16_t | new_val, | ||
| zb_uint16_t | delay, | ||
| zb_uint8_t | buf_param | ||
| ) |
Use this function to change IAS Zone status. This function will set new value of ZoneStatus and will send Zone status change notification.
- Note
- If another API (ZB_ZCL_SET_ATTRIBUTE()) is used for modifying ZoneStatus, notification will NOT be send. This is limitation of the current implementation.
- Parameters
-
ep - local endpoint number new_val - new value for ZoneStatus delay - delay in quater seconds (actual only for HA ZCL version, is ignored for pure ZCL implementation) buf_param - reference to a buffer that will be used for sending notification. If buffer reference is not specified, notification will NOT be sent
- Returns
- Returns ZB_TRUE if notification is scheduled for send, ZB_FALSE otherwise
- Note
- Notification send result is reported to user App using callback that is registered with zb_zcl_ias_zone_register_cb()