Aeotec Z-wave stick Gen5 on Synology installation

I’m still not getting the hang of it… What I got so far:

  1. Aeotec Z-wave stick in my Synology;
  2. Added the USB device to the docker container, i did this through creating an Export of my HomeAssistant container, edit the export file (.json) with:
   "devices" : [
      {
         "CgroupPermissions" : "rwm",
         "PathInContainer" : "/zwaveusbstick",
         "PathOnHost" : "/dev/ttyACM0"
      }
   ]
  1. Import the edited file in Docker;
  2. changed the configruation.yaml:
  3. Start the Container;
zwave:
  usb_path: /zwaveusbstick
  network_key: <key>

Now in HomeAssistant I can see in Configuration > Intergration Z-Wave, and the option to Configure. But when i click on Configure I can’t select a node.

What am I missing?

PS: I tryed to change the docker run command but got a “Permission denied” so I went with the Export file.

I would really appreciate your help. I cannot find the path to the USB on my DS918+

Plug the device in and open an SSH terminal to your NAS and issue the following command to see what the path is to the USB device:

ls /dev/ttyACM*

Most likely it will return something like: /dev/ttyACM0

This is the response:
root@SUPER8:~# ls /dev/ttyACM*
ls: cannot access /dev/ttyACM*: No such file or directory

Sorry, I should have disclosed I’m not using a Aeotec Z-wave stick. I have a Nortek GoControl Z-wave stick. It is being seen by the DS 918+ because I can see it in the control panel under Info Center -General - External Devices - USB Device.
I really appreciate your help.

You should do ls /dev/ttyUSB* for this device type. This stick will expose 2 USB devices, one for the Z-Wave portion and one for the Zigbee part.
More info can be found on:
Using a Z-Wave or ZigBee stick on Synology DSM for use with HomeAssistant and Docker (khaz.me)

Persistent Linux Device Names for Nortek GoControl HUSBZB-1 Z-Wave and Zigbee stick | Dave’s Stuff (davecorder.org)

And a sidenote, external USB devices might stop working with the release of Synology DSM 7.

3 Likes

Ah. Yes, combo sticks will be listed under /dev/ttyUSB*. I only have an Aeotec Zstick which shows up under /dev/ttyACM*.

1 Like

Thank you very much for your help. I really appreciate it! Have a great day!

1 Like

Thank you so much for the help!

Hey group, does anyone know how to get the tty name from lsusb? I didn’t install any additional drivers because the device seems to be visible (usb1, 1-2: Silicon Labs HubZ Smart Home Controller 1160016) but I’m not sure how I’m supposed to know what /dev/tty it is from this to add to my docker configuration. Ty

lsusb
|__usb1          1d6b:0002:0310 09  2.00  480MBit/s 0mA 1IF  (xhci_hcd 0000:00:14.0) hub
  |__1-2         10c4:8a2a:0100 00  2.00   12MBit/s 100mA 2IFs (Silicon Labs HubZ Smart Home Controller 11600160)
  |__1-5         f400:f400:0100 00  2.00  480MBit/s 200mA 1IF  (Synology DiskStation 6500674FA5E41671)
