Now that I’ve been up and running for a few weeks, I’ve noticed that some of my switches aren’t receiving or responding to commands 100% of the time. It’s fairly infrequent, but maybe once every 20 times I do a mass scene change (which is at least 5 times a day, but sometimes more).
My primary scene control is via Alexa voice command to a routine activating a scene on my Hubitat C-7. Running the command a second time always resolves the issue. I’m wondering if there is a best practice I’ve not incorporated. I really don’t want to try to automate error checking. I’ve got one of the primary culprits logging status now to try and see something there, but I don’t know enough about the Z-Wave protocol. Does it have any packet acknowledgement functionality?
Is it always the same switches not responding? How did you you build your z-wave mesh, and have you run a z-wave repair lately? Have you tried running the scene repeatedly from the Hubitat dahboard and if so do you get the same results? Do you have any non z-wave plus devices in your mesh between the hub and the failing switches?
You said it triggers a Hubitat routine, did you mean a Hubitat scene? How do you have Hubitat sending the commands to the switches?
Sorry for all the questions, It’s just there are a bunch of factors to look at, and Hubitat gives you a bunch of way to accomplish the same end results.
Yes, zwave does have packet acknowledgement. Here is an example of a switch (source node 11) sending a Central Scene command to the hub (destination node 1). The hub send an ACK packet back:
If I try to send a packet to a bulb that does not respond (because I cut power to it), the device will typically try resending the command a few times. If that doesnt work, it will try to route the command through a different node (in case it cant communicate with the bulb directly, but a neighboring node can). If that doesnt work, it will try broadcasting the packet to all nodes:
I am not sure what kind of logging Hubitat has, so I am not sure how easy it would be to find the root cause of your issue. The zwave mesh is fairly robust, but if you are sending many commands at once, it could be packet collision or some sort of RF interference.
Also, what devices are you having trouble with? If it is the Inovelli RGBW bulbs, have you tried the beta firmware? The latest beta fixes some problems with the bulbs responding to commands.
Thanks for the response @djordan2112. The route the one switch in particular takes to the hub is a direct 100kbps hop according to the details page, which makes sense as they are only separated by a wall. I haven’t tried running the scene repeatedly to see if I can get the behavior to show up, but that’s something I can try. The Alexa command is verbally logical, but as I’ve got my scenes and groups named in a particular way that I’m not going to remember day-to-day, the voice command triggers an Alexa routine that simply switches the correct scene at the hub. There are about 15 devices involved in that particular scene.
@jtronicus thank you! Now that I know that it eliminates quite a bit of work. I’ll have to see what sort of low level logging I can pull out of the hub.
It is unrelated, but as a side note, I have one Inovelli RGBW bulb I bought to play with, and it seems stable now, but even under the beta firmware, I’ve had many issues with it, but I think it’s primarily related to changing color modes. I was trying to implement a color flash upon motion detect and would see behavior like what appeared to be a queuing of commands that execute in rapid fire on the bulb long after they were sent.