Configuring ZWAVE on raspberry pi - Help!

Any luck so far?

Still saying “Starting Z-Wave network”

Hmmm… no matter what I try, I can’t get mine stuck…

Can you paste the contents of your “OZW_log.txt” file? It’s in the same folder as the configuration.yaml file

Use the “code” tags in here to make it more readable(ish) :stuck_out_tongue:

Ok, it seemed stuck again. So I changed the usb path back to /dev/serial/by-id/usb-0658_0200-if00 with indentations this time. Removed the Z-Wave integration. Restarted HA from scratch. And we have success! I’m seeing “Z-Wave network started All nodes have been queried.” So in the next few hours I’ll go round and physically try and get the lock to talk to the network. Many thanks FJ.

1 Like

Oh awesome!
Don’t forget to add the network key to your configuration. Security devices require it for “Secure Inclusion” so that all communication between the lock and the Z-Wave controller are encrypted.

Thanks, yes I added a random network key when I changed the configuration.yaml file. And it didn’t complain about it so presumably it worked.

That’s basically as good as it gets with computers :laughing:

If you open the OZW_log.txt file in your configuration folder, it should say at the top, like 3rd or 4th line that it accepted the key or started with the key, if you want explicit confirmation :blush:

OK I think I’ve got my lock talking to HA, but I don’t see how I can unlock it or add a code using HA. It appears as “Unknown Node 3(Node:3 Complete)”. It has an entity called “lock.unknown_node_3_locked”.
But where should the commands appear to change the lock? I tried deleting it and re-pairing it but the delete node command doesn’t seem to do anything.

It sounds like the lock didn’t finish its interview by that point, given that it is being listed as “unknown node 3”.
Has it started working properly over the day today or is it still the same?

If it’s still the same, try selecting the node in the Z-Wave control panel (where the start and stop network buttons are) and pressing the “refresh node” button, and then unlock the lock to wake it up and have it complete it’s interview. Might take a minute or two, but I think you get some feedback appearing in the UI (all my nodes are mains powered so I never had to manually get them interviewing).

Also, what is the model of the lock and the module you plugged into the lock, out of interest?

Thanks FreelancerJ. I’m sure I tried that yesterday without success. In fact I think I tried all the available buttons at some stage! But I’ve just deleted z-wave, rebooted then added it and rebooted then tried refresh node and it appears with its proper name and looks like I can set user codes and everything. The model of lock is Yale (Assa abloy) Keyless Connect and the module is Yale Z-Wave Module 2.

My next circle of hell is figuring out how to remotely access HA. Is there an idiot’s guide for noobies for this? The “getting Started” section of HA I tried first just assumes I’m an expert Python programmer with a degree in Computer Science.

Ah, glad it’s up and cruising!

I haven’t done remote access myself, the few things I ever want to be able to see/control when not home I patched through to HomeKit and access that way. Due to laziness, mostly :laughing:

As far as I can tell, using the DuckDNS add on in the “Supervisor” is probably the best intersection of easy and secure.
Currently, it’s a free service for lightweight stuff like this, and makes managing a TLS certificate (a must for keeping remote access secure) painless and mostly automatic.

The documentation in the addon is pretty thorough, so if you’re after something that covers the need to know without expecting much prerequisite knowledge, that’s probably a good place to start :slight_smile:

Oh, you will have to configure port forwarding on your modem/router as well, that’s probably the hardest bit, but you’ll likely only have to do it once

I just tried changing a user code, but it doesn’t seem to work. There’s a Node User Codes section. The user code I already set up in the lock doesn’t appear there. And the only way to change it is to use Ascii character codes. I tried setting up a simple ascii code of say 35 36 37 38, but the set usercode command doesn’t do anything. Is this how it’s supposed to work? I do need remote management because it’s for an AirBNB and I need to be able to change the pin codes on a regular basis.

@KSC, @CO_4X4, @freshcoast of you have locks set up in your Z-Wave network? You’ll be better suited than me to help with this bit if you do!

@imlac, I’m just digging into the details of your lock on GitHub to see if I can figure out why it wouldn’t play ball. Unfortunately I don’t have a Z-Wave lock, so now that we’re past the getting the Z-Wave network running I’m a little less useful :laughing: :sob:

@FreelancerJ, I appreciate all the help I can get believe me! I do a lot of VBA programming in Excel, but this stuff is a totally different animal for me. I don’t mind spending the time to read through documentation, and I’m not one for usually asking for help - I can usually figure it out with a few google searches.

Went into Services and tried the set usercode service. And it worked! Does that mean that’s the only place I can change the codes?

Oh good, it working there takes a LOT of possible things that could be wrong out of the picture, so that’s great! :slight_smile:

It’s possible that you’ll be stuck with that being the only way at first, while still ironing the kinks. Worst comes to worst, you could make a customer Lovelace UI card to do the updates, but I think we’ll find a way to get the main UI working, it’s just a matter of time :slight_smile:

Ok, this one might need a custom config file for the z-wave software, cause it’s not explicitly defined currently, so the software is just following the standard to talk to it. Maybe Yale is doing something quirky with usercodes.
I’ll look more tomorrow when I’m better rested to be sure, but it would explain why the services menu would work when the normal UI wouldn’t. Progress!

Unfortunately I do not… But I’ve been planning to, so am interested in helping to figure this out.

@imlac - you can definitely do this, and it’s a lot easier than setting up the zwave network - I’ve been using DuckDNS from the start of working with HA, and it’s very robust. Here is the HA doc for that. It’s pretty straightforward to set up: Duck DNS - Home Assistant (home-assistant.io). This one is a little more clear on the explanation of how it’s secured: Effortless encryption with Let’s Encrypt and DuckDNS - Home Assistant (home-assistant.io). Fortunately DuckDNS comes let’s encrypt features already, so you don’t need to install Let’s Encrypt. The DuckDNS add-on does it all now.

For the lock, here’s a good discussion of how to set everything up, along with some sensor template code others have written: Yale Zwave locks - Configuration - Home Assistant Community (home-assistant.io)

One of the main things I gleaned was that it has to be securely added to see the full functionality of the lock - otherwise it is in some kind of limited mode.

I’m not sure this helps you a lot, as you may be past all this - where are we in the process of getting it to work?

Thanks Kirby. I already chickened out and went down the Nabu Casa cloud route. Couldn’t face wasting more hours of my life in helpless frustration! I also installed the HA app on my phone so I can make changes on the move if needed. I actually think the lock control is fully functional now. If I’d paid more attention to your warning about getting the spacing right in the configuration.yaml file I could have saved myself a few hours! The only thing is that there doesn’t seem any way to control how long a particular code is valid for. There’s no service that does that, although there’s probably some clever way of programming a remove_code event to happen at a particular time in the future.

And the interface seems a bit clunky to be honest. If I was programming something in VBA I would have a form with a list of locations and codes and would just click the one I wanted to edit , type in the new code and save. There is a list of locations and codes displayed in the Z-wave configuration screen together with buttons for set_usercode and delete_usercode , but I can’t seem to make any changes there stick. Have to go into Services and tell it what node I want to change and what location and the new code.