Skip to content

Instantly share code, notes, and snippets.

@steve28
Last active August 3, 2020 00:44
Show Gist options
  • Save steve28/a2cb6f9d98a4e2e2ff75529d16275b3e to your computer and use it in GitHub Desktop.
Save steve28/a2cb6f9d98a4e2e2ff75529d16275b3e to your computer and use it in GitHub Desktop.
My makeshift OZW panel
- platform: mqtt
name: ozw_network_status
state_topic: OpenZWave/1/status/
value_template: >
{{ "ON" if value_json.Status in ["driverAwakeNodesQueried", "driverAllNodesQueriedSomeDead", "driverAllNodesQueried"] else "OFF" }}
json_attributes_topic: OpenZWave/1/status/
device_class: "connectivity"
update_zwave_node_list:
url: "http://my.server.com:8123/api/services/input_select/set_options"
method: POST
headers:
content-type: application/json
Authorization: Bearer REDACTED
payload: >
{
"entity_id": "input_select.zwave_entities",
"options": [
{%- for item in (states | selectattr('attributes.node_id') | unique(attribute='attributes.node_id') | list ) %}
"{{item.attributes.friendly_name + ' ('+item.attributes.node_id|string+')' }}"{% if not loop.last %}, {% endif %}
{%- endfor %}
]
}
ozw_node_command:
alias: Send OZW Node Command
icon: mdi:refresh
mode: single
sequence:
- data_template:
payload: '{{ "{" + "\"node\":" + states(''input_number.ozw_node_id'')|int|string
+ "}" }}'
topic: OpenZWave/1/command/{{zw_command}}/
service: mqtt.publish
icon: 'mdi:z-wave'
id: z-wave
title: z-wave
cards:
- type: markdown
content: >-
## Z-Wave Network Status
```
Status: {{ state_attr('binary_sensor.ozw_network_status', 'Status') }}
{{ state_attr('binary_sensor.ozw_network_status', 'TimeStamp')|timestamp_local}}
OpenZWave: {{ state_attr('binary_sensor.ozw_network_status', 'OpenZWave_Version') }}
QT-OpenZWave: {{ state_attr('binary_sensor.ozw_network_status', 'QTOpenZWave_Version') }}
OZWDaemon: {{ state_attr('binary_sensor.ozw_network_status', 'OZWDaemon_Version') }}
QT: {{ state_attr('binary_sensor.ozw_network_status', 'QT_Version') }}
HomeID: {{ state_attr('binary_sensor.ozw_network_status', 'homeID') }}
```
- type: vertical-stack
title: Z-Wave Operations
cards:
- type: entities
title: Node Selection
show_title: true
entities:
- entity: input_select.zwave_entities
- entity: input_number.ozw_node_id
- type: glance
entities:
- entity: script.ozw_node_command
name: Requst Dynamic
show_state: false
tap_action:
action: call-service
service: script.turn_on
service_data:
variables:
zw_command: requestnodedynamic
entity_id: script.ozw_node_command
- entity: script.ozw_node_command
name: Refresh Node Info
show_state: false
tap_action:
action: call-service
service: script.turn_on
service_data:
variables:
zw_command: refreshnodeinfo
entity_id: script.ozw_node_command
- entity: script.ozw_node_command
name: Send Node Info
show_state: false
tap_action:
action: call-service
service: script.turn_on
service_data:
variables:
zw_command: sendnodeinformation
entity_id: script.ozw_node_command
- entity: script.ozw_node_command
name: Has Node Failed
show_state: false
tap_action:
action: call-service
service: script.turn_on
service_data:
variables:
zw_command: hasnodefailed
entity_id: script.ozw_node_command
- type: markdown
content: >-
### Z-Wave Network Notifications
```
Node: {{ state_attr('sensor.ozw_network_notification', 'Node') }}
Timestamp: {{ state_attr('sensor.ozw_network_notification', 'TimeStamp')|timestamp_local}}
Event: {{ state_attr('sensor.ozw_network_notification', 'Event') }}
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment