[Depricated] Lock Code Manager

Just getting to trying out this smart app but I have a question before I start messing with my lock. I have existing codes programmed for 5 users. Do I just add the codes in the app and it will get written over when the app sends the new codes or does it append to the existing code slots?

My initial two (2) slots I pre-set in the Kwikset 916 lock before connecting to the Lock Code Manager App were overwritten. I quickly re-added those slots to the others I set using the lock code manager App and they were active immediately.

This might be different depending on your lock model and manufacturer.

1 Like

Using a Windows phone and I just want to get the users code inputted for the front door and user your code; every time I try to configure a user the ā€œYou are not authorized to perform the requested operationā€ in red pops up. Here is the debug results ā€“

c7e5fd88-1c65-4587-9dcb-aee5d648f563 ā€Ž11ā€Ž:ā€Ž46ā€Ž:ā€Ž16ā€Ž ā€ŽAM: error java.lang.NullPointerException: Cannot invoke method isNumber() on null object @ line 259

c2402c9b-9984-4c99-9783-831374d67d37 ā€Ž11ā€Ž:ā€Ž45ā€Ž:ā€Ž47ā€Ž ā€ŽAM: debug Parse returned Mobile Presence has arrived

Please help so I donā€™t spend all day chasing my tail, not a programmer. Thanks!!!

UPDATE itā€™s the Windows phone that will not let me access the user codes, Android phone worked for modifying the users.

1 Like

@ethayer Really loving your Calendar feature of this app!! It has really changed how we manage our vacation rentals. Being able to schedule start-and-stop calendared times for door codes now means not having to be glued to my phone at check-in and -out times; however, after check-out time, I still have to remember to manually put the units in ARMED mode so Smart Alarm will functionā€”ah!

(I have three modes currently: ARMED, DISARMED, and GUEST. I also use a Hello Home action that allows the guest to change the mode to ARMED upon their departure: lock the door upon departure [door locks], enter their ā€œexitā€ code [door unlocks] which triggers the Hello Home action that then changes the mode from GUEST to ARMED [door locks], but some of our guests are not remembering to do it at all ā€¦ canā€™t blame them.)

So, I was thinking, is there a way for you to code an automatic fire of a Hello Home action upon door code expiry as entered on the Calendar page? Being able to choose a specific Hello Home actionā€”or even being able to change to a specific mode directly without running an HH actionā€”would be a boon to the Calendar feature of your app. How difficult would this feature request be to implement? Best placement, I would think, but Iā€™m not a coder, would be at the bottom of the Calendar page, after END TIME, for best user experience, mine included! Really great watching this app evolve!!

Thanks again!

2 Likes

###3.8 - Update yo code.

  • HelloHome on Start/End schedule.
  • Possible fix for windows phone (?)

Iā€™m not sure if I can fix the windows phone issue or not. This update may only allow you to use 1 user on your windows phone, or all of them? I donā€™t have a win phone to test.

If you need something tested on Windows Phone - happy to help. Have a few of them in the house.

For what itā€™s worth - just ran the latest update on Windows Phone. When attempting to add just 1 user and then edit their settings. Get a red box dialog on the app ā€œYou are not authorized to perform the requested operation.ā€.

Live logging shows this error simultaneously:
ā€œ68e93cc-1307-48e1-a7c0-b8ee355421d4 ā€Ž4ā€Ž:ā€Ž44ā€Ž:ā€Ž33ā€Ž ā€ŽPM: error java.lang.NullPointerException: Cannot invoke method isNumber() on null object @ line 268ā€.

So then I just commented out the testing logic for the float/integer to see if that would get me further. Same red dialog box, different error this time from Live Logging:

868e93cc-1307-48e1-a7c0-b8ee355421d4 ā€Ž4ā€Ž:ā€Ž53ā€Ž:ā€Ž21ā€Ž ā€ŽPM: error java.lang.NullPointerException: Cannot get property ā€˜enabledā€™ on null object @ line 83

