Zigbee Lock User Code addition

I have finished my initial version of this DTH

Have you had any luck with your ZigBee DTH? @tpmanley @RBoy. This works for me but it is not perfect. Trying to make some enhancements and clean things up.

1 Like

Hey congrats and fabulous work, our DTH is still in progress, we’ve had to put it on backburner for a while due to other priorities but we want it get it done by EOY with additional features hopefully.

I just installed your DH on my zigbee Kwikset lock . It works great but there is one addition that I wish you could make. I noticed that my zwave lock reports user codes to CoRE but yours does not. The advantage is that i can program specific events in CoRE when a certain lock code is entered. As it is now with the zigbee lock I can only program events if that specific door is opened with anyone’s code. I like the zigbee locks better because for some reason they work more consistently with my network.

I do report the user code used as based on specification but it may be different than what you are expecting. Could you show me the CoRE Piston you are using?

Well i never actually finished the piston because i stalled out when i got to the user screen and all that it had there was the “none” option. I could back up and change to my zwave lock and i have a list of numbers on that page that i assume represent users even though the users and codes are not listed with the numbers. I never finished the piston with either one so it could be that neither one of them work. I started with
Basic Piston
Condition 1
Garage Man Door


Changes to



By user code (s)
Tap to set

When i press tap to set here the screen has no numbers to select from but it does when I use the z wave lock. I am using lock manager from ethayer along with his DH for zwave and your for zigbee. Also with the interaction function i have tried all three options there.

Ok. Let me take a look at this. I’ve never tried this functionality so I’ll have to see how CoRE is setting the by user code. I’m busy this upcoming week so I might not get to it immediately.

I do return when a code is used so it just has to do with how CoRE determines the list.

Ok, cool. No rush. In the mean time it will give me some time to play with some other ideas for automation. If i was a bit younger i might just start a business installing smart house technology.

FYI, i tested a simple core piston with the zwave lock last night and it worked like a charm. I will play with it more later to see if i can get the zigbee to play along.

Thanks for waiting. I should be available today to take a look at this. I’ll let you know what I find.

Great, you can do a lot of cool things if you can pull out individual lock codes. I am still learning CoRE but it seems that you can do just about anything if you can figure out the weird way the logic works. I am used to PLC logic and CoRE works quite a bit differently. Thanks for looking at this.

@Bhaynes This should be fixed with the latest 1.5 release I just uploaded to GitHub. Let me know how it goes.

Wow, that was fast ! I will check it out later today.

Just needed to set an attribute for CoRE to see. The rest was already there.

Currently I only set the value to the highest code number you have set. So if you use code slot 1, 5, 7 and 8 you will see #1 through #8 available in CoRE. I think that is cleaner, but it is not very clean in the code itself. May change it one day in the future but it shouldn’t affect your CoRE pistons you build from here on out.

Just downloaded the new code while i was at lunch but i still don’t get any codes when i try to create a piston. Will i need to remove the lock and add it back? I did delete the old device handler before copying the new one.

Try a refresh after publishing the new code. It only updates the variable when codes are added or deleted (or you manually refresh)

Got it, Thanks for the help.

Awesome work !! Is there a guide on how to use the app after I have installed the handler ?

I had installed my Yale Zigbee lock the default way, but would like to get the ability to add more user codes and get specific notifications for some of the users; do I remove the lock and readd and will the users/new codes appear on web IDE or Smartthings app?

Unfortunately the app will not pull existing codes so you’ll need to create them all from scratch. The lock manager app has documentation on how to install and I believe use. Simply you add your lock to the lock manager, then add users. If you create a user for a lock position that has a code, it will be overwritten. Also the lock manager app does not have the ability to run specific rules for the management code in slot 0 if you use it. You’d need to use WebCoRE or CoRE if you needed to do that.

The alternative to lock manager is the lock management SmartApp by @RBoy. His app will work with user 0.

Lock Manager user guide:

1 Like

This is the app jhamstead was referring to in the above post.