Would Z-Wave Plus help my performance?

I have some performance issues with my Gen2 Aeotec Z-Wave USB stick and my network of ~30 Z-Wave switches (mostly Linear). Sometimes I’ll issue commands from HA for scripts or scenes that involve 6-10 lights, and there will be delays before some of the switches respond…the first couple will trigger, then a few seconds later some more, then a few seconds after that the rest.

I’ve of course healed the network, and even rebuilt the network, but I still have the same issues. The devices are all pretty close to one another, well within Z-Wave’s operable range so I don’t think it’s a range problem.

I’m wondering two things…

  1. Is there some way I can diagnose what’s going on? I tail the OZW log on my Hass.io installation, and I can see all the events, but other than a pause between some commands I don’t really see anything that jumps out at me as a problem.
  2. Would switching to Z-Wave Plus controller/devices help out here? From what I’ve read it’s supposed to have faster throughput and better signal strength. I’m considering the HUSBZB-1 combo Z-Wave/Zigbee stick, and I wouldn’t mind upgrading my switches to Leviton’s new Z-Wave Plus ones. But I’d like to have some degree of confidence that they’re going to help this issue before I spend all that money and time.

Any tips?

My experience is that z-wave plus will help… to an extent.

However, I think you need to make peace with the idea that zwave is just not a high speed network. Even with plus and the best devices on the market, my lights do not respond anything close to simultaneously when I issue commands to several of them.

My house is around 1600 square feet and has around 50 zwave objects. I’m not a huge fan of the GE zwave switches and coincidentally most of them are regular z-wave, not plus. Around 60% of my motion sensors/door sensors are zwave plus. My smart switches are also plus.

Wife and I are okay with the speed of light control and find z-wave acceptable for the most part. My problem is the setup which has nothing to do with home assistant.

Anyway, yes I do think the Z-wave plus will help. My Gen5 stick is in basement and I had slow performance with hallway hue lights and a zwave motion sensor trigger. After I swapped the regular zwave motion sensor with a plus that was downstairs the hallway performed better.

My Zwave network (~15 nodes) which is a mix of plus and regular was going great until I added a node securely a few days ago. Since then things have fallen off a cliff.

Sometimes lights will come on, sometimes not. One thing I’ve done is to reduce the frequency the controller polls nodes which has reduced the number of messages on the network. It is still a bit flaky, but seems to have made a difference.

I’ve seen on the Smart Things forum a similar point of secure nodes being slow, and wondering if the bottleneck is the zwave or the hub. I’m considering just adding all nodes in non secure mode.

If Zwave is not “high speed”, what is? A wired network like KNX ?

I found that polling was a disaster for my zwave network. I don’t poll at all, and I limit the frequency of push updates to prevent network congestion.

You can sometimes learn a lot by watching the open zwave log. If you see failures, those can inhibit performance greatly.

You can try using associate to group devices together. Use the Zwave Panel in HA and Node group associations.

You only get the benefits of ZW+ if ALL the devices are ZW+. In a mixed environment you do not get the higher speed. You do get the longer range between ZW+ nodes which could be helpful.

1 Like

@anderson110 how do you disable polling completely? I couldn’t see how in the HA docs. I agree with you on the polling too. I wonder if it should be off by default.

@zarthan do you know if you can associate a Zwave (non plus) with a secure Zwave+?

So it essentially downgrades the speed between all devices if any device in the entire mesh network is not ZWPlus? What about a command that goes straight from the controller to a Plus device, or makes a hop but only does so over Plus devices? That wouldn’t remain at the higher speed?

You can’t blanket say that there is only a benefit to Zw+ if all your devices are Plus. It all depends on how devices are laid out, which devices are neighbors etc. I would not shy away from getting Plus devices because you already have a bunch of non Plus devices. In your case, you would need a Gen 5 stick to get started.

1 Like

@halfbaked I have no idea if associating with a secure device would work. Secure devices do participate in the mesh with non-secure devices so I don’t see why it couldn’t work. I would just give it a try.

