Accueil » Maison connectée » Synology » Comment installer ZigBee2MQTT sur Debian 10 et VM NAS Synology
Synology

Comment installer ZigBee2MQTT sur Debian 10 et VM NAS Synology

guide-zigbee2mqtt-nas-synology-vm-debian10

Nous avons vu il y a quelques mois, un guide dédié à ZigBee2MQTT et le Raspberry Pi 4. Une solution domotique économique et performante pour vos périphériques Zigbee, d’autant que le dongle ne coûte que 20€ pour des performances hallucinantes. Le fameux dongle CC2531 et son antenne. Voyons aujourd’hui comment effectuer cette installation sous une machine virtuelle Debian 10 virtualisée sur un NAS Synology.

zigbee2mqtt-raspberrypi-4-guide-tuto-comment-faire

Zigbee2MQTT et Raspberry Pi 4 : Comment installer la passerelle Zigbee 3.0 DIY avec CC2531 ?

Je vous propose un nouveau guide domotique Do It Yourself basé autour de 3 éléments incontournables en domotique en 2021. Il s’agit du Raspberry Pi, qui sait vraiment tout faire. Le Zigbee, qui est sans conteste le protocole de l’année…


Avant tout, il faut commencer par installer une Debian 10 sur une machine virtuelle du NAS Synology. Un environnement de bureau n’est pas nécessaire, prenez simplement à y ajouter le service SSH pendant l’installation afin de pouvoir s’y connecter à distance par la suite. De mon côté, j’ai une “VM template” qui est une VM Debian 10 sans environnement de bureau et avec SSH actif. Je n’ai alors qu’à dupliquer cette VM en cas de besoin pour un nouveau projet. Cela permet de gagner pas mal de temps. Si vous avez de l’espace disque sur votre NAS, je vous conseille de procéder de même.

La connexion à Debian 10 et les prérequis à Zigbee2MQTT

Avant de démarrer l’installation de ZigBee2MQTT, il est nécessaire de préparer quelque peu le terrain. Rien de bien compliqué, mais avant de pouvoir prendre la main sur la Debian 10 en ssh, il faut déjà en connaître son adresse IP.

  1. Pour cela, connectez-vous au système depuis Virtual machine manager et l’option Connecter.

2. Une fois identifié sur l’OS, il s’agit d’identifier l’adresse IP attribuée à cette VM

3. Pour connaître l’adresse IP, entrez simplement la commande suivante :

ip addr

4. Le terminal retourne alors les adresses de la machine. parmi elles figure l’adresse sur votre réseau, celle qui va vous permettre de vous connecter en SSH sur cette machine virtuelle linux.

Utilisez alors Putty sous Windows ou votre terminal sous Mac pour vous connecter en SSH au système.

Brancher le dongle

A ce stade, l’environnement Zigbee2MQTT est prêt. Nous pouvons passer au branchement du dongle CC2531sur le NAS.

Pour ce faire, branchez le dongle sur un port USB du NAS Synology.

Il faut à présent, se rendre dans Virtual Machine manager et mettre hors tension la machine virtuelle

Editez ensuite les paramètres de la VM et rendez-vous dans Modifier la machine virtuelle, onglet Autres, puis sélectionner le contrôleur USB 2.0

Ensuite, choisissez le dongle CC2531 dans la liste déroulante. Si le dongle est correctement branché, il devrait apparaître comme ci-dessous.

Validez par OK, puis mettre sous tension la Machine Virtuelle.

Préparation de l’environnement

Avant de démarrer, il faut passer en admin afin de disposer des droits suffisants pour les différentes actions à réaliser.

  1. Pour cela rien de compliqué, on utilise simplement la commande su.
su

2. Il faut ensuite commencer à installer les paquets nécessaires au bon fonctionnement de Zigbee2MQTT comme curl ou encore git qui nous seront nécessaires pour installer la solution.

apt-get curl
apt-get git

3. Maintenant que nous avons le nécessaire au téléchargement et installation, passons au téléchargement des sources :

curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -

4. Ensuite, il faut installer la partie node.js

apt-get install -y nodejs git make g++ gcc

5. Passons aux vérifications des versions de npm et node avec les commandes suivantes :

node --version
npm --version

Si tout s’est bien passé, vous devriez obtenir un résultat comme celui-ci dans le terminal.

Installation de Zigbee2MQTT

  1. Nous voilà maintenant prêts à passer aux choses sérieuses en clonant le git officier sur notre système.
git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt

2. À present, il faut passer à l’attribution des droits.

sudo chown -R user:user /opt/zigbee2mqtt

3. On se déplace ensuite dans le répertoire d’installation avant de lancer l’installation.

cd /opt/zigbee2mqtt

4. Nous voilà à présent prêts à lancer l’installation des dépendances de npm

npm ci --production

L’installation de Zigbee2mQTT sur Debian 10 est maintenant terminée. Il reste encore quelques manipulations à faire pour le bon fonctionnement de la solution.

Configuration de Zigbee2MQTT

  1. La configuration de Zigbee2MQTT sur Debian 10 est identique à ce que nous avions vue dans le guide Raspberry Pi. Il s’agit de configurer le fichier configuration.yaml via nano.
nano /opt/zigbee2mqtt/data/configuration.yaml

Notez qu’il est possible d’activer une option qui permet d’avoir une interface web pour administrer la passerelle zigbee. Pour cela, je vous invite à suivre notre guide et vous encourage vivement à le faire.

comment-activer-frontend-zigbee2mqtt-raspberrypi

