Trident IoT Z-Wave SDK
 
Loading...
Searching...
No Matches
CC_DoorLock.h
Go to the documentation of this file.
1
7#ifndef _CC_DOORLOCK_H_
8#define _CC_DOORLOCK_H_
9
10/****************************************************************************/
11/* INCLUDE FILES */
12/****************************************************************************/
13#include <ZW_typedefs.h>
14#include <ZW_classcmd.h>
15#include <CC_Common.h>
17#include <ZAF_types.h>
18#include "ZAF_CC_Invoker.h"
19
27/****************************************************************************/
28/* EXPORTED TYPES and DEFINITIONS */
29/****************************************************************************/
38typedef enum
39{
40 DOOR_MODE_UNSECURE = DOOR_LOCK_OPERATION_SET_DOOR_UNSECURED_V2,
41 DOOR_MODE_UNSECURE_TIMEOUT = DOOR_LOCK_OPERATION_SET_DOOR_UNSECURED_WITH_TIMEOUT_V2,
42 DOOR_MODE_UNSECURE_INSIDE = DOOR_LOCK_OPERATION_SET_DOOR_UNSECURED_FOR_INSIDE_DOOR_HANDLES_V2,
43 DOOR_MODE_UNSECURE_INSIDE_TIMEOUT = DOOR_LOCK_OPERATION_SET_DOOR_UNSECURED_FOR_INSIDE_DOOR_HANDLES_WITH_TIMEOUT_V2,
44 DOOR_MODE_UNSECURE_OUTSIDE = DOOR_LOCK_OPERATION_SET_DOOR_UNSECURED_FOR_OUTSIDE_DOOR_HANDLES_V2,
45 DOOR_MODE_UNSECURE_OUTSIDE_TIMEOUT = DOOR_LOCK_OPERATION_SET_DOOR_UNSECURED_FOR_OUTSIDE_DOOR_HANDLES_WITH_TIMEOUT_V2,
46 DOOR_MODE_UNKNOWN = DOOR_LOCK_OPERATION_REPORT_DOOR_MODE_UNKNOWN_V4,
47 DOOR_MODE_SECURED = DOOR_LOCK_OPERATION_SET_DOOR_SECURED_V2
49
63
74
87
158
190
251
258{
259 // bool door_closed; /// true for Closed, false for Open
266
270#define DOOR_LOCK_OPERATION_SET_TIMEOUT_NOT_SUPPORTED 0xFE
271
277#define CC_DOOR_LOCK_CODE_EVENT_TOGGLE 1
278#define CC_DOOR_LOCK_EVENT_OPERATION_SET_DONE 2
279#define CC_DOOR_LOCK_EVENT_HW_OPERATION_DONE 3
281
282/****************************************************************************/
283/* EXPORTED DATA */
284/****************************************************************************/
285
286
287/****************************************************************************/
288/* EXPORTED FUNCTIONS */
289/****************************************************************************/
290
296void cc_door_lock_latch_set(bool opened);
297
302void cc_door_lock_handle_set(bool opened);
303
309void cc_door_lock_bolt_set(bool locked);
310
317
324
335
341
347
353
360#endif /* _CC_DOORLOCK_H_ */
Transport layer for Multi Channel endpoint functionality.
cc_door_lock_handle_t
Definition CC_DoorLock.h:80
void CC_DoorLock_ClearOutsideDoorHandleState(cc_door_lock_handle_t handle)
bool door_lock_hw_handle_is_pressed(void)
struct _door_lock_hw_data_t door_lock_hw_data_t
void CC_DoorLock_SetOutsideDoorHandleState(cc_door_lock_handle_t handle)
bool door_lock_hw_bolt_is_unlocked(void)
cc_door_lock_operation_type_t
Definition CC_DoorLock.h:57
door_lock_mode_t
Definition CC_DoorLock.h:39
void cc_door_lock_latch_set(bool opened)
uint8_t cc_door_lock_mode_hw_change(door_lock_mode_t mode)
void cc_door_lock_handle_set(bool opened)
cc_door_lock_door_component_t
Definition CC_DoorLock.h:69
bool door_lock_hw_latch_is_closed(void)
void cc_door_lock_bolt_set(bool locked)
@ DOOR_HANDLE_4
Definition CC_DoorLock.h:85
@ DOOR_HANDLE_1
Definition CC_DoorLock.h:82
@ DOOR_HANDLE_3
Definition CC_DoorLock.h:84
@ DOOR_HANDLE_2
Definition CC_DoorLock.h:83
@ DOOR_HANDLE_DISABLED
Definition CC_DoorLock.h:81
@ DOOR_OPERATION_CONST
Definition CC_DoorLock.h:58
@ DOOR_OPERATION_TIMED
Definition CC_DoorLock.h:59
@ DOOR_OPERATION_RESERVED
Definition CC_DoorLock.h:60
@ DOOR_MODE_UNSECURE_INSIDE_TIMEOUT
DOOR_MODE_UNSECURE_INSIDE_TIMEOUT.
Definition CC_DoorLock.h:43
@ DOOR_MODE_UNSECURE
DOOR_MODE_UNSECURE.
Definition CC_DoorLock.h:40
@ DOOR_MODE_UNSECURE_OUTSIDE_TIMEOUT
DOOR_MODE_UNSECURE_OUTSIDE_TIMEOUT.
Definition CC_DoorLock.h:45
@ DOOR_MODE_UNSECURE_OUTSIDE
DOOR_MODE_UNSECURE_OUTSIDE.
Definition CC_DoorLock.h:44
@ DOOR_MODE_UNKNOWN
DOOR_MODE_UNKNOWN.
Definition CC_DoorLock.h:46
@ DOOR_MODE_SECURED
DOOR_MODE_SECURED.
Definition CC_DoorLock.h:47
@ DOOR_MODE_UNSECURE_INSIDE
DOOR_MODE_UNSECURE_INSIDE.
Definition CC_DoorLock.h:42
@ DOOR_MODE_UNSECURE_TIMEOUT
DOOR_MODE_UNSECURE_TIMEOUT.
Definition CC_DoorLock.h:41
@ DOOR_COMPONENT_LATCH
Definition CC_DoorLock.h:72
@ DOOR_COMPONENT_BOLT
Definition CC_DoorLock.h:71
@ DOOR_COMPONENT_DOOR
Definition CC_DoorLock.h:70
Definition CC_DoorLock.h:258
bool bolt_unlocked
Definition CC_DoorLock.h:260
bool latch_closed
True for unlocked, false for locked.
Definition CC_DoorLock.h:261
bool handle_pressed
True for Closed, false for Open.
Definition CC_DoorLock.h:262
Definition CC_DoorLock.h:144
uint8_t lengthSupportedOperationType
Definition CC_DoorLock.h:146
uint8_t autoRelockSupport
Definition CC_DoorLock.h:153
uint8_t reserved
Definition CC_DoorLock.h:145
uint8_t supportedDoorComponents
Definition CC_DoorLock.h:152
uint8_t blockToBlockSupport
Definition CC_DoorLock.h:156
uint8_t lengthSupportedDoorLockModeList
Definition CC_DoorLock.h:148
uint8_t supportedOperationTypeBitmask
Definition CC_DoorLock.h:147
uint8_t supportedOutsideHandleModes
Definition CC_DoorLock.h:150
uint8_t supportedInsideHandleModes
Definition CC_DoorLock.h:151
uint8_t holdAndReleaseSupport
Definition CC_DoorLock.h:154
uint8_t twistAssistSupport
Definition CC_DoorLock.h:155
Definition CC_DoorLock.h:178
uint8_t reservedOptionsFlags
Definition CC_DoorLock.h:188
uint8_t insideDoorHandleMode
Definition CC_DoorLock.h:180
uint8_t autoRelockTime1
Definition CC_DoorLock.h:184
uint8_t holdAndReleaseTime1
Definition CC_DoorLock.h:186
uint8_t holdAndReleaseTime2
Definition CC_DoorLock.h:187
uint8_t lockTimeoutMin
Definition CC_DoorLock.h:182
uint8_t outsideDoorHandleMode
Definition CC_DoorLock.h:181
uint8_t autoRelockTime2
Definition CC_DoorLock.h:185
uint8_t type
Definition CC_DoorLock.h:179
uint8_t lockTimeoutSec
Definition CC_DoorLock.h:183
Definition CC_DoorLock.h:240
uint8_t insideDoorHandleState
Definition CC_DoorLock.h:245
uint8_t condition
Definition CC_DoorLock.h:247
uint8_t outsideDoorHandleMode
Definition CC_DoorLock.h:244
uint8_t outsideDoorHandleState
Definition CC_DoorLock.h:246
door_lock_mode_t mode
Definition CC_DoorLock.h:241
cc_door_lock_operation_type_t type
Definition CC_DoorLock.h:242
uint8_t lockTimeoutSec
Definition CC_DoorLock.h:249
uint8_t lockTimeoutMin
Definition CC_DoorLock.h:248
uint8_t insideDoorHandleMode
Definition CC_DoorLock.h:243