hass-core/homeassistant/components/zwave_js
2022-04-21 14:14:39 +02:00
..
docs
translations Add zeroconf discovery to zwave_js (#69382) 2022-04-06 18:46:13 +02:00
triggers Improve zwave_js custom triggers and services (#67461) 2022-03-05 09:00:31 +01:00
__init__.py Bump zwave-js-server-python to 0.35.3 (#70357) 2022-04-21 14:14:39 +02:00
addon.py
api.py Add comments to zwave_js node metadata WS API (#67210) 2022-03-31 10:31:17 -04:00
binary_sensor.py
button.py
climate.py Use EntityFeature enum in components (z**) (#69471) 2022-04-07 08:21:31 +02:00
config_flow.py Add zeroconf discovery to zwave_js (#69382) 2022-04-06 18:46:13 +02:00
config_validation.py Improve zwave_js custom triggers and services (#67461) 2022-03-05 09:00:31 +01:00
const.py Improve zwave_js custom triggers and services (#67461) 2022-03-05 09:00:31 +01:00
cover.py Use EntityFeature enum in components (z**) (#69471) 2022-04-07 08:21:31 +02:00
device_action.py Fix zwave_js device action logic (#69049) 2022-04-01 07:44:52 +02:00
device_automation_helpers.py
device_condition.py Improve zwave_js custom triggers and services (#67461) 2022-03-05 09:00:31 +01:00
device_trigger.py Improve zwave_js custom triggers and services (#67461) 2022-03-05 09:00:31 +01:00
diagnostics.py Redact user codes from zwave_js diagnostics (#68515) 2022-03-23 21:13:27 +01:00
discovery.py Don't create two zwave_js.lock entities for a single device (#68651) 2022-03-28 11:15:48 +02:00
discovery_data_template.py Redact user codes from zwave_js diagnostics (#68515) 2022-03-23 21:13:27 +01:00
entity.py Redact user codes from zwave_js diagnostics (#68515) 2022-03-23 21:13:27 +01:00
fan.py Use EntityFeature enum in components (z**) (#69471) 2022-04-07 08:21:31 +02:00
helpers.py Redact user codes from zwave_js diagnostics (#68515) 2022-03-23 21:13:27 +01:00
humidifier.py Add None guard for zwave_js humidifier entity (#69667) 2022-04-08 17:27:06 +02:00
light.py Add zwave_js light support for HSM-200 V1 (#67089) 2022-02-23 20:18:42 +01:00
lock.py
manifest.json Bump zwave-js-server-python to 0.35.3 (#70357) 2022-04-21 14:14:39 +02:00
migrate.py Fix zwave_js migration luminance sensor (#67234) 2022-02-25 08:05:56 -08:00
number.py
README.md
select.py
sensor.py
services.py Improve zwave_js custom triggers and services (#67461) 2022-03-05 09:00:31 +01:00
services.yaml
siren.py Use SirenEntityFeature enum in components (#69645) 2022-04-08 09:13:12 +02:00
strings.json Add zeroconf discovery to zwave_js (#69382) 2022-04-06 18:46:13 +02:00
switch.py
trigger.py

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.