|
Developing with ZBOSS for Zigbee
|
|
#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_) |
|
|
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
} |
|
|
enum | zb_zcl_ias_zone_attr_e {
ZB_ZCL_ATTR_IAS_ZONE_ZONESTATE_ID = 0x0000,
ZB_ZCL_ATTR_IAS_ZONE_ZONETYPE_ID = 0x0001,
ZB_ZCL_ATTR_IAS_ZONE_ZONESTATUS_ID = 0x0002,
ZB_ZCL_ATTR_IAS_ZONE_IAS_CIE_ADDRESS_ID = 0x0010,
ZB_ZCL_ATTR_IAS_ZONE_ZONEID_ID = 0x0011,
ZB_ZCL_ATTR_IAS_ZONE_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_ID = 0x0012,
ZB_ZCL_ATTR_IAS_ZONE_CURRENT_ZONE_SENSITIVITY_LEVEL_ID = 0x0013,
ZB_ZCL_ATTR_CUSTOM_ZGP_CALIBRATION = 0x8000,
ZB_ZCL_ATTR_CUSTOM_ZGP_CLOUD_ACK = 0x8003,
ZB_ZCL_ATTR_CUSTOM_CIE_ADDR_IS_SET = 0xE000,
ZB_ZCL_ATTR_CUSTOM_CIE_EP = 0xE001,
ZB_ZCL_ATTR_CUSTOM_CIE_SHORT_ADDR = 0xE002,
ZB_ZCL_ATTR_IAS_ZONE_INT_CTX_ID = 0xeffe
} |
| IAS Zone cluster attribute identifiers. More...
|
|
enum | zb_zcl_ias_zone_zonestate_e { ZB_ZCL_IAS_ZONE_ZONESTATE_NOT_ENROLLED = 0,
ZB_ZCL_IAS_ZONE_ZONESTATE_ENROLLED = 1
} |
| IAS Zone ZoneState value. More...
|
|
enum | zb_zcl_ias_zone_zonetype_e {
ZB_ZCL_IAS_ZONE_ZONETYPE_STANDARD_CIE = 0x0000,
ZB_ZCL_IAS_ZONE_ZONETYPE_MOTION = 0x000d,
ZB_ZCL_IAS_ZONE_ZONETYPE_CONTACT_SWITCH = 0x0015,
ZB_ZCL_IAS_ZONE_ZONETYPE_FIRE_SENSOR = 0x0028,
ZB_ZCL_IAS_ZONE_ZONETYPE_WATER_SENSOR = 0x002a,
ZB_ZCL_IAS_ZONE_ZONETYPE_GAS_SENSOR = 0x002b,
ZB_ZCL_IAS_ZONE_ZONETYPE_PERSONAL_EMERGENCY = 0x002c,
ZB_ZCL_IAS_ZONE_ZONETYPE_VIBRATION_MOVEMENT = 0x002d,
ZB_ZCL_IAS_ZONE_ZONETYPE_REMOTE_CONTROL = 0x010f,
ZB_ZCL_IAS_ZONE_ZONETYPE_KEY_FOB = 0x0115,
ZB_ZCL_IAS_ZONE_ZONETYPE_KEYPAD = 0x021d,
ZB_ZCL_IAS_ZONE_ZONETYPE_STANDARD_WARNING = 0x0225,
ZB_ZCL_IAS_ZONE_ZONETYPE_MANUF_SPEC = 0x8000,
ZB_ZCL_IAS_ZONE_ZONETYPE_INVALID = 0xffff
} |
| IAS Zone ZoneType value. More...
|
|
enum | zb_zcl_ias_zone_zonestatus_e {
ZB_ZCL_IAS_ZONE_ZONE_STATUS_ALARM1 = 1 << 0,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_ALARM2 = 1 << 1,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_TAMPER = 1 << 2,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_BATTERY = 1 << 3,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_SUPERVISION = 1 << 4,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_RESTORE = 1 << 5,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_TROUBLE = 1 << 6,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_AC_MAINS = 1 << 7,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_TEST = 1 << 8,
ZB_ZCL_IAS_ZONE_ZONE_STATUS_BATTERY_DEFECT = 1 << 9
} |
| IAS Zone ZoneStatus attribute flags. More...
|
|
#define | ZB_ZCL_IAS_ZONE_ZONESTATE_DEF_VALUE ZB_ZCL_IAS_ZONE_ZONESTATE_NOT_ENROLLED |
| IAS Zone ZoneState attribute default value.
|
|
#define | ZB_ZCL_IAS_ZONE_CLUSTER_REVISION_DEFAULT ((zb_uint16_t)0x0002u) |
| Default value for IAS Zone cluster revision global attribute.
|
|
#define | ZB_ZCL_IAS_ZONE_ZONE_STATUS_DEF_VALUE 0 |
| IAS Zone ZoneStatus attribute default value.
|
|
#define | ZB_ZCL_IAS_ZONE_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_MIN_VALUE ((zb_uint8_t)0x02) |
| Min value for NumberOfZoneSensitivityLevelsSupported attribute.
|
|
#define | ZB_ZCL_IAS_ZONE_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_DEFAULT_VALUE ZB_ZCL_IAS_ZONE_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_MIN_VALUE |
| Default value for NumberOfZoneSensitivityLevelsSupported attribute.
|
|
#define | ZB_ZCL_IAS_ZONE_CURRENT_ZONE_SENSITIVITY_LEVEL_DEFAULT_VALUE ((zb_uint8_t)0x00) |
| Default value for CurrentZoneSensitivityLevel attribute.
|
|
#define | ZB_ZCL_IAS_ZONEID_ID_DEF_VALUE 0xff |
| IAS Zone ZoneID attribute default value.
|
|
#define | ZB_ZCL_DECLARE_IAS_ZONE_ATTRIB_LIST( attr_list, zone_state, zone_type, zone_status, ias_cie_address, cie_short_addr, cie_ep) |
| Declare attribute list for IAS Zone cluster - server side. More...
|
|
#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) |
| Declare attribute list for IAS Zone cluster - server side (extended attribute set) More...
|
|
|
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...
|
|
IAS Zone cluster definitions
◆ 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 |
|
) |
| |
Value:
ZB_ZCL_START_DECLARE_ATTRIB_LIST_CLUSTER_REVISION(attr_list, ZB_ZCL_IAS_ZONE) \
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_LIST
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 |
|
) |
| |
Value:
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) \
(number_of_zone_sens_levels_supported)) \
(current_zone_sens_level)) \
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_LIST
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 |
|
) |
| |
Value:{ \
zb_zcl_ias_zone_status_param_t* cmd_data = \
cmd_data->endpoint = (ep); \
cmd_data->bits = (set_bits); \
ZB_SCHEDULE_CALLBACK(zb_zcl_ias_zone_change_status, ((buffer))); \
}
Clear Zone Status bits custom server command.
- Parameters
-
◆ 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_ |
|
) |
| |
Value:{ \
zb_zcl_ias_zone_enroll_response_user_app_schedule_t* user_data = \
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))); \
}
◆ ZB_ZCL_IAS_ZONE_GET_INITIATE_TEST_MODE_REQ
#define ZB_ZCL_IAS_ZONE_GET_INITIATE_TEST_MODE_REQ |
( |
|
data_ptr, |
|
|
|
buffer, |
|
|
|
status |
|
) |
| |
Value:{ \
{ \
} \
else \
{ \
zb_zcl_ias_zone_init_test_mode_t *src_ptr = \
(data_ptr)->test_mode_duration = src_ptr->test_mode_duration; \
(data_ptr)->current_zone_sens_level = src_ptr->current_zone_sens_level; \
} \
}
Macro for getting "Initiate Test Mode" command.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
◆ ZB_ZCL_IAS_ZONE_GET_STATUS_CHANGE_NOTIFICATION_REQ
#define ZB_ZCL_IAS_ZONE_GET_STATUS_CHANGE_NOTIFICATION_REQ |
( |
|
data_ptr, |
|
|
|
buffer, |
|
|
|
status |
|
) |
| |
Value:{ \
{ \
} \
else \
{ \
zb_zcl_ias_zone_status_change_not_t *src_ptr = \
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)); \
} \
}
Macro for getting Zone Status Change Notification command.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
◆ ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_REQUEST_REQ
#define ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_REQUEST_REQ |
( |
|
data_ptr, |
|
|
|
buffer, |
|
|
|
status |
|
) |
| |
Value:{ \
{ \
} \
else \
{ \
zb_zcl_ias_zone_enroll_request_t *src_ptr = \
ZB_HTOLE16(&((data_ptr)->zone_type), &(src_ptr->zone_type)); \
ZB_HTOLE16(&((data_ptr)->manufacturer_code), &(src_ptr->manufacturer_code)); \
} \
}
Macro for getting Zone Status Change Notification command, see ZCL spec 8.2.2.4.1.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
◆ ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_RES
#define ZB_ZCL_IAS_ZONE_GET_ZONE_ENROLL_RES |
( |
|
data_ptr, |
|
|
|
buffer, |
|
|
|
status |
|
) |
| |
Value:{ \
{ \
} \
else \
{ \
zb_zcl_ias_zone_enroll_res_t *src_ptr = \
(data_ptr)->code = src_ptr->code; \
(data_ptr)->zone_id = src_ptr->zone_id; \
} \
}
Macro for getting "Zone Enroll response" command.
- Attention
- Assumes that ZCL header already cut.
- Parameters
-
◆ 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 |
|
) |
| |
Value:{ \
zb_uint8_t* ptr = ZB_ZCL_START_PACKET_REQ(buffer) \
ZB_ZCL_FINISH_PACKET((buffer), ptr) \
ZB_ZCL_SEND_COMMAND_SHORT( \
buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, \
}
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 |
|
) |
| |
Value:{ \
zb_uint8_t* ptr = ZB_ZCL_START_PACKET_REQ(buffer) \
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, \
}
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 |
|
) |
| |
Value:{ \
ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_RES_FRAME_CONTROL(ptr); \
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, \
}
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 |
|
) |
| |
Value:{ \
ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_RES_FRAME_CONTROL(ptr); \
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, \
}
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 |
|
) |
| |
Value:{ \
zb_uint8_t* ptr = ZB_ZCL_START_PACKET_REQ(buffer) \
ZB_ZCL_CONSTRUCT_SPECIFIC_COMMAND_REQ_FRAME_CONTROL(ptr, (def_resp)) \
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, \
}
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 |
|
) |
| |
Value:{ \
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, \
}
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 |
|
) |
| |
Value:{ \
zb_zcl_ias_zone_status_param_t* cmd_data = \
cmd_data->endpoint = (ep); \
cmd_data->bits = (set_bits); \
ZB_SCHEDULE_CALLBACK(zb_zcl_ias_zone_change_status, ((buffer))); \
}
Set Zone Status bits custom server command.
- Parameters
-
◆ zb_zcl_ias_zone_enroll_response_user_app_schedule_t
Struct for invoke User App & continue after
◆ zb_zcl_ias_zone_attr_e
IAS Zone cluster attribute identifiers.
- See also
- ZCL spec, IAS Zone Cluster 8.2.2.2
Enumerator |
---|
ZB_ZCL_ATTR_IAS_ZONE_ZONESTATE_ID | ZoneState attribute, ZCL spec 8.2.2.2.1.1.
|
ZB_ZCL_ATTR_IAS_ZONE_ZONETYPE_ID | ZoneType attribute, ZCL spec 8.2.2.2.1.2.
|
ZB_ZCL_ATTR_IAS_ZONE_ZONESTATUS_ID | ZoneStatus attribute, ZCL spec 8.2.2.2.1.3.
|
ZB_ZCL_ATTR_IAS_ZONE_IAS_CIE_ADDRESS_ID | IAS_CIE_Address attribute, ZCL spec 8.2.2.2.2.1.
|
ZB_ZCL_ATTR_IAS_ZONE_ZONEID_ID | ZoneID attribute, ZCL spec 8.2.2.1.2.2.
|
ZB_ZCL_ATTR_IAS_ZONE_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_ID | NumberOfZoneSensitivityLevelsSupported attribute, ZCL spec 8.2.2.1.2.3.
|
ZB_ZCL_ATTR_IAS_ZONE_CURRENT_ZONE_SENSITIVITY_LEVEL_ID | CurrentZoneSensitivityLevel attribute, ZCL spec 8.2.2.1.2.4.
|
ZB_ZCL_ATTR_IAS_ZONE_INT_CTX_ID | Struct with pointers on User App callbacks.
|
◆ zb_zcl_ias_zone_cmd_e
IAS Zone cluster command identifiers.
- See also
- ZCL spec, IAS Zone Cluster, 8.2.2.3
Enumerator |
---|
ZB_ZCL_CMD_IAS_ZONE_ZONE_ENROLL_RESPONSE_ID | "Zone Enroll Response" command, ZCL spec 8.2.2.3.1 "Initiate Normal Operation Mode" command, ZCL spec 8.2.2.2.1
|
ZB_ZCL_CMD_IAS_ZONE_INITIATE_NORMAL_OPERATION_MODE_ID | "Initiate Test Mode" command, ZCL spec 8.2.2.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.
Enumerator |
---|
ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_SUCCESS | Success
|
ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_NOT_SUPPORTED | Not supported
|
ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_NO_ENROLL | No enroll permit
|
ZB_ZCL_IAS_ZONE_ENROLL_RESPONCE_CODE_TOO_MANY_ZONES | Too many zones
|
◆ zb_zcl_ias_zone_resp_cmd_e
IAS Zone cluster response command identifiers.
- See also
- ZCL spec, IAS Zone Cluster, 8.2.2.4
Enumerator |
---|
ZB_ZCL_CMD_IAS_ZONE_ZONE_STATUS_CHANGE_NOT_ID | "Zone Status Change Notification" command. ZCL spec 8.2.2.4.1
|
ZB_ZCL_CMD_IAS_ZONE_ZONE_ENROLL_REQUEST_ID | "Zone Enroll Request" command. ZCL spec 8.2.2.4.2
|
◆ zb_zcl_ias_zone_zonestate_e
IAS Zone ZoneState value.
Enumerator |
---|
ZB_ZCL_IAS_ZONE_ZONESTATE_NOT_ENROLLED | ZoneState not enrolled value.
|
ZB_ZCL_IAS_ZONE_ZONESTATE_ENROLLED | ZoneState enrolled value.
|
◆ zb_zcl_ias_zone_zonestatus_e
IAS Zone ZoneStatus attribute flags.
- See also
- ZCL spec 8.2.2.2.1.3
Enumerator |
---|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_ALARM1 | Alarm 1
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_ALARM2 | Alarm 2
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_TAMPER | Tamper
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_BATTERY | Battery
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_SUPERVISION | Supervision reports
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_RESTORE | Restore reports
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_TROUBLE | Trouble
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_AC_MAINS | AC (mains)
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_TEST | Test
|
ZB_ZCL_IAS_ZONE_ZONE_STATUS_BATTERY_DEFECT | Battery Defect
|
◆ zb_zcl_ias_zone_zonetype_e
IAS Zone ZoneType value.
Enumerator |
---|
ZB_ZCL_IAS_ZONE_ZONETYPE_STANDARD_CIE | ZoneType Standard CIE System Alarm value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_MOTION | ZoneType Motion value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_CONTACT_SWITCH | ZoneType Contact switch value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_FIRE_SENSOR | ZoneType Fire sensor value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_WATER_SENSOR | ZoneType Water sensor value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_GAS_SENSOR | ZoneType Gas sensor value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_PERSONAL_EMERGENCY | ZoneType Personal emergency value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_VIBRATION_MOVEMENT | ZoneType Vibration / Movement sensor value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_REMOTE_CONTROL | ZoneType Remote Control value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_KEY_FOB | ZoneType Key fob value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_KEYPAD | ZoneType Keypad value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_STANDARD_WARNING | ZoneType Standard Warning Device value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_MANUF_SPEC | Manufacturer specific ZoneType value.
|
ZB_ZCL_IAS_ZONE_ZONETYPE_INVALID | ZoneType Invalid Zone Type value.
|
◆ zb_zcl_ias_zone_check_attr_notify()
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()
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()
Structure representsation of "Zone Enroll Request" command see ZCL spec 8.2.2.4.1....
Definition: zb_zcl_ias_zone.h:572
@ ZB_ZCL_ATTR_IAS_ZONE_CURRENT_ZONE_SENSITIVITY_LEVEL_ID
CurrentZoneSensitivityLevel attribute, ZCL spec 8.2.2.1.2.4.
Definition: zb_zcl_ias_zone.h:70
#define ZB_ZCL_CLUSTER_ID_IAS_ZONE
Definition: zb_zcl_common.h:260
#define ZB_ZCL_START_PACKET(zbbuf)
Initializes zb_buf_t buffer and returns pointer to the beginning of array.
Definition: zb_zcl_common.h:1530
@ ZB_ZCL_CMD_IAS_ZONE_ZONE_ENROLL_RESPONSE_ID
Definition: zb_zcl_ias_zone.h:377
Declare Set/Clear Zone Status bits.
Definition: zb_zcl_ias_zone.h:747
unsigned char zb_uint8_t
Project-local 1-byte unsigned int type.
Definition: zb_types.h:153
#define ZB_ZCL_ENABLE_DEFAULT_RESPONSE
Definition: zb_zcl_common.h:1026
@ ZB_ZCL_ATTR_IAS_ZONE_ZONESTATUS_ID
ZoneStatus attribute, ZCL spec 8.2.2.2.1.3.
Definition: zb_zcl_ias_zone.h:62
Definition: zb_zcl_common.h:1141
@ ZB_ZCL_ATTR_IAS_ZONE_IAS_CIE_ADDRESS_ID
IAS_CIE_Address attribute, ZCL spec 8.2.2.2.2.1.
Definition: zb_zcl_ias_zone.h:64
@ ZB_ZCL_ATTR_IAS_ZONE_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_ID
NumberOfZoneSensitivityLevelsSupported attribute, ZCL spec 8.2.2.1.2.3.
Definition: zb_zcl_ias_zone.h:68
#define ZB_ZCL_GET_SEQ_NUM()
Return next sequence number for ZCL frame.
Definition: zb_zcl_common.h:1450
Structure representsation of Zone Status Change Notification see ZCL spec 8.2.2.4....
Definition: zb_zcl_ias_zone.h:499
@ ZB_ZCL_ATTR_IAS_ZONE_ZONESTATE_ID
ZoneState attribute, ZCL spec 8.2.2.2.1.1.
Definition: zb_zcl_ias_zone.h:58
#define ZB_TRUE
Definition: zb_types.h:375
Structure representsation of Initiate Test Mode - Errata to 05-3520-29 Spec, 1.1.23....
Definition: zb_zcl_ias_zone.h:415
@ ZB_ZCL_CMD_IAS_ZONE_INITIATE_NORMAL_OPERATION_MODE_ID
Definition: zb_zcl_ias_zone.h:380
@ ZB_ZCL_ATTR_IAS_ZONE_INT_CTX_ID
Struct with pointers on User App callbacks.
Definition: zb_zcl_ias_zone.h:80
Structure representsation of Enroll response command payload see ZCL spec 8.2.2.3....
Definition: zb_zcl_ias_zone.h:649
@ ZB_ZCL_CMD_IAS_ZONE_ZONE_STATUS_CHANGE_NOT_ID
Definition: zb_zcl_ias_zone.h:391
#define zb_buf_begin(buf)
Definition: zboss_api_buf.h:343
@ ZB_ZCL_CMD_IAS_ZONE_ZONE_ENROLL_REQUEST_ID
Definition: zb_zcl_ias_zone.h:393
Definition: zb_zcl_ias_zone.h:851
@ ZB_ZCL_PARSE_STATUS_SUCCESS
Definition: zb_zcl_common.h:329
@ ZB_ZCL_ATTR_IAS_ZONE_ZONETYPE_ID
ZoneType attribute, ZCL spec 8.2.2.2.1.2.
Definition: zb_zcl_ias_zone.h:60
@ ZB_ZCL_PARSE_STATUS_FAILURE
Definition: zb_zcl_common.h:330
@ ZB_ZCL_ATTR_IAS_ZONE_ZONEID_ID
ZoneID attribute, ZCL spec 8.2.2.1.2.2.
Definition: zb_zcl_ias_zone.h:66
#define ZB_FALSE
Definition: zb_types.h:374
#define zb_buf_len(buf)
Definition: zboss_api_buf.h:361