[RELEASE] Universal Enhanced Z-Wave Lock Device Handler for Schlage, Yale, Kwikset, IDLock, Popp, Danalock, August Pro, Keywe, Philia, Samsung

Would it be possible to add the possibility for the user to set or disable the ping/polling time. Would be nice to be able to optimize battery life.

Polling is done by the platform. The DH is optimized and has safe guards in place to avoid over polling from the platform and limits polling updates to once every 30/60 minutes for certain features and every 24 hours for others (eg battery). Reducing it further may not optimize battery given the way zwave locks work but may impact the stability of status updates if there is a weak mesh. However when a user taps the refresh button it will manually refresh all the parameters. (Refresh is different from platform polling)

ZWave Locks are FliRS devices (beaming) which wake up about 3-10 times per second (depending upon the manufacturer design). So the lock will wake up to listen for a beaming signal about 180-600 times per minute. While this listening waking up takes about 1/10th amount of power compared to a full wake up, as you can see, polling a device once an hour will have negligible effect on the battery life.

The quality of mesh on the other hand has a greater impact on battery life as it impacts retransmissions and power levels of the device (the power level is automatically calibrated by most devices depending on the mesh quality). Hence a bigger positive impact can be achieved on the battery life by adding a repeater close to the lock.

Hope this helps.

@RBoy @maddie
Earlier today, I replaced a faulty Z-Wave Home Connect Module in my KwikSet 912 door lock. After some tweaking and resetting, I’m back up and running without the Z-Wave Mesh flooding and mesh destabilization that the old module was causing.

I am noticing something odd though with the DTH. It’s set for six users and I have six in there - the last ome being a single-use burner. The first five are permanent users and they have all written to the lock fine. After a while, I checked and saw that the 6th user was still yellow (meaning that it hadn’t written to the lock yet). I checked the ‘recent’ tab and saw that the DTH is writing the sixth user to the lock and then immediately deleting it - repeating the cycle about 2x every minute. I’ve deleted the 6th user and reduced the number of users to five and saved. That all works fine. When I put it back to six and re-add the user, the cycle starts again. I’ve removed the 6th user for now since I don’t need it right now, but am wondering what’s up and how to fix it.

Should I just delete the Lock User Management DTH and reinstall?



  1. I deleted all assigned users and saved them.
  2. I waited for the users to be deleted by the Lock User Manager to delete them all from the lock.
  3. I then deleted the Lock User Manager and reinstalled it.
  4. Then I added all of the users again.
  5. It now seems to be working properly.
1 Like

I have a Kwikset 914. The main feature I would like to have with this lock is reporting the outside lock button as a button accessible in SmartThings to trigger actions. Currently I can do something if the lock is “locked”. I only want that something to happen if locked by the button, not by the inside knob or some other SmartThings action.
ie “Turn off all lights if outside lock button locks the door.”

Is that something possible with this?

In short, yes the DTH reports that information to ST. You can find a complete list of features of the DTH here:

If you’re using a SmartApp which can process that information then it’s easy. For example in Lock User Management you can configure rules in the Lock/Unlock Actions page → Keypad Lock actions.

If you’re using a custom rules app like CoRE/WebCoRE then see these instructions:

Hello! How do I go about disabling autolock on a Kwikset Convert? I set it to zero but that doesn’t help. Thanks!

Hey, anyone know if the ID Lock 150 works with this DH and the V1 of the hub (EU version from kickstarter campaign)?

Yes it was added earlier this year:

And it works with v1 of the SmartThings hub which is not Z-Wave Plus? Or does it require v2/v3?

Perhaps I am doing something wrong (I’m still making some very rookie mistakes with this smart stuff here) but I have what seems to a major problem with the rboy device handler for my new Schlage lock.

I paid the $40 and followed the instructions and all looked OK. Not good, but OK. The lock still worked which was nice, and _ could lock/unlock it with SmartThings. All it seemed to do though was add 15 blank tiles under the lock/unlock switch. I emailed the developer but not had a reply yet. After a while two of the tiles changed to a codes tile and an alarm tile. The rest are still blank.

