Residential Lock DP Reference

Last Updated on : 2024-06-21 03:31:33download

Data point (DP) IDs of Zigbee residential locks reach DP 61 and can be classified into the following parts:

  • Part 1: The DP IDs of earlier versions of Zigbee residential locks reach DP 52.
  • Part 2: The additional DP IDs of the latest versions of Zigbee residential locks reach DP 61 and support multiple functions. For example, manage gesture passwords or periodic passwords and add unlocking methods on the app.

DP reference for earlier versions of Zigbee residential locks

Function DP ID Type Description Data transfer type Serial port command Data length Data format
Unlock with fingerprints 1 value The fingerprint is enrolled on the lock, and the ID is assigned by the hardware after the enrollment is completed. After the door is unlocked with the fingerprint, the lock reports the DP. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with normal passwords 2 value A normal password is enrolled on the lock, and the ID is assigned by the hardware after the enrollment is completed. After the door is unlocked with the password, the lock reports the DP. The password is created on the lock hardware, and does not include the temporary password that is created on the app. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with temporary passwords 3 value A temporary password that is created on the app must be reported after the door is unlocked with the temporary password. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with dynamic passwords 4 value After the door is unlocked with a dynamic password, the DP is reported with the specified number 1. Each dynamic password record that is reported to the app shows the unlocking method without a specific number. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with cards 5 value Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with face recognition 6 value Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with mechanical keys 7 value Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Door opening and closing events 8 bool If the lock hardware supports monitoring of door opening and closing events, select this DP. Door opening and closing events are added to the door opening records. The latest door opening and closing records indicate the current opening and closing status of the door. Valid values: 0: closed. 1: opened. Report 0x23 0x01 {“type”:“bool”}
Alerts 9 enum Valid values: 0: fingerprint attempts. 1: password attempts. 2: card attempts. 3: face recognition attempts. 4: stuck bolts. 5: high temperature. 6: overtime unlocked reminders. 7: electronic lock tongue not ejected. 8: anti-pry design. 9: key insertion. 10: low battery. DP 11 is available to set alerts of low battery. If you specify 11 as DP 9, you do not need to set DP 11. Report 0x05 0x01 {“range”:[“wrong_finger”,“wrong_password”,“wrong_card”,“wrong_face”
“tongue_bad”,“too_hot”,“unclosed_time”,“tongue_not_out”,“pry”,“key_in”,“low_battery”],“type”:“enum”}
Remaining battery capacity 10 value The battery percentage that is reported by the lock. Report 0x05 0x04 {“unit”:“”,“min”:0,“max”:100,“scale”:0,“step”:1,“type”:“value”}
Low battery alerts (deprecated in this version) 11 Enum DP 11 is available to set alerts of low battery. If you specify 11 as DP 9, you do not need to set DP 11. We recommend that you do not set this DP without special requirements. {“range”:[“normal”,“low”,“power_off”],“type”:“enum”}
Double locking status 12 bool If the lock supports double locking with remote control, this DP can be sent to automatically run the double locking task. Users can also manually double lock the door with the hardware. After the manual operation, the hardware reports the status to indicate whether the door is double locked. An unlocking command can be sent to unlock the double-locked door. If the lock does not support double locking with remote control, this DP is only used to indicate the lock status. After the door is double locked or unlocked after double locking, this DP is used to report lock status to the server. Send 0x04 0x01 {“type”:“bool”}
Report 0x05 0x01 {“type”:“bool”}
Child lock status 13 bool Select this DP if the lock supports the child lock function. This allows the lock to report the status value to the server when the status changes. Report 0x05 0x01 {“type”:“bool”}
Doorbell ringing 14 bool If the lock supports the doorbell function, after the doorbell button is pressed, the lock hardware emits a doorbell sound and the app receives a notification. Report 0x05 0x01 {“type”:“bool”}
Chime sounds 15 enum Sets a doorbell ringtone. After users specify a doorbell ringtone on the app, the hardware receives the latest setting and returns this setting. For example, if the value is set to 5, the hardware returns 5 after the setting is successful. Otherwise, the value is not returned. The range of the chime can be configured based on your actual conditions. Send 0x04 0x01 {“range”:[“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”],“type”:“enum”}
Report 0x05 0x01
Sound level of the chime 16 enum Sets the sound level of the chime. You can use this DP to set the sound level of the doorbell when keys are pressed on the lock. Valid values: mute: mutes the doorbell. low: the low sound level. normal: the normal sound level. high: the high sound level. After users set a sound level on the app, the hardware receives the latest setting and returns this setting. For example, if the value is set to high, the hardware returns high after the setting is successful. Otherwise, the value is not returned. Send 0x04 0x01 {“range”:[“mute”,“low”,“normal”,“high”],“type”:“enum”}
Report 0x05 0x01
Language switching 17 enum Valid values: 1: Simplified Chinese. 2: English. 3: Japanese. 4: German. 5: Spanish. 6: Latin. 7: French. 8: Russian. 9: Italian. 10: Traditional Chinese. 11: Korean. After users set a language on the app, the hardware receives the latest setting and returns this setting. For example, if the value is set to 5, the hardware returns 5 after the setting is successful. Otherwise, the value is not returned. Send 0x04 0x01 {“range”:[“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”,“10”,“11”],“type”:“enum”}
Report 0x05 0x01
Manage welcome messages on the display screen (deprecated in this version) 18 string If the lock provides a display screen, you can use this DP to enable customization of welcome messages on the app. This function is currently unavailable. Send 0x04 N {“type”:“string”,“maxlen”:255}
Report 0x05 N
Volume on keypress 19 enum Valid values: 0 to 9 to specify a volume level from mute to the loudest volume. After users set a volume level on the app, the hardware receives the latest setting and returns this setting. For example, if the value is set to 5, the hardware returns 5 after the setting is successful. Otherwise, the value is not returned. Send 0x04 0x01 {“range”:[“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”],“type”:“enum”}
Report 0x05 0x01
Local voice guidance volume 20 enum Valid values: 0 to 9 to specify a volume level from mute to the loudest volume. After users set a volume level on the app, the hardware receives the latest setting and returns this setting. For example, if the value is set to 5, the hardware returns 5 after the setting is successful. Otherwise, the value is not returned. Send 0x04 0x01 {“range”:[“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”],“type”:“enum”}
Report 0x05 0x01
Remote unlocking command with a password (deprecated in this version) 21 raw A remote unlocking command with a password can be sent to the lock. After the local verification is passed, the door is unlocked. The lock returns DP 22 after this DP is received. After the door is unlocked with the password, the lock returns DP 38 if the opened door status is detected, and returns DP 41 to report the remote unlocking record. Send 0x04 0x06 The ASCII codes Data[0] to Data[5] indicate the 6-digit password.
Report DP ID 22 is reported.
Response to a remote unlocking command 22 bool Reports the result of remote unlocking. This DP applies to remote unlocking with or without a password. The report is forwarded to the server by a gateway. Report 0x05 0x01 {“type”:“bool”}
Disables remote unlocking 23 bool Disables and enables the remote unlocking function on the app. If the function is disabled, the lock rejects remote unlocking requests and the door cannot be remotely unlocked on the app. Users can remotely unlock the door only after the function is enabled. Send 0x04 0x01 {“type”:“bool”}
Report 0x05 0x01
Create temporary passwords 24 raw Users can use the app or web to make an API request. The server converts the request to a DP. Send 0x04 0x15 DP structure: Tuya serial number+Server serial number+Lock manufacturer ID+Start time+End time+Whether a one-time password is used+Password. Content analysis: a) Tuya serial number: Data[0] and Data[1]. b) Server serial number: Data[2] and Data [3]. c) Lock manufacturer ID: Data[4] and Data[5], initial value: 0x0 and 0x0. d) Start time: Data[6] to Data[9], standard timestamp. e) End time: Data[10] to Data[13], standard timestamp. f) Whether a one-time password is used: Data[14]. 1: a one-time password. 0: other types of passwords. g) Password: Data[15] to Data[20]. The ASCII codes specify a 6-digit password.
Report 0x05 0x07 DP structure: Tuya serial number+Server serial number+Lock manufacturer ID+Response status. 1) Content analysis: a) Tuya serial number: Data[0] and Data[1]. b) Server serial number: Data[2] and Data[3]. c) Lock manufacturer ID: Data[4] and Data[5]. d) Response status: Data[6]. Valid values: 0: failure. 1: success. 2: duplicated password. 3: The maximum number of passwords is reached.
Delete temporary passwords 25 raw Users can use the app or web to make an API request. The server converts the request to a DP. Send 0x04 0x06 DP structure: Tuya serial number+Server serial number+Lock manufacturer ID. Content analysis: a) Tuya serial number: Data[0] and Data[1]. b) Server serial number: Data[2] and Data[3]. c) Lock manufacturer ID: Data[4] and Data [5.]
Report 0x05 0x07 DP structure: Tuya serial number+Server serial number+Lock manufacturer ID+Response status. Content analysis: a) Tuya serial number: Data[0] and Data[1]. b) Server serial number: Data[2] and Data[3]. c)Lock manufacturer ID: Data[4] and Data[5]. d) Response status: Data[6]. Valid values: 0: failure. 1: success. 2: The password does not exist.
Modify temporary passwords 26 raw Users can use the app or web to make an API request. The server converts the request to a DP. Send 0x04 0x15 The format is the same as that used for creating temporary passwords.
Report 0x05 0x07 The format is the same as that used for creating temporary passwords.
Freeze temporary passwords 27 raw Users can use the app or web to make an API request. The server converts the request to a DP. Send 0x04 0x06 The format is the same as that used for deleting temporary passwords.
Report 0x05 0x07 The format is the same as that used for deleting temporary passwords.
Unfreeze temporary passwords 28 raw Users can use the app or web to make an API request. The server converts the request to a DP. Send 0x04 0x06 The format is the same as that used for deleting temporary passwords.
Report 0x05 0x07 The format is the same as that used for deleting temporary passwords.
Switch between single unlocking and combination unlocking 34 enum This function is currently unavailable. Send 0x04 0x01 {“range”:[“Single”,“Combination”],“type”:“enum”}
Report 0x05 0x01
Duress alerts 35 bool This function does not require hardware implementation by default. The lock does not need to determine whether it is a duress event. Just mark the unlocking ID on the app. Report 0x05 0x01 {“type”:“bool”}
Unlock from the inside of the door 36 bool Use this DP if the lock supports the detection of unlocking from the inside of the door, but does not support the detection of the opening and closing action. For example, if an electronic lock body can detect the door opening from the inside, the DP can indicate that the door is opened from the inside. This action is recorded in the door opening records. If unlocking from the inside of the door occurs, this event is reported in the format of true (1). Report 0x05 0x01 {“type”:“bool”}
Clear temporary passwords 39 raw When users use the app to restore the factory settings of the lock, the cloud sends a command to the lock to clear local temporary passwords. If factory settings are restored and local temporary passwords are cleared, this DP is reported. This ensures that the temporary password records stored in the cloud are consistent with these stored locally. If the lock failed to report DP 39 when factory settings are restored, DP 39 must be reported after the next pairing operation. Send 0x04 0x06 The format is the same as that used for deleting temporary passwords.
Report (send ACKs) 0x05 0x07 The format is the same as that used for deleting temporary passwords.
Report (initiate reports). Note that the report is valid only 10 seconds after the module is connected to the network. 0x23 0x07 The format is the same as that used for deleting temporary passwords.
Password-free remote unlocking (deprecated in this version) 40 raw If the lock supports remote unlocking with this DP, users can use the app to initiate the password-free remote unlocking. After the lock receives the DP, the door is unlocked. The lock returns DP 22 after this DP is received. After the door is unlocked with the password, the lock returns DP 38 if the opened door status is detected, and returns DP 41 to report the remote unlocking record. In the new version, DP 48 is used to set password-free remote unlocking. DP 49 is sent to enable password-free unlocking. Send 0x04 0x00
Report DP ID 22 is reported.
Remote unlocking history 41 value After the door is remotely unlocked, the lock must: 1. report the successful remote unlocking operation. 2. report a door opening record. 3. report the door opening status. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Double lock by lifting up 42 bool This DP is reported after lifting up and double locking. Valid values: true: The door is double locked. false: The door is not double locked. Report 0x23 0x01 {“type”:“bool”}
SMS notification 43 bool If temporary passwords are created or modified on the app, you can use this DP to notify users of the temporary passwords by SMS. This is a chargeable service. If you do not require the function, do not select this DP. Note that all app accounts to which the product ID of the lock belongs must be topped up to enable the SMS notification. Report and send This DP is not required by the microcontroller unit (MCU).
Unlock with irises 44 value The iris is enrolled on the lock, and the ID is assigned by the hardware after the enrollment is completed. After the door is unlocked with an iris, the lock will report the DP. Report the record type of data. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with palm prints 45 value The palm print is enrolled on the lock, and the ID is assigned by the hardware after the enrollment is completed. After the door is unlocked with the palm print, the lock will report the DP. Report the record type of data. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Unlock with finger veins 46 value The finger vein is enrolled on the lock, and the ID is assigned by the hardware after the enrollment is completed. After the door is unlocked with the finger vein, the lock reports the DP. Report the record type of data. Report 0x23 0x04 {“unit”:“”,“min”:0,“max”:999,“scale”:0,“step”:1,“type”:“value”}
Opening and closing status 47 enum If the lock hardware can determine the door opening and closing status, select this DP to support multiple functions, such as the geomagnetic sensor and gyroscope. The value of unknown is reported during the first pairing and initialization process. Report 0x23 0x04 {“range”:[“torque_low”,“torque_midlle”,“torque_high”],“type”:“enum”}
Set the key for password-free remote unlocking (new solution in this version) 48 raw (Optional) This new DP is used to ensure security for password-free remote unlocking. Select this DP to enable password-free remote unlocking. The server sends the DP with a key to the lock for unlocking verification. Current logic: After the lock receives DP 48, it stores the key for remote unlocking. After the lock receives DP 49 for password-free remote unlocking, it verifies the key that is included in the command. Send 0x04 0x15 Request format: Whether the key takes effect+Key ID+Time when the key takes effect+Time when the key expires+Maximum number of times the key can be used+Key content. Content analysis: a) Whether the key takes effect: Data[0]. 0: takes effect. 1: does not take effect. b) Key ID: Data[1] and Data[2]. c) Time when the key takes effect: Data[3] to Data[6]. d) Time when the key expires: Data[7] to Data[10]. e) Maximum number of times the key can be used: Data[11] and Data[12]. f) Key content: Data[13] to Data[20.]
Report 0x05 0x03 DP structure: Status+Key ID. Content analysis: a) Status: Data[0]. 0: set successfully. 1: failed to set. b) Key ID: Data[1] and Data[2.]
Password-free remote unlocking with keys (new solution in this version) 49 raw (Optional) This DP is used with DP 48 to implement password-free remote unlocking in this version. The MCU parses the data format after DP 49 is sent. DP 40 for password-free remote unlocking in earlier versions is deprecated. To remotely unlock the door without a password, the server sends DP 48 that includes the key. The MCU stores the key. Then the user sends the command of DP 49 on the app and the MCU replies to this command. If the door is unlocked, the MCU returns DP 22 that is the response of successful remote unlocking. The MCU also returns DP 41 that includes a remote unlocking record. Send 0x04 DP structure: Opening and closing status+Key ID+Key content+Unlocking method. Content analysis: a) Open and closed status: Data[0]. 0: closed. 1: open. b) Key ID: Data[1] and Data[2]. c) Key content: Data[3] to Data[10]. d) Unlocking method: Data[11] to Data[12]. 0: remote unlocking. 1: unlock with a mobile phone. 2: unlock with voice.
Report 0x05 DP structure: Status+Key ID. Content analysis: a) Status: Data[0]. 0: success. 1: failure. 2: The key ID does not exist. 3: key verification failed. b) Key ID: Data[1] and Data[2.]
Automatic latch 50 bool The switch of automatic latch. Send and report 0x23 {“type”:“bool”}
Set the latency of automatic latch 51 value After automatic latch is enabled, you can log in to the Tuya Developer Platform and set the period in which this function takes effect. Valid values of the latency: 0 to 1800. Unit: seconds. If the latency is set to 0, automatic latch is disabled. Send and report 0x23 {“unit”:“”,“min”:0,“max”:1800,“scale”:0,“step”:1,“type”:“value”}
Motor torque 52 enum The motor torque is classified into three levels. You can log in to the Tuya Developer Platform and select the required level. Send and report 0x05 {“range”:[“0”,“1”,“2”,“3”],“type”:“enum”}