So it looks like maybe the logic for the parameter input is borking on Windows? Not sure whyā€¦

Maybe thatā€™ll help a bit. Wish I could do more, but sitting on GoGo Inflight at the moment. :slight_smile:

Maybe that helps? :smile:

really cool idea. Iā€™m assuming this only works (based on the overview) with smartthings ootb supported locks. i.e not kwikset zigbee locks using a custom device type.

Hopefully these features will come out soon. i know smartthings are working on kwikset zigbee types but no etaā€¦ :frowning:

Just setup this app for use on my schlage camelot and itā€™s working flawlessly! Thanks so much for your hard work!

The only feature that I can think of that would help with usability would be per user expiry dates. If a guest is staying for 3 day then you donā€™t need to remember to manually delete the code. Unless this feature is already there. Admittedly I havenā€™t had a chance to play much but it looked to me that all scheduling was global?

Again great work!!!

1 Like

This is already possible ā€“

SmartThings limits each app install to 4 schedule calls. Therefore, you may only have one schedule per instance of the app.

If you want a schedule for a particular user, use another instance of the app and schedule that instance accordingly.

I have given some thought to circumventing the limit on schedules, but at this time I have no plans to do so. This limit may change in the future.

I didnā€™t even think of just adding another instance awesome! Thanks!

I came across your code today, and I absolutely love it. I own two Schlage BE496 Deadbolts, and one Schlage FE599 lever, and adding and removing codes from them can be quite the hassle, so your work has made my life much easier. Thank you!

On another note, the BE496 deadbolts are made with a 90db alarm that can be configured to sound when someone enters/leaves, when it senses tampering, or when it senses a forced entry. I also own a Fortrezz Siren Strobe, and I am looking for a way to tie these three alarms together to work in unison. Some other folks have done some work with these Schlage locks, and having the alarm triggers send off actions to other devices, but I was hoping that there may be a possibliity for you to integrate this functionality into your custom device and app as well. Here are a couple examples for you:

Itā€™s unlikely for me to work on this since I donā€™t have the device.

Itā€™s probably a better idea to ask the original authors of that device type to integrate my code into their device type, as my code is only about 6 linesā€¦ And they would have the ability to test on their devices.

thanks mate. The original dev has gone quiet on the device type :frowning:

I took a look at garyd9ā€™s custom device type and submitted a pull request to his repository. I canā€™t guarantee that it will work, but it should.

I canā€™t do anything with RBoyā€™s code. Youā€™ll have to ask him. I suggest staying with open source solutions if you can.

2 Likes

@ethayer or anyone else that can helpā€¦

I installed this app for a Kwikset 916 and Iā€™m having some issues that I havenā€™t come across on other installations. This time around Iā€™m not able to get any codes to function although Iā€™m setting them via the app on my iPhone 6.

The first notable difference between previous and the current installation is when Iā€™m changing the device type for the Z-Wave Lock to Z-Wave Lock Reporting, ā€œZ-Wave Lock Reportingā€ is missing. Iā€™ve added the custom device type from zwave-lock.groovy and now there are two ā€œZ-Wave Lockā€ device types. Thatā€™s the only difference that I see from previous installations for me and I notice that name changed in the git history. I have multiple hubs using the Kwikset 916 that uses your code so iā€™m baffled why itā€™s not working now.

Is there anything Iā€™m missing in the installation? I installed the SmartApp via template and copied your code, I also installed the device type via template and copied your code.

Hereā€™s my logs if that helps:

db94ef34-0a24-4c85-b96c-da092644e29e 6:17:03 PM: trace getPhrases(), state.welcomeIssue = null

4c507751-a48b-4903-9ecb-e2d8845a8361 6:16:50 PM: debug "zw device: 03, command: 8612, payload: 06 03 43 03 25 " parsed to ['descriptionText':Demo Lock: firmware version: 3.37, Z-Wave version: 3.67, 'isStateChange':false, 'displayed':false, 'linkText':'Demo Lock']

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:16:48 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 812

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:16:48 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 812

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:16:47 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 812

