[Depricated] Lock Code Manager

OK got it !!! I’m gonna give a shot thanks again !!!

Looks like your error @798 is caused by you having users in your user settings page that you haven’t assigned a slot to. Just remove those users, and that error will go away.

The error isn’t causing any issues as far as I can tell. Maybe I’ll write in a catch for this, but low priority as it’s not hurting anything =)

Best

I just installed this lock and would love to get this to work but I am not at all technical. Reading this string is greek to me. I hope you get it figure out and I can use your end product, if I could be so bold.

When you say “this lock,” are you referring to the Schlage FE599NX? It is only slightly less “Greek” to me, but if you have the same lock, I can share what I’ve learned thus far…

Thank you, Erik! At least I know it’s capability. Per the material that came in the box, it says it is capable of 8 digit codes. Perhaps is that true for codes programmed at the lock itself (as opposed to through ST)?

Start by reading this FAQ, it may help:

From Schlage:

Assign up to 19 private four-digit codes for family members to use at the door.

The included worksheet is a bit confusing because it has one line with the six digit programming code and then the next line has two four-digit codes side by side. Easy to read that as an eight-digit code, but it’s not. If you look closely you’ll see a tiny “User A” and “User B” label on the left and right.

I believe all Schlage residential locks use four digit codes.

Yale locks allow for four to eight digit codes.

1 Like

I’ve been off doing something else, and just took a look at the logs. This is just sitting, idling:

418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:25:57 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:25:56 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:25:56 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 1:25:55 PM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:11:39 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:11:38 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:11:38 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 1:11:37 PM: debug poll is sending [‘8611’]
c55419ed-d39d-4452-81a4-3a0953168b4a 1:05:32 PM: debug "zw device: 03, command: 9881, payload: 00 62 03 00 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is unlocked]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:05:31 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:05:30 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 1:05:30 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 1:05:29 PM: debug poll is sending [‘9881006202’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:47:08 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:47:07 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:47:07 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:47:06 PM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:46:26 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:46:26 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:46:25 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:46:25 PM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:40:04 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:40:03 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:40:03 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:40:02 PM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:29:04 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:29:04 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:29:03 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:29:03 PM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:20:18 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:20:18 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:20:17 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:20:17 PM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:20:12 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:20:11 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:20:11 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:20:10 PM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:10:16 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:10:16 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:10:15 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:10:15 PM: debug poll is sending [‘8611’]
c55419ed-d39d-4452-81a4-3a0953168b4a 12:02:25 PM: debug "zw device: 03, command: 9881, payload: 00 62 03 00 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is unlocked]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:02:24 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:02:24 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 12:02:23 PM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 12:02:23 PM: debug poll is sending [‘9881006202’]
c55419ed-d39d-4452-81a4-3a0953168b4a 11:55:33 AM: debug "zw device: 03, command: 9881, payload: 00 71 05 10 03 " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘descriptionText’:Bear Lake Cabin was unlocked with code 3, ‘data’:[‘usedCode’:3], ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:18:43 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:18:42 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:18:42 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 10:18:41 AM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:11:27 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:11:27 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:11:26 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 10:11:25 AM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:09:25 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:09:24 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:09:24 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 10:09:23 AM: debug poll is sending [‘8611’]
c55419ed-d39d-4452-81a4-3a0953168b4a 10:03:19 AM: debug "zw device: 03, command: 9881, payload: 00 62 03 00 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is unlocked]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:03:18 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:03:17 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 10:03:17 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 10:03:16 AM: debug poll is sending [‘9881006202’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:54:53 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:54:52 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:54:51 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 9:54:51 AM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:42:24 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:42:23 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:42:23 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 9:42:22 AM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:36:55 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:36:55 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 9:36:54 AM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:36:54 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:29:54 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:29:54 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:29:53 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 9:29:52 AM: debug poll is sending [‘8611’]
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:21:59 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:21:58 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
418f5e7f-708e-4d08-9e1c-6d1c4e8720cb 9:21:58 AM: error java.lang.NullPointerException: Cannot invoke method toInteger() on null object @ line 798
c55419ed-d39d-4452-81a4-3a0953168b4a 9:21:57 AM: debug poll is sending [‘8611’]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:26 AM: debug "zw device: 03, command: 9881, payload: 00 62 03 00 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is unlocked]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:24 AM: debug refresh sending [‘9881006202’]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:24 AM: debug Bear Lake Cabin is associated to 1
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:22 AM: debug "zw device: 03, command: 9881, payload: 00 62 03 00 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is unlocked]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:19 AM: debug "zw device: 03, command: 9881, payload: 00 62 03 00 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘isStateChange’:true, ‘displayed’:true, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is unlocked]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:08 AM: debug "zw device: 03, command: 9881, payload: 00 62 03 FF 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘locked’, ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is locked]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:06 AM: debug refresh sending [‘9881006202’]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:06 AM: debug Bear Lake Cabin is associated to 1
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:02 AM: 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’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is locked]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:00 AM: debug refresh sending [‘9881006202’]
c55419ed-d39d-4452-81a4-3a0953168b4a 9:09:00 AM: debug Bear Lake Cabin is associated to 1