Zigbee residential lock pro—New DPs

Gesture password

Gesture password Description Type Data format
Gesture password
DP 53
lock_gesture
bool
This DP is used for secondary verification of a gesture password in the cloud.
You can select this DP to enable the gesture password function on the panel. If this DP is not selected, the secondary verification of a gesture password is disabled.
Send and report 1. Send: true to enable the gesture password function.
2. Report: true to indicate that the gesture password function is enabled.

Add or delete an unlocking method

Add an unlocking method Description Type
Add an unlocking method
DP 54
unlock_method_create
raw
Process: The app sends this DP and the device gets ready to add an unlocking method. Unlocking with fingerprints, cards, and passwords are supported. Send and report

Format of data sent by the app panel:

Type Enrollment stage Administrator tag Member ID Hardware ID
1 byte 1 byte 1 byte 2 bytes 2 bytes
0x01: password.
0x02: card.
0x03: fingerprint.
0x00: starts enrollment.
0xFE: cancels enrollment (initiated by the app).
0x00: common member.
0x01: administrator.
0x0001–0x03e7 (maximum: 999) 0x03e7. Default value: 999.

Format of data reported by the MCU

Type Enrollment stage Administrator tag Member ID Hardware ID Total number of enrollments Returned status
1 byte 1 byte 1 byte 2 bytes 2 bytes 1 byte 1 byte
0x01: password. 0x02: card. 0x03: fingerprint. 0x00: starts enrollment. 0xFE: cancels enrollment (initiated by the app). 0xFD: failed to enroll. 0xFC: enrolling. 0xFF: enrollment completed. 0x00: common member. 0x01: administrator. 0x0001–0x03e7
(maximum: 999) 0x0001–0x03e7
(maximum: 999)
The current number of enrollments. For example, a fingerprint might be enrolled five times. Enter the sequence number (starting from 1) for each enrollment. Reasons for an enrollment failure:
0x00: enrollment timeout.
0x01: enrollment failed.
0x02: duplicated enrollment.
0x03: no available hardware ID.
0x04: password input error, invalid non-numeric value.
0x05: password length error.
0x06: invalid unlocking method.
0x07: enrolling a fingerprint.
0x08: binding a card.
0xFE: invalid hardware ID.
Reasons for an enrollment error:
0x00: no error.
0x01: incomplete fingerprint.