Comment activer l’interface web frontend de Zigbee2MQTT ?

Nous avons vu il y a quelques temps comment créer une passerelle Zigbee2MQTT très performante avec un Raspberry Pi et un sniffer Zigbee CC2531. Nous avions vu que le système est très performant mais se manipule en ligne de commande…


2. Une fois la configuration effectuée, il ne vous reste plus qu’à lancer Zigbee2MQTT pour confirmer que tout est en ordre à l’aide de la commande :

npm start

3. Si après cette commande, vous recevez des erreurs comme ci-dessous, il s’agit d’un problème connu par la communauté qui vient de la dernière version de Zigbee2MQTT. Une Solution pour voir le service fonctionner et de descendre sur une version inférieure en attendant que ce problème soit corrigé.

4. Pour revenir à une version précédente et corriger le problème, jouez simplement les deux commandes suivantes.

su
git fetch origin && git checkout 07ff52a56f112c8808c11f3b6f55cc50560f5fd1

5. Relancez alors npm et le problème devrait être corrigé.

npm start

6. Si tel est le cas, vous apercevez le journal d’activité live de Zigbee2mqtt comme ci-dessous.

Démarrage de Zigbee2MQTT

Nous avons vérifié que Zigbee2MQTT était fonctionnel avec la commande npm mais cette commande n’est viable que via l’interpréteur. Une fois le terminal fermé, le système ne sera plus opérationnel. Il faut donc configurer un démarrage automatique en tant que service pour que le système fonctionne de manière autonome.

  1. Placez-vous dans le répertoire de Zigbee2mqtt
cd /opt/zigbee2mqtt

2. Editez un nouveau fichier service dedié

nano /etc/systemd/system/zigbee2mqtt.service

3. collez dans ce dernier les lignes suivantes et quittez à l’aide de la combinaison ctrl+ X pour enregistrer

[Unit]
Description=zigbee2mqtt
After=network.target

[Service]
ExecStart=/usr/bin/npm start
WorkingDirectory=/opt/zigbee2mqtt
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root

[Install]
WantedBy=multi-user.target

4. Lancez alors le système via la commande suivante :

systemctl start zigbee2mqtt

5. Enfin, vérifiez que tout est OK à l’aide de la commande suivante :

systemctl status zigbee2mqtt.service

Vous devez en retour visualiser l’état du service de la manière suivante :

6. Pour terminer, il ne reste plus qu’à lancer un redémarrage du système.

sudo reboot

Après quelques minutes, vous devriez pouvoir vous connecter à la page web du frontend de Zigbee2MQTT, si vous l’avez activée dans le fichier de configuration.

Domo-blog a fait le choix de ne pas polluer votre lecture avec de la publicité. Vous trouverez cependant des liens affiliés vers les produits recommandés dans le contenu. Cela ne perturbe en rien votre experience de lecture et permet de financer le blog.
Vous pouvez également soutenir le blog en m'offrant un café sur Ko-Fi.


discord

Restez connecté aux nouveautés domotiques, inscrivez-vous à notre newsletter

A propos de cet auteur

Aurélien Brunet

Chef de projet informatique, anciennement informaticien spécialisé dans l'IT industrielle, le réseau et les bases de données. Un peu geek à mes heures perdues, je me suis mis à la domotique en 2012 pour sécuriser mon domicile.
Depuis, je teste, j’installe, je code, j’améliore mon installation et surtout, je partage avec vous mon expertise via ce blog et mon podcast Domotique Chronique pour améliorer votre quotidien dans la maison connectée !

1 Comment

Cliquez ici pour poster un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

  • Bonjour Aurélien,
    J’esssaye de mettre en place zigbee2mqtt sur une VM de mon Synology (DS920+), mais je bloque à la détection du dongle par l’USB.
    C’est un Zigbee Popp. Il ne semble pas détecté par le synology, même après un reboot.
    Il est branché en direct sur le NAS.
    La détection semble fonctionner, car le NAS detecte mon onduleur APC (branché sur l’autre port USB).
    Sais-tu si ce dongle Popp est compatible avec Synology; pour info, il était branché avant sur mon RPI avec Jeedom.
    Merci d’avance. pour ta réponse.

construction et domotique
promos domotique
Choix box domotique
promos domotique

La connexion à Debian 10 et les prérequis à Zigbee2MQTT

Avant de démarrer l’installation de ZigBee2MQTT, il est nécessaire de préparer quelque peu le terrain. Rien de bien compliqué, mais

Brancher le dongle

A ce stade, l’environnement Zigbee2MQTT est prêt. Nous pouvons passer au branchement du dongle CC2531sur le NAS.

Préparation de l’environnement

Avant de démarrer, il faut passer en admin afin de disposer des droits suffisants pour les différentes actions à réaliser.

Installation de Zigbee2MQTT

Nous voilà maintenant prêts à passer aux choses sérieuses en clonant le git officier sur notre système.

Configuration de Zigbee2MQTT

La configuration de Zigbee2MQTT sur Debian 10 est identique à ce que nous avions vue dans le guide Raspberry Pi.

Démarrage de Zigbee2MQTT

Nous avons vérifié que Zigbee2MQTT était fonctionnel avec la commande npm mais cette commande n’est viable que via l’interpréteur. Une

  • La connexion à Debian 10 et les prérequis à Zigbee2MQTT
  • Brancher le dongle
  • Préparation de l’environnement
  • Installation de Zigbee2MQTT
  • Configuration de Zigbee2MQTT
  • Démarrage de Zigbee2MQTT