Zigbee : Xiaomi / Aqara, conbee II, deCONZ
Publié : 09 janv. 2020, 09:32
Bonjour
Petit retour d'expérience sur l'intégration d'une clé Conbee ii sur mon installation :
- domoticz ver. 4.11597 (compilé depuis github, pas via le package)
- OS : archlinux en machine virtuelle dans un NAS Synology. La clé USB est donc branchée sur un port du NAS
- python ver 3.8.1
- clé conbee II version 2.0572, firmware 264A0700
Je vous passe les hésitations et tâtonnements, j'ai passé bien 4h, c'est pour cela que je prend 10min à poster ce billet.
Les étapes :
1°) installer les dépendances du package deconz (dépend des packages déjà installés sur votre OS. Quand vous déroulez le point suivant ça vous le dit).
Pour ma part :
-> hicolor-icon-theme
-> qt5-base
-> qt5-serialport
-> qt5-websockets
pacman -S <nom package>
2°) Installer le package "deconz" et les dépendances ad-hoc sur le linux.
Il n'y avait pas de package tout prêt donc
j'ai téléchargé les sources : git clone https://aur.archlinux.org/deconz.git
créé un package : makepkg
installé le package : pacman -U <fichier.pkg.tar.xz>
créer le UNIT deconz.service dans /etc/systemd/system pour que ça démarre et redémarre tout seul :
[Unit]
Description=deconz_service
[Service]
EnvironmentFile=/etc/default/deconz
ExecStart=/usr/bin/deCONZ -platform minimal $DECONZ_OPTS
Restart=on-failure
RestartSec=1m
[Install]
WantedBy=multi-user.target
Dans le fichier de paramètres, à créer, /etc/default/deconz il y a : DECONZ_OPTS="--http-port=8088 --dbg-info=2 --dbg-aps=1"
Attention aux guillements
3°) Activation du UNIT créé à l'étape précédente
sudo systemctl enable deconz.service
REBOOT
4°) Vérification que le UNIT/service est bien démarré
sudo systemctl list-unit-files
5°) Brancher la clé USB sur le NAS, la mapper dans la machine virtuelle, vérifier qu'elle apparaît dans l'OS
dans /dev/serial/by-id verifier on doit retrouver une entrée du type usb-dresden_elektronik_ingenieurtechnik_Gmxxxxx
6°) Dans domoticz, configuration / matériel, avec PPM (python plugin manager), installer "deCONZ bridge for conbee", puis le matériel "deCONZ plugin".
7°) se placer dans une fenêtre terminal, au niveau du répertoire du plug in deCONZ de domoticz
créer une API_Key en choisissant le port que l'on veut (8088 dans mon cas) : sudo python3 API_KEY.py 127.0.0.1:8088 create
(cette étape est dans la doc de la conbee II, sur internet)
Retourner dans le paramétrage du plugin deCONZ et renseigner l'@ip, le port, l'API KEY, le niveau de log (je conseille debug au début)
8°) Paramétrer la clé avec l'application web en utilisant un browser, sur n'importe quelle machine du LAN, et en tapant l'URL http://<@ ip du serveur domoticz, hébergeant tout ce que l'on a fait précédemment>:<n° du port spécifié à l'étape précédente>
On arrive sur l'application "Phoscon"
Aller dans settings/gateway/advanced pour régler les 2-3 bricoles.
Je ne sais pas s'il faut faire "authenticate app", car j'ai fait beaucoup de manips. -> je suis preneur de votre retour
C'est par cette application "phoscon" que se déclenche l'association de périphériques Zigbee.
9°) Vous devriez voir, même sans périphérique Zigbee associé, des choses dans domoticz, configuration / dispositifs.
10°) J'ai pu sans aucun souci associer un capteur Aqara / Xiaomi (de dernière génération) de température / humidité / pression. Prix imbattable sur aliexpress.
Pour le smartplug (toujours aqara / xiaomi, à 9€ sur Aliexpress), je n'y suis pas encore arrivé
Voila ... en espérant que ça aide certain(e)s.
Bon, désolé de casser le mythe, c'est tout sauf facile cette intégration de la conbee II dans domoticz.