|__usb2          1d6b:0003:0310 09  3.00 5000MBit/s 0mA 1IF  (xhci_hcd 0000:00:14.0) hub
|__usb3          1d6b:0002:0310 09  2.00  480MBit/s 0mA 1IF  (Linux 3.10.108 etxhci_hcd-170202 Etron xHCI Host Controller 0000:04:00.0) hub
  |__3-1         0764:0501:0001 00  2.00   12MBit/s 2mA 1IF  (CP1000PFCLCD CRDA103#BJ1 CPS)
|__usb4          1d6b:0003:0310 09  3.00 5000MBit/s 0mA 1IF  (Linux 3.10.108 etxhci_hcd-170202 Etron xHCI Host Controller 0000:04:00.0) hub

If I try sudo blkid I get this:

/dev/mapper/vg1001-lv: LABEL="2017.09.24-10:02:14 v15152" UUID="e5edf49d-4cb5-4d2c-ba2c-f2426db2f262" UUID_SUB="04fbce65-bcf4-423c-9988-dc6996097336" TYPE="btrfs"
/dev/md0: LABEL="1.42.6-5698" UUID="ae4be947-6c2e-4752-9776-cc35a0b18d40" TYPE="ext4"
/dev/mapper/cachedev_0: LABEL="2017.09.24-10:02:14 v15152" UUID="e5edf49d-4cb5-4d2c-ba2c-f2426db2f262" UUID_SUB="04fbce65-bcf4-423c-9988-dc6996097336" TYPE="btrfs"
/dev/sdc1: UUID="170c5bdd-8b01-b0ab-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="96777e7a-8f5e-4059-aba1-0da6b8d0338d"
/dev/sdc2: UUID="ba53aea0-53d5-d33c-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="4b15bd92-9f9b-4143-8c13-911a3f86bbb4"
/dev/sdc5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="001463d1-0046-84d9-0eed-89e4c572afe4" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="aa458dd5-39f7-47d1-a6ce-652602dc5e9c"
/dev/sdd1: UUID="170c5bdd-8b01-b0ab-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="bf824889-034a-4070-bb37-e50bcaaea3b0"
/dev/sdd2: UUID="ba53aea0-53d5-d33c-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="f9837d89-92d9-4d61-8ffc-ed078fe7df1a"
/dev/sdd5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="ddc691ef-753b-9af9-b6ff-b52bb54ef705" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="7abed834-fd1a-485a-99f0-6deeea039d2c"
/dev/sda1: UUID="170c5bdd-8b01-b0ab-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="8ee49124-037b-41cf-be4a-d4db3b094733"
/dev/sda2: UUID="ba53aea0-53d5-d33c-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="9d5131a9-74ef-4035-81c8-a3bf7445f8d3"
/dev/sda5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="c79d0a9d-3725-1cf0-7112-9981a76f68cb" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="5451e017-d78e-4ea8-844d-29d3917f45ce"
/dev/sdb1: UUID="170c5bdd-8b01-b0ab-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="0dcf9d2f-effe-4d8f-9d76-20628c7cca98"
/dev/sdb2: UUID="ba53aea0-53d5-d33c-3017-a5a8c86610be" TYPE="linux_raid_member" PARTUUID="d15f6eee-e919-4b5d-9774-f087d7f0d491"
/dev/sdb5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="8d54a0c3-dadf-8244-adf8-79bfa520bf6f" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="8b902295-cc07-4ced-a11a-f87f0351d788"
/dev/sdeb1: PARTUUID="69713a7f-d439-4084-b285-403ce12fd38e"
/dev/sdeb2: PARTUUID="9abf82de-b820-42ab-99c9-a4a5d555c82d"
/dev/sdeb5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="0a9c3197-22be-157c-fa07-a55405072379" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="c6c4e962-9057-48b5-97f7-8dbad32a7cdf"
/dev/sdeb6: UUID="70201568-ae3a-9798-2c88-f659245d0a44" UUID_SUB="eb9a5725-284c-d867-dd89-b096fba7fef8" LABEL="glitches:3" TYPE="linux_raid_member" PARTUUID="7614726d-bb55-4c62-a830-2bbac127b0e3"
/dev/sdec1: PARTUUID="ba7cad9f-9d03-4174-9b8f-5b92b7be648b"
/dev/sdec2: PARTUUID="41d0c624-b709-4fc4-931e-9eee5302a085"
/dev/sdec5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="f6b6e8b1-940b-8b5c-92b1-6f5e8aa53491" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="34010244-b4b9-4781-9d56-800a3e39dcc4"
/dev/sdec6: UUID="70201568-ae3a-9798-2c88-f659245d0a44" UUID_SUB="dbc76e04-063c-f26b-255d-202ec452b98c" LABEL="glitches:3" TYPE="linux_raid_member" PARTUUID="a8fd7a93-378d-4a21-ae9c-11dee8a5c6f1"
/dev/sded1: PARTUUID="e877cb74-96be-41b1-97ff-8fa9141d02c6"
/dev/sded2: PARTUUID="ae53279e-f88f-44aa-8abc-1b7b64fb0b04"
/dev/sded5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="ef30c73e-b157-bfc0-8828-59c7635749be" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="37fd9756-0778-4955-9f5f-62875416c456"
/dev/sded6: UUID="70201568-ae3a-9798-2c88-f659245d0a44" UUID_SUB="049c6a8a-e641-c10f-bcf1-ce6338bdc1a8" LABEL="glitches:3" TYPE="linux_raid_member" PARTUUID="5719d288-9b1b-454a-8932-24a5f710d2aa"
/dev/sdea1: PARTUUID="2183a9c8-a374-4a40-a405-9f3da0f3fc64"
/dev/sdea2: PARTUUID="03685378-284c-4203-a517-f91050fe3165"
/dev/sdea5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="fbe29c4f-bebf-aad1-cf8f-95215bb90de6" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="f4609b83-0210-4bee-95f4-9e2ae937bec4"
/dev/sdea6: UUID="70201568-ae3a-9798-2c88-f659245d0a44" UUID_SUB="77b47142-4d40-a72c-3865-54b287f4515f" LABEL="glitches:3" TYPE="linux_raid_member" PARTUUID="c8a187a5-365d-4bc4-915f-47b0fb8adbd6"
/dev/sdee1: PARTUUID="84ebe47d-0fd2-4355-aea4-74718ba148f6"
/dev/sdee2: PARTUUID="813b2a41-1699-4590-82d2-b12bd4c2fbbe"
/dev/sdee5: UUID="527f5d13-05f7-3379-02cf-25c2764f1102" UUID_SUB="a8f0fbcd-db1e-311e-a47b-408f92f1c90b" LABEL="glitches-video:2" TYPE="linux_raid_member" PARTUUID="a3ec073c-2f8d-43fb-be07-e80ab72221cc"
/dev/sdee6: UUID="70201568-ae3a-9798-2c88-f659245d0a44" UUID_SUB="b067fb81-011a-6f36-f1d6-fd06441584f7" LABEL="glitches:3" TYPE="linux_raid_member" PARTUUID="116bd3b5-ebbb-4420-9c59-26591f56d3d8"
/dev/zram0: UUID="0f3beb9a-9903-4ddb-8aa1-790df083563e" TYPE="swap"
/dev/zram1: UUID="de4cae44-947f-4af2-8e32-5373142aead1" TYPE="swap"
/dev/zram2: UUID="5aa37678-f1ef-48ce-aa8f-5522f7a8f7bb" TYPE="swap"
/dev/zram3: UUID="de8f50f6-cc56-4b94-bb14-12ea03b22b34" TYPE="swap"
/dev/md1: UUID="cd0698c7-b2e9-4b4a-aa7e-070e7d5d7e92" TYPE="swap"
/dev/synoboot1: SEC_TYPE="msdos" UUID="3179-DD88" TYPE="vfat" PARTUUID="f0c6ebb5-01"
/dev/synoboot2: SEC_TYPE="msdos" UUID="317D-E98D" TYPE="vfat" PARTUUID="f0c6ebb5-02"
/dev/md3: UUID="MeETfF-BEfU-qHiB-kRe2-E1p3-1T8c-wgxZG5" TYPE="LVM2_member"
/dev/md2: UUID="QdnEnR-HryA-q6ar-64fl-s6uX-2PHc-skt4Ey" TYPE="LVM2_member"

blkid is for storage not USB.

Try looking for your device in /dev/serial/by-id/

Synology 6.x doesn’t have the by-id folder,

On mine my zwave stick shows up as /dev/ttyACM0

See if that works. If not unplug the device, do an ls on /dev, plug it back in, do another ls on /dev and see what changed.

Highly recommend to not run USB devices on the synology hardware.

If you can help it, connect your USB devices like zwave/zigbee sticks to a Pi (or other SBC) and just run a lite version of the OS and use docker on the Pi.

Working fine for me, have two different synology setups - running well for 16 months.

@PeteRage / @firstof9 -
This thread started in 2017 and I believe by 2022 Synology has changed - for the better or worse. I suppose the difference between “running well” and “get disconnected from time to time” could be a combination of multiple factors, so it could/would be tremendously helpful for future users coming to this thread if we could compare notes.

On that note:

  • Do I have problem connecting my z-wave stick to HA? (Y/N)
  • Which Synology box are you using?
  • Which DSM version?
  • Which make/model of the z-wave stick?
  • Which FW version on your z-wave stick? SDK version?
  • The device path that works for you:
  • Other information (things I have done, any extra driver, container or VMM, observations, what logs say, etc.):
1 Like
  • Do I have problem connecting my z-wave stick to HA? No
  • Which Synology box are you using? DS918+, DS720+
  • Which DSM version? DSM 6.2.4-25556 Update 6
  • Which make/model of the z-wave stick? Aoetec ZStick Gen on a USB 2 powered hub
  • Which FW version on your z-wave stick? SDK version? V1.1
  • The device path that works for you: /dev/ttyACM0
  • Other information (things I have done, any extra driver, container or VMM, observations, what logs say, etc.): Run zwavejs2mqtt container at high privilege.
    [/quote]
  • Do I have problem connecting my z-wave stick to HA? (Y/N) No
  • Which Synology box are you using? DS918+
  • Which DSM version? DSM 7.01-42218 Update 3
  • Which make/model of the z-wave stick? Aeotech ZStick Gen5
  • Which FW version on your z-wave stick? SDK version? 1.1
  • The device path that works for you: ttyUSB0 although this was auto discovered in HA when adding Zwave JS (a Sonoff ZStick is on ttyACM0 via a USB3 hub)
  • Other information (things I have done, any extra driver, container or VMM, observations, what logs say, etc.): VMM, no extra drivers required
  • Do I have problem connecting my z-wave stick to HA? (Y/N) No
  • Which Synology box are you using? DS1515+
  • Which DSM version? DSM 6.2.4-25556 Update 6
  • Which make/model of the z-wave stick? Aeotec ZStick Gen5 (ZW090)
  • Which FW version on your z-wave stick? SDK version? 1.0
  • The device path that works for you: /dev/ttyACM10
  • Other information (things I have done, any extra driver, container or VMM, observations, what logs say, etc.): ZwaveJS2MQTT in a docker container. Created a udev rule script that links from /dev/ttyACM10 to whatever COM port is given to the stick (typically /dev/ttyACM0) so if it changes due to being unplugged or reset there’s no reconfiguration needed and gives it root/user access which means I do not have to run the container with high privilege.

EDIT: Correction: I created a udev rule for the serial port. It works like the by-id folder method, but more at the hardware kernel level.

1 Like

Please share that script and how you run it

Correction: I created a udev rule for the serial port. It works like the by-id folder method, but more at the hardware kernel level.

See this thread and read from my post I linked to and down: https://community.home-assistant.io/t/ha-on-synology-using-docker-with-zha-integration-and-conbee2-usb-stick/340838/4?u=squirtbrnr

Here’s the external guides or posts I found useful in setting up the udev rule: Assign a static USB port on Linux and Synology USB Devices - Installation - openHAB Community

and here is my rule which is placed in a file named 99-hass.rules in the location /lib/udev/rules.d:

KERNEL=="ttyACM*", ATTRS{idVendor}=="0658", ATTRS{idProduct}=="0200", SYMLINK+="ttyACM10"
1 Like