A few issues come into play.

First is the controller. If you have a ZWP capable controller but have ANY ZW devices in the network the controller will run in ZW only mode. You will get no speed or protocol benefits in this situation. If all your devices are ZWP it will operate in ZWP mode.

The next are your nodes. Here in a mixed ZW/ZWP environment you will get ZW speed. Where you will see a benefit is that ZWP devices have a more powerful radio that does bring benefits in larger or noisy environments - longer range and better performance through walls and such. This brings benefits in that you get more mesh associations and can cover longer distances between nodes. In general your mesh gains redundancy which is always a plus.

ZWP nodes also tend to be much better on battery life and such as it’s a newer chipset that is more efficient and does some tricks to conserve battery life. You get that irregardless of mixed network or not.

So as pointed out you should ONLY be buying ZWP nodes. The cost difference is really small and even in a mixed environment you get some good benefits with the longer range.

One way around this mixed network is to use two Zwave controllers; one dedicated and associated with just your ZWP devices, and the other to use on your legacy ZW network.

As for polling on a ZWP network as the devices are all new enough they typically all support status reporting you can set the polling interval really high, mine is as 600 seconds. Those devices are happy.

On ZW you are not so lucky as many old devices do not support status reporting so you must poll them. Here the tuning is tricky. By having fewer devices polled you can increase the polling frequency as well without overloading the network.

One thing to remember is ZW and ZWP are SLOW networks. 20Kbps and 40Kbps. This is not a lot of throughput. It is very easy to bring a ZW network to it’s knees.

4 Likes

I didn’t do anything to disable it that I can remember. I think I just didn’t turn it on.

That is very interesting information that is new to me. How did you learn it? I am trying to learn about z-wave but the information available seems rather scattered, disorganized, and marketing oriented, or is written in spec-speak that doesn’t really bring out crucial pieces of information like this.

I would offer that even though 20 kbps and 40 kbps are both “slow”, I have my doubts that either is a likely bottleneck when people are experiencing performance problems. Rather, the latencies between sends and receives are probably the dominant issue. The messages seem quite short, if there were no latencies the network should fly at 20 kbps.

In looking at the open zwave library, I kind of wonder if there might be performance issues lurking in there. It seems the library was written by reverse engineering before the specs were made public. It’s possible there are optimizations which could be made now with better knowledge of the specifications. But it doesn’t seem like anybody is working on it.

Great explanation thank you. And yes, going forward, I am only buying Z-Wave Plus devices, but it would cost a couple thousand dollars to do them all at once and I just would rather not.

I’m thinking to separate the two I might try putting my older ZW devices on SmartThings and MQTT them to HA, and put ZWP devices on the HUSBZB-1 stick I have coming tomorrow. And slowly sunset my reliance on SmartThings.

I did a little experiment last night to try to understand if the low-ish speed of my z-wave network (lights take generally about 1/2 sec to several seconds to respond to on or off commands) is more in the hardware or the software.

So I studied the z-wave protocol and came up with a way to directly feed the bytes of a z-wave command into my serial controller with home assistant off, no open z-wave, no software layers at all, just a direct feed of bytes into the controller.

And the response was instant on the light for the room I was working in (which is in the same room as the controller). No perceptible delay at all. I had to quit for the night at that point, but I am really interested now in repeating the experiment for the most remote nodes on my network, and for batching a bunch of light on/off commands together to see how quick the response is. It seems possible that somewhere between HA and openzwave, we are not achieving the full potential of our zwave devices.

More later.

3 Likes

Very interesting! Can’t wait to hear more.

1 Like

You can see throughout issues when polling is set far too low. Also with some older style dimmers that work around status update with hail you can see it too.

With old dimmers that “Hail” by continually pushing their buttons you can easily bring down a zwave network. This is because hail is treated as a priority and causes a broadcast storm. By flooding the network with hails you eat all bandwidth.

But you are 100% correct - in most day to day situations on a healthy mesh it’s network latency that causes “slow” performance.

1 Like