Delete an unlocking method

Delete an unlocking method Description Type
Delete an unlocking method
DP 55
unlock_method_delete
raw
Process: The app sends the DP and the device deletes the specified unlocking method. Unlocking with fingerprints, cards, and passwords are supported. Send and report

Format of data sent by the app panel:

Type Enrollment stage Administrator tag Member ID Hardware ID Delete method
1 byte 1 byte 1 byte 2 bytes 2 bytes 1 byte
0x00: the member for which data is deleted.
0x01: password.
0x02: card.
0x03: fingerprint.
0x00: default 0x00: common member.
0x01: administrator.
0x0001–0x03e7 (maximum: 999) 0x03e7. Default value: 999. 0x00: delete all unlocking methods of the member.
0x01: delete one of the unlocking methods of the member.

Format of data reported by the MCU

Type Enrollment stage Administrator tag Member ID Hardware ID Delete method Returned status
1 byte 1 byte 1 byte 2 bytes 2 bytes 1 byte
0x00: the member for which data is deleted.
0x01: password.
0x02: card.
0x03: fingerprint.
0x00: default 0x00: common member.
0x01: administrator.
0x0001–0x03e7
(maximum: 999)
0x0001–0x03e7
(maximum: 999)
0x00: delete all unlocking methods of the member.
0x01: delete one of the unlocking methods of the member.
0x00: failed to delete.
0xFF: deleted successfully.
0x01: The hardware ID does not exist.
0x02: The ID cannot be deleted.

