Koenkk / zigbee2mqtt

Zigbee 🐝 to MQTT bridge πŸŒ‰, get rid of your proprietary Zigbee bridges πŸ”¨
https://www.zigbee2mqtt.io
GNU General Public License v3.0
11.79k stars 1.64k forks source link

Nimly PRO / Onesti / easyCodeTouch_v1 - Not fully supported - How to improve? #17205

Open TheQue42 opened 1 year ago

TheQue42 commented 1 year ago

What happened?

Hi,

I've got a nimly pro lock, which according to https://github.com/Koenkk/zigbee-herdsman-converters/pull/4892 is supposed to be supported by z2m.

But I can only view/perform lock/unlock, control keypad volume and autolock. But according to the nimly support, the zigbee connection should provide the information about which user unlocked the lock as well, so that I can know if the lock was unlocked by keypad/fingerprint, and which userid. So this information should be possible to handle in z2m as well I assume, providing we can decode the output from the lock?

So what do I need to provide? I have here the output debug output from herdsman, where I unlock first with fingerprint, close the door and let it lock, and then unlock again, with an rfid tag.

What did you expect to happen?

Information in the "action": null, "action_source_name": null, or "action_user": null, indicating WHO/HOW the lock was unlocked.

How to reproduce it (minimal and precise)

Just unlock the lock with fingerprint/pin/rfid.

Zigbee2MQTT version

1.30.3 commit: 24c6b2e

Adapter firmware version

20221226

Adapter

sonoff, zStack3x0

Debug log

