I have a couple of Z-Wave nodes in my network that don’t have the greatest communication and occasionally will get “locked up” where the autoupdate state does not match reality. If I set autoupdate to false for these (and realizing that autoupdate does not affect the network behavior) - what is the network’s behavior in trying to pass commands to these nodes?
Digging on the web, it seems to indicate that the network tries (with decreasing frequency) to pass commands up to a certain point, and then after this gives up and declares the node “Dead”. My question is whether I should write some timer function that keeps reissuing the command if the expected state (i.e. I add a mirror item) and actual state do not match after a certain point in time, or whether the network will keep trying? If there is a timeout - what is it? And if I manually resend a command (like after I notice something is on that shouldn’t be), I can usually get the network to deliver the command - which indicates that “Dead” is more like “Gave up trying to send the last command”.
As I already said in the PM.
The setting of the autoupdate will have no impact on any commands sent to the device - this is only relating to the update of the data (let’s say the UI) from a command. Commands will still be sent to the device, but of course if the device is dead then it will not perform any retry to avoid locking up the network. Changing this may cause you further problems and you really should try and resolve the issue that is causing the device to be dead - ie solve the problem with communications, possibly by adding more devices to improve the mesh.
I would suggest to focus on getting the network reliable rather than how to cope with an unreliable network. If there are timeouts in the network, your user experience will not be nice as there will inevitably be long delays in communicating with devices.
Agreed on the network, and I am working on better communications for that, but since some of it is outdoors, I have limited options. Going back to the Z-Wave network – how do I find out the time-out / declaration of “Dead” behavior? Is this controlled by the Silicon Labs FW in their chip, or is it in their SDK, or in OpenHAB?