Password-free remote unlocking with keys (DP 48)

Set the key for password-free remote unlocking Description Type
Set the key for password-free remote unlocking
DP 48
remote_no_pd_setkey
raw
This DP is required to implement password-free remote unlocking. The cloud sends the key for password-free remote unlocking and the device stores the key. The app can send a password-free remote unlocking command with a key to the lock. After the local verification is passed, the door is unlocked. Send and report

Format of data sent by the app panel:

Whether the key takes effect Key ID Effective from Effective to Max number of times the key is used Key content
1 byte 2 bytes 4 bytes 4 bytes 2 bytes 8 bytes
0: takes effect.
1: does not take effect.
Not enabled The data length is 8 bytes. Type: numeric.

Format of data reported by the MCU

Status Key ID
1 byte 2 bytes
0: success. 1: failure. Not enabled

Password-free remote unlocking with keys (DP 49)

Password-free remote unlocking with keys Description Type
Password-free remote unlocking with keys
DP 49
remote_no_dp_key
raw
A key is sent to remotely unlock the door without a password. The app can send a password-free remote unlocking command with the key to the lock. After the local verification is passed, the door is unlocked. Send and report

Format of data sent by the app panel:

Open and closed status Key ID Key content Unlocking method
1 byte 2 bytes 8 bytes 4 bytes
0: door closed/locked.
1: door opened/unlocked.
Not enabled The data length is 8 bytes. Type: numeric. 0: remotely unlock.
1: unlock with a mobile phone.
2: unlock with voice.
3: geofencing.

