hass-core/homeassistant/components/zwave_js
2021-09-18 13:52:59 +02:00
..
docs
translations [ci skip] Translation update 2021-09-04 00:13:17 +00:00
triggers Automation trigger info type hint improvements (#55402) 2021-09-04 02:25:51 +02:00
__init__.py Handle entity creation on new added zwave_js value (#55987) 2021-09-10 23:49:31 +02:00
addon.py Rename snapshot -> backup (#53851) 2021-08-02 11:07:21 +02:00
api.py Update pylint to 2.11.1 (#56364) 2021-09-18 13:52:59 +02:00
binary_sensor.py Add enabled attribute to zwave_js discovery model (#53645) 2021-07-29 09:30:50 +02:00
climate.py Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:40:56 -07:00
config_flow.py Narrow zwave_js USB discovery (#55613) 2021-09-03 05:11:03 +02:00
const.py Don't set zwave_js sensor device class to energy when unit is wrong (#55434) 2021-08-30 08:48:36 -07:00
cover.py Bump zwave-js-server-python to 0.30.0 (#55831) 2021-09-06 13:37:12 -07:00
device_condition.py Fix validation for zwave_js device trigger and condition (#54974) 2021-08-22 20:43:59 -04:00
device_trigger.py Automation trigger info type hint improvements (#55402) 2021-09-04 02:25:51 +02:00
discovery.py Handle entity creation on new added zwave_js value (#55987) 2021-09-10 23:49:31 +02:00
discovery_data_template.py Bump zwave-js-server-python to 0.30.0 (#55831) 2021-09-06 13:37:12 -07:00
entity.py Add enabled attribute to zwave_js discovery model (#53645) 2021-07-29 09:30:50 +02:00
fan.py
helpers.py Fix validation for zwave_js device trigger and condition (#54974) 2021-08-22 20:43:59 -04:00
light.py Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:40:56 -07:00
lock.py Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:40:56 -07:00
manifest.json Bump zwave-js-server-python to 0.30.0 (#55831) 2021-09-06 13:37:12 -07:00
migrate.py
number.py Create zwave-js select platform and discover additional siren values (#53018) 2021-08-16 13:36:20 -04:00
README.md
select.py Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:40:56 -07:00
sensor.py Update pylint to 2.11.1 (#56364) 2021-09-18 13:52:59 +02:00
services.py Update pylint to 2.11.1 (#56364) 2021-09-18 13:52:59 +02:00
services.yaml
siren.py Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:40:56 -07:00
strings.json Add support for USB discovery to zwave_js (#54938) 2021-08-21 09:30:45 -05:00
switch.py Bump zwave-js-server-python to 0.30.0 (#55831) 2021-09-06 13:37:12 -07:00
trigger.py Automation trigger info type hint improvements (#55402) 2021-09-04 02:25:51 +02:00

Z-Wave JS Architecture

This document describes the architecture of Z-Wave JS in Home Assistant and how the integration is connected all the way to the Z-Wave USB stick controller.

Architecture

Connection diagram

alt text

Z-Wave USB stick

Communicates with devices via the Z-Wave radio and stores device pairing.

Z-Wave JS

Represents the USB stick serial protocol as devices.

Z-Wave JS Server

Forward the state of Z-Wave JS over a WebSocket connection.

Z-Wave JS Server Python

Consumes the WebSocket connection and makes the Z-Wave JS state available in Python.

Z-Wave JS integration

Represents Z-Wave devices in Home Assistant and allows control.

Home Assistant

Best home automation platform in the world.

Running Z-Wave JS Server

alt text

Z-Wave JS Server can be run as a standalone Node app.

It can also run as part of Z-Wave JS 2 MQTT, which is also a standalone Node app.

Both apps are available as Home Assistant add-ons. There are also Docker containers etc.