SmartThings Community

[RELEASE] Universal Enhanced Z-Wave Plus Lock Device Handler: Schlage, Yale, Kwikset, IDLock, DanaLock, August Pro, Samsung, Locstar, Delaney, KeyWe, Philia Locks and Popp Z-Wave Keypad with Alarm Control, Notification, RFID, Door Sensor

I did a reset of the lock…no luck. (Hold down Schlage button while reconnecting batteries)
I did a factory reset…still no luck.

When attempting to exclude the lock, after the last step of hitting the ZERO on the keypad, I always end up with the red X. I understand this to mean that it wasn’t successful.
Even held the hub right next to the lock a few times.

[EDIT] Finally got it. I had to completely remove the lock from Smartthings. As soon as I did that, the app went into exclusion mode and then I repeated the process on the lock…and it was excluded. Then rejoined.
Lock now has all the tiles.

1 Like

Im just about ready to take the plunge and get the SCHLAGE FE469.

the thing that has been holding me back is, knowing how smartthings/hub can get finicky. so what happens if it losses connection? is there a manual override? how do i get the lock to open/close? im assuming there is a key to use? (still?)

I don’t have this particular lock. However, it appears that there is a key. Also, if it’s like my lock (Kwikset 912) , even if the hub is offline, the key pad will still work with local control for your codes, etc.


I just installed one last weekend… think of it as double redundant. If the hub is down for whatever reason, the codes will still work as @lflorack said. If the hub is down and the batteries have died for the keypad, the key still works the outside of the lock.


groovy.lang.MissingMethodException: No signature of method: script_app_metadata_0227f12c_f49b_4d96_84b6_fbeec862bde5.metadata() is applicable for argument types: (script_app_metadata_0227f12c_f49b_4d96_84b6_fbeec862bde5$_run_closure1) values: [script_app_metadata_0227f12c_f49b_4d96_84b6_fbeec862bde5$_run_closure1@1cf16d4d]
Possible solutions: getMetadata(), getState(), setState(java.lang.Object), metaClass(groovy.lang.Closure)

Hi @Brian_Rener,

Your post only has some error code. Are you having problems setting up this DTH? Did you accidentally try to use DTH code for a smartapp? How and when did you get this?

1 Like


I just installed a Kwikset 910 lock and did not install any user codes on the lock itself.

I’ve updated the DTH to your universal one and installed the lock manager application. If I look at the Recently tab within Smartthings, I’m getting alot of activity that doesn’t make sense to me.
It keeps adding and deleting the 2 users I’ve setup within the application. This morning it notified me that user 1 is a duplicate code and to please clear extra codes from your lock. Not sure where user 1 is coming from and as I said earlier I didn’t create any codes on the lock itself.

What should I do to correct these issues?


Hi Angie,

It sounds like you have two (or more) apps connected to your lock which are conflicting with each other. One is adding while the other is deleting. If you click on the SmartApps tab on the device page on your Classic app it will show the apps which are connected and using the lock (for example LUM or RLA). There should only be one app connected to the app. Tap the other apps and uninstall them.

That should solve your add / delete loop you’re seeing in the activity tab.

Thanks Maddie. I do see 2 applications - One I renamed Lock Management for Permanent Users and Lock User Management. I am unable to do anything with the latter (Lock User Management), nothing happens when I click it. Any ideas?