Format of data reported by the MCU

Status Key ID
1 byte 2 bytes
0: success.
1: failure.
2: The key does not take effect and the key ID does not exist.
3: The maximum number of times for which the key can be used is reached.
4: The key is not within the validity period.
5: key verification failed.
Not enabled

Number of fingerprint enrollments

Number of fingerprint enrollments Description Type Data format
Maximum number of fingerprint enrollments
DP 56
finger_input_times
value
This is a cloud function. Select this DP to enable the maximum number of fingerprint enrollments. This DP applies when you add an unlocking method and set the maximum number of fingerprint enrollments.
You can also implement this function when an unlocking method is reported.
Send and report 1. Send: maximum number of fingerprint enrollments. Valid values: 2 to 15 times.
2. Report: maximum number of fingerprint enrollments. Valid values: 2 to 15 times.

Unlocked and locked status reporting

This DP is required to support the Alexa or Google voice assistant. The MCU reports the DP to indicate the unlocked or locked status. The reporting accuracy determines the performance of the voice assistant.

Unlocked and locked status reporting Description Type Data format
Unlocked and locked status reporting
DP 57
lock_motor_state
bool
Send and report 1. Send: 1 byte. true: unlocks the door. false: locks the door.
2. Report: 1 byte. true: indicates the unlocked status. false: indicates the locked status.

