Zwave on Synology DSM 7?

I’ve tried Synology’s DSM 7 beta and I discovered support for USB devices (other than storage devices) has been dropped. That means you can’t use Home Assistant on your Synology if you want support for Z-wave.

Does anyone know if there is a hack around this new policy? Or any change they revert this ridiculous change?

1 Like

6 didn’t have built in support either, at least not for my stick

I had to install drivers, see this for more info : Using a Z-Wave or ZigBee stick on Synology DSM for use with HomeAssistant and Docker

Hi. Same issue just now, after I threw caution to the wind and upgraded to DSM 7.0 RC. ttyACM0 is gone in version 7 with the Gen 5 Z-stick. But I found the command below in an obscure reddit post that fixed the issue, or my issue at least. Run it as root or sudo it. It’s a little beyond my linux ability, but it looks like it’s forcing the OS to interrogate the USB ports and recognize ACM devices.

It does not persist after a disk station reboot. Perhaps someone more skilled here can let us know how to make that happen. Here is it:

/sbin/modprobe cdc-acm

1 Like

You can see here if it helps you - it has script that should be run at startup.

2 Likes

It looks like you can schedule a task to run on startup via the Control Panel → Tasks Scheduler → Create → Triggered Task. You can then type the command under the User-defined script in the Task Settings tab.

I haven’t taken the plunge and upgraded to DSM7 yet, so I can’t verify if this works.

1 Like

There’s chatter about it here as well: Installation on Synology Virtual Machine Managager - #229 by quizzical

I’ve got mine running in a VM, and it’s been great, but this USB issue is going to be a pain as I really want to upgrade to DSM 7. Fun times.

1 Like

I already find it quite annoying that on DSM 6 if my Synology has to reboot, Virtual Machine Manager seems to forget that I have added the Z-wave USB stick to my home assistant virtual machine, so I have to do that manually every time.

But losing native support alltogether is really dissapointing.
I have launched a feature request to ask them to keep supporting it. If enough people do so, who knows they might listen.

I’m in the middle of moving to zwavejs2MQTT on a Pi with HA on my Synology - my “main” HA is currently running on the same Pi as the (deprecated) zwave add-on, as soon as my new pi gets here tomorrow, I’ll be splitting the installation. So, not quite a hack, but an option.

1 Like

I’m seriously considering this option as well (maybe I can find a cheap RP3 to use just for zwavejs2MQTT). Very annoying when it’s a feature they are removing rather than a basic compatibility issue.

I upgraded to DSM 7 RC and was able to get my Z-Wave (Aeotec Z-Stick Gen5 (ZW090))/Zigbee (ConBee II) USB devices to work.

In my case, I run HA in docker and run zwavejs2mqtt for Z-Wave and then zigbee2mqtt for my Zigbee stick.

Here is how:

Log in to your Synology via SSH and running these commands in super user (sudo su):

modprobe usbserial
modprobe ftdi_sio
modprobe cdc-acm

I found these commands somewhere on the internet so I take no credit for it. However, every time you reboot, this has to be ran again. So to run it automatically at startup, I did this:

create file “/usr/local/bin/enable_serialports.sh” and insert the following:

modprobe usbserial
modprobe ftdi_sio
modprobe cdc-acm

Make the file executable by running:
chmod 777 /usr/local/bin/enable_serialports.sh

Next, we have to schedule this to run at boot via crontab:

Edit file: “/etc/crontab” and insert the following:
@reboot root /usr/local/bin/enable_serialports.sh

Exit and reboot your Synology and you should be all set.

If anyone is interested in a more comprehensive guide, let me know and I’ll type it up.

NOTE: I am no Linux expert, I don’t know if this is the best/safest method for this. So run at your own risks.

11 Likes

Nice, I guess it would be exactly the same solution when using Synology Virtual Machine Manager?

Yes.

After this runs your z-wave or zigbee stick is mounted under /dev/ttyACM0 which you should be able to pass through to the VM (as you did with DSM 6).

1 Like

My zwave/zigbee dongle shows as ttyUSB1 intead of ttyACM0. Will you know if the steps above will work with it too?

I am not 100% sure, but if your ttyUSB doesn’t show up until you run this, then yes, should be the same thing.

Thanks! Will try tomorrow and report here

Does the final release of DSM 7.0 fix the issue? Or do we still need to manually install the drivers and run the script at launch?

On my end this isn’t working. At the moment I’m not able to run my Aeotec Z-Stick 7. On DSM 6.X it was connected as ttyUSB0 and was also running properly without any issues.

Any ideas?

Should be easier to run it on Startup:

  1. Go to Control Panel - Task Manager
  2. Create → Triggered Task → Userdefined Script
  3. Select Trigger: Boot and in Task Settings you type sth like sh /volumex/script.sh
  4. create the script on your computer, upload it to desired path
1 Like

For me this isn’t working. I’m on DSM 7 Final and tried slaesh/zzh zigbee stick. I did run the 3 commands without a problem/output but the stick is not on ttyACMx or ttyUSBx. I just see it with lsusb.

Just a question - are you using drivers for Synlogy for slaesh stick? For 6.2?
Something like USB drivers for DSM 6.2 ?

You probably are and you forgot you’ve installed them - and no, there are no 7.0 drivers.