Accueil » Domotique » Home Assistant » Comment installer MQTT et Zigbee2MQTT sur Home Assistant 2024?
Home Assistant

Comment installer MQTT et Zigbee2MQTT sur Home Assistant 2024?

home-assistant-guide-mqtt-zigbee2mqtt

Nous avons vu plusieurs manières d’installer les services broker MQTT et Zigbee2MQTT sur le blog, mais une autre manière intéressante reste à vous faire découvrir, il s’agit d’une intégration complète à la domotique Home Assistant des deux services. Avec ce nouveau guide, vous obtenez tout en un, mais surtout un serveur MQTT et un serveur Zigbee2MQTT supervisés dans Home Assistant. Un moyen pratique et efficace de n’utiliser qu’une seule et même machine pour intégrer tous ces environnements domotique et les superviser/gérer de manière efficace.

On peut aussi voir cela différemment, en effet, j’ai généralement plus une stratégie qui vise à ne pas mettre tous mes oeufs dans le même panier, mais vous pouvez toutefois imaginer deux installations de Home Assistant. Une qui régira l’ensemble de votre système domotique principal et une seconde qui supervisera les services annexes comme le sont Zigbee2MQTT et MQTT. Installer les deux sur la même machine fait sens car les deux sont intimement liés. On peut tout à fait imaginer recycler un Raspberry Pi 2 dans ce rôle, un matériel tout à fait suffisant pour supporter les deux, tout en optant pour une sécurité accrue des deux services.

Car si ce Home Assistant secondaire ne servira qu’à superviser MQTT et Zigbee2MQTT, il le fait remarquablement bien et surtout dispose de tous les outils nécessaires à la sécurisation de votre environnement. Un moteur de backup simple complet et pratique, mais aussi un système de watchdog qui va surveiller les deux services et les relancer pour vous en cas de problème. Vous verrez cela en détail dans la suite du guide.

Comment installer MQTT en supervision sur Home Assistant ?

Commençons par le broker MQTT, pour cela, rendez-vous dans Paramètres puis Modules complémentaires.

  1. Ouvrez la boutique des modules complémentaires à l’aide du bouton en bas à droite de la fenêtre.

2. Vous apercevez dans la liste des add-ons officiels Mosquitto broker, cliquez dessus pour l’ouvrir.

3. Lancez ensuite l’installation de MQTT sur votre Home Assistant

4. Une fois installé, activez les deux options disponibles que sont Lancer au démarrage et Chien de garde. C’est un des avantages à exécuter MQTT en supervisé sous Home Assistant, le système domotique est très intelligent et se chargera de surveiller et permettre le bon fonctionnement constant de votre broker MQTT.

N’activez pas le service pour le moment, nous allons déjà procéder à l’installation de Zigbee2MQTT avant.

5. Rendez-vous dans le menu Paramètres/Personnes de Home Assistant pour créer un utilisateur pour MQTT.

Etape optionnelle, mais si vous voulez bien faire les choses et sécuriser un minimum votre broker, la création d’identifiants est recommandée.

6. Une fois sous le menu Personnes, cliquez sur le bouton Ajouter une personne

7. Créez alors un utilisateur pour MQTT et activez l’option Autoriser la personne à se connecter

8. Une fois l’option activée, d’autres champs apparaissent, notamment le mot de passe, définissez alors un password pour le compte MQTT, puis validez avec le bouton Créer.

Notre broker MQTT est quasiment prêt, passons maintenant à l’installation de Zigbee2MQTT avant de le démarrer.

Comment installer Zigbee2MQTT sur Home Assistant en mode supervisé ?

La procédure est assez similaire pour installer Zigbee2MQTT en supervision sur le système domotique Home Assistant, si ce n’est que le service ne figure pas dans les add-ons officiels, il va donc falloir l’ajouter mais c’est très simple, suivez simplement les quelques étapes ci-dessous.

Installer Zigbee2MQTT sous Home Assistant

  1. Rendez-vous dans le menu Paramètres/Modules complémentaire de Home Assistant