Zigbee2MQTT:info 2023-04-01 10:09:24: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:24.877Z","linkquality":94,"lock_state":"locked","pin_code":null,"sound_volume":"silent_mode","state":"LOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100] +11ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +0ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +13s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,68,128,0,1,11,205] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,11,205] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,11] - 205 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":11} +30ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,27,68,129,0,0,1,1,26,169,11,1,0,98,0,217,148,108,0,0,7,8,81,10,0,0,48,1,143,132,28,86] +81ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,27,68,129,0,0,1,1,26,169,11,1,0,98,0,217,148,108,0,0,7,8,81,10,0,0,48,1,143,132,28,86] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 27 - 2 - 4 - 129 - [0,0,1,1,26,169,11,1,0,98,0,217,148,108,0,0,7,8,81,10,0,0,48,1,143,132,28] - 86 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":257,"srcaddr":43290,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":98,"securityuse":0,"timestamp":7115993,"transseqnumber":0,"len":7,"data":{"type":"Buffer","data":[8,81,10,0,0,48,1]}} +82ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":81,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":0,"dataType":48,"attrData":1}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":43290,"endpoint":11,"linkquality":98,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +109ms zigbee-herdsman:controller:endpoint DefaultResponse 0xf4ce3683a2ad1ec0/11 257(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +108ms zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xf4ce3683a2ad1ec0:43290/11 (0,0,1) +108ms zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":43290,"destendpoint":11,"srcendpoint":1,"clusterid":257,"transid":12,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,81,11,10,0]}} +109ms zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,26,169,11,1,1,1,12,0,30,5,24,81,11,10,0,204] +109ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +14ms Zigbee2MQTT:info 2023-04-01 10:09:24: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:24.985Z","linkquality":98,"lock_state":"locked","pin_code":null,"sound_volume":"silent_mode","state":"LOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100] +8ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +1ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +108ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,68,128,0,1,12,202] +2ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,12,202] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,12] - 202 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":12} +26ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,30,68,129,0,0,1,1,26,169,11,1,0,94,0,190,199,108,0,0,10,8,82,10,0,1,27,0,0,1,10,143,132,28,117] +181ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,30,68,129,0,0,1,1,26,169,11,1,0,94,0,190,199,108,0,0,10,8,82,10,0,1,27,0,0,1,10,143,132,28,117] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 30 - 2 - 4 - 129 - [0,0,1,1,26,169,11,1,0,94,0,190,199,108,0,0,10,8,82,10,0,1,27,0,0,1,10,143,132,28] - 117 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":257,"srcaddr":43290,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":94,"securityuse":0,"timestamp":7129022,"transseqnumber":0,"len":10,"data":{"type":"Buffer","data":[8,82,10,0,1,27,0,0,1,10]}} +184ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":82,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":256,"dataType":27,"attrData":167837696}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":43290,"endpoint":11,"linkquality":94,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +210ms zigbee-herdsman:controller:endpoint DefaultResponse 0xf4ce3683a2ad1ec0/11 257(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +210ms zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xf4ce3683a2ad1ec0:43290/11 (0,0,1) +209ms zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":43290,"destendpoint":11,"srcendpoint":1,"clusterid":257,"transid":13,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,82,11,10,0]}} +209ms zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,26,169,11,1,1,1,13,0,30,5,24,82,11,10,0,206] +208ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +14ms Zigbee2MQTT:info 2023-04-01 10:09:25: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:25.196Z","linkquality":94,"lock_state":"locked","pin_code":null,"sound_volume":"silent_mode","state":"LOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100,254,3,68,128,0,1,13,203] +11ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100,254,3,68,128,0,1,13,203] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +1ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +211ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,13,203] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,13] - 203 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":13} +25ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,31,68,129,0,0,1,1,26,169,11,1,0,94,0,32,150,115,0,0,11,8,83,10,2,1,65,4,27,90,34,211,143,132,28,67] +7s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,31,68,129,0,0,1,1,26,169,11,1,0,94,0,32,150,115,0,0,11,8,83,10,2,1,65,4,27,90,34,211,143,132,28,67] +5ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 31 - 2 - 4 - 129 - [0,0,1,1,26,169,11,1,0,94,0,32,150,115,0,0,11,8,83,10,2,1,65,4,27,90,34,211,143,132,28] - 67 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":257,"srcaddr":43290,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":94,"securityuse":0,"timestamp":7575072,"transseqnumber":0,"len":11,"data":{"type":"Buffer","data":[8,83,10,2,1,65,4,27,90,34,211]}} +7s zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":83,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":258,"dataType":65,"attrData":{"type":"Buffer","data":[27,90,34,211]}}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":43290,"endpoint":11,"linkquality":94,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +7s zigbee-herdsman:controller:endpoint DefaultResponse 0xf4ce3683a2ad1ec0/11 257(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +7s zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xf4ce3683a2ad1ec0:43290/11 (0,0,1) +7s zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":43290,"destendpoint":11,"srcendpoint":1,"clusterid":257,"transid":14,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,83,11,10,0]}} +7s zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,26,169,11,1,1,1,14,0,30,5,24,83,11,10,0,204] +7s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +26ms Zigbee2MQTT:info 2023-04-01 10:09:32: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:32.342Z","linkquality":94,"lock_state":"locked","pin_code":null,"sound_volume":"silent_mode","state":"LOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100] +11ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +1ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +7s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,68,128,0,1,14,200] +2ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,14,200] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,14] - 200 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":14} +41ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,27,68,129,0,0,1,1,26,169,11,1,0,102,0,44,185,115,0,0,7,8,85,10,0,0,48,2,143,132,28,146] +95ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,27,68,129,0,0,1,1,26,169,11,1,0,102,0,44,185,115,0,0,7,8,85,10,0,0,48,2,143,132,28,146] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 27 - 2 - 4 - 129 - [0,0,1,1,26,169,11,1,0,102,0,44,185,115,0,0,7,8,85,10,0,0,48,2,143,132,28] - 146 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":257,"srcaddr":43290,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":102,"securityuse":0,"timestamp":7584044,"transseqnumber":0,"len":7,"data":{"type":"Buffer","data":[8,85,10,0,0,48,2]}} +97ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":85,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":0,"dataType":48,"attrData":2}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":43290,"endpoint":11,"linkquality":102,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +135ms zigbee-herdsman:controller:endpoint DefaultResponse 0xf4ce3683a2ad1ec0/11 257(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +130ms zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xf4ce3683a2ad1ec0:43290/11 (0,0,1) +129ms zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":43290,"destendpoint":11,"srcendpoint":1,"clusterid":257,"transid":15,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,85,11,10,0]}} +128ms zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,26,169,11,1,1,1,15,0,30,5,24,85,11,10,0,203] +128ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +15ms Zigbee2MQTT:info 2023-04-01 10:09:32: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:32.476Z","linkquality":102,"lock_state":"unlocked","pin_code":null,"sound_volume":"silent_mode","state":"UNLOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100] +11ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +0ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +128ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,68,128,0,1,15,201] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,15,201] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,15] - 201 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":15} +31ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,30,68,129,0,0,1,1,26,169,11,1,0,98,0,179,254,115,0,0,10,8,86,10,0,1,27,201,0,2,4,143,132,28,162] +253ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,30,68,129,0,0,1,1,26,169,11,1,0,98,0,179,254,115,0,0,10,8,86,10,0,1,27,201,0,2,4,143,132,28,162] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 30 - 2 - 4 - 129 - [0,0,1,1,26,169,11,1,0,98,0,179,254,115,0,0,10,8,86,10,0,1,27,201,0,2,4,143,132,28] - 162 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":257,"srcaddr":43290,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":98,"securityuse":0,"timestamp":7601843,"transseqnumber":0,"len":10,"data":{"type":"Buffer","data":[8,86,10,0,1,27,201,0,2,4]}} +255ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":86,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":256,"dataType":27,"attrData":67240137}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":43290,"endpoint":11,"linkquality":98,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +292ms zigbee-herdsman:controller:endpoint DefaultResponse 0xf4ce3683a2ad1ec0/11 257(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +297ms zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xf4ce3683a2ad1ec0:43290/11 (0,0,1) +298ms zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":43290,"destendpoint":11,"srcendpoint":1,"clusterid":257,"transid":16,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,86,11,10,0]}} +298ms zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,26,169,11,1,1,1,16,0,30,5,24,86,11,10,0,215] +297ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +27ms Zigbee2MQTT:info 2023-04-01 10:09:32: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:32.768Z","linkquality":98,"lock_state":"unlocked","pin_code":null,"sound_volume":"silent_mode","state":"UNLOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100,254,3,68,128,0,1,16,214] +15ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100,254,3,68,128,0,1,16,214] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +0ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +300ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,16,214] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,16] - 214 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":16} +43ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,28,68,129,0,0,4,11,143,132,1,1,0,98,0,166,248,121,0,0,8,24,98,10,8,5,33,249,3,143,132,29,32] +6s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,28,68,129,0,0,4,11,143,132,1,1,0,98,0,166,248,121,0,0,8,24,98,10,8,5,33,249,3,143,132,29,32] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 28 - 2 - 4 - 129 - [0,0,4,11,143,132,1,1,0,98,0,166,248,121,0,0,8,24,98,10,8,5,33,249,3,143,132,29] - 32 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":2820,"srcaddr":33935,"srcendpoint":1,"dstendpoint":1,"wasbroadcast":0,"linkquality":98,"securityuse":0,"timestamp":7993510,"transseqnumber":0,"len":8,"data":{"type":"Buffer","data":[24,98,10,8,5,33,249,3]}} +6s zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":true,"reservedBits":0},"transactionSequenceNumber":98,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":1288,"dataType":33,"attrData":1017}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":33935,"endpoint":1,"linkquality":98,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +6s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +23ms Zigbee2MQTT:info 2023-04-01 10:09:39: MQTT publish: topic 'zigbee2mqtt/Eluttag Mancave', payload '{"child_lock":"UNLOCK","current":1.02,"energy":235.95,"indicator_mode":"off/on","last_seen":"2023-04-01T08:09:39.031Z","linkquality":98,"power":147,"power_outage_memory":"restore","state":"ON","update":{"installed_version":-1,"latest_version":-1,"state":null},"update_available":null,"voltage":233}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,69,196,248,67,0,57] +407ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,69,196,248,67,0,57] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 5 - 196 - [248,67,0] - 57 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- ZDO - srcRtgInd - {"dstaddr":17400,"relaycount":0,"relaylist":[]} +431ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,32,68,129,0,0,25,0,248,67,11,1,0,112,0,49,99,122,0,0,12,1,57,1,0,79,18,118,20,1,48,1,21,248,67,29,156] +2ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,32,68,129,0,0,25,0,248,67,11,1,0,112,0,49,99,122,0,0,12,1,57,1,0,79,18,118,20,1,48,1,21,248,67,29,156] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 32 - 2 - 4 - 129 - [0,0,25,0,248,67,11,1,0,112,0,49,99,122,0,0,12,1,57,1,0,79,18,118,20,1,48,1,21,248,67,29] - 156 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":25,"srcaddr":17400,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":112,"securityuse":0,"timestamp":8020785,"transseqnumber":0,"len":12,"data":{"type":"Buffer","data":[1,57,1,0,79,18,118,20,1,48,1,21]}} +3ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":1,"manufacturerSpecific":false,"direction":0,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":57,"manufacturerCode":null,"commandIdentifier":1},"Payload":{"fieldControl":0,"manufacturerCode":4687,"imageType":5238,"fileVersion":352399361},"Command":{"ID":1,"response":2,"parameters":[{"name":"fieldControl","type":32},{"name":"manufacturerCode","type":33},{"name":"imageType","type":33},{"name":"fileVersion","type":35}],"name":"queryNextImageRequest"}},"address":17400,"endpoint":11,"linkquality":112,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +430ms Zigbee2MQTT:info 2023-04-01 10:09:39: MQTT publish: topic 'zigbee2mqtt/BedLeds Elliott', payload '{"brightness":254,"color":{"x":0.172,"y":0.747},"color_mode":"xy","color_temp":129,"last_seen":"2023-04-01T08:09:39.462Z","linkquality":112,"power_on_behavior":"previous","state":"OFF","update":{"installed_version":-1,"latest_version":-1,"state":"idle"},"update_available":null}' zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +16ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,69,196,97,227,0,0] +4s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,69,196,97,227,0,0] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 5 - 196 - [97,227,0] - 0 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- ZDO - srcRtgInd - {"dstaddr":58209,"relaycount":0,"relaylist":[]} +4s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,30,68,129,0,0,12,0,97,227,21,1,0,120,0,168,136,126,0,0,10,24,109,10,85,0,57,155,7,251,67,97,227,29,197] +48ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,30,68,129,0,0,12,0,97,227,21,1,0,120,0,168,136,126,0,0,10,24,109,10,85,0,57,155,7,251,67,97,227,29,197] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 30 - 2 - 4 - 129 - [0,0,12,0,97,227,21,1,0,120,0,168,136,126,0,0,10,24,109,10,85,0,57,155,7,251,67,97,227,29] - 197 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":12,"srcaddr":58209,"srcendpoint":21,"dstendpoint":1,"wasbroadcast":0,"linkquality":120,"securityuse":0,"timestamp":8292520,"transseqnumber":0,"len":10,"data":{"type":"Buffer","data":[24,109,10,85,0,57,155,7,251,67]}} +50ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":true,"reservedBits":0},"transactionSequenceNumber":109,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":85,"dataType":57,"attrData":502.0594177246094}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":58209,"endpoint":21,"linkquality":120,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +4s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +6ms Zigbee2MQTT:info 2023-04-01 10:09:43: MQTT publish: topic 'zigbee2mqtt/Eluttag Altan', payload '{"consumption":69.04,"current":2.46,"device_temperature":23,"energy":69.04,"last_seen":"2023-04-01T08:09:43.805Z","linkquality":120,"power":502.06,"power_outage_count":0,"power_outage_memory":null,"state":"ON","switch_type":null,"update":{"installed_version":-1,"latest_version":-1,"state":null},"update_available":null,"voltage":237.22}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,69,196,199,228,0,161] +2s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,69,196,199,228,0,161] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 5 - 196 - [199,228,0] - 161 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- ZDO - srcRtgInd - {"dstaddr":58567,"relaycount":0,"relaylist":[]} +2s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,35,68,129,0,0,0,0,199,228,1,1,0,138,0,112,224,128,0,0,15,8,208,10,1,0,32,192,226,255,32,54,228,255,32,0,199,228,29,109] +2ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,35,68,129,0,0,0,0,199,228,1,1,0,138,0,112,224,128,0,0,15,8,208,10,1,0,32,192,226,255,32,54,228,255,32,0,199,228,29,109] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 35 - 2 - 4 - 129 - [0,0,0,0,199,228,1,1,0,138,0,112,224,128,0,0,15,8,208,10,1,0,32,192,226,255,32,54,228,255,32,0,199,228,29] - 109 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":0,"srcaddr":58567,"srcendpoint":1,"dstendpoint":1,"wasbroadcast":0,"linkquality":138,"securityuse":0,"timestamp":8446064,"transseqnumber":0,"len":15,"data":{"type":"Buffer","data":[8,208,10,1,0,32,192,226,255,32,54,228,255,32,0]}} +3ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":208,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":1,"dataType":32,"attrData":192},{"attrId":65506,"dataType":32,"attrData":54},{"attrId":65508,"dataType":32,"attrData":0}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":58567,"endpoint":1,"linkquality":138,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +2s zigbee-herdsman:controller:endpoint DefaultResponse 0xa4c1384aed961aff/1 0(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +13s zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xa4c1384aed961aff:58567/1 (0,0,1) +13s zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":58567,"destendpoint":1,"srcendpoint":1,"clusterid":0,"transid":17,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,208,11,10,0]}} +13s zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,199,228,1,1,0,0,17,0,30,5,24,208,11,10,0,202] +13s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +13ms Zigbee2MQTT:info 2023-04-01 10:09:46: MQTT publish: topic 'zigbee2mqtt/Eluttag Vimes', payload '{"child_lock":"LOCK","current":0.11,"energy":15.46,"indicator_mode":"off/on","last_seen":"2023-04-01T08:09:46.265Z","linkquality":138,"power":12,"power_outage_memory":"restore","state":"ON","update":{"installed_version":192,"latest_version":192,"state":"idle"},"update_available":null,"voltage":234}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100,254,3,68,128,0,1,17,215] +16ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100,254,3,68,128,0,1,17,215] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +1ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +13s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,17,215] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,17] - 215 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":17} +31ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms

zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,27,68,129,0,0,1,1,26,169,11,1,0,98,0,182,241,131,0,0,7,8,88,10,0,0,48,1,143,132,28,186] +3s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,27,68,129,0,0,1,1,26,169,11,1,0,98,0,182,241,131,0,0,7,8,88,10,0,0,48,1,143,132,28,186] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 27 - 2 - 4 - 129 - [0,0,1,1,26,169,11,1,0,98,0,182,241,131,0,0,7,8,88,10,0,0,48,1,143,132,28] - 186 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":257,"srcaddr":43290,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":98,"securityuse":0,"timestamp":8647094,"transseqnumber":0,"len":7,"data":{"type":"Buffer","data":[8,88,10,0,0,48,1]}} +3s zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":88,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":0,"dataType":48,"attrData":1}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":43290,"endpoint":11,"linkquality":98,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +3s zigbee-herdsman:controller:endpoint DefaultResponse 0xf4ce3683a2ad1ec0/11 257(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +3s zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xf4ce3683a2ad1ec0:43290/11 (0,0,1) +3s zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":43290,"destendpoint":11,"srcendpoint":1,"clusterid":257,"transid":18,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,88,11,10,0]}} +3s zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,26,169,11,1,1,1,18,0,30,5,24,88,11,10,0,219] +3s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +11ms Zigbee2MQTT:info 2023-04-01 10:09:49: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:49.484Z","linkquality":98,"lock_state":"locked","pin_code":null,"sound_volume":"silent_mode","state":"LOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100] +8ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +0ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +3s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,68,128,0,1,18,212] +4ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,18,212] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,18] - 212 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":18} +25ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +0ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,30,68,129,0,0,1,1,26,169,11,1,0,98,0,100,11,132,0,0,10,8,89,10,0,1,27,0,0,1,10,143,132,28,188] +83ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,30,68,129,0,0,1,1,26,169,11,1,0,98,0,100,11,132,0,0,10,8,89,10,0,1,27,0,0,1,10,143,132,28,188] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 30 - 2 - 4 - 129 - [0,0,1,1,26,169,11,1,0,98,0,100,11,132,0,0,10,8,89,10,0,1,27,0,0,1,10,143,132,28] - 188 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":257,"srcaddr":43290,"srcendpoint":11,"dstendpoint":1,"wasbroadcast":0,"linkquality":98,"securityuse":0,"timestamp":8653668,"transseqnumber":0,"len":10,"data":{"type":"Buffer","data":[8,89,10,0,1,27,0,0,1,10]}} +84ms zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":89,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":256,"dataType":27,"attrData":167837696}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":43290,"endpoint":11,"linkquality":98,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +108ms zigbee-herdsman:controller:endpoint DefaultResponse 0xf4ce3683a2ad1ec0/11 257(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +109ms zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xf4ce3683a2ad1ec0:43290/11 (0,0,1) +109ms zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":43290,"destendpoint":11,"srcendpoint":1,"clusterid":257,"transid":19,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,89,11,10,0]}} +108ms zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,26,169,11,1,1,1,19,0,30,5,24,89,11,10,0,219] +108ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +12ms Zigbee2MQTT:info 2023-04-01 10:09:49: MQTT publish: topic 'zigbee2mqtt/Nimly Doorlock', payload '{"action":null,"action_source_name":null,"action_user":null,"auto_relock":true,"auto_relock_time":1,"battery":100,"last_seen":"2023-04-01T08:09:49.593Z","linkquality":98,"lock_state":"locked","pin_code":null,"sound_volume":"silent_mode","state":"LOCK"}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100] +8ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +1ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +109ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,68,128,0,1,19,213] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,19,213] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,19] - 213 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":19} +23ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,35,68,129,0,0,0,0,12,153,1,1,0,83,0,132,9,138,0,0,15,8,176,10,1,0,32,192,226,255,32,54,228,255,32,0,12,153,29,195] +6s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,35,68,129,0,0,0,0,12,153,1,1,0,83,0,132,9,138,0,0,15,8,176,10,1,0,32,192,226,255,32,54,228,255,32,0,12,153,29,195] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 35 - 2 - 4 - 129 - [0,0,0,0,12,153,1,1,0,83,0,132,9,138,0,0,15,8,176,10,1,0,32,192,226,255,32,54,228,255,32,0,12,153,29] - 195 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":0,"srcaddr":39180,"srcendpoint":1,"dstendpoint":1,"wasbroadcast":0,"linkquality":83,"securityuse":0,"timestamp":9046404,"transseqnumber":0,"len":15,"data":{"type":"Buffer","data":[8,176,10,1,0,32,192,226,255,32,54,228,255,32,0]}} +6s zigbee-herdsman:controller:log Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":false,"direction":1,"disableDefaultResponse":false,"reservedBits":0},"transactionSequenceNumber":176,"manufacturerCode":null,"commandIdentifier":10},"Payload":[{"attrId":1,"dataType":32,"attrData":192},{"attrId":65506,"dataType":32,"attrData":54},{"attrId":65508,"dataType":32,"attrData":0}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":39180,"endpoint":1,"linkquality":83,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}' +6s zigbee-herdsman:controller:endpoint DefaultResponse 0xa4c1384403103ff1/1 0(10, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) +6s zigbee-herdsman:adapter:zStack:adapter sendZclFrameToEndpointInternal 0xa4c1384403103ff1:39180/1 (0,0,1) +6s zigbee-herdsman:adapter:zStack:znp:SREQ --> AF - dataRequest - {"dstaddr":39180,"destendpoint":1,"srcendpoint":1,"clusterid":0,"transid":20,"options":0,"radius":30,"len":5,"data":{"type":"Buffer","data":[24,176,11,10,0]}} +6s zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,15,36,1,12,153,1,1,0,0,20,0,30,5,24,176,11,10,0,25] +6s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +12ms Zigbee2MQTT:info 2023-04-01 10:09:55: MQTT publish: topic 'zigbee2mqtt/ElementFlΓ€kt Sovrum', payload '{"child_lock":"UNLOCK","current":0,"energy":4.11,"indicator_mode":"off/on","last_seen":"2023-04-01T08:09:55.869Z","linkquality":83,"power":0,"power_outage_memory":"restore","state":"OFF","update":{"installed_version":-1,"latest_version":-1,"state":null},"update_available":null,"voltage":237}' zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,1,100,1,0,100] +12ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,1,100,1,0,100] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 1 - 3 - 4 - 1 - [0] - 100 +1ms zigbee-herdsman:adapter:zStack:znp:SRSP <-- AF - dataRequest - {"status":0} +6s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +0ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,68,128,0,1,20,210] +7ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,68,128,0,1,20,210] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 4 - 128 - [0,1,20] - 210 +0ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - dataConfirm - {"status":0,"endpoint":1,"transid":20} +32ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,3,69,196,242,116,0,4] +1s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,3,69,196,242,116,0,4] +0ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 3 - 2 - 5 - 196 - [242,116,0] - 4 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- ZDO - srcRtgInd - {"dstaddr":29938,"relaycount":0,"relaylist":[]} +1s zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] +1ms zigbee-herdsman:adapter:zStack:unpi:parser <-- [254,35,68,129,0,0,0,0,242,116,1,1,0,94,0,79,104,139,0,0,15,8,90,10,1,0,32,192,226,255,32,54,228,255,32,0,242,116,29,143] +2ms zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [254,35,68,129,0,0,0,0,242,116,1,1,0,94,0,79,104,139,0,0,15,8,90,10,1,0,32,192,226,255,32,54,228,255,32,0,242,116,29,143] +1ms zigbee-herdsman:adapter:zStack:unpi:parser --> parsed 35 - 2 - 4 - 129 - [0,0,0,0,242,116,1,1,0,94,0,79,104,139,0,0,15,8,90,10,1,0,32,192,226,255,32,54,228,255,32,0,242,116,29] - 143 +1ms zigbee-herdsman:adapter:zStack:znp:AREQ <-- AF - incomingMsg - {"groupid":0,"clusterid":0,"srcaddr":29938,"srcendpoint":1,"dstendpoint":1,"wasbroadcast":0,"linkquality":94,"securityuse":0,"timestamp":9136207,"transseqnumber":0,"len":15,"data":{"type":"Buffer","data":[8,90,10,1,0,32,192,226,255,32,54,228,255,32,0]}} +5ms

