I have an Inovelli ZWave switch that I have recently updated firmware. However, I am having trouble with Power reporting so would like to factory reset the switch to be 100% sure that it is a clean configuration.
My problem is that if I factory reset the switch, I will need to exclude it from the network, then reinclude it. That process will wipe out any configuration parameters as well as change the node number in the network. Which might then break configurations/automations/etc.
Is there any way within HA that one can reinclude the node without but specify where to include it within the network? I saw an option to Replace a failed device using Z-Wave JS, but not sure what this entails. I have never tried to use this before.
Replace Failed Node will keep the node ID. To do that, you’d first either need a) another controller to exclude the node or b) turn off Z-Wave JS add-on (HA) or Z-Wave JS UI, then factory reset. Otherwise, Z-Wave JS (driver) will remove it from the network when it sees the factory reset occur.
Preserving the node ID has nothing to do with the configuration settings though. For most devices, the factory reset will wipe the config parameters, and re-including it will not restore those, no matter what the node ID is. If you know how to write driver function code with ZUI, you can adapt the clone-config driver function snippet to save the config parameter values, and then restore them in another snippet. If you don’t have any idea what that means, I’d just advise writing down the existing parameters and manually restoring them later. You can take screenshots to show the current settings, or download the Device Diagnostic file from HA.
As for automations, as long as you are using entity IDs and not device IDs or node IDs, your automations will not be affected by re-including the node. You simply just keep the naming of the entities identidcal and everything will work. If something is using a device ID, you will need to update that of course.
@freshcoast Thanks for the quick response. I am a bit confused how to use another controller to exclude the node though. Once I exclude the node from the network, wouldn’t it lose the node ID in the network no matter what? When you mention a different controller - are you referring to USB controller? If so, how could I have the device mapped to a different network controller?
I did run across some interesting instructions for Hubitat. I guess there is nothing analogous for HA. Essentially the procedure suggests to open the configuration page (where all the parameters are set) and once the device is replaced with the same ID, just to hit Save on the preference page which will update each config parameter. But in HA, I don’t see a bulk “save” - rather SET for individual configuration parameters.
You can exclude devices from a Z-Wave network with any controller, it doesn’t have to be part of the existing network. If you do this, Z-Wave JS does not see the exclusion, so any attempts to communicate with it will result in a failed node. It this point you can do a Replace Failed Node. Some of us have a couple of controllers sitting around for testing purposes, or because we migrated from one to another. I wouldn’t buy a new controller just for this purpose.
Same thing when Z-Wave JS is turned off. If you factory reset the device, it will (usually) exclude itself from the network, and if ZJS is shutdown it will not see the node reset message and will assume the device is still there after a restart. Again, the node will be marked as dead/failed and a replacement can be done.
However, if you factory reset a node while Z-Wave JS is active, most devices will send a message indicating the reset was done and ZJS will automatically remove it from the network. At that point it’s not possible to replace a failed node, as it no longer exists in the network.
HA or ZUI don’t have any feature to copy and restore parameters for a replaced node (HA doesn’t even support replacing failed nodes). That does sound convenient. The closest is the clone-config snippet I mentioned before (packaged with ZUI), which would need to be modified for this use case.
Wouldn’t that be a security issue if I can randomly chose a different controller to remove a device from an existing network? Or does that only work with no security enabled? With S0 or S2, it would require the appropriate encryption keys to be configured in the secondary controller?
No, most devices require a specific button press or sequence to initiate an exclusion, so physical access is still required. Some of my older Jasco switches don’t however (single press will do it), but none of my neighbors are actively trying to exclude my nodes.