It’s the second one that’s interfering with the first. If you can’t remove it from the ST mobile app it may be a corrupted install. You can remove it from the IDE. Login to the IDE (, click on My Locations -> Click on SmartApps next to your location name. This show all the installed SmartApps. You can click on Edit and delete the extra LUM app (tap the - icon to delete apps) which is interfering with you lock.

Thanks Maddie, that worked.
So I should only have one LUM app?

Here’s my scenario



patio right

patio left

2 people will have permanent access to all 3 doors

Several people will have permanent access to the garage

Several people will only have guest access to the garage.

What’s the best way to set this up?


You can set it up any way you like, one LUM instance to control all your locks, garages, doors etc or a separate instance for each device.
The advantage with a single instance is that you can do it all in one place. Once you add a user it can automatically be sent to all the locks (assuming they all are configured to use the same pin length). You can setup different actions for each lock. You can restrict users to specific locks from the users page, create custom user specific actions for each lock and so on. It’s very flexible and about personal preference.

While one app can control multiple locks, the only thing to note is that one lock should not be controlled by more than one app to avoid conflicts like the one you saw above.

Thanks alot Maddie, I was making it way too hard!

Last week my Schlage tiles disappeared (to defaults), so I lost all its specific features. I had to reset the lock and reconstitute all the configurations. This week, the same has happened to my father’s house, with the added frustration that it now relocks automatically, even though it’s not configured that way. He uses a Kwikset 910 (see below).

With my Schlage, I had to exclude, re-attach, and then reconstitute all the smart app configurations. He loves the app, but not with tech issues. Is there any why I can avoid 60 minutes of his complaining while I fix his setup?. lol :joy:

A few folks have reported this happening randomly recently and it’s appears to be happening due to a corruption in the platform backend data where the lock model identification numbers are replaced with 0000 as reported in one of the posts above. The best solution is to exclude and re pair like you’ve done. You can also try to update your DTH to the latest version. We’ve put in a work around which tries to read an alternative source of the lock model information. If the alternative data in the platform isn’t corrupted the tiles will show up again when you tap refresh. If both the sources of data are corrupted you’ll have to exclude and re pair it.

@RBoy before I go about resetting and repairing the lock…I am curious if you know what might be happening

Basically - the Classic app will read the status (locked or unlocked) if I manually lock or unlock, but trying to lock it to unlock it from the app does not do anything. This is new from the last few days. I did replace the batteries (which they just stay at 79% in device screen) and the SmartLock app shows the lock as “unknown” but then goes back to showing its correct status at some point.

  1. I have the most current DTH (4.03.05)
  2. I replaced the batteries
  3. I ran the Z-Wave Repair

When I try to unlock or lock from the app, this is the last log in the device itself:

10:19:10 AM: trace [DTH] Executing unlock() for device Security - Garage Door Lock

Nothing else shows up in the logging after that, until I unlock it manually, and then I get:

effe4bf6-5e8b-436f-a4ec-73afe1ee23ed 10:23:42 AM: info [DTH] parse() - returning result=[[name:lock, value:unlocked, data:[method:manual, lockName:Security - Garage Door Lock], descriptionText:Unlocked manually, isStateChange:true, displayed:true, linkText:Security - Garage Door Lock]]

effe4bf6-5e8b-436f-a4ec-73afe1ee23ed 10:23:42 AM: debug [DTH] zwaveEvent(physicalgraph.zwave.commands.alarmv2.AlarmReport) returning with result = [[name:lock, value:unlocked, data:[method:manual, lockName:Security - Garage Door Lock], descriptionText:Unlocked manually, isStateChange:true, displayed:true, linkText:Security - Garage Door Lock]]

effe4bf6-5e8b-436f-a4ec-73afe1ee23ed 10:23:42 AM: trace [DTH] Executing ‘handleAlarmReportUsingAlarmType’ with cmd = AlarmReport(eventParameter: , numberOfEventParameters: 0, zensorNetSourceNodeId: 0, zwaveAlarmType: 0, alarmLevel: 1, zwaveAlarmStatus: 0, zwaveAlarmEvent: 0, alarmType: 22)

effe4bf6-5e8b-436f-a4ec-73afe1ee23ed 10:23:42 AM: trace [DTH] Executing ‘zwaveEvent(physicalgraph.zwave.commands.alarmv2.AlarmReport)’ with cmd = AlarmReport(eventParameter: , numberOfEventParameters: 0, zensorNetSourceNodeId: 0, zwaveAlarmType: 0, alarmLevel: 1, zwaveAlarmStatus: 0, zwaveAlarmEvent: 0, alarmType: 22)

Nothing shows up in response to the command sent to the lock means either the command never reached the lock or the response never reached the hub.

I generally advise folks to avoid debugging stuff on a weekend as the platform crawls on the weekend causing timeouts, lost commands and makes it more difficult to figure out stuff.

For Z-Wave issues the best solution is to add a repeater within 20ft if the lock:

1 Like

@RBoy ha that’s the one thing I forgot to add - I have an Aeotec Z-Wave repeater about 4 feet from the lock and a Z-Wave outlet right on the other side of the wall, so I think the signal is pretty decent.

I have never, ever, ever had this type of issue since installing the locks a couple of years ago so something is definitely different. And it started happening Wednesday so it wasn’t the weekend. I will see if it works tomorrow and update on this thread.


1 Like

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 (I.E. One Touch) 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. As a daily user I like the one touch lock settings, but I want that to automatically be disabled if a guest code is entered.

This is device type handler (DTH), i.e. it allows SmartThings to access/control the features of your lock through SmartApps.

Apps like LUM provide many advanced features for lock management and user programming. You can use a SmartApp like CoRE or WebCoRE to issue commands to the DTH to create your own custom scenarios.
In your case you would be issuing the commands enableOneTouchLock and disableOneTouchLock to enable/disable the Schlage lock n leave feature. You can refer to this post for more details on how to use CoRE/WebCoRE to trigger the above commands when a user pin code is detected to unlock the door.