hass-core/homeassistant/components/zwave_js
2021-08-20 11:18:19 +02:00
..
docs
translations
__init__.py ConfigType and async_setup/setup type hint improvements (#54739) 2021-08-18 13:22:05 +02:00
addon.py
api.py
binary_sensor.py
climate.py
config_flow.py
const.py
cover.py
device_condition.py Only show zwave_js command classes that are on the node (#54794) 2021-08-18 17:53:00 +02:00
device_trigger.py
discovery.py Add zwave_js Protection CC select entities (#54717) 2021-08-17 12:22:27 -04:00
discovery_data_template.py
entity.py
fan.py
helpers.py
light.py
lock.py
manifest.json
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 Add zwave_js Protection CC select entities (#54717) 2021-08-17 12:22:27 -04:00
sensor.py Remove unnecessary signal during zwave_js.reset_meter service call (#54837) 2021-08-18 19:27:41 +02:00
services.py Support group entities in zwave_js service calls (#54903) 2021-08-20 11:18:19 +02:00
services.yaml
siren.py
strings.json
switch.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.