Installation de Domoticz sur Excito B3
Cette fois on tente d’installer Domoticz sur un de mes Excito B3.
Domoticz
Après les installations avortées de OpenHAB et Home Assitant le candidat suivant est Domoticz.
Celui-ci fait un peu moins parler de lui, mais est présent depuis bien longtemps.
Installation
Direction la page d’installation sous Linux.
Forcément, pas de solution clef en main pour un armv5 parmis les packages précompilés. De même, l’installation via container Docker ne propose pas de version armv5.
Heureusement, codé en C++, ça nous laisse bon espoir d’arriver à nos fins.
Méthodes
Domoticz a son opinion concernant les versions des composants pour son build, genre la version de CMake ou libboost. Heureusement, on trouve une solution utilisant un conteneur Docker, histoire de ne pas en mettre partout, d’autant plus pratique quand l’environnement de developpement est aussi celui de production.
Build dans Docker
git clone https://github.com/domoticz/domoticz.git dev-domotics
./dev-domoticz/build/build cmake
./dev-domoticz/build/build compile
./dev-domoticz/build/build run
Installation
Maintenant qu’on sait que ça fonctionne, on peut créer un utilisateur dédié.
useradd -rm domoticz
mkdir /srv/domoticz
chown domoticz:domoticz /srv/domoticz/
mv /home/excito/domoticz/ /srv/domoticz/
chown -R domoticz:domoticz /srv/domoticz/domoticz/
Ensuite on va configurer systemd pour une activation automatique.
vi /etc/systemd/system/domoticz.service
[Unit]
Description=domoticz_service
[Service]
User=domoticz
Group=domoticz
ExecStart=/srv/domoticz/domoticz/domoticz -www 8080
WorkingDirectory=/srv/domoticz/domoticz
Restart=on-failure
RestartSec=1m
#StandardOutput=null
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable domoticz.service
systemctl start domoticz.service
Conclusion
Et voilà, ça fonctionne !
Reste à découvrir l’écosystème Domoticz et y rajouter le nécessaire pour faire fonctionner Nabaztag:tag, Karotz, Freebox, Free Mobile SMS, sondes température… et autres bidouillages à base d’ESP32 qui n’attendaient qu’un serveur.