TheQue42 commented 1 year ago

I've shortend the log a bit, since it was too large. Can of course provide a larger long if needed.

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

TheQue42 commented 1 year ago

Yes, its still an issue.

jkaberg commented 1 year ago

Shouldn't this be filed over at https://github.com/Koenkk/zigbee-herdsman-converters ? Anyhow voicing my interest as I have two of these.

jkaberg commented 1 year ago

So just looking briefly into this, comparing Yale with Onesti - there seems to be missing some parts? I'm assuming something like this is needed (operation_event)?

Perhaps @Koenkk has time to shed some details on the inner working of how this is supposed to work?

jkaberg commented 1 year ago

Looking over the code again I notice that on https://github.com/Koenkk/zigbee-herdsman-converters/blob/53455e815702e2465c8040022c3e267965d3d8b7/devices/onesti.js#L15 we have fromZigbee: [fz.lock, fz.lock_operation_event, fz.battery, fz.lock_programming_event, fz.easycodetouch_action], The same fromZigbee for Yale contains fromZigbee: [fz.lock, fz.battery, fz.lock_operation_event, fz.lock_programming_event, fz.lock_pin_code_response, fz.lock_user_status_response],

Perhaps all we need to add is fz.lock_user_status_response, an oversight from previous implementation?

Also on https://github.com/Koenkk/zigbee-herdsman-converters/blob/53455e815702e2465c8040022c3e267965d3d8b7/devices/onesti.js#L16 we might be missing tz.lock_userstatus (again ref Yale code) - but perhaps not needed?