Les liens qui m'ont particulièrement aidés (il y en a plein d'autres) : Je n'ai pas eu de soucis de librairies ou autres, contrairement à d'autres personnes.
J'ai bien remarqué que le code source / package deCONZ était plutôt fait pour Raspberry, cf fichiers .sh notamment, néanmoins ça a compilé sans erreurs, et ça fonctionne. Donc je ne vais pas toucher un truc qui fonctionne pour être "plus propre"
. Et je ne suis pas développeur en plus ... donc pas trop pointu là dedans.
Petit retour d'expérience sur l'intégration d'une clé Conbee ii sur mon installation :
- domoticz ver. 4.11597 (compilé depuis github, pas via le package)
- OS : archlinux en machine virtuelle dans un NAS Synology. La clé USB est donc branchée sur un port du NAS
- python ver 3.8.1
- clé conbee II version 2.0572, firmware 264A0700
Je vous passe les hésitations et tâtonnements, j'ai passé bien 4h, c'est pour cela que je prend 10min à poster ce billet.
Les étapes :
1°) installer les dépendances du package deconz (dépend des packages déjà installés sur votre OS. Quand vous déroulez le point suivant ça vous le dit).
Pour ma part :
-> hicolor-icon-theme
-> qt5-base
-> qt5-serialport
-> qt5-websockets
pacman -S <nom package>
2°) Installer le package "deconz" et les dépendances ad-hoc sur le linux.
Il n'y avait pas de package tout prêt donc
j'ai téléchargé les sources : git clone https://aur.archlinux.org/deconz.git
créé un package : makepkg
installé le package : pacman -U <fichier.pkg.tar.xz>
créer le UNIT deconz.service dans /etc/systemd/system pour que ça démarre et redémarre tout seul :
[Unit]
Description=deconz_service
[Service]
EnvironmentFile=/etc/default/deconz
ExecStart=/usr/bin/deCONZ -platform minimal $DECONZ_OPTS
Restart=on-failure
RestartSec=1m
[Install]
WantedBy=multi-user.target
Dans le fichier de paramètres, à créer, /etc/default/deconz il y a : DECONZ_OPTS="--http-port=8088 --dbg-info=2 --dbg-aps=1"
Attention aux guillements
3°) Activation du UNIT créé à l'étape précédente
sudo systemctl enable deconz.service
REBOOT
4°) Vérification que le UNIT/service est bien démarré
sudo systemctl list-unit-files
5°) Brancher la clé USB sur le NAS, la mapper dans la machine virtuelle, vérifier qu'elle apparaît dans l'OS
dans /dev/serial/by-id verifier on doit retrouver une entrée du type usb-dresden_elektronik_ingenieurtechnik_Gmxxxxx
6°) Dans domoticz, configuration / matériel, avec PPM (python plugin manager), installer "deCONZ bridge for conbee", puis le matériel "deCONZ plugin".
7°) se placer dans une fenêtre terminal, au niveau du répertoire du plug in deCONZ de domoticz
créer une API_Key en choisissant le port que l'on veut (8088 dans mon cas) : sudo python3 API_KEY.py 127.0.0.1:8088 create
(cette étape est dans la doc de la conbee II, sur internet)
Retourner dans le paramétrage du plugin deCONZ et renseigner l'@ip, le port, l'API KEY, le niveau de log (je conseille debug au début)
8°) Paramétrer la clé avec l'application web en utilisant un browser, sur n'importe quelle machine du LAN, et en tapant l'URL http://<@ ip du serveur domoticz, hébergeant tout ce que l'on a fait précédemment>:<n° du port spécifié à l'étape précédente>
On arrive sur l'application "Phoscon"
Aller dans settings/gateway/advanced pour régler les 2-3 bricoles.
Je ne sais pas s'il faut faire "authenticate app", car j'ai fait beaucoup de manips. -> je suis preneur de votre retour
C'est par cette application "phoscon" que se déclenche l'association de périphériques Zigbee.
9°) Vous devriez voir, même sans périphérique Zigbee associé, des choses dans domoticz, configuration / dispositifs.
10°) J'ai pu sans aucun souci associer un capteur Aqara / Xiaomi (de dernière génération) de température / humidité / pression. Prix imbattable sur aliexpress.
Pour le smartplug (toujours aqara / xiaomi, à 9€ sur Aliexpress), je n'y suis pas encore arrivé
Voila ... en espérant que ça aide certain(e)s.
Bon, désolé de casser le mythe, c'est tout sauf facile cette intégration de la conbee II dans domoticz.
Les liens qui m'ont particulièrement aidés (il y en a plein d'autres) : Je n'ai pas eu de soucis de librairies ou autres, contrairement à d'autres personnes.
J'ai bien remarqué que le code source / package deCONZ était plutôt fait pour Raspberry, cf fichiers .sh notamment, néanmoins ça a compilé sans erreurs, et ça fonctionne. Donc je ne vais pas toucher un truc qui fonctionne pour être "plus propre"