This I can live with. $40 for two tiles is a bit steep, but hopefully I can resolve that with the developer. The worrying part is that twice since I’ve had a message saying device unlocked because my phone was home. My phone definitely wasn’t home. It was 15 miles away with me. I drove to the gym (about 7 miles from home) and then onto my next destination 15 miles away. This was when I noticed the first random unlock. From there I drove back to the gym and it had unlocked again!

Now I did configure the unlock when I’m home thing, but I kind of assumed this would actually wait until I was home, not somewhere in the approximate vicinity!!!

Randomly unlocking my house is very very bad!

Some locks have an auto feature that is present in the firmware. And the tiles populate based upon the model and firmware of your lock.

For example - I have a Yale T1L, and not all of the tiles are populated because not all of the features present in @RBoy’s DTH are present in the firmware.

As far as the auto unlock - did you setup a different smartapp that might be doing this? Or is there a setting on your lock that you might have accidentally set when installing it?

I have never had any issues with the DTH, but I don’t have a Schlage so it’s not an apples to apples comparison.

1 Like

what are you using as a presence sensor? we do not have that issue with the webcore app presence sensor. It has adjustable ranges. You could also put a delay in the unlock trigger so that it does not do it early.

1 Like

Well, that was my thought when I was setting it up. I haven’t configured a sensor specifically. It seems to be based on my phone’s location.

I defo haven’t setup another smart app to do it, I spoke to Schlage and they said they don’t have an app to work with their connect lock only their sense lock. For now, I’ve deleted the when home unlock thing completely. I don’t have confidence that it’s not going to unlock the house when we’re out so I’m not taking the chance.

As for the buttons enabled for the relevant lock, in your screenshot, mejfair, you show the Code Entry,Auto lock, Audio on and Touch lock. On mine, the Code Entry and Audio on are enabled. The Schlage lock defo has Auto lock though. If the only features that it can enable on the Schlage is switching entry codes on and off (the only way to open the door) and the audio on/off, then it doesn’t seem like it’s very good if you have a Schlage. I checked the website before I paid and it specifically mentions my model of Schlage so I assumed I would be getting the features that the lock has (adding codes, setting the alarm, sensitivity etc) not just working codes or not and beeps or not.

Perhaps I’ve misunderstood, but that doesn’t seem worth $40

I have a Yale lock, so I am not sure how close your functions might be. I think @rboy could chime in with any thoughts as well. He usually knows exactly what is going on, and usually provides good recommendations on what the problem might be.

I have a Yale Connexis on my home in England. If this worked well I was going to buy a second copy when I return to the UK so anything that makes this work would be greatly appreciated.

Hey Tim, I just responded your eMail regarding the question on the tiles and access history. Tiles (features) are lock and model specific. The DTH queries the lock for supported features and displays those tiles to which the lock responds that it supports. Some tiles like Tamper tiles won’t show up until they are triggered. If you have a Schlage BE469 you should see most tiles show up including Auto Lock. If not then your lock is having trouble with the Z-Wave mesh. Tap the refresh button a couple of times to force the lock to respond to the query requests or maybe consider adding a repeater close to your lock (Schlage locks are known to have issue with the mesh without a buffered repeater near by).

As for the unlocking, you can look at the Recently tab of your device page to see what’s going on. The DTH never sends an unsolicited command to the lock, its job is to provide access to lock features (for manual control or through SmartApps). Commands are only sent by SmartApps (like Routines, WebCoRE etc). As @mejifair has mentioned it could be a rogue/bad presence sensor if you have one setup which may be sending the unlock command depending on your setup. Typically I’ve seen the following reasons for why a lock would unlock itself:

  1. The deadbolt is “touching” the door frame/jamb. Schlage locks are very sensitive to mounting, even the slightest touch and it will send a “jammed” signal and unlock the door. If this is the case you’ll see either a Jammed state or you’ll see an Unlocked state in the Recently tab which is reported by the lock
  2. A SmartApp is sending an unlock command. If you’re using a SmartApp like LUM or CoRE/WebCoRE along with a door sensor. Check the door sensor state, if it’s showing as open the SmartApp may be sending an unlock command. If the command is coming from a SmartApp then it will show the name of the app in the Recently tab which sent the command
  3. A Routines is unlocking it using a presence sensor. As explained above if it’s a faulty presence sensor triggering a Routine it will show up as unlocked in the recently tab, but in the IDE events you can find more details about which Routine triggered it
