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

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.

I just tried again, this time with my wife’s code, and it says my son unlocked the door

Tried again with my daughters code and it says my eldest unlocked, and I tried with my youngest’s code and it says my second eldest unlocked. I’ve checked all the codes are they are definitely configured to the correct people.

From our website:

Please reset your lock (optional) before installing this SmartApp and follow this “Clear Codes” procedure the first time you use the SmartApp or when you install a new lock

What you’re seeing is your lock sending the wrong user slots numbers because the codes you’re trying to program through the app already exist in the lock (lock won’t overwrite identical codes). That’s why we suggest resetting the lock or clear all codes before using LUM to program new ones.


Universal Enhanced Z-Wave Lock for Schlage, Yale, Kwikset, IDLock, DanaLock, August Pro, Samsung, Locstar, Delaney, KeyWe and Popp Z-Wave Keypad Device Handler - Version 04.02.12

  • Added support for KeyWe models and Delaney ZW300
  • Improved support for IDLock lock/unlock/audio controls
  • Fix for Schlage FE599 firmware bug, handle consecutive unlock events
  • Update battery state when a battery change is detected (some locks report this)
  • Basic support for new ST app
  • More lock models for Yale/Schalge/Kwikset/KeyWe

Schlage Lock Alarm Mode and Sensitivity Change and Monitor - Version 02.02.00

  • < no changes >

A SmartApp like Lock User Management (LUM) or SmartLocks is required for programming user codes.

To get real time updates with the Smart Locks dashboard refer to this post

This Device Handler has been tested and verified and optimized on the following lock models:

  • Yale Z-Wave locks (Assa Abloy, YRD2xx, YRD4xx, YRL2xx, YRC2xx, B1L, T1L, Keyfree, Assure, Conexis, Touchscreen, Deadbolt, RealLiving, nexTouch)
  • Schlage Z-Wave locks (FE469, BE469, BE468, FE599, BE369)
  • Kwikset Z-Wave locks (910, 912, 914, 916)
  • DanaLock Z-Wave locks (V2/V3)
  • August Pro Z-Wave locks
  • IDLock Z-Wave locks (101/150)
  • Samsung Z-Wave locks (SHP-xxx, SHS-xxx)
  • Delaney (ZWxxx)
  • Locstar Z-Wave locks
  • Monoprice Z-Wave locks
  • KeyWe Z-Wave locks
  • Popp Z-Wave keypad

Key features include automatic discovery of lock features:

  • Lock/Unlock
  • Privacy/keypad control
  • Autolock
  • Audio control
  • One touch/Lock n leave
  • Alarm mode
  • Alarm sensitivity
  • DPS/Door sense
  • Fire/smoke alarm
  • Tamper/motion alerts
  • Emergency alerts (police/fire)
  • Battery life optimization
  • Configuration of one time parameters
    • Yale -> relock timeout, wrong code reporting limit, volume level and dps
    • Danalock ->turn speed, brake n go, turn n go and relock timeout
    • IDLock -> volume level, unopened relock
  • Enhanced programming communication for a weak mesh

If you’re looking to capture specific events (e.g. invalid codes) and create custom actions/rules refer to this post.

Copyright © RBoy Apps

1 Like

@RBoy if I copy & paste to.upfate dth will I loose all my settings? I’m at work so im.not sure if i should wait til i get home to do this.

1 Like

I have a Kwikset 910 and just completed the update to Version 04.02.11 of the Universal the Enhanced Z-Wave Lock Device Handler and I got the following error message:

“org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException: Object of class [physicalgraph.device.Command] with identifier [958059]: optimistic locking failed; nested exception is org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [physicalgraph.device.Command#958059]”

I copied and pasted it into the IDE twice and got the same error both times. It seems to be working OK, but was concerned about the error. Any insights are welcome. In case it matters, I’m using version 07.08.02 of your Lock User Management SmartApp.

1 Like

The platform is having an outage with the IDE, it’s affecting all custom DTH’s (apparently Z-Wave specific): org.springframework.transaction.TransactionSystemException: Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: JDBC rollback failed

Send an eMail to support@smartthings.com to get their attention, I don’t think they’re aware of it.

UPDATE: The IDE error was resolved by ST this morning


Done (with copy to you).

Update: Support request #661052: IDE Custom Z-Wave DTH Errors


Looks like it has been solved now

1 Like

Hi everyone,

I know it’s less than a few days until the big Holidays.

I’ve had ST setup for less than a few months, but apparently I haven’t dug deep enough to know more about it.

A few weeks ago, my Schlage disconnected from my ST Hub and it took a long while for me to dismantle the lock, factory reset, and then pairing it (which was the biggest pain in the a–! … worse pairing tech than bluetooth.)

In any case, I didn’t quite remember how to rework my original set-up. So for a few weeks, there had been some things that hasn’t worked quite like before… Particularly, auto-lock delay.

So I finally stumbled onto this forum tonight, and I feel totally dumb about not consulting this forum before directly asking the rboy staff for help.

As of this moment, my question is about the device handler for Z-Lock DH.

Why doesn’t the “Universal Z-Wave Lock Device Handler v04.02.11” have configuration for Schlage Locks?

Lastly, I kinda get confused by my trial and error configuration, wondering which setting has priority or may be in conflict with another configuration that seems to affect the same function.

(I’m a bit tired. Sorry if I’m explaining myself clearly.)


Blah. I found out my schlage lock was “unavailable” six hours ago.

I removed it from the hub.

Now I’ll probably have to take down the lock and pair it again, add the device handler and smart apps.

I even got a zwave extender a few day ago!

If the lock is operating without issues and the only thing you’re noticing is the “unavailable” status reported by ST then you may want to turn off the Device Heath feature as folks have been seeing this randomly affect their device status.

Also Schlage locks don’t have a configurable auto lock which is why you don’t see it in the preferences page. See this post for a comparison between different locks.

Do this as a last resort.

Device health doesn’t work well (if at all).


I have a Schlage BE469 lock and I used your device handler, everything works fine except one. I try to use a WebCoRe piston to change lock alarm mode and sensitivity based on the change of location mode:


The alarm mode does change but not the sensitivity level. I even added some wait time in between mode and sensitivity change, but no success. However I can use your SmartApps to set it. What did I do wrong?

This application appears to have a multitude of functions for locks and I have been debating if it will meet my use case. I am trying to obtain some additional information regarding the capability of this application to control some of the settings of the Schlage Z-Wave Connect Century (BE469).

Can this application allow the disabling and enabling of the Lock and Leave setting based on user codes entered onto the keypad?

Example: Having a guest code inputted turns on a guest mode for the home and disables lock and leave so that when the guest leaves they have to input the code again (Not simply hit the Schlage button on outside) to lock the door. The code being input again by the guest would turn off guest mode and re-enable lock and leave setting.

Is anyone else experiencing issues with their smart lock after the smartthings outage? My schlage still appears as unavailable.

I have Sonos speakers and the Rboy app/DTH for my smart locks.

Is there a way to say “Welcome home Mitch” when Mitch unlocks the door?

Or if I want to get fancier, say “Good morning Mitch”, “Good evening”, and silent if I come home after midnight?


look at big talker