Synchronize all fingerprint IDs (DP 58)

Synchronize all fingerprint IDs Description Type Data format
Synchronize all fingerprint IDs
DP 58
update_all_finger
raw
Synchronizes all fingerprint IDs. The data on the device will prevail.
The device reports all fingerprint IDs to the cloud regularly or when the data changes.
Send and report 1. Send: status. 1 byte. true.
2. Report: See the following table. Synchronization data format

Synchronize all password IDs (DP 59)

Synchronize all password IDs Description Type Data format
Synchronize all password IDs
DP 59
update_all_password
raw
Synchronizes all password IDs. The data on the device will prevail.
The device reports all password IDs to the cloud regularly or when the data changes.
Send and report 1. Send: status. 1 byte. true.
2. Report: See the following table. Synchronization data format

Synchronize all card IDs (DP 60)

Synchronize all card IDs Description Type Data format
Synchronize all card IDs
DP 60
update_all_card
raw
Synchronizes all card IDs. The data on the device will prevail.
The device reports all card IDs to the cloud regularly or when the data changes.
Send and report 1. Send: status. 1 byte. true.
2. Report: See the following table. Synchronization data format

One-time password (DP 61)

Add an unlocking method Description Type Data format
One-time password
DP 61
single_use_password
bool
This is a cloud function. Select this DP to enable the one-time password function on the panel. Otherwise, this function is disabled. Send and report 1. Send: 1 byte. true.
2. Report: 1 byte. true.