2. Cliquez sur le bouton Boutique des modules complémentaires

3. Une fois sous les modules complémentaires, cliquez sur les 3 points en haut à droite de la fenêtre puis Dépôts.

4. Ajoutez simplement le depôt suivant dans le champ de la fenêtre des référentiels, puis faites Ajouter.

https://github.com/zigbee2mqtt/hassio-zigbee2mqtt

5. Le nouveau référentiel Zigbee2MQTT figure à présent dans la liste des dépôts connue de Home Assistant, vous pouvez fermer cette fenêtre.

6. L’ajout du référentiel Zigbee2MQTT fait alors apparaître un nouveau groupe dans la boutique des modules complémentaires. Si vous ne les visualisez pas, il faut simplement rafraîchir la fenêtre de votre navigateur. Deux options possibles : Zigbee2mqtt et Zigbee2mqtt Edge. La version Edge est une version Beta, il faut donc choisir la première qui est stable pour notre serveur Zigbee2MQTT supervisé.

7. Lancez l’installation de Zigbee2MQTT en mode supervisé sous la domotique Home Assistant.

8. Activez les différentes options de démarrage, de watchdog mais aussi la dernière pour permettre un raccourci vers Zigbee2MQTT directement dans la barre latérale du module de Home Assistant.

Ne démarrez pas Zigbee2MQTT tout de suite, nous devons encore effectuer la configuration avant.

Identifier le port USB utilisé par le dongle Zigbee

Pour notre serveur Zigbee2MQTT supervisé sous Home Assistant, nous avons fait le choix du très bon et économique dongle Sonoff, mais d’autres dongles Zigbee sont possibles et le port peut être différent suivant le dongle.

Les dongles conseillés par la rédaction pour Zigbee2MQTT

C’est pourquoi le mieux est encore de vérifier le port généré par votre dongle pour vous assurer de mettre le bon port dans la configuration.

  1. Rendez-vous dans le menu Paramètres\Matériel sous Home Assistant.

2. Sous Matériel, cliquez sur les 3 points en haut à droite de la fenêtre puis Tout le matériel.

3. Votre dongle doit être connecté à Home Assistant, si ce n’est pas encore fait, branchez-le maintenant. Dans la fenêtre Tout le matériel, déployez le menu USB et copier le nom du port, ici /dev/ttyUSB0.

si vous utilisez le dongle Sonoff model E, il faudra indiquer le port adapter: ezsp dans la partie serial ci-dessous à la place de port: /dev/ttyUSB0

4. retournez sur le module Zigbee2MQTT, puis cliquez sur l’onglet Configuration.

5. Editez ensuite la configuration en collant la valeur du port USB de votre dongle Zigbee dans la partie serial, puis renseignez les informations de votre broker MQTT avec l’utilisateur créé plus haut.

Notez que certains ont indiqué avoir du remplacer la ligne server: mqtt://core-mosquitto:1883 par server: mqtt://localhost:1883 si vous avez une erreur au démarrage de l’extension zigbee2mqtt.

Démarrer MQTT et Zigbee2MQTT sous Home Assistant

1. Retournez sous les modules complémentaires pour enfin activer nos deux modules. Sélectionnez Mosquitto broker dans un premier temps.

2. Sous le module MQTT, faites Démarrer.

3. Revenez sur la liste des modules complémentaires de Home Assistant et cliquez à présent sur Zigbee2MQTT.

4. Cliquez sur Démarrer pour lancer Zigbee2MQTT.

5. Visualisez les logs de Zigbee2MQTT dans l’onglet Journal pour voir si tout est en ordre. Dans notre cas, nous voyons qu’il manque une configuration au niveau de MQTT.

6. Pour corriger ce problème simplement, rendez-vous dans le menu Paramètres/Appareil et services

7. Dans la liste des intégrations, cliquez sur Configurer au niveau de l’intégration MQTT

8. Cliquez simplement sur configurer puis terminé pour activer le broker MQTT.

