Nimly Touch Pro

I am considering buying a Nimly Touch Pro, but there is some functionality I am not sure is supported on its Zigbee2 MQTT integration - or, as a matter of fact, if said functionality is supported by the product at all - however, reading the user manual and the integration documentation made me none the wiser.

To put it simply, I need the functionality to remotely disable a registered fingerprint or RFID.

But here it gets confusing:

According to the lock’s user manual, it can register 200 finger prints, 1000 pin-codes and 1000 RFIDs. To register either of them, the admin must type which ID it will be registered under (000 to 999 for PIN-code or RFID, 000 to 199 for fingerprints)

It is not clear to me, however, if

  1. The index is unique for all three methods. One given ID can be matched to one registered PIN-code OR fingerprint OR RFID. There can therefore be a total of 1000 ways of opening the lock

OR

  1. There is one separate index for each of the unlocking methods. So you could, say, register a PIN-code under ID #005, plus an RFID under the same ID, plus a fingerprint also under the same ID. There could be 2200 ways in total to open the lock.

The integration documentation reveals it is possible to set a pin code through the /set endpoint, where the payload is

{"pin_code": {"user": VALUE, "user_type": VALUE, "user_enabled": VALUE, "pin_code": VALUE}}

where user is the ID number.

If the actual behaviour is the one described in 1), it is possible to imagine that you can disable a fingerprint or RFID only by overriding it with a new PIN - although it wouldn’t be possible to remotely re-enable said fingerprint or RFID later, which is a bummer, but still acceptable to me.

However, if the actual behaviour is 2), then it doesn’t seem the API supports anything in terms of disabling registered fingerprints and RFIDs.

Does anyone have a Nimly Touch Pro and can confirm which of scenarios is true? And, even if the MQTT integration does not support it, does the manufacturer’s app allow me manage fingerprints and RFIDs as I described?

Thanks!

I just bought this and can confirm that it’s method #2.

I’ve had the lock for a couple of days and got the connect module today but I’m stuck with ZHA which limits me with only lock/unlock to play with.

I’ve ordered another Sonoff ZBDongle-E and will soon starting to migrate to z2m. Might be able to give a more informative answer later.

I’m very pleased with the lock so far :+1:t2:

I connected the Nimly Touch Pro with the Zigbee2 MQTT integration. I’m able to get some of the values listed while some values just reads null. However I beleive you and me both are most intrested in the Pin code (composite) in order to add and remove pin codes.

The zigbee2 dashboard has by default a pin code access, while in home assistant I think we need to script this.

I get some error when using the default pin code GUI in the zigbee2 dashboard:

[22.2.2026, 00:00:29] z2m: Publish 'set' 'pin_code' to 'Front Door' failed: 'Error: ZCL command 0xf4ce367bcab23d13/11 closuresDoorLock.setPinCode({"userid":1,"userstatus":1,"usertype":0,"pincodevalue":"3"}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed ({"target":7047,"apsFrame":{"profileId":260,"clusterId":257,"sourceEndpoint":1,"destinationEndpoint":11,"options":4416,"groupId":0,"sequence":165},"zclSequence":17,"commandIdentifier":5} timed out after 10000ms)'

I tried publishing a message to zigbee2mqtt/Front Door/set with the following payload:

{“pin_code”: {“user”: VALUE, “user_type”: VALUE, “user_enabled”: VALUE, “pin_code”: VALUE}}

however not successfull.

However, it was not successful.

I believe it should work, so I’m probably doing something wrong.
If anyone has managed to get this working, please share a hint. I will keep trying in the meantime.

I eventually managed to get it working. I discovered that the Zigbee2MQTT dashboard’s MQTT dev tool wasn’t actually publishing messages onto the bus. I guess it’s possible it can do that and maybe my settings were wrong. I also found out that the script from Home Automation was publishing the messages correctly.

The following payload worked fine when sent to the topic zigbee2mqtt/Front Door/set (where Front Door is the name you’ve given the device in Zigbee2MQTT):

{
  "pin_code": {
    "user":3,
    "code":"1234",
    "enabled":true}},
    "user_type": "week_day_schedule"
{

the code had to be a string.
And to disable:

{
  "pin_code": {
    "user": 3,
    "user_enabled": false
  }
}

And to clear:

{
  "clear_pin_code": {
    "user": 3
  }
}

But I didn’t get the get codes to work ( zigbee2mqtt/Front Door/get with payload : {“pin_code”: “”} )