Ethan,

You are a rock star. I got some help and have the app loaded. I am not physically located with the lock. I need a little instruction so as not to disturb the codes I manually entered before I found your amazing code. Does anything exist to help me figure out what is meant by the prompts, i.e. number of users (is that me or the 19 possibilities the lock can accomodate). It is to control a lock at a vacation home and I am too far away to mess with what I manually programed for upcoming rentals. I have a Scalage FE599

Donating now!

Karen

That is the lock I have! I got the SmartApp on my phone but I am afraid to do anymore because I am 120 miles from the lock. I manually programed 14 codes for some upcoming guests (the lock is on my vacation rental). I am afraid to set up the smart for fear of messing with the 14 already entered codes.

1 Like

I think I read that codes programmed at the lock would be lost if the app does any programming. Can someone chip in to clarify?

In my experience, that has been correct. Some people seem to state that the lock has it’s own local memory code slots, that can’t be altered by the zwave functions, but in my experience this has been incorrect.

Programming at my Kwikset lock on the two local programmable codes are overwritten by slot1 and slot2 via zwave commands.

Milage may vary.

EDIT: This has given me the idea to create lock info pages. Might make something to help you discover what codes are in slots and troubleshoot issues. Look for this in a future release.

4 Likes

that would be awesome! I spent a long time reading and rereading the forums trying to answer these questions, knowing that others had already found answers. I did not want to use up the forum’s goodwill by asking questions that were too rudimentary. I finally just gave up and started asking! Specific product pages would make a big difference.

1 Like

Hah, not sure if that’s going to be a possibility. Users will have to just look up their spec sheets for that.

What I meant was to add a page within the app to show you what codes are assigned to each of your locks, and which slots those codes are assigned to.

I can display how many codes a lock supports, but I’m not sure that I can grab the number of digits. We’ll see.

Oh well.

Hey! Another question: when I use the app to unlock, it stays unlocked. When i use codes on the lock itself, it unlocks, then re-locks 3-4 seconds later. Is that intentional?

I could see wanting re-lock functionality in a hotel, where you want to keep the door locked all of the time. Not so much in a home setting. Obviously, the person that entered has the option of hitting the unlock button on the inside of the door, but I would choose a different default behavior if I could.

It would be even spicier if I could alter that behavior on a per-code basis!

Here is the log of me using a code. I’m not sure if that is helpful:
abc92115-56e0-45a3-868f-6c7f2ad60eed 4:05:38 PM: trace getPhrases(), state.welcomeIssue = null
c55419ed-d39d-4452-81a4-3a0953168b4a 4:05:31 PM: debug "zw device: 03, command: 9881, payload: 00 71 05 10 03 " parsed to [‘name’:‘lock’, ‘value’:‘unlocked’, ‘descriptionText’:Bear Lake Cabin was unlocked with code 3, ‘data’:[‘usedCode’:3], ‘isStateChange’:true, ‘displayed’:true, ‘linkText’:‘Bear Lake Cabin’]
c55419ed-d39d-4452-81a4-3a0953168b4a 4:05:23 PM: debug "zw device: 03, command: 9881, payload: 00 62 03 FF 00 00 FE FE " parsed to [‘name’:‘lock’, ‘value’:‘locked’, ‘isStateChange’:false, ‘displayed’:false, ‘linkText’:‘Bear Lake Cabin’, ‘descriptionText’:Bear Lake Cabin lock is locked]
4:5:9 PM: info Waiting on events…
4:5:9 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.
4:5:9 PM: info This console provides live logging of your SmartThings.

Just depends on the use case, different people want different things. My service dog can open the door, but not unlock the deadbolt. So I specifically wanted the relock feature to make sure the dog didn’t decide to open the door on his own if my housemates forgot to lock it. :dog:

And anyone with a wanderer in the family, whether it’s someone with Alzheimer’s or on the autism spectrum, may want the relock also.

So just one of those things–different people want different features.

2 Likes

RE: the Page-per-Lock notion, if it were possible to group discussions by hardware (lock) type, it would be helpful. I am not familiar with this discussion software format. Could a signature or tag be used to accomplish it? Could there be sub-folders under Lock Code Manager?

I don’t want to make more work for you, Erik, but if anyone else is savvy to this forum structure please chime in!

Many requests for tags, but the forum software doesn’t support it. You can start a new linked topic. See the Meta discussions.

1 Like

Not sure if this has been discussed. When I use codes to unlock the door (at the door), when they subsequently lock, the app does not reflect the status change back to “Locked.”

Interesting. The errors I was getting yesterday at idle (no usage) have disappeared. I can’t explain it. (See above for the log showing the errors).