Format of validity data

Byte Meaning Description Example Value
1 Start time
4 bytes, in the big-endian format

For example, Unix time:
123-456-789 = 0x075BCD15‬‬‬‬‬‬‬‬‬‬‬.
7B
2 5B
3 CD
4 15
5 End time
4 bytes, in the big-endian format
For example, Unix time:
999-999-999 = 0x3B9AC9FF‬‬‬‬‬‬‬‬‬‬‬
3B
6 9A
7 C9
8 FF
9 Schedule of validity 0x01:daily schedule 0x02:weekly schedule 0x00:no schedule








10
This byte is 0x00 by default.
bit7: 0 by default.
bit6: Sunday
...
bit0: Monday
11 Start time 1 of the day (hours)
Start time: 08:30
08 (decimal)
12 Start time 2 of the day (minutes) 30 (decimal)
13 End time 1 of the day (hours)

End time: 20:30
20 (decimal)
14 End time 2 of the day (minutes) 30 (decimal)

Example:
You can set the following schedule of validity: 08:00 to 08:30 from Monday to Friday during the period from January 26, 2018, 08:00:00 to August 8, 2018, 09:56:32. The following rules apply to this example:

  1. January 26, 2018, 08:00:00 is converted to the Unix time 1516924800 or 0x5A6A6F80‬‬‬‬‬‬‬‬‬‬‬.

  2. August 8, 2018, 09:56:32 is converted to the Unix time 1533693392 or 0x5B6A4DD0‬.

  3. The schedule of validity is set to 0x02 that specifies a weekly schedule.

  4. The flag of the scheduled day is 0x1F (Monday to Friday).

  5. Start time 1 of the day is 0x08. Start time 2 of the day is 0x00.

  6. End time 1 of the day is 0x08. End time 2 of the day is 0x1E.

    Based on these rules, the validity is set to 0x 5A6A6F80 5B6A4DD0 02 1F 0800 081E‬‬‬‬‬‬‬‬‬‬.

Note: The effective time and expiration time are sent in Greenwich Mean Time (GMT). The scheduled time and week are sent in local time.

Format of data synchronization

Synchronization of Zigbee unlocking methods

Prerequisites
The maximum number of unlocking methods is set to 199 for Zigbee locks and 999 for other types of locks.
The properties such as the freezing status are not required when you synchronize unlocking methods.

Design

  1. Sharding design:
    Divide the unlocking method into 125 copies, and each with eight passwords corresponds to a byte of eight bits. Then, exactly 1,000 passwords can be saved, and meet the maximum length of 255 bytes for DP reporting.

    Note: Each copy is 2 bytes in length. The first byte indicates the position of a shard in a data packet and the second byte indicates the bits on which the passwords are stored on the shard.

  2. Data format (bytes):

    byte0: the position of the shard. byte1: the unlocking method on the shard. If the flag of the unlocking method is 1, it indicates that the password exists.

  3. Example:

    • 00000001 00010011 indicates that the unlocking methods 0, 1, and 4 exist on the first shard.
    • 01000001 00100101 indicates the position 0, 2, and 5 on the 65th shard (2^6 + 1). The actual password ID on the position is 525. The value is based on this calculation: ((2^6+1)*8)+5 = 525.
    • 00000010 00000000 indicates empty shards to be processed by the hardware. To reduce the actual data length, this status does not need to be synchronized.