ZWave Schlage Locks not working after upgade to OH3

Hi All,

I had a working OH2 Setup with two Schlage BE469 ZWave Touch Screen Dead Bolts working without issue. I had a disk failure and now moving to OH3.

I have created new Things for these locks and updated my items to link to these things, however I cannot lock/unlock them.

When I attempt to I get the following error:

2022-01-14 21:28:51.491 [WARN ] [nal.converter.ZWaveDoorLockConverter] - NODE 22: Command class COMMAND_CLASS_DOOR_LOCK not found

Not sure what to do about this. Googled around a bit and I think it has to do with zwave security but I’m not seeing any fixes.

Every openHAB instance has a Network Security Key that’s generated when you set up a controller. You can see it under the controller thing if you click “Show advanced”.

The problem is that your securely included locks are looking for the old key from OH2, so they refuse to take commands from your new OH3 system.

If you have a backup of your old system, you’ll want to restore it and get the key from PaperUI. Then you can paste that into your OH3 system, remove the locks, and add them back. That worked for me when I upgraded.

If that doesn’t work or you don’t have a backup, you’ll have to fully exclude your locks from the controller and then securely include them again so that they get the new security key. Since secure inclusion can be difficult, I recommend trying the backup first.

Here’s a discussion from last year that’s identical to your issue. Unfortunately, the original poster wasn’t able to get it working after they copied the network key, so they had to exclude and include.

Thanks @rpwong! Appreciate the help.

Does anyone know WHERE this key was located in OH2’s file system? It would be WAY easier for me to try to locate it in a backup file than trying to spin up an OH2 instance and put old config files into it.

OK, I was able to track down my old key. It was located in my backup here:

openhab2-userdata/jsondb/org.eclipse.smarthome.core.thing.Thing.json

Search for “security_networkkey”

I then went into OH3, opened the zwave controller thing and under advanced, copied the new sec key out to a file (to have a backup just in case) and pasted in this old key from my OH2 install.

All devices went off line briefly while the controller item reinitialized then all came back online.

Next I went into my lock’s thing in OH3 and saw that “zwave_secure” was still marked as False. I tried reinitializing the item, that didn’t work, I tried going into the console and stopping, restarting the binding, that didn’t work, finally I stopped the OH server, cleaned the cache and restarted, now it was marked as zwave_secure=True!

This works for me now!

…at least with one lock - side door now functions - back door lock does not…

Lock #2, my back door lock which doesn’t get used often had a dead battery when OH3 started up the first time and never parsed the info from the lock. I think this battery was dead for some time and went unnoticed. I replaced the batteries and reinitialized the thing in OH (I manually locked and unlocked the device several times to wake it up to communicate with the controller), but it still never could read the vendor info, so it was just a device of unknown type. There is a check on the device to see if it thinks it is included in a network. You disconnect the battery, and reconnect, if the inside Schlage button blinks it thinks its included. My lock that now works did this before I changed the key, but my back lock didn’t before nor after I changed the sec key. So I believe this lock did not think it was included in any network.

So, I decided that I would try to exclude and re-include this device. I tried using the “Remove Device From Controller” which I suspect is Exclusion. I did that while holding the button on the device and I believe it was successful as the device went offline in OH. Now, however, I cannot get the device to get included in the zwave network. Every time it is unsuccessful. I’m not sure if I am doing this correctly. The instructions manual says you are supposed to hit “Inside Schlage button->your programming code->0” and it puts the device into inclusion mode. It appears to work, but it always blinks the red check indicating it failed. Does anyone have advice on how to deal with this device? Am I still running into some kind of issue with the security feature on this?

Hey, glad you found the key. I didn’t know if it was possible to find it, so good on you for doing that. In my case, it was easy to pop my old OH2 SD card back into my RPi, so that never came up.

You have to put the controller into exclusion mode by pressing “Exclude devices”. Otherwise, it doesn’t know what you’re trying to do.

“Remove device from controller” is for removing devices to which you no longer have access. More explanation here:

And you may want to refresh yourself on secure inclusion from the docs. I think you’re doing it right, but the lock hasn’t actually been excluded yet.