1 Like


Thanks for the update.

I only have two sensors, one is a Philips hue sensor which SmartThings isn’t picking up. The other is a SmartThings sensor in the kitchen which is only configured to turn the lights off if it detects no movement after 10:15pm. I do remember when I first got the hub trying to configure it to turn lights on when I got close to home. This was way before I got the lock though. The lock only arrived on Sunday and I fitted it the same day. I definitely didn’t link it to any sensors. I thought it was a bit odd when I tried setting up the unlock on your app that it didn’t ask about proximity, but I assumed it worked based on my phone being present and would only work when I was within a couple of feet of the lock.

I’ve attached a screenshot of the activity showing the two unlocks. Both times I was miles away. This first screenshot shows where I was in relation to the house when the first event fired, the second shows where I was when the second event fired, both times I was over 10km away. Even when I originally tried to configure the lights to come on when I got home, it was in a very small area around my home, certainly not as far as 10km away. The screenshot from SmartThings shows that both times it was your app that triggered the unlock.

You say in your mail that it never sends an unsolicited command, but I can’t see how you can claim never. The fact that it can send commands means that there is a possibility for it to send an unsolicited one. I’m not saying this isn’t something I have done, it’s quite possible since it’s a new tool that I’m trying to get used to. What I can say with absolute certainty though is that the phone was with me 10km+ away both times, and so it could not have been something triggering as a reaction to my phone being present.

Is there a log file that I can take a look at? For obvious reasons, I’m not at all comfortable with a device that appears to be unlocking my front door when I’m not around. I’ve removed the proximity stuff altogether for now to be on the safe side.

Incidentally, some other tiles have now activated. I now have the autolock, touch lock, forced mode and Medium Sensitivity tiles. The front door is directly opposite a GE Z-Wave light switch (approx. 5m straight line) which is a repeater. The switch works fine every time. The lock seems to work fine too. I’m sat in my home office which has a notoriously poor connection, and it’s able to unlock/lock the door.

That is correct. In the SmartThings setup, only a User or a SmartApp can initiate a command. The DTH is a layer that sits in between the Requestor (User interface or SmartApp) and the Actor (device/lock). It’s job is translate the request/command (e.g. Lock) into a protocol (eg zigbee, zwave, WiFi etc) sequence which can be understood by the lock. Hence the DTH never sends an unsolicited action since it’s event driven and needs a user/SmartApp to initiate an event.

Yes there are lots of logging options available in SmartThings depending on your comfort level. The most basic and best logging / auditing option is the Recently tab on your device page. Then there is the Live Logging option in the IDE. Also, in the IDE you can also audit the events for each device which includes information about the Requestor and the Actor including the raw protocol data. Most of the times the Recently tab is sufficient to debug things like this.

You’ve isolated the issue in this image. There is a SmartApp or a routine called “Unlock It When I Arrive” which sent the “Unlock” command to the DTH. That’s the Requestor behind your mystery unlocks.

If it’s connected to your presence sensor you may want to check how it’s setup. There are many topics on how presence sensors work and how there may be false positives or triggers leading to unintended actions executing.

Hope this helps.


OK. That certainly gives me something to dig into. Something still isn’t right though. I just discovered the user management thing and I’ve added 8 users. I understood that using this removes previous configs, so I wanted to check that it still worked. I opened the door and locked it whilst open. I then tried to unlock the door using my code. The door unlocked fine, but the notification was that my daughter had unlocked it. I checked that I hadn’t made a mistake with the codes and her code if very different to mine. I definitely used my code.