Z-Wave Services
The zwave
component exposes multiple services to help maintain the network. All of these are available through the Z-Wave control panel.
Service | Description |
---|---|
add_node | Put the Z-Wave controller in inclusion mode. Allows you to add a new device to the Z-Wave network. |
add_node_secure | Put the Z-Wave controller in secure inclusion mode. Allows you to add a new device with secure communications to the Z-Wave network. |
cancel_command | Cancels a running Z-Wave command. If you have started an add_node or remove_node command, and decide you are not going to do it, then this must be used to stop the inclusion/exclusion command. |
change_association | Add or remove an association in the Z-Wave network |
heal_network | Tells the controller to “heal” the Z-Wave network. Basically asks the nodes to tell the controller all of their neighbors so the controller can refigure out optimal routing. |
heal_node | Tells the controller to “heal” a specific node on the network. Requires node_id field. You can also force return route update with return_routes field. |
print_config_parameter | Prints Z-Wave node’s config parameter value to the (console) log. |
print_node | Print all states of Z-Wave node. |
refresh_entity | Refresh the Z-Wave entity by refreshing dependent values. |
refresh_node | Refresh the Z-Wave node. |
remove_node | Put the Z-Wave controller in exclusion mode. Allows you to remove a device from the Z-Wave network. |
rename_node | Sets a node’s name. Requires a node_id and name field. |
rename_value | Sets a value’s name. Requires a node_id , value_id , and name field. |
remove_failed_node | Remove a failed node from the network. The Node should be on the controller’s Failed Node List, otherwise this command will fail. |
replace_failed_node | Replace a failed device with another. If the node is not in the controller’s Failed Node List, or the node responds, this command will fail. |
reset_node_meters | Reset a node’s meter values. Only works if the node supports this. |
set_config_parameter | Lets the user set a config parameter to a node. NOTE: Use the parameter option’s label string as the value for list parameters (e.g. "value": "Off" ). For all other parameters use the relevant integer value (e.g. "value": 1 ). |
soft_reset | Tells the controller to do a “soft reset.” This is not supposed to lose any data, but different controllers can behave differently to a “soft reset” command. |
start_network | Starts the Z-Wave network. |
stop_network | Stops the Z-Wave network. |
test_network | Tells the controller to send no-op commands to each node and measure the time for a response. In theory, this can also bring back nodes which have been marked “presumed dead.” |
test_node | Tells the controller to send no-op command(s) to a specific node. Requires node_id field. You can specify amount of test_messages to send by specifying it with messages field. In theory, this could bring back nodes marked as “presumed dead” |
The soft_reset
and heal_network
commands can be used as part of an automation script to help keep a Z-Wave network running reliably as shown in the example below. By default, Home Assistant will run a heal_network
at midnight. This is a configuration option for the zwave
component. The option defaults to true
but can be disabled by setting autoheal
to false. If you’re having issues with your Z-Wave network, try disabling this automation.
Using the soft_reset
function with some Z-Wave controllers can cause the Z-Wave network to hang.
# Example configuration.yaml automation entry
automation:
- alias: test at 2:30am
trigger:
platform: time
at: '2:30:00'
action:
service: zwave.test_network
- alias: heal at 2:32am
trigger:
platform: time
at: '2:32:00'
action:
service: zwave.heal_network