Deprecated: Function jetpack_form_register_pattern is deprecated since version jetpack-13.4! Use Automattic\Jetpack\Forms\ContactForm\Util::register_pattern instead. in /var/www/html/wp-includes/functions.php on line 6078
Warning: Cannot modify header information - headers already sent by (output started at /var/www/html/wp-includes/functions.php:6078) in /var/www/html/wp-includes/feed-rss2.php on line 8
Docker – D Khaz
https://khaz.me
Things that I spend my time on...Thu, 08 Apr 2021 03:46:15 +0000en-US
hourly
1 https://khaz.me/wp-content/uploads/2018/05/DK_logo_square___100x100.pngDocker – D Khaz
https://khaz.me
3232147286311Using a Z-Wave or ZigBee stick on Synology DSM for use with HomeAssistant and Docker
https://khaz.me/using-a-z-wave-or-zigbee-stick-on-synology-dsm-for-use-with-homeassistant-and-docker/
https://khaz.me/using-a-z-wave-or-zigbee-stick-on-synology-dsm-for-use-with-homeassistant-and-docker/#commentsMon, 15 Apr 2019 04:13:53 +0000https://khaz.me/?p=209If you want to run or are already running HomeAssistant on your Synology NAS DSM 6.2, it’s possible that you’d want to use a Z-Wave or ZigBee stick to communicate with their respective devices. When I initially got my HA running in a docker on the NAS, I was disappointed when HA created errors when I configured the stick as I previously had it working on my previous docker host. With a bit of digging, it turns out the Synology NAS was not recognizing the USB stick as a serial communication device. This is because out-of-box, there are no cp210x drivers installed that are necessary for my combo Z-Wave/Zigbee stick. Similarly, if you plan on using the Aeotec, you will need the cdc–acm driver and Conbee will require ftdi_sio. If you haven’t purchased your stick of choice yet, I’d recommend the GoControl stick as it does in one what the others do together, for less money than either of the other sticks. (Disclaimer: I’ve only physically tested this on my combo stick, so if you run into issues or find other solutions, ping me so I can update this post)
While I’ve got a ton of Windows experiences (20+ year), a lot of Mac experience (10ish years), I’m basically a newb when it comes to Linux. So for me, the next challenge was figuring out what/how the drivers would be packaged and how to obtain and install them. Aftermore time googling than I’d like to admit, I came across www.jadahl.com that is managed by Jumbotroll. He has figured out how to create custom packages with drivers for most if not all versions of Synology hardware. Feel free to drop him a donation through his paypal as his efforts shouldn’t go unnoticed.
Goto Jumbotroll’s website and download the drivers for your DSM version, currently 6.2 (make sure your DSM matches the minimum DSM version he has listed on the download page).
You will need the model of your Synology hardware. To get this, you can look at the box that you probably threw away, the receipt that buried in some email, or by SSH’ing into the NAS and running
uname -a which will output something like
Linux Hyperion 4.4.59+ #23824 SMP PREEMPT Tue Dec 25 18:27:57 CST 2018 x86_64 GNU/Linux synology_broadwellnk_3018xs.
Save the file to whatever device you will be running the commands from, in my case, it’s my Macbook.
Log into your DSM through the webpage (typically <LAN IP>:5000). Open the Package Center, then click on Manual Install, and select the file you just downloaded on your local machine. Click Next and install the package.
Plugin the USB stick into the NAS and reboot it.
If all goes as planned, you will have a working and recognized USB stick.
Integration into the HomeAssistant docker
Find out which ports your USB stick is mounted to
SSH into the NAS
Execute
dmesg|greptty which will show you where the drivers were mounted
[ 188.836041] usb 1-3: cp210x converter now attached to ttyUSB0
[ 188.848238] usb 1-3: cp210x converter now attached to ttyUSB1
Now you know it’s
ttyUSB0 and
ttyUSB1.
Next, you need to add the mapping for these to your container.
If you are starting your containers via docker-compose (and you should), edit your docker-compose.yaml file and add the following
If you are starting your containers via docker run, stop it and go learn about docker-compose. If you are a masochist and hate change, then just add the following to your run command: