Developing with ZBOSS for Zigbee
|
Data Structures | |
struct | zb_zcl_door_lock_read_lock_door_res_payload_s |
struct | zb_zcl_door_lock_read_unlock_door_res_payload_s |
Door Lock cluster commands | |
enum | zb_zcl_door_lock_cmd_e { ZB_ZCL_CMD_DOOR_LOCK_LOCK_DOOR = 0x00, ZB_ZCL_CMD_DOOR_LOCK_UNLOCK_DOOR = 0x01, ZB_ZCL_CMD_DOOR_LOCK_TOGGLE = 0x02, ZB_ZCL_CMD_DOOR_LOCK_UNLOCK_WITH_TIMEOUT = 0x03, ZB_ZCL_CMD_DOOR_LOCK_GET_LOG_RECORD = 0x04, ZB_ZCL_CMD_DOOR_LOCK_SET_PIN_CODE = 0x05, ZB_ZCL_CMD_DOOR_LOCK_GET_PIN_CODE = 0x06, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_PIN_CODE = 0x07, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_ALL_PIN_CODES = 0x08, ZB_ZCL_CMD_DOOR_LOCK_SET_USER_STATUS = 0x09, ZB_ZCL_CMD_DOOR_LOCK_GET_USER_STATUS = 0x0A, ZB_ZCL_CMD_DOOR_LOCK_SET_WEEKDAY_SCHEDULE = 0x0B, ZB_ZCL_CMD_DOOR_LOCK_GET_WEEKDAY_SCHEDULE = 0x0C, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_WEEKDAY_SCHEDULE = 0x0D, ZB_ZCL_CMD_DOOR_LOCK_SET_YEAR_DAY_SCHEDULE = 0x0E, ZB_ZCL_CMD_DOOR_LOCK_GET_YEAR_DAY_SCHEDULE = 0x0F, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_YEAR_DAY_SCHEDULE = 0x10, ZB_ZCL_CMD_DOOR_LOCK_SET_HOLIDAY_SCHEDULE = 0x11, ZB_ZCL_CMD_DOOR_LOCK_GET_HOLIDAY_SCHEDULE = 0x12, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_HOLIDAY_SCHEDULE = 0x13, ZB_ZCL_CMD_DOOR_LOCK_SET_USER_TYPE = 0x14, ZB_ZCL_CMD_DOOR_LOCK_GET_USER_TYPE = 0x15, ZB_ZCL_CMD_DOOR_LOCK_SET_RFID_CODE = 0x16, ZB_ZCL_CMD_DOOR_LOCK_GET_RFID_CODE = 0x17, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_RFID_CODE = 0x18, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_ALL_RFID_CODES = 0x19 } |
Door Lock cluster commands. More... | |
enum | zb_zcl_door_lock_cmd_resp_e { ZB_ZCL_CMD_DOOR_LOCK_LOCK_DOOR_RES = 0x00, ZB_ZCL_CMD_DOOR_LOCK_UNLOCK_DOOR_RES = 0x01, ZB_ZCL_CMD_DOOR_LOCK_TOGGLE_RESPONSE = 0x02, ZB_ZCL_CMD_DOOR_LOCK_UNLOCK_WITH_TIMEOUT_RESPONSE = 0x03, ZB_ZCL_CMD_DOOR_LOCK_GET_LOG_RECORD_RESPONSE = 0x04, ZB_ZCL_CMD_DOOR_LOCK_SET_PIN_CODE_RESPONSE = 0x05, ZB_ZCL_CMD_DOOR_LOCK_GET_PIN_CODE_RESPONSE = 0x06, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_PIN_CODE_RESPONSE = 0x07, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_ALL_PIN_CODES_RESPONSE = 0x08, ZB_ZCL_CMD_DOOR_LOCK_SET_USER_STATUS_RESPONSE = 0x09, ZB_ZCL_CMD_DOOR_LOCK_GET_USER_STATUS_RESPONSE = 0x0A, ZB_ZCL_CMD_DOOR_LOCK_SET_WEEKDAY_SCHEDULE_RESPONSE = 0x0B, ZB_ZCL_CMD_DOOR_LOCK_GET_WEEKDAY_SCHEDULE_RESPONSE = 0x0C, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_WEEKDAY_SCHEDULE_RESPONSE = 0x0D, ZB_ZCL_CMD_DOOR_LOCK_SET_YEAR_DAY_SCHEDULE_RESPONSE = 0x0E, ZB_ZCL_CMD_DOOR_LOCK_GET_YEAR_DAY_SCHEDULE_RESPONSE = 0x0F, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_YEAR_DAY_SCHEDULE_RESPONSE = 0x10, ZB_ZCL_CMD_DOOR_LOCK_SET_HOLIDAY_SCHEDULE_RESPONSE = 0x11, ZB_ZCL_CMD_DOOR_LOCK_GET_HOLIDAY_SCHEDULE_RESPONSE = 0x12, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_HOLIDAY_SCHEDULE_RESPONSE = 0x13, ZB_ZCL_CMD_DOOR_LOCK_SET_USER_TYPE_RESPONSE = 0x14, ZB_ZCL_CMD_DOOR_LOCK_GET_USER_TYPE_RESPONSE = 0x15, ZB_ZCL_CMD_DOOR_LOCK_SET_RFID_CODE_RESPONSE = 0x16, ZB_ZCL_CMD_DOOR_LOCK_GET_RFID_CODE_RESPONSE = 0x17, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_RFID_CODE_RESPONSE = 0x18, ZB_ZCL_CMD_DOOR_LOCK_CLEAR_ALL_RFID_CODES_RESPONSE = 0x19, ZB_ZCL_CMD_DOOR_LOCK_OPERATION_EVENT_NOTIFICATION_ID = 0x20, ZB_ZCL_CMD_DOOR_LOCK_PROGRAMMING_EVENT_NOTIFICATION = 0x21 } |
Door Lock cluster commands response. More... | |
enum | zb_zcl_door_lock_operation_event_source_e { ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_SOURCE_KEYPAD = 0x00, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_SOURCE_RF = 0x01, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_SOURCE_MANUAL = 0x02, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_SOURCE_RFID = 0x03, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_SOURCE_INDETERMINATE = 0xFF } |
enum | zb_zcl_door_lock_operation_event_code_e { ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_UNKNOWN = 0x00, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_LOCK = 0x01, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_UNLOCK = 0x02, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_KEY_LOCK = 0x08, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_KEY_UNLOCK = 0x09, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_MANUAL_LOCK = 0x0D, ZB_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_MANUAL_UNLOCK = 0x0E } |
enum | zb_zcl_door_lock_keypad_operation_event_mask_e { ZB_ZCL_DOOR_LOCK_KEYPAD_OPERATION_EVENT_MASK_UNKNOWN = (1l << 0), ZB_ZCL_DOOR_LOCK_KEYPAD_OPERATION_EVENT_MASK_LOCK = (1l << 1), ZB_ZCL_DOOR_LOCK_KEYPAD_OPERATION_EVENT_MASK_UNLOCK = (1l << 2) } |
enum | zb_zcl_door_lock_rf_operation_event_mask_e { ZB_ZCL_DOOR_LOCK_RF_OPERATION_EVENT_MASK_UNKNOWN = (1l << 0), ZB_ZCL_DOOR_LOCK_RF_OPERATION_EVENT_MASK_LOCK = (1l << 1), ZB_ZCL_DOOR_LOCK_RF_OPERATION_EVENT_MASK_UNLOCK = (1l << 2) } |
enum | zb_zcl_door_lock_manual_operation_event_mask_e { ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_UNKNOWN = (1l << 0), ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_THUMBTURN_LOCK = (1l << 1), ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_THUMBTURN_UNLOCK = (1l << 2), ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_KEY_LOCK = (1l << 4), ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_KEY_UNLOCK = (1l << 5), ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_MANUAL_LOCK = (1l << 9), ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_MANUAL_UNLOCK = (1l << 10) } |
typedef struct zb_zcl_door_lock_read_lock_door_res_payload_s | zb_zcl_door_lock_read_lock_door_res_payload_t |
typedef struct zb_zcl_door_lock_read_unlock_door_res_payload_s | zb_zcl_door_lock_read_unlock_door_res_payload_t |
#define | ZB_ZCL_DOOR_LOCK_NUMBER_OF_LOG_RECORDS_SUPPORTED_DEFAULT_VALUE ((zb_uint16_t)0) |
Default value for NumberOfLogRecordsSupported attribute. | |
#define | ZB_ZCL_DOOR_LOCK_NUM_TOTAL_USERS_DEFAULT_VALUE ((zb_uint16_t)0) |
Default value for NumTotalUsers attribute. | |
#define | ZB_ZCL_DOOR_LOCK_NUM_PIN_USERS_DEFAULT_VALUE ((zb_uint16_t)0) |
Default value for NumPINUsers attribute. | |
#define | ZB_ZCL_DOOR_LOCK_NUMBER_OF_RFID_USERS_SUPPORTED_DEFAULT_VALUE ((zb_uint16_t)0) |
Default value for NumberOfRFIDUsersSupported attribute. | |
#define | ZB_ZCL_DOOR_LOCK_NUM_WEEK_DAY_SCHEDULE_PER_USER_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for NumWeekDaySchedulePerUser attribute. | |
#define | ZB_ZCL_DOOR_LOCK_NUM_YEAR_DAY_SCHEDULE_PER_USER_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for NumYearDaySchedulePerUser attribute. | |
#define | ZB_ZCL_DOOR_LOCK_NUM_HOLIDAY_SCHEDULE_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for NumHolidaySchedule attribute. | |
#define | ZB_ZCL_DOOR_LOCK_MAX_PIN_LEN_DEFAULT_VALUE ((zb_uint8_t)0x08) |
Default value for MaxPINLen attribute. | |
#define | ZB_ZCL_DOOR_LOCK_MIN_PIN_LEN_DEFAULT_VALUE ((zb_uint8_t)0x04) |
Default value for MinPINLen attribute. | |
#define | ZB_ZCL_DOOR_LOCK_MAX_RFID_CODE_LENGTH_DEFAULT_VALUE ((zb_uint8_t)0x14) |
Default value for MaxRFIDCodeLength attribute. | |
#define | ZB_ZCL_DOOR_LOCK_MIN_RFID_CODE_LENGTH_DEFAULT_VALUE ((zb_uint8_t)0x08) |
Default value for MinRFIDCodeLength attribute. | |
#define | ZB_ZCL_DOOR_LOCK_ENABLE_LOGGING_DEFAULT_VALUE ((zb_bool_t)0) |
Default value for EnableLogging attribute. | |
#define | ZB_ZCL_DOOR_LOCK_LANGUAGE_DEFAULT_VALUE {0} |
Default value for Language attribute. | |
#define | ZB_ZCL_DOOR_LOCK_LED_SETTINGS_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for LEDSettings attribute. | |
#define | ZB_ZCL_DOOR_LOCK_AUTO_RELOCK_TIME_DEFAULT_VALUE ((zb_uint32_t)0) |
Default value for AutoRelockTime attribute. | |
#define | ZB_ZCL_DOOR_LOCK_SOUND_VOLUME_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for SoundVolume attribute. | |
#define | ZB_ZCL_DOOR_LOCK_OPERATING_MODE_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for OperatingMode attribute. | |
#define | ZB_ZCL_DOOR_LOCK_OPERATION_MODES_SUPPORTED_DEFAULT_VALUE ((zb_uint16_t)0x0001) |
Default value for OperationModesSupported attribute. | |
#define | ZB_ZCL_DOOR_LOCK_DEFAULT_CONFIGURATION_REGISTER_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for DefaultConfigurationRegister attribute. | |
#define | ZB_ZCL_DOOR_LOCK_ENABLE_LOCAL_PROGRAMMING_DEFAULT_VALUE ((zb_bool_t)0x01) |
Default value for EnableLocalProgramming attribute. | |
#define | ZB_ZCL_DOOR_LOCK_ENABLE_ONE_TOUCH_LOCKING_DEFAULT_VALUE ((zb_bool_t)0) |
Default value for EnableOneTouchLocking attribute. | |
#define | ZB_ZCL_DOOR_LOCK_ENABLE_INSIDE_STATUS_LED_DEFAULT_VALUE ((zb_bool_t)0) |
Default value for EnableInsideStatusLED attribute. | |
#define | ZB_ZCL_DOOR_LOCK_ENABLE_PRIVACY_MODE_BUTTON_DEFAULT_VALUE ((zb_bool_t)0) |
Default value for EnablePrivacyModeButton attribute. | |
#define | ZB_ZCL_DOOR_LOCK_WRONG_CODE_ENTRY_LIMIT_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for WrongCodeEntryLimit attribute. | |
#define | ZB_ZCL_DOOR_LOCK_USER_CODE_TEMPORARY_DISABLE_TIME_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for UserCodeTemporaryDisableTime attribute. | |
#define | ZB_ZCL_DOOR_LOCK_SEND_PIN_OVER_THE_AIR_DEFAULT_VALUE ((zb_bool_t)0) |
Default value for SendPINOverTheAir attribute. | |
#define | ZB_ZCL_DOOR_LOCK_REQUIRE_PIN_RF_ID_DEFAULT_VALUE ((zb_bool_t)0) |
Default value for RequirePIN_RF_ID attribute. | |
#define | ZB_ZCL_DOOR_LOCK_SECURITY_LEVEL_DEFAULT_VALUE ((zb_uint8_t)0) |
Default value for SecurityLevel attribute. | |
#define | ZB_ZCL_DOOR_LOCK_ALARM_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for AlarmMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_KEYPAD_OPERATION_EVENT_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for KeypadOperationEventMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_RF_OPERATION_EVENT_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for RFOperationEventMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_MANUAL_OPERATION_EVENT_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for ManualOperationEventMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_RFID_OPERATION_EVENT_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for RFIDOperationEventMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_KEYPAD_PROGRAMMING_EVENT_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for KeypadProgrammingEventMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_RF_PROGRAMMING_EVENT_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for RFProgrammingEventMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_RFID_PROGRAMMING_EVENT_MASK_DEFAULT_VALUE ((zb_uint16_t)0x0000) |
Default value for RFIDProgrammingEventMask attribute. | |
#define | ZB_ZCL_DOOR_LOCK_SEND_LOCK_DOOR_REQ(buffer, dst_addr, dst_addr_mode, dst_ep, ep, dis_default_resp, cb) |
General macro for sending a "Door Lock" cluster command. More... | |
#define | ZB_ZCL_DOOR_LOCK_SEND_UNLOCK_DOOR_REQ(buffer, dst_addr, dst_addr_mode, dst_ep, ep, dis_default_resp, cb) |
General macro for sending a "Door Unlock" cluster command. More... | |
#define | ZB_ZCL_DOOR_LOCK_SEND_LOCK_DOOR_RES(buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, seq_num, status, aps_secured) |
Door Lock command send response macro. More... | |
#define | ZB_ZCL_DOOR_LOCK_SEND_UNLOCK_DOOR_RES(buffer, addr, dst_addr_mode, dst_ep, ep, prfl_id, seq_num, status, aps_secured) |
Door Unlock command send response macro. More... | |
#define | ZB_ZCL_DOOR_LOCK_READ_LOCK_DOOR_RES(buffer) |
Door Lock response structured reading. More... | |
#define | ZB_ZCL_DOOR_LOCK_READ_UNLOCK_DOOR_RES(buffer) |
Door unLock response structured reading. More... | |
Door Lock cluster defined in ZCL spec, clause 7.3.
The cluster contains 2 command sets:
Both requests have no payload and could be scheduled for sending with corresponding macros. Both responses have simple payload, and their sending and parsing with corresponding macros is almost trivial.
Send Door Lock command:
Send Door Unlock command:
#define ZB_ZCL_DECLARE_DOOR_LOCK_ATTRIB_LIST | ( | attr_list, | |
lock_state, | |||
lock_type, | |||
actuator_enabled | |||
) |
Declare attribute list for Door Lock cluster.
attr_list | - attribute list name |
lock_state | |
lock_type | |
actuator_enabled |
#define ZB_ZCL_DOOR_LOCK_READ_LOCK_DOOR_RES | ( | buffer | ) |
Door Lock response structured reading.
buffer | - ID of the message buffer (of type zb_bufid_t) containing payload |
#define ZB_ZCL_DOOR_LOCK_READ_UNLOCK_DOOR_RES | ( | buffer | ) |
Door unLock response structured reading.
buffer | - ID of the message buffer (of type zb_buf_t) containing payload |
#define ZB_ZCL_DOOR_LOCK_SEND_LOCK_DOOR_REQ | ( | buffer, | |
dst_addr, | |||
dst_addr_mode, | |||
dst_ep, | |||
ep, | |||
dis_default_resp, | |||
cb | |||
) |
General macro for sending a "Door Lock" cluster command.
buffer | to put command payload and headers to |
dst_addr | address to send to |
dst_addr_mode | destination address mode |
dst_ep | destination endpoint |
ep | source endpoint |
dis_default_resp | "Disable default response" flag |
cb | command send status callback |
#define ZB_ZCL_DOOR_LOCK_SEND_LOCK_DOOR_RES | ( | buffer, | |
addr, | |||
dst_addr_mode, | |||
dst_ep, | |||
ep, | |||
prfl_id, | |||
seq_num, | |||
status, | |||
aps_secured | |||
) |
Door Lock command send response macro.
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_num | - sequence number |
status | - result of command execute |
aps_secured | - APS security mode |
#define ZB_ZCL_DOOR_LOCK_SEND_UNLOCK_DOOR_REQ | ( | buffer, | |
dst_addr, | |||
dst_addr_mode, | |||
dst_ep, | |||
ep, | |||
dis_default_resp, | |||
cb | |||
) |
General macro for sending a "Door Unlock" cluster command.
buffer | to put command payload and headers to |
dst_addr | address to send to |
dst_addr_mode | destination address mode |
dst_ep | destination endpoint |
ep | source endpoint |
dis_default_resp | "Disable default response" flag |
cb | command send status callback |
#define ZB_ZCL_DOOR_LOCK_SEND_UNLOCK_DOOR_RES | ( | buffer, | |
addr, | |||
dst_addr_mode, | |||
dst_ep, | |||
ep, | |||
prfl_id, | |||
seq_num, | |||
status, | |||
aps_secured | |||
) |
Door Unlock command send response macro.
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_num | - sequence number |
status | - result of command execute |
aps_secured | - APS security mode |
typedef struct zb_zcl_door_lock_read_lock_door_res_payload_s zb_zcl_door_lock_read_lock_door_res_payload_t |
Door lock commands response payload structure
typedef struct zb_zcl_door_lock_read_unlock_door_res_payload_s zb_zcl_door_lock_read_unlock_door_res_payload_t |
Door unlock commands response payload structure
Door Lock cluster attribute identifiers.
Door Lock cluster commands.
Door Lock cluster commands response.
Values for DoorState attribute.
Values for LockState attribute.
Values for LockType attribute.