[Edge drivers] Issue with Z-Wave Lock driver (Schlage BE469ZP)

@nayelyz I just installed a new Schlage BE469ZP using the beta zwave-lock driver, and the driver immediately went into an endless loop where it would send a UserCode:Get command, the device would return a UserCode:Report, the driver would throw the error (below) while processing the report, and then the driver would start over by resending the UserCode:Get. This repeated every 15-30 seconds for 40 minutes before I put an end to it.

[string "schlage-lock/init.lua"]:116: attempt to index a nil value (local 'code_state')

I can send much longer logs if you need, but the error is generating from line 124 below, as code_state = nil for a new device:

Changing line 124 to the below eliminates the error and allows the lock to finish its set up:

    return user_code == "**********" or user_code == nil or (code_state or {})["setName"..cmd.args.user_identifier] ~= nil

Hi, @philh30.

Thank you for reporting this, I’ll create a report. For now, I think it’s enough information. I’ll let you know in case we need more.


Hi, @philh30!

The team mentioned the fix for this issue should be available for the drivers in the beta channel. Can you help us confirm if this works correctly, please?

The changes to the beta driver look good and should fix that error. I already have the lock fully set up and the family all know their lock codes, so I’m not able to re-onboard to test.


Got it, @philh30. Thank you for checking the update in the repo. :slight_smile:

1 Like

I’m not highly technical, but wondering if someone can please help me figure out why Schlage BE469ZP lock continues to reinstall using legacy drivers? I deleted the lock from IDE, and every time I reinstall it, it uses the non-Edge zwave driver (no “driver” listed under device option menu “…”).

I subscribed to the beta edge driver channel.

I’ve successfully migrated ten other devices to the new edge drivers by deleting and re-discovering other devices.

Welcome to the SmarThings Community, @jhmeier!
Have you seen if you have a custom DTH in your IDE that contains the fingerprints of the device?
I mean in this section:

This is because they can take preference over Edge drivers.
I see the fingerprints of your device are included in the Z-Wave lock driver, did you install this one from the Beta Channel?

I have a Schlage z-wave lock, BE469WK that is not in the fingerprints file of the SmartThings Edge Drivers on Github. Also the fingerprint file in lock driver in the above post is different. What’s the status of the driver? Thanks, Dave

Hi, @upperbayhawk!
Did your device use a stock DTH? If so, which one?

Yes. Z-Wave Lock

I see the fingerprint is included here:

However, they aren’t enabled in the production version of the driver, this means the one that is installed automatically, so, that’s why it still uses the DTH if you have tried to pair it again.
As this is included in the driver, you might prefer to wait for the migration, otherwise, you need to install the driver directly.

Hi Nayelyz,

Thanks! I’ll wait as there may be more edits to the driver.


Hi Nayelyz,

My spring window shades installed the DTH driver but I saw the fingerprint in the Github drivers file:


  • id: “springs/roller”

deviceLabel: Springs Roller Shade

manufacturerId: 0x026E

productType: 0x5253

productId: 0x5A31

deviceProfileName: base-window-treatment

Is this also a beta driver and not enabled for production? Is there any way I can tell?


It’s working so I can wait for the migration if it’s in the queue.

Many Thanks,


Sorry for the delay.
Yes, it’s disabled in production/default drivers (here). For future reference, to identify which is which in the GitHub repository, the beta drivers are in the branch called “main” and the ones in the default channel (installed automatically) are in a branch called “production”.
Update: Sorry, I forgot to add a picture for better reference.

Hi Nayelyz,

Thanks! That helps a lot.

Have a great day,


1 Like

My Schlage lock lost battery and when I replaced the battery its not able to connect. I did have it using a custom IDE driver but i am not able to delete it because IDE no longer is active. How can i get my lock to pair. Anytime I try it gets stuck in a loop and never connects. Please help.

So the legacy groovy side of the platform has been shut down. This would include any custom device handlers you install in the now shuttered IDE. Your lock would have been migrated to an Edge driver. The new architecture uses Edge drivers for directly connected devices.

I recommend installing @phil30 z-wave lock PH Edge driver. channel invite to install the driver can be found here: Channel Invitation .

You will need to exclude the lock from the hub. Then you should be able to pair it to the hub. You may need to switch to the recommended driver after the lock is paired.

useful tools:
Advanced Web App

1 Like

I am not sure what I did wrong, but I have seem to made the problem worse. I accepted the invitation. Then I went to exclude the lock and it wont exclude or connect with the hub. I then tried to pair it with the hub and the hub never finds the lock. Before I accepted the invitation it would find the lock but connect using the wrong driver. Not sure what steps to take next. Please help.

I almost got it to connect but when I entered the 5 digit code for security it just hung. Any suggestions?