This blog was written for the Domoticz Zigate plugin v4.4.9. The configuration system has been changed since v4.7.x, please see updated instructions here.
Federico Ceratto and I have been working on the packaging of Domoticz, one of the leading free and open source home automation / smart home solutions.
I've taken that a step further, packaging the plugin for the Zigate USB stick and two of the utilities for updating firmware on the Zigate, the JennicModuleProgrammer and the zigate-flasher.
These are initially Debian packages, also available for Raspbian, but I also try to share any lessons from this effort with the upstream developers and also provide a foundation for Ubuntu and Fedora packaging.
cator a similar tool
sudo raspi-config
timedatectlto verify the time and time synchronization is correct
ip addrto see your IP address
~pi/.ssh/authorized_keys
/etc/ssh/sshd_config(you don't want the script kiddies next door turning on your heating system in the middle of summer do you?)
As these were not included in the recent release of Debian 10 (buster) and as they are evolving more rapidly than packages in the stable distribution, I'm distributing them through Debify.
To use packages from Debify, the first step is to update your apt configuration. This works for regular Debian or Raspbian systems running stretch or buster:
$ wget -O - http://apt.debify.org/add-apt-debify | bash
$ sudo apt update $ sudo apt install domoticz-zigate-plugin
All the necessary packages should be installed automatically. A sample installation log is below for comparison.
You may want to check that you have the latest firmware installed in your Zigate.
sudo apt install jennic-module-programmer zigate-flasher. You can also try the alternative tool, zigate-flasher
sudo JennicModuleProgrammer -s /dev/ttyUSB0 -f /tmp/ZiGate_Coordinator_v3.1a.bin
sudo systemctl restart domoticz
If the JennicModuleProgrammer utility doesn't work for you, if it sits there for ten minutes without doing anything you can also try the zigate-flasher. I packaged both of these so you have the choice: please share your feedback in the Domoticz forums. Repeat the steps above, replacing step 4 with:
$ sudo zigate-flasher -p /dev/ttyUSB0 -w /tmp/ZiGate_Coordinator_v3.1a.bin Found MAC-address: 00:11:22:33:44:55:66:77 writing new flash from /tmp/ZiGate_Coordinator_v3.1a.bin $
sudo systemctl restart domoticzor try the Software Reset option in the Hardware settings.
Please share your feedback and questions through the Domoticz forums.
pi@pi5:~ $ sudo apt install domoticz-zigate-plugin Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: domoticz jennic-module-programmer libopenzwave1.6 libpython3-dev libpython3.5-dev openzwave The following NEW packages will be installed: domoticz domoticz-zigate-plugin jennic-module-programmer libopenzwave1.6 libpython3-dev libpython3.5-dev openzwave 0 upgraded, 7 newly installed, 0 to remove and 74 not upgraded. Need to get 51.7 MB of archives. After this operation, 91.8 MB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://apt.debify.org/debify debify-raspbian-stretch-backports/main armhf libopenzwave1.6 armhf 1.6+ds-1~bpo9+1 [406 kB] Get:2 http://raspbian.raspberrypi.org/raspbian stretch/main armhf libpython3.5-dev armhf 3.5.3-1+deb9u1 [36.9 MB] Get:3 http://apt.debify.org/debify debify-raspbian-stretch-backports/main armhf openzwave armhf 1.6+ds-1~bpo9+1 [24.6 kB] Get:4 http://apt.debify.org/debify debify-raspbian-stretch-backports/main armhf domoticz armhf 4.11020-2~bpo9+1 [10.8 MB] Get:5 http://apt.debify.org/debify debify-raspbian-stretch-backports/main armhf domoticz-zigate-plugin all 4.4.9~beta1-2~bpo9+1 [3,515 kB] Get:6 http://apt.debify.org/debify debify-raspbian-stretch-backports/main armhf jennic-module-programmer armhf 0.6-1~bpo9+1 [9,690 B] Get:7 http://raspbian.raspberrypi.org/raspbian stretch/main armhf libpython3-dev armhf 3.5.3-1 [18.7 kB] Fetched 51.7 MB in 9s (5,717 kB/s) Selecting previously unselected package libopenzwave1.6. (Reading database ... 34831 files and directories currently installed.) Preparing to unpack .../0-libopenzwave1.6_1.6+ds-1~bpo9+1_armhf.deb ... Unpacking libopenzwave1.6 (1.6+ds-1~bpo9+1) ... Selecting previously unselected package libpython3.5-dev:armhf. Preparing to unpack .../1-libpython3.5-dev_3.5.3-1+deb9u1_armhf.deb ... Unpacking libpython3.5-dev:armhf (3.5.3-1+deb9u1) ... Selecting previously unselected package libpython3-dev:armhf. Preparing to unpack .../2-libpython3-dev_3.5.3-1_armhf.deb ... Unpacking libpython3-dev:armhf (3.5.3-1) ... Selecting previously unselected package openzwave. Preparing to unpack .../3-openzwave_1.6+ds-1~bpo9+1_armhf.deb ... Unpacking openzwave (1.6+ds-1~bpo9+1) ... Selecting previously unselected package domoticz. Preparing to unpack .../4-domoticz_4.11020-2~bpo9+1_armhf.deb ... Unpacking domoticz (4.11020-2~bpo9+1) ... Selecting previously unselected package domoticz-zigate-plugin. Preparing to unpack .../5-domoticz-zigate-plugin_4.4.9~beta1-2~bpo9+1_all.deb ... Unpacking domoticz-zigate-plugin (4.4.9~beta1-2~bpo9+1) ... Selecting previously unselected package jennic-module-programmer. Preparing to unpack .../6-jennic-module-programmer_0.6-1~bpo9+1_armhf.deb ... Unpacking jennic-module-programmer (0.6-1~bpo9+1) ... Setting up jennic-module-programmer (0.6-1~bpo9+1) ... Setting up libopenzwave1.6 (1.6+ds-1~bpo9+1) ... Setting up libpython3.5-dev:armhf (3.5.3-1+deb9u1) ... Processing triggers for libc-bin (2.24-11+deb9u3) ... Processing triggers for man-db (2.7.6.1-2) ... Setting up libpython3-dev:armhf (3.5.3-1) ... Setting up openzwave (1.6+ds-1~bpo9+1) ... Setting up domoticz (4.11020-2~bpo9+1) ... Created symlink /etc/systemd/system/multi-user.target.wants/domoticz.service → /lib/systemd/system/domoticz.service. Setting up domoticz-zigate-plugin (4.4.9~beta1-2~bpo9+1) ... Adding user `domoticz' to group `dialout' ... Adding user domoticz to group dialout Done. pi@pi5:~ $