Installation in a Synology NAS (with a Docker apps.)

Thanks Phil, I already solved it, I just created the directory using the NAS web interface (file station) and then the run docker command worked, I didn’t need to change permissions. You could add that step to your blog, unless I missed it.

I’m up and running now with a Aeotec z-wave USB stick and a few sensors and smart bulbs. It took me ages to work out I had to add this to the configuration.yaml file:
zwave:
usb_path: /dev/ttyACM0

That step step was in your youtube video (but not blog), which I watched after I’d worked it out :sweat_smile:

As you can see, the Aeotec USB sick shows up as ttyACM0 not ttyUSB0, not sure why, maybe another DSM6 thing? I figured that out by typing ls /dev/tty*, note that when I pull the z-stick out of the NAS to pair it with a device, sometimes when I plug it back in, it then shows up as /dev/ttyACM1 instead, which requires updating the .yaml file, removing the container, and running docker again - phew!

Thanks for your help, couldn’t have done it without your blog and youtube!

Great to hear! Glad it helped you.

Those steps to get Z-wave device are in the blog, but not the YAML update. Good pickup! I’ll fix that too.

Yeah that might be a DSM6 thing as well. Frustrating that it changes the device ID on you though. Do you have anything else plugged into a USB port on your NAS? That might trigger it. Luckily for me mine has always stayed the same ID.

If you’re willing to get your hands dirty, there are ways to make the USB ID “sticky”. Not sure if it works on Synology though (I haven’t tried). Here’s a stack exchange question that would lead you down that path: http://unix.stackexchange.com/questions/66901/how-to-bind-usb-device-under-a-static-name

Otherwise enjoy Home Assistant on your NAS! It is a great way to run Home Assistant.

sudo docker stop home-assistant
sudo docker rm “home-assistant”

For latest version use this command
sudo docker pull homeassistant/home-assistant:latest

For latest Developers version use this command
sudo docker pull homeassistant/home-assistant:dev

then run it with your docker run command and your config

Hi Phil! Followed your excellent guide in your blog a couple of months ago and it has been working great (almost everything). Have you had any luck in finding the cause for the annoying problems with the Aeon Z-stick not starting after a reboot? Any idea what it might be?

Hey BinBin

Glad to hear it’s been working for you!

For a few months I had rock solid z-wave working. Infact the issues I described in my blog post about restarting went away. That was until about 3 weeks ago.

For some reason my z-stick started losing its connection or something. Every 12 hours or so my z-wave network basically went down. I could receive updates from devices, but wasn’t able to send anything like turning things off on. I would get “data could not be delivered to z-wave stack” errors.

As this was happening so often, I tried a lot of things. Soft resets, rebooting Home Assistant. The only way I could fix it was to physically unplug the z-stick, and run the rm -rf command I mentioned in my blog post. I even Googled how to unmount a USB device and “plug it back in” all from code, but that didn’t end up yielding any results.

With the z-wave entity changes coming in, I had two options. Reset my network and hope that fixes it, or move my entire z-wave network over to my Vera Lite controller.

I chose the latter. I bought a used Vera Lite off eBay a few months ago because of some device compatibility issues I was having with OpenZwave. So I spent a lot more time than I’d like to admit, unpairing and moving everything over to the vera. So now the Vera is acting like a z-wave gateway.

So to answer your question, I couldn’t fix it unfortunately. It’s a shame as well, as I think the Synology NAS is a great way to run Home Assistant.

Thanks for your reply!

That sounds really weird, nothing like the issues I have experienced. My Z-wave is rock solid as long as I don’t shut down or reboot the Synology. Even restarting the Docker container works (most of the time). But it’s still really annoying that after a power failure or similar, the Z-stick goes down. Right now this is even causing me to hesitate whether Z-wave is the right standard to choose or not. I hope I can improve the experience by changing something in the setup. I know that the problem isn’t with Z-wave, but unfortunately the issues is making me doubt whether a wireless standard is a good choice or not.

Anyway, I’ve been thinking about setting up a second Hass instance on an Rpi, only for handling the Z-wave network. But the convenience of having native Z-wave support inside Hass (configuration, scene activation etc.) is making me hesitate with this setup as well. I guess you had to give up this convenience when switching to Vera?

The problem with a second Hass instance is that I haven’t found a convenient way to connect them both. You have the MQTT Eventstream which will mirror the event bus from one instance to another. The problem here is that since Z-wave is bi-directional I believe you need to mirror the event bus in both directions, which means I will throw the whole main event bus at the Rpi. Then I can just use the Rpi as the main controller anyway.

Another solution would be to manually create MQTT switches, sensors, lights etc. on the Synology instance which communicates over MQTT with the Rpi. This will work (I did this with Domoticz -> Hass for a while), but I don’t like the manual part. I believe it will require a lot of maintenance and cause problems in the future.

I am now about to write a feature request for a platform, similar to the Vera platform in Hass, which will connect to a second Hass instance and import the devices of your choosing. I have no idea if there is any interest in this, but a feature request in the forum will probably tell.
The key feature here, compared to MQTT Eventstream, is that you should be able to include (or exclude) the devices you would like to import to the main Hass instance. I guess this is exactly how the Vera platform works in Hass?

It would be really interesting to hear more about how the Vera <-> Hass setup works for you. What you can and cannot do from within Hass and so on. That would be really helpful for me when considering going the Vera way as well. :slight_smile:

I also thought about doing this! Unfortunately the multiple HASS instances support is limiting, as you mention. I’d love to be able to run a HASS instance which runs the lights, and another instance which manages HVAC for example. This way I can perform upgrades and “smoke tests”. However HASS isn’t really there for this yet.

So there are some things I can’t do in Home Assistant now. Scene activation is one of them. I don’t really have any scene controllers at the moment (and OpenZwave is limited as well at the moment in regards to this). However I am going to one day experiment and see if I can use Virtual Switches in Vera to toggle things in Home Assistant. So, if I press a button on a Z-wave remote, it will toggle a virtual switch in Vera, which Home Assistant will see and take action on. Not sure if this will work yet.

With Vera, the Z-wave network is completely managed through that. So there’s no device configs or anything I need to worry about from Home Assistant. They just appear as switches, lights, sensors, the same as z-wave would look in the Home Assistant UI.

The one upside I’ve found is during reboots of Home Assistant. Let’s say I reboot Home Assistant. Whilst it is initilizing, a motion sensor changes state. With the z-stick, the state won’t be updated when z-wave comes online. However, with Vera because it is online while HASS is rebooting, the state change gets pushed through to Home Assistant. So, if a room is marked as motion detected when I hit restart, and then during the restart motion is not detected, when Home Assistant comes back online, it sees there’s no longer any motion in that room.

It hasn’t all been good though. Right now, I have some 6-in-1 multisensors which vera is complaining that it can’t configure. There’s an issue with PyVera that will ignore any updates if a device has an error. I’ve put in a Pull Request to handle this. Tonight I’ve also got home, and 2 of those sensors aren’t reporting anymore. So I’ll need to take them off the wall and see what’s going on there.

This sounds like a great idea!