I just bought a shiny Aeotec Z-Wave stick and I want to expose it to my Hass.IO’s home assistant container using a symlinked dev device.
By default, it passes /dev/ttyACM0 but I see a couple of reasons why this could give me issues down the line. So I have a udev rule that symlink the Aeotec USB stick to /dev/zwave. That’s the device that i want to expose to the Home Assistant container, not the ttyACM0 one.
I just don’t know what I need to change in order to make it work.
Where’s the docker-run command I need to change to change the exposed device to the symlink? I tried manually adding it to hassio-supervisor but it doesn’t work. Home Assistant log reports /dev//zwave doesn’t exists.
I installed Hass.io using hassio_install script, using “raspberrypi2” arch (running on Cubox-i4). If that makes any difference.
What’s going to happen if I plug in a new USB-Serial device on my system and then reboot? Another device could acquire ttyACM0. Not fun.
I plan on having a Zigbee USB serial device hooked up soon. I don’t want to have to guess which device is mapped where everytime I reboot my system.
What if I remove hte Aeotec stick for manual pairing and once plugged back in it’s not assigned to ttyACM0 (because it wasn’t properly closed or something first time I unplugged it)?
I just can’t believe there is no way to manually expose symlink as devices…
I don’t want to stupidly rely on exposing ALL system ressource to a container. I want to have a certain control, and certainty on what’s exposed and why.
Ended up using symlink in /dev/serial/by-id which is present in the container fs. Next best thing as I don’t plan on hooking up two Aeotec Z-wave dongles.
Hi,
can you explain me what you did step by step? I have the same Problem on my rpi3 with HassOS 1.12
and Home Assistant 0.84.6. I tried the Aotec and the UZB1 and both are swapping from ACM0 to ACM1 after while.
I created “99-usb-serial.rules 99-usb-serial.rules” and inserted
Mapping to “/dev/serial/by-id/” should definitely work. It should be exposed in the Home Assistant docker container. To be sure, launch a bash shell in it and list “/dev/serial/by-id/”. They should all be in there.
One last thing is I needed to delete the Z-Wave integration in HomeAssistant that was previously made using my initial Z-wave device mapping (/dev/zwave). Even if I changed the USB device used in my Configuration Yaml file to use the by-id device, it would still stick to using “/dev/zwave”. Deleted the Z-Wave integration in Home Assistant WebUI, restarted HA and it worked.
Enabling debug logging for the Zwave component helped me figure it out. Try to enable that as well and check the logs.
Sorry for hijacking the thread. In my hass.io running on a Raspberry Pi 3 I lack the /dev/serial directory. I’ve searched the forum and rest of the web for information on exposing /dev/serial/by-id but I sort of get the feeling that it is supposed to be exposed in hass.io. I don’t understand why it’s not exposed in mine. My hass.io supervisor is at version 145. When I log in I do it through the SSH server add-on.
Is /dev/serial/by-id supposed to be visible when logging in through the SSH server add-on?