jkaberg commented 1 year ago

I tried my suggestion, but no dice so then I'm out of ideas?

Still getting null values for action_source_name, action_user and action

abualy commented 1 year ago

same issue here, i managed for example to set a new pin code using the docs https://www.zigbee2mqtt.io/devices/easyCodeTouch_v1.html#pin-code-composite and communication directly through my mqtt gateway, but i cannot see the pin_code when following the docs i get this error:

Zigbee2MQTT:error 2023-06-06 22:21:19: Publish 'get' 'pin_code' to '0xf4cexxxxxxxx' failed: 'Error: Command 0xf4cexxxxxxxx/11 closuresDoorLock.getPinCode({"userid":0}, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (Timeout - 9233 - 11 - 52 - 257 - 6 after 10000ms)'                                                

also seeing and setting the pin_code for example is not working on home_assistant , with the homeassistant: true config on my zigbee2mqtt pod

heinekmadsen commented 1 year ago

This also have my interest On the z2m devices page for Heimgard lock is need a "expose_pin" setting. https://www.zigbee2mqtt.io/devices/HT-SLM-2.html

jkaberg commented 1 year ago

Seems like @eirikd did the groundwork in https://github.com/Koenkk/zigbee-herdsman-converters/pull/2791 - do you have any thoughts as to the above?