4c507751-a48b-4903-9ecb-e2d8845a8361 6:16:47 PM: debug poll is sending ['8611']

4c507751-a48b-4903-9ecb-e2d8845a8361 6:06:50 PM: debug "zw device: 03, command: 9881, payload: 00 62 03 FF 00 00 FE FE " parsed to ['name':'lock', 'value':'locked', 'isStateChange':true, 'displayed':true, 'linkText':'Demo Lock', 'descriptionText':Demo Lock lock is locked]

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:06:48 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 812

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:06:48 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 812

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:06:47 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 812

4c507751-a48b-4903-9ecb-e2d8845a8361 6:06:46 PM: debug poll is sending ['9881006202']

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:04:45 PM: debug state: [lastUser:1, userState2:[enabled:true, usage:0], userState1:[enabled:true, usage:0], lock1:[error_loop:false], error_loop_count:0]

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:04:44 PM: debug Updating 'Locks' with settings: [locks:[Demo Lock], maxUsers:2, userEnabled1:true, userCode1:2345, burnCode1:false, userName1:Demo, userSlot1:1]

4c507751-a48b-4903-9ecb-e2d8845a8361 6:04:45 PM: debug code1 was 2345, set to 2345

4c507751-a48b-4903-9ecb-e2d8845a8361 6:04:45 PM: debug "zw device: 03, command: 9881, payload: 00 63 03 01 01 32 33 34 35 " parsed to [['name':'codeReport', 'value':1, 'data':['code':'2345'], 'descriptionText':Demo Lock code 1 is set, 'displayed':true, 'isStateChange':true, 'linkText':'Demo Lock']]

4c507751-a48b-4903-9ecb-e2d8845a8361 6:04:45 PM: debug code report parsed to [['name':'codeReport', 'value':1, 'data':['code':'2345'], 'descriptionText':Demo Lock code 1 is set, 'displayed':true, 'isStateChange':true, 'linkText':'Demo Lock']]

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:04:43 PM: debug state: [lastUser:1, userState2:[enabled:true, usage:0], userState1:[enabled:true, usage:0], lock1:[error_loop:false], error_loop_count:0]

5af29ccd-f285-4e89-9116-e10f2d8934f9 6:04:41 PM: debug Installing 'Locks' with settings: [locks:[Demo Lock], maxUsers:2, userEnabled1:true, userCode1:2345, burnCode1:false, userName1:Demo, userSlot1:1]

4c507751-a48b-4903-9ecb-e2d8845a8361 6:04:42 PM: debug setting code 1 to 2345

4c507751-a48b-4903-9ecb-e2d8845a8361 6:04:42 PM: debug code1 was null, set to 2345 

db94ef34-0a24-4c85-b96c-da092644e29e 6:04:12 PM: trace getPhrases(), state.welcomeIssue = null

6:4:5 PM: info Waiting on events...
6:4:5 PM: info For past logs for individual things go to the My Devices section, find the device and click on the Events link on the device information page.
6:4:5 PM: info This console provides live logging of your SmartThings.

Thanks for your help! If thereā€™s anything I can do to help get this issue corrected, let me know. Iā€™m happy to lend a hand or get you any logs or info that you need.

agreed. it was the only option that worked though. this is the device type I used: https://raw.githubusercontent.com/sebirdman/Kwikset-ZigBee-Lock/master/Kwikset%20Zigbee%20Lock.groovy

@ethayer Just an update. I was able to resolve this issue by removing the 916 from my z-wave network, factory resetting the lock, deleting the smartapp and smartdevice and then reinstalling everything and it worked like a charm.

Beautiful! I tried Rboyā€™s device type, and it seemed pretty clunky anyways. Hopefully @garyd9 will happily collaborate!

I already merged Erikā€™s pull requestā€¦

3 Likes