9. Retournez sur le journal de Zigbee2MQTT, cette fois-ci, tout est en ordre, MQTT et Zigbee2MQTT sont maintenant pleinement opérationnels.

L’interface de Zigbee2MQTT supervisée par Home Assistant

Pour administrer Zigbee2MQTT depuis Home Assistant, il suffit de passer par le menu du même nom au niveau du menu latéral de Home Assistant. Vous avez alors à l’écran la fenêtre d’administration de Zigbee2MQTT que nous connaissons déjà, mais cette fois-ci, directement sous Home Assistant !

On passe ensuite la détection de nouveaux périphériques active via le bouton “Activer l’appairage“.

Puis il ne reste plus qu’à positionner le module Zigbee à détecter en mode appairage. En quelques secondes ce dernier est découvert et ajouté à Zigbee2MQTT.

Si vous vous rendez dans la page d’administration des intégrations Home Assistant, vous verrez vos appareils Zigbee ajoutés à Zigbee2MQTT présents sous votre broker MQTT local.

Conclusion

Avec ce guide, vous faites d’une pierre, deux coups ! Le guide Home Assistant All Inclusive, que dis-je, le guide indispensable pour démarrer avec la domotique HA. MQTT et Zigbee2MQTT sont maintenant déployés et supervisés directement sous le système domotique Home Assistant. Un moyen pratique et mutualisé qui permet à la fois de n’avoir qu’un seul Raspberry Pi (ou une VM) pour gérer et héberger l’ensemble, mais également la puissance et l’intelligence de Home Assistant qui se chargera de surveiller vos deux services et intervenir en cas de problème grâce à sa mécanique de watch dog et autres embarqués.

Bien entendu, la logique d’indépendance des deux solutions reste d’actualité si vous optez pour un HA uniquement destiné à ces deux services. Sinon, la partie Home Assistant pourra être hébergée sur le même système et d’autres systèmes domotiques pourront venir se synchroniser avec le MQTT local pour exploiter les périphériques Zigbee sur la domotique jeedom par exemple.

Enfin, vous pouvez également continuer sur votre lancée et procéder à la mise en place d’une sauvegarde déportée pour réellement disposer d’une solution fiable et hautement sécurisée.

home-assistant-backup-sauvegarde-nas-synology-guide-tuto-samba-share

Comment sauvegarder Home Assistant vers un NAS Synology ou partage réseau

Nous l’avons déjà vu avec le cas de la domotique Jeedom, les autres systèmes domotiques, Home Assistant inclus n’échappent pas à la règle. Comme tout système informatique, aucun n’est infaillible, tous peuvent potentiellement venir à tomber en panne, c’est pourquoi…


S’il est complètement possible d’utiliser ce Home Assistant pour y ajouter l’intégralité de votre domotique, je vous conseille toutefois, si vous en avez la possibilité, de conserver ce Home Assistant pour quelques services annexes de ce type, mais conserver le système domotique principal sur une autre instance. Raspberry Pi, serveur Physique ou Machine Virtuelle, tout est possible !

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 !

28 Comments

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,

    J’ai installé home assisntant core sur un Khadas vim1s ( merci pour le guide d’installation) mais je ne trouve pas comment installer Zigbee2MQTT ou Mosquitto broker.
    Le probleme de la version core qui n’ a ni Supervisor ni Add-ons?
    Est il possible d’installer HA Supervised sur un Khadas vim1s?*

    Merci par avance, bonne journée
    Cordialement

    • Bonjour,
      malheureusement il est assez compliqué d’installer un add-on avec la version core. C’est embêtant car impossible d’installer HA OS directement sur le VIM … Cependant, j’ai résolu le probleme en passant par docker depuis. Voir mon second guide pour faire tourner Jeedom sur docker pour la mise en oeuvre. Je posterai prochainement une MAJ du guide pour passer par Docker et passer outre les restriction de la version core.

  • Bonjour 🙂

    Après avoir passer beaucoup de temps, impossible de le faire fonctionner… Cela me met quand même l’erreur :
    – mqtt must have required property ‘server’

    Je ne sais pas comment faire…

    James

      • Bonjour,
        L’important c’est bien de mettre le même identifiant dans la création de la personne et la mise à jour de la config de Z2M, c’est bien ça?
        Sinon, toujours dans cette configuration, il y a un champ base_topic: zigbee2mqttHA. Il faut bien mettre cette valeur où bien il faut adapter à sa configuration? Dans ce cas, où trouver la valeur à mettre pour sa propre installation?
        Enfin, j’ai suivi le tuto à la lettre (enfin je pense…), mais au final ça ne marche pas chez moi (installation sur vim1s). D’abord, je n’ai aucun log de Zigbee2Mqtt, ensuite, si j’essaye de cliquer sur ZigBee2Mqtt dans la colonne de gauche, j’ai un message n’a pas encore démarré et j’ai une erreur “gateway 502” (ou quelque chose du genre…) qui s’affiche en haut de la fenêtre. Il faut que je recommence tout? Pour cela, je dois tout (MQTT et Zigbee2MQTT) désinstaller et ré-installer?
        Merci d’avance.

      • Bonjour,

        je pense qu’il faut refaire l’installaiton oui. Je n’ai jamais eu ce type d’erreur. J’ai souvent eu un probleme de démarrage lié au dongle qui n’est pas adressé sur le bon port, mais cela se voit dans les logs.
        Pour ce qui est des champs, c’est à adapter à sa convenance, pas d’obligation a respecter à la lettre les screen, ce ne sont que des exemples.

      • Bonjour
        Un grand merci pour cette excellente explication
        J’ai eu le même problème que François
        J’ai trouvé la solution sur un autre tuto
        Dans la configuration zeegbee2mqtt.
        Dans Segal sous la ligne:
        port: /dev/ttyACM0
        J’ai eu besoin de rajouter la ligne
        adapter: ezsp
        Pour la clé Sonoff 3
        Cordialement

  • Bonjour, j’ai suivi a la lettre vos instruction mais ça ne marche pas, voila ce que ca me donne:

    [14:21:50] INFO: Preparing to start…
    [14:21:51] INFO: Socat not enabled
    [14:21:52] INFO: Starting Zigbee2MQTT…
    Zigbee2MQTT:info 2023-11-08 14:21:59: Logging to console and directory: ‘/config/zigbee2mqtt/log/2023-11-08.14-21-59’ filename: log.txt
    Zigbee2MQTT:info 2023-11-08 14:21:59: Starting Zigbee2MQTT version 1.33.2 (commit #unknown)
    Zigbee2MQTT:info 2023-11-08 14:21:59: Starting zigbee-herdsman (0.21.0)
    Zigbee2MQTT:error 2023-11-08 14:22:20: Error while starting zigbee-herdsman
    Zigbee2MQTT:error 2023-11-08 14:22:20: Failed to start zigbee
    Zigbee2MQTT:error 2023-11-08 14:22:20: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start.html for possible solutions
    Zigbee2MQTT:error 2023-11-08 14:22:20: Exiting…
    Zigbee2MQTT:error 2023-11-08 14:22:20: Error: Failed to connect to the adapter (Error: SRSP – SYS – ping after 6000ms)
    at ZStackAdapter.start (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:103:27)
    at Controller.start (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:132:29)
    at Zigbee.start (/app/lib/zigbee.ts:60:27)
    at Controller.start (/app/lib/controller.ts:101:27)
    at start (/app/index.js:107:5)
    pouvez vous me dir ce qu’il ne va pas , je suis sur raspberry pi 4 8g de mémoire
    merci

  • Bonjour à tous
    tout d’abord merci Aurélien (pour ce tuto et les autres !!).
    J’ai tout d’abord une question : comme tu le conseilles, j’ai fait deux VM (sur synology) de HA : maintenant, comment je récupère les infos de mes modules Zigbee présent dans mon HA_mqtt/zigbee2mqtt afin de les avoir dans mon HA_domotique ?

    Et ensuite , je vais donner des précisions sur mon expérience en ayant suivi ce tuto. J’ai été confronté a quelques questions également mais j’ai trouvé les élément de réponses manquantes sur cette vidéo : https://youtu.be/4y_dDgo0i2g?si=kjZu0fnI_yGf-Cmg .

    J’ai pour ma part une clé sonoff zigbee 3 plus E et dans la configuration, j’ai ajouté dans la config sur la rubrique serial toute la ligne d’adresse de ma clé et non pas la seule terminaison, j’ai également déclaré “adapter ezsp”.
    Sur la rubrique mqtt j’ai indiqué :server : mqtt://core-mosquitto:1883 et enlever la ligne base topic (je ne l’ai pas vu sur la vidéo alors j’ai essayé).

    J’ai aussi bien dû caler les user/mdp (ne pas les confondre, bien les écrire ….)

    Là, c’est “magique” je récupère sous mqtt mes premiers modules (prises nous, capteur température sonoff – j’y vais doucement….avant de migrer car mon jeedom fonctionne correctement…).

    Merci
    C.

    • Bonjour à tous,

      Je confirme les paramètres proposés par Olivier.
      Mon système n’a fonctionné qu’après avoir changer server : mqtt://localhost:1883 en server : mqtt://core-mosquitto:1883

  • Merci pour le tuto, le mot de passe pour l’utilisateur mqtt doit rester simple.
    Je ne comprenais pas pourquoi ça ne marchait pas. Le mot de passe était complexe et j’avais un problème a l’enregistrement du fichier. Après avoir mis un mot de passe bateau, c’était ok.
    On sait jamais, si ça peut servir.

  • Bonjour,

    Je viens de suivre le tuto à la lettre, mais quand j’essaie d’accéder à Zigbee2MQTT en cliquant sur le menu à gauche, j’ai systématiquement le message d’erreur: Le module complémentaire semble ne pas être prêt.
    J’ai modifié la ligne “server : mqtt://core-mosquitto:1883” par “server: mqtt://localhost:1883” mais cela n’a rien changé.
    Est-ce que cela pourrait venir du fait que j’ai une clé Zigbee Sky Connect de Nabu Casa avec ZHA installé ?
    Merci

  • Bonjour. ce tuto m’a permis de beaucoup avancer, mais il me reste un dernier ‘détail’ qui ne marche pas. j’ai ces erreur là :
    [20:51:34] INFO: Preparing to start…
    [20:51:34] INFO: Socat not enabled
    [20:51:35] INFO: Starting Zigbee2MQTT…
    [2024-05-02 20:51:37] info: z2m: Logging to console, file (filename: log.log)
    [2024-05-02 20:51:42] info: z2m: Starting Zigbee2MQTT version 1.37.0 (commit #unknown)
    [2024-05-02 20:51:42] info: z2m: Starting zigbee-herdsman (0.45.0)
    [2024-05-02 20:51:42] warning: zh:ezsp: Deprecated driver ‘ezsp’ currently in use, ’ember’ will become the officially supported EmberZNet driver in next release. If using Zigbee2MQTT see https://github.com/Koenkk/zigbee2mqtt/discussions/21462
    [2024-05-02 20:51:47] info: z2m: zigbee-herdsman started (resumed)
    [2024-05-02 20:51:47] info: z2m: Coordinator firmware version: ‘{“meta”:{“maintrel”:”3 “,”majorrel”:”6″,”minorrel”:”10″,”product”:8,”revision”:”6.10.3.0 build 297″},”type”:”EZSP v8″}’
    [2024-05-02 20:51:47] info: z2m: Currently 0 devices are joined:
    [2024-05-02 20:51:47] info: z2m: Zigbee: disabling joining new devices.
    [2024-05-02 20:51:47] info: z2m: Connecting to MQTT server at mqtt://core-mosquitto:1883
    [2024-05-02 20:51:47] error: z2m: MQTT error: Connection refused: Not authorized
    [2024-05-02 20:51:47] error: z2m: MQTT failed to connect, exiting…
    [2024-05-02 20:51:47] info: z2m: Stopping zigbee-herdsman…
    [2024-05-02 20:51:48] info: zh:controller: Wrote coordinator backup to ‘/config/zigbee2mqtt/coordinator_backup.json’
    [2024-05-02 20:51:48] info: z2m: Stopped zigbee-herdsman

    en premier lieu, le Warning que je ne sais pas interpréter.
    puis les deux erreurs de connexion.

    auriez-vous une idée à me soumettre ?

    • Bonjour,
      le warning indique simplement un changement des drivers en cours sur Z2M pour cette gamme de puce zigbee.
      pour l’erreur, tout indique un souci de connexion au broker MQTT, comme indiqué dans le guide, tu peux essayer avec mqtt://localhost:1883 (sous reserve que comme dans le guide MQTT est aussi installé sur HA).

      • Merci pour ton retour rapide. J’avais déjà testé en Localhost, mais ça ne marche pas, c’est même pire.

        Par ailleurs, j’ai vu qu’il fallait ouvrir les ports 1883 & 84 + 8883 & 84. est-ce nécessaire ou est-ce automatique ? s’il faut le faire, où et comment ?

        Merci d’avance.

      • ma conf est celle-ci :

        data_path: /config/zigbee2mqtt
        socat:
        enabled: false
        master: pty,raw,echo=0,link=/tmp/ttyZ2M,mode=777
        slave: tcp-listen:8485,keepalive,nodelay,reuseaddr,keepidle=1,keepintvl=1,keepcnt=5
        options: “-d -d”
        log: false
        user: MQTT_Admin
        password: Jscluenw1
        mqtt:
        server: mqtt://core-mosquitto:1883
        serial:
        port: >-
        /dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240122161121-if00
        adapter: ezsp

        pour la définition du ‘port’ j’ai mis, comme d’autre l’ont fait, le lien complet vers la clé, mais le port /dev/ttyACM0 n’apparait alors plus. Je ne pense pas que mon problème vienne de là, puisque les messages d’erreur n’incriminent pas ce port.

      • ma conf est celle-ci :

        data_path: /config/zigbee2mqtt
        socat:
        enabled: false
        master: pty,raw,echo=0,link=/tmp/ttyZ2M,mode=777
        slave: tcp-listen:8485,keepalive,nodelay,reuseaddr,keepidle=1,keepintvl=1,keepcnt=5
        options: “-d -d”
        log: false
        user: MQTT_Admin
        password: xxxxxxx
        mqtt:
        server: mqtt://core-mosquitto:1883
        serial:
        port: >-
        /dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_20240122161121-if00
        adapter: ezsp

        pour la définition du ‘port’ j’ai mis, comme d’autre l’ont fait, le lien complet vers la clé, mais le port /dev/ttyACM0 n’apparait alors plus. Je ne pense pas que mon problème vienne de là, puisque les messages d’erreur n’incriminent pas ce port.

construction et domotique
promos domotique
Choix box domotique
promos domotique

Comment installer MQTT en supervision sur Home Assistant ?

Commençons par le broker MQTT, pour cela, rendez-vous dans Paramètres puis Modules complémentaires.

Comment installer Zigbee2MQTT sur Home Assistant en mode supervisé ?

La procédure est assez similaire pour installer Zigbee2MQTT en supervision sur le système domotique Home Assistant, si ce n’est que

L’interface de Zigbee2MQTT supervisée par Home Assistant

Pour administrer Zigbee2MQTT depuis Home Assistant, il suffit de passer par le menu du même nom au niveau du menu

Conclusion

Avec ce guide, vous faites d’une pierre, deux coups ! Le guide Home Assistant All Inclusive, que dis-je, le guide

  • Comment installer MQTT en supervision sur Home Assistant ?
  • Comment installer Zigbee2MQTT sur Home Assistant en mode supervisé ?
  • L’interface de Zigbee2MQTT supervisée par Home Assistant
  • Conclusion