72 lines
2.6 KiB
Markdown
72 lines
2.6 KiB
Markdown
---
|
|
layout: page
|
|
title: "Z-Wave"
|
|
description: "Instructions how to integrate your existing Z-Wave within Home Assistant."
|
|
date: 2015-03-23 19:59
|
|
sidebar: true
|
|
comments: false
|
|
sharing: true
|
|
footer: true
|
|
logo: z-wave.png
|
|
ha_category: Hub
|
|
---
|
|
|
|
[Z-Wave](http://www.z-wave.com/) integration for Home Assistant allows you to observe and control connected Z-Wave devices. Z-Wave support requires a [supported Z-Wave USB stick](https://github.com/OpenZWave/open-zwave/wiki/Controller-Compatibility-List) to be plugged into the host.
|
|
|
|
There is currently support for switches, lights and sensors. All will be picked up automatically after configuring this platform.
|
|
|
|
### {% linkable_title Installation %}
|
|
|
|
To allow Home Assistant to talk to your Z-Wave USB stick you will have to compile Python Open Z-Wave. This can be done using [this script](https://github.com/balloob/home-assistant/blob/dev/script/build_python_openzwave). _(The Home Assistant docker image has support for Z-Wave built-in)_
|
|
|
|
Make sure you have the correct dependencies installed before running the script:
|
|
|
|
```bash
|
|
$ apt-get install cython3 libudev-dev python-sphinx python3-setuptools
|
|
$ pip3 install "cython<0.23"
|
|
```
|
|
|
|
### {% linkable_title Configuration %}
|
|
|
|
```yaml
|
|
# Example configuration.yaml entry
|
|
zwave:
|
|
usb_path: /dev/ttyUSB0
|
|
config_path: /usr/local/share/python-openzwave/config
|
|
polling_interval: 10000
|
|
customize:
|
|
sensor.greenwave_powernode_6_port_energy_10:
|
|
polling_intensity: 1
|
|
```
|
|
|
|
Configuration variables:
|
|
|
|
- **usb_path** (*Required*): The port where your device is connected to your Home Assistant host.
|
|
- **config_path** (*Optional*): The path to the Python Open Z-Wave configuration files.
|
|
- **polling_interval** (*Optional*): The time period in milliseconds between polls of a nodes value.
|
|
- **customize** (*Optional*): This attribute contains node-specific override values:
|
|
- **polling_intensity** (*Optional*): Enables polling of a value and sets the frequency of polling (0=none, 1=every time through the list, 2-every other time, etc)
|
|
|
|
To find the path of your Z-Wave stick, run:
|
|
|
|
```bash
|
|
$ ls /dev/ttyUSB*
|
|
```
|
|
|
|
#### {% linkable_title Events %}
|
|
|
|
Some devices can also trigger scene activation events, which can be used in automation scripts (for example the press of a button on a wall switch):
|
|
|
|
```yaml
|
|
# Example configuration.yaml automation entry
|
|
automation:
|
|
- alias: Turn on Desk light
|
|
trigger:
|
|
platform: event
|
|
event_type: zwave.scene_activated
|
|
event_data:
|
|
entity_id: zwaveme_zme_wallcs_secure_wall_controller_8
|
|
scene_id: 11
|
|
```
|
|
|
|
The *entity_id* and *scene_id* of all triggered events can be seen in the console output.
|