jkaberg commented 1 year ago

Zigbee protocol documentation: https://github.com/Koenkk/zigbee2mqtt/files/6015013/E-life.Zigbee.Modul.User.Manual.v2.0.pdf - last page (page 16) documents the missing functionality

heinekmadsen commented 1 year ago

@jkaberg nice find... hope some one with knowledge has time to get the last bits and pieces together so we have the full support. I have been in contact with the Danish distributor and they confirm that their gateway uses zigbee for communication with the lock, and they get all the info using zigbee

heinekmadsen commented 1 year ago

@Koenkk Can you give us a hint in any direction on how we can continue to improve this?

MarkMikkelsen83 commented 1 year ago

Im still very interested in this - Hopefully to see the ID and what unlocking methode is used...

mongojarle commented 1 year ago

Someone told me, that they had read, that in order to get the ID and method of unlocking reported over zigbee, the user had to be set up using zigbee. I have not tested this myself.

MarkMikkelsen83 commented 1 year ago

Someone told me, that they had read, that in order to get the ID and method of unlocking reported over zigbee, the user had to be set up using zigbee. I have not tested this myself.

And is that possible from Zigbee2mqtt and home assistant already?

mongojarle commented 1 year ago

Does not work from the Z2M interface at least, so I guess programming the lock is not working.

2023-06-30 18:04:38 Publish 'set' 'pin_code' to '0xf4ce362a9c8f621f' failed: 'Error: Command 0xf4ce362a9c8f621f/11 closuresDoorLock.setPinCode({"userid":10,"userstatus":1,"usertype":0,"pincodevalue":"3591"}, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (Timeout - 43537 - 11 - 60 - 257 - 5 after 10000ms)'

abualy commented 1 year ago

yes it is possible, by publishing the message to z2m as q service call:

service: mqtt.publish
data:
  qos: 0
  retain: false
  payload: >-
    {"user": "004", "user_type": "unrestricted", "user_enabled": "true",    
    "pin_code": "6666"}
  topic: zigbee2mqtt/0xfxxxxxxxx/set/pin_code
jkaberg commented 1 year ago

Someone told me, that they had read, that in order to get the ID and method of unlocking reported over zigbee, the user had to be set up using zigbee. I have not tested this myself.

All my (doorlock) users are setup via z2m interface, and still reports nothing

mongojarle commented 1 year ago

Ok, disregard my last post, it is working to program it when publishing as @abualy described. But it is not reporting user or method when used on the lock.

MarkMikkelsen83 commented 1 year ago

Seems strange that we can't pull that data ?

heinekmadsen commented 1 year ago

The data is there for sure (hope so)... Had a chat with EasyAccess/Nimly support who stated that the Nimly gateway get that information from Zigbee.

I think the issue is that the information is not getting passed to any or the correct action_source_name, action_user, and action.

I everyone upvote this issue by clicking on the small Smiley icon in the first post in this issue, and select a thumbs up it might get higher priority (Some github repos use this to prioritize, not sure if that's how zigbee2mqtt does prioritizing, but sure wouldn't hurt with a thumbs up)

MarkMikkelsen83 commented 1 year ago

Could the support not provide some more info about this ?

izzor commented 1 year ago

I have sniffed my Zigbee network with a CC2531 sniffer module, Wireshark, Sonoff Z8Dongle-E and a Nimly lock. The lock seems to use a new or undocumented way of reporting user, action and method.

When I open my door the lock sends a Report Attribute (0x0A) with attribute 0x0100 and a 32-bit bitmap. I cannot find the attribute 0x0100 in the Zigbee Cluster Library and Wireshark does not recognize the attribute. The 32-bit bitmap match the Operation Event Notification Command described in section 7.3.2.16.27. Octet 1 – Event source Octet 2 – Event code Octet 3,4 – User id

On my lock I get the following 0x0202001f – Keypad 0x02, Unlock door 0x02, User 31 0x0302001f – Fingerprint 0x03, Unlock door 0x02, User 31 0x0402001f – RFID 0x04, Unlock door 0x02, User 31 Opening with the key does not report anything

I tried to sniff the lock when connected to the Nimly Gateway but without the Trust Center Link Key I can't get any further.

jkaberg commented 1 year ago

I have sniffed my Zigbee network with a CC2531 sniffer module, Wireshark, Sonoff Z8Dongle-E and a Nimly lock. The lock seems to use a new or undocumented way of reporting user, action and method.

When I open my door the lock sends a Report Attribute (0x0A) with attribute 0x0100 and a 32-bit bitmap. I cannot find the attribute 0x0100 in the Zigbee Cluster Library and Wireshark does not recognize the attribute. The 32-bit bitmap match the Operation Event Notification Command described in section 7.3.2.16.27. Octet 1 – Event source Octet 2 – Event code Octet 3,4 – User id

On my lock I get the following 0x0202001f – Keypad 0x02, Unlock door 0x02, User 31 0x0302001f – Fingerprint 0x03, Unlock door 0x02, User 31 0x0402001f – RFID 0x04, Unlock door 0x02, User 31 Opening with the key does not report anything

I tried to sniff the lock when connected to the Nimly Gateway but without the Trust Center Link Key I can't get any further.

This seems to correspond with the docs? https://github.com/Koenkk/zigbee2mqtt/files/6015013/E-life.Zigbee.Modul.User.Manual.v2.0.pdf (see last page, chapter "Operation Notification Response")

izzor commented 1 year ago

It’s almost the same but the E-life module must be based on an older revision of ZCL. The chapter 7.3.2.17.27, Operation Notification Response, does not exist in revision 8 of the ZCL specification.

It also looks as if the event source enumerations have changed. I rev 8 Keypad has code 0x00 Nimly reports 0x02, RFID has code 0x03 and Nimly reports 0x04

The attribute 0x0100 is not mentioned in revision 8 so I guess there must be a newer one, somewhere.

heinekmadsen commented 1 year ago

Nice work sniffing the traffic...

I'm not very much into zigbee communication, but seems impressive :)

So what's the next step? Do we need changes to herdsman in order to get this working, or?

izzor commented 1 year ago

Yes, Both herdsman and herdsman-converters need some changes. I looked into the code of herdsman and I guess adding the attribute would be easy. I think a line like this: lockOperation: {ID: 256, type: DataType.bitmap32}, in the closuresDoorLock section of cluster.ts could work.

But most of the work has to be made in herdsman-converters. If we get a rainy summer I might have time to sort it out :)

heinekmadsen commented 1 year ago

Yes, Both herdsman and herdsman-converters need some changes. I looked into the code of herdsman and I guess adding the attribute would be easy. I think a line like this: lockOperation: {ID: 256, type: DataType.bitmap32}, in the closuresDoorLock section of cluster.ts could work.

But most of the work has to be made in herdsman-converters. If we get a rainy summer I might have time to sort it out :)

Well not that I wish anyone a rainy summer, but I might wish you'll get a little rain :) But then again, good things take time, and the best things takes even longer... I'll be ready for testing when ever its ready

MarkMikkelsen83 commented 1 year ago

Yes, Both herdsman and herdsman-converters need some changes. I looked into the code of herdsman and I guess adding the attribute would be easy. I think a line like this: lockOperation: {ID: 256, type: DataType.bitmap32}, in the closuresDoorLock section of cluster.ts could work.

But most of the work has to be made in herdsman-converters. If we get a rainy summer I might have time to sort it out :)

Fingers crossed, this would be awesome

slackspace-io commented 1 year ago

Hi, Just thought i'd add to earlier comments on issues registering pins. I've spent a bit, and the only way I've found to disable a pin is sending a null for the pin code. The user enabled true/false does not affect. The pin remained active until I sent a null for pin_code.

Incase others find this thread, here is an example to create/activate a user/pin.

Enable/Create user 10, with pin 1234

service: mqtt.publish
data:
  qos: 0
  retain: false
  payload: >-
    {"user": "010", "user_type": "unrestricted", "user_enabled":
    "true","pin_code": "1234"}
  topic: zigbee2mqtt/your_lock/set/pin_code

Disable user 10

service: mqtt.publish
data:
  qos: 0
  retain: false
   payload: >-
    {"user": "010", "user_type": "", "user_enabled":
    "false","pin_code": null }
  topic: zigbee2mqtt/your_lock/set/pin_code
slackspace-io commented 1 year ago

Hi @TheQue42 @jkaberg @abualy @heinekmadsen

I've submitted a couple PRs for this. The first one is in the dev branch, but unfortunately has a couple issues due to me :)

But feel free to check, the 'state' should give you an indication of what is reported. You'll need to be running the 'dev' branch of zigbee2mqtt to see the changes.

{
    "auto_relock": true,
    "battery": 100,
    "last_lock_source": "self",
    "last_lock_user": 0,
    "last_seen": "2023-07-27T19:55:38+00:00",
    "last_unlock_source": "keypad",
    "last_unlock_user": 3,
    "last_used_pin_code": null,
    "linkquality": 116,
    "lock_state": "locked",
    "pin_code": null,
    "sound_volume": "high_volume",
    "state": "LOCK",
    "auto_relock_time": 1,
    "last_used_pincode": "1234"
}

I split last unlock and lock into unique fields for user and source:

last_used_pin_code is the last pin entered on the device, or rather the numbers entered. I have not tried to polish this as longer numbers do become hex values. If your pins is 1234 but you entered 912345 -- that is what will be shown.

The two known bugs in this release:

MarkMikkelsen83 commented 1 year ago

Does this mean that we can now pull these data's ? When will they be available?

oskretc commented 1 year ago

Looking forward to the PR merge, I'll try to test dev branch if time later today.

slackspace-io commented 1 year ago

Does this mean that we can now pull these data's ? When will they be available?

@MarkMikkelsen83 The first set of changes are available in the 'dev' branch of zigbee2mqtt or 'Edge' as it's called in home assistant addon I believe - https://github.com/zigbee2mqtt/hassio-zigbee2mqtt#installation if you are not comfortable running that version, then will need to wait for the next official release. I do not know how when that would be.

Hopefully my bug fixes will be merged in the next dev release assuming I didn't make any new mistakes after they review the code :)

heinekmadsen commented 1 year ago

@slackspace-io Great work! Seems to be working just fine.

I'll keep testing

MarkMikkelsen83 commented 1 year ago

Is it available on the normal Zigbee2mqtt ?

slackspace-io commented 1 year ago

@MarkMikkelsen83 the improvements are in today's normal release (version 1.32.2)

Hope they work for others!

TheQue42 commented 1 year ago

@MarkMikkelsen83 the improvements are in today's normal release (version 1.32.2)

Hope they work for others!

So many thanks!!! This is wonderful! Have I understood it correctly, that the pin_code is actually used only if I want to set pin-codes?

slackspace-io commented 1 year ago

You are referring to the section 'pin_code' within the 'Exposes' portion of zigbee2mqtt?

If so, yes that seemingly is the intent-- But, I have found it to be very difficult to use. It seems to send commands after entry to each field. I've managed to disable users, and enable users while messing with it. -- I have not done any changes to this section with my improvements.

Personally, I find this section a bit more 'dangerous' than helpful. Since you could set pins on use accounts by accident, or wipe by accident. I publish a message to MQTT directly when I want to manager users (The cleaner's PIN only becomes active the day/hours they are expected, etc).

What are others experience with this section? if others find it difficult/dangerous, I can try to find some time to see if any options to improve it..

dislabled commented 1 year ago

Thank you for the awesome work @slackspace-io.

I am having random opening of the door after latest stable update. I am not sure it is related, but I'm finding it hard to troubleshoot as it happens completely random, and the door seems to report "self" at source for unlock, even though i am triggering it manually from zigbee. Anyone else not seeing zigbee as source? It does report keypad when i am using code.

See logs from manually triggering open from z2m:



Debug 2023-08-04 13:35:56 Publishing 'set' 'state' to 'main_door_lock'

Debug 2023-08-04 13:35:59 Received Zigbee message from 'main_door_lock', type 'commandUnlockDoorRsp', cluster 'closuresDoorLock', data '{"status":0}' from endpoint 11 with groupID 0

Debug 2023-08-04 13:35:59 Received Zigbee message from 'main_door_lock', type 'attributeReport', cluster 'closuresDoorLock', data '{"lockState":2}' from endpoint 11 with groupID 0

Info 2023-08-04 13:35:59 MQTT publish: topic 'zigbee2mqtt/main_door_lock', payload '{"auto_relock":false,"auto_relock_time":0,"battery":100,"last_lock_source":"self","last_lock_user":0,"last_unlock_source":"self","last_unlock_user":0,"last_used_pin_code":null,"linkquality":184,"lock_state":"unlocked","pin_code":null,"sound_volume":"low_volume","state":"UNLOCK"}'

Debug 2023-08-04 13:35:59 Received Zigbee message from 'main_door_lock', type 'attributeReport', cluster 'closuresDoorLock', data '{"256":167903232}' from endpoint 11 with groupID 0

Info 2023-08-04 13:35:59 MQTT publish: topic 'zigbee2mqtt/main_door_lock', payload '{"auto_relock":false,"auto_relock_time":0,"battery":100,"last_lock_source":"self","last_lock_user":0,"last_unlock_source":"self","last_unlock_user":0,"last_used_pin_code":null,"linkquality":188,"lock_state":"unlocked","pin_code":null,"sound_volume":"low_volume","state":"UNLOCK"}'```
slackspace-io commented 1 year ago

@dislabled I can't think of what could cause 'random unlocks' -- can you explain a bit more? Are you 'randomly' hearing the lock unlocking without user interaction? Or are the logs claiming the door has been opened?

If you have auto lock true -- the door does lock 'itself' a few seconds even if you selected 'unlock' from within zigbee2mqtt (or via HA). This relock will appear as 'self' in the state.

I need to check myself tonight if perhaps I have a bug and not reporting 'zigbee' as a source correctly. - I have it expected 00 as the first octet to be zigbee, while 0a is 'self. It is also possible there is not a different message sent for zigbee vs self and I just hallucinated it when making these improvements:) I'll try to test tonight or tomorrow and clarify.

I'd expect one of the two scenarios, assuming you have 'auto relock' true.

1.) Send 'unlock' via zigbee2mqtt/mqtt. 2.) Latest 'unlock' source becomes zigbee(tho I agree it seems to be reporting 'self' now this is etiher due to a bug or that I was early incorrect and infact self/zigbee is the 'same' 0x0a beint sent). 3.) Few seconds later, door relocks automatically 4.) latest 'lock' source becomes self. (This would be correct).

dislabled commented 1 year ago

I am not blaming this random unlocks on the update, im just trying to troubleshoot what is causing the unlocks. And i don't want to hijack this thread with this issue. It's just related when I am trying to find out if the unlock command is infact coming from zigbee, or the lock itself is bugging out.

My automations in HA turns off auto_relock at daytime, and turns it back on at nighttime. There is also some automations that unlocks the door when house occupancy goes from 0 to 1. Will include a log from HA, and that log will explicity tell you the reason for unlocks. So I am convinced that its not some automation running wild and opening the door. I can infact hear the lock operating, but no one is touching anything.

image

DewGew commented 1 year ago

I have a Nimly Touch. Does z2m support this one also? Its same lock but without fingerprint reader.

edit: I made PR to add 'NimlyTouch'.

DewGew commented 1 year ago

Is it possible to add 2FA, and anti burgler functions?

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days

Dorenix commented 12 months ago

Thank you for the great work @slackspace-io! Sorry for my lack of knowledge, but how do you set the time window for time year/week day dependent access? I can not find it in the Zigbee2MQTT device description.

larsfjaera commented 11 months ago

Thank you for the great work @slackspace-io! Sorry for my lack of knowledge, but how do you set the time window for time year/week day dependent access? I can not find it in the Zigbee2MQTT device description.

I was wondering the same thing. However, I figured I'd just use scheduled automations to enable/disable a user essentially achieveing the same functionality.

jkaberg commented 8 months ago

Anyone experiencing that these locks stops to respond and becomes unavailable? Currently I beleve this happends after a while with no (physical) usage

Doesn't seem like removing and inserting batteries fixes it either, will check more tonight

izzor commented 8 months ago

My module behaved the same for a couple of months, unavailable and available after removing/inserting the batteries. Finally the module stopped connecting, now flashing leds, and worst of all it began to drain my batteries.

I've had some previous problems with my modules and I've got excellent support from Nimly before. So, I contacted Nimly support and they confirmed my observations. There is a problem with the module. I was told to hold on to my broken module and wait for a replacement module. They could not give me an estimated date for a new module but I have an open case in their CRM.