I’ve been following this thread because Home Assistant runs really fast on my unRAID server, but my Z-Wave USB stick needs to be in the center of the house for my Z-Wave network to work reliably.
As I can’t get the whole USB over IP thing working with unRAID (can’t add kernel modules, as far as I know) I’m really tempted to have 2 instances of HA, 1 on my unRAID server with everything in the config, and 1 on a raspberry pi 3 (Hassio) with only Z-Wave enabled and have that forward everything via MQTT to my main HA instance on the server.
So just for clarification, what is the best / most reliable way to get this up and running?
From this thread it seems that I have 2 options:
-
Using mqtt_eventstream, this would link everything, meaning every event would be synced accross both instances.
-
Using the new mqtt_statestream by @mw-white, I’d need to publish everything to MQTT that I’m interrested in on the Z-Wave HA instance. Then on my main HA instance I’d configure various MQTT components for every Z-Wave component on the Z-Wave Instance.
I’m tempted to go with option 2, since this way I can actually offload the raspberry pi from all non-zwave stuff, right?
EDIT: wait, I get how this works for 1-way communication. But when I want to change the state of a z-wave switch from my main HA instance, how does that work, initially I thought publishing the state to the correct mqtt topic would work. But then how does my Z-Wave HA instance know what to do?
EDIT2: I’ve now stepped away from the mqtt_statestream component for above reasons. If there’s anyone who can explain how to accomplish what I want with it I’m totally onboard, because it seems more elegant then just syncing everything between the 2 instances. Which is what I’m now doing with mqtt_eventstream.
EDIT3: Another disadvantage of mqtt_eventstream is that my entities only show up in my main HA instance after something happens with them on the Z-Wave HA instance, if I understand the mqtt_statestream component correctly this shouldn’t happen with that component?
EDIT4: coming back to the topic of this thread, as I’m running HA in a container. The default way to get HA to see the z-wave USB stick is to pass through the device to the docker container with /dev/acm0:/dev/acm0, while I can’t (not sure if it is impossible on unRAID or if I just can’t get it to work) get the kernel module (vhci-hcd) on my docker host, is it possible to do this in the Home-Assistant container only?