Assembler le pont Zigbee2MQTT, boitier, démo Node-RED. Hack ponts zigbee Hue et Xiaomi Aqara • Domotique et objets connectés à faire soi-même

Le projet Zigbee2mqtt permet de fabriquer un pont domotique à l’aide d’un sniffer Zigbee CC2531 de Texas Instrument. C’est un projet équivalent au projet français Zigate. Il est compatible avec la plupart des accessoires domotiques Xiaomi Smart Home Aqara et Mijia ainsi que quelques ampoules Ikea. Un firmware dédié est installé sur un sniffer Zigbee (Sniffer CC2531 de Texas Instrument). Pour réaliser ce projet, vous aurez besoin d’un CC Debugger et d’un câblage GBAN pour l’installation et la mise à jour du firmware.

Le projet Zigbee2MQTT permet de nous débarrasser des gateways officiels (ponts domotiques) de plusieurs fabricants. Philips Hue, Xiaomi Aqara.. Un très bon moyen de garder la main sur vos données personnelles. Toutes les mesures, états, commandes resterons chez vous. Le code source est entièrement disponible sur GitHub. La liste complète des accessoires domotiques supportés est ici.

Dans la seconde partie de cet article, tout est expliqué pour inclure les accessoires Xiaomi Aqara ou Mijia à Domoticz à l’aide de Node-RED.

Matériel nécessaire pour fabriquer la Gateway Xiaomi Zigbee

Le pont zigbee2mqtt utilise un sniffer basé sur le circuit CC2531 (environ 5€) de Texas Instrument. Il faudra acheter un CC Debugger de Texas Instrument (environ 16€) pour installer et mettre à jour le firmware sur le sniffer. Il faudra également acheter un câble spécifique (GBAN) qui permet de relier le CC Debugger au Sniffer CC2531 (environ 2€). à chaque fois que vous voulez mettre à jour le firmware.

Sniffer CC2531

Il permet d’intercepter et d’envoyer les commandes Zigbee. Choisissez de préférence un module avec extérieure pour augmenter la zone de couverture et avoir une meilleure réception.

CC Debogger

Permet de télécharger le firmware dans le sniffer CC2531

Câble de programmation GBAN

Ce câbles particulier est nécessaire pour relier le CC Debogger au Sniffer. On l’utilisera pour installer le firmware ou le mettre à jour

Kit de démarrage

Il est possible d’acheter des sniffer CC2531 pour augmenter la couverture Zigbee mais il est souvent plus avantageux d’acheter un kit de démarrage pour débuter.

Voir plus d’offres

Matériel nécessaire pour faire fonctionner le pont Zigbee2MQTT

Une fois que le firmware est installé sur le sniffer CC2531, vous n’aurez plus besoin du CC Debugger et de l’interface GBAN. C’est un investissement d’environ 20€ pour fabriquer la gateway Zigbee mais rien ne vous empêche de fabriquer plusieurs Gateway. En utilisant un Raspberry Pi Zero ou un Orange Pi Zero en Ethernet vous pourrez très facilement augmenter la couverture Zigbee dans votre habitation ou pourquoi pas votre jardin.

Il existe un plugin pour la plupart des logiciels domotiques. Domoticz, Node-RED, Home Assistant. Pour les autres logiciels, vous pouvez utiliser le protocole MQTT !

Principe de fonctionnement du pont Zigbee2MQTT

Toutes les actions, états, mesures sont donc interceptées et publiées sur un broker (serveur) MQTT. La passerelle est bi-directionnelle, c’est à dire qu’on pourra également pilotés les appareils Zigbee en envoyant des messages MQTT.

jmqpmfvmq0ecl0zy4isz-4955246

Le projet a été développé en javascript à l’aide de Nodejs. En théorie, on pourra donc faire fonctionner la passerelle sur PC Windows/Linux, MAC et mini PC ARM tel que le Raspberry Pi ou Orange Pi. Pour ce tutoriel, nous allons le déployer sur un Raspberry Pi 3 sur lequel est également installé un broker MQTT (Mosquitto), Node-RED et Domoticz.

Installation du firmware sur le sniffer CC2531

Les étapes d’installation sont peu nombreuses et très bien expliquées sur le WiKi officiel. Je n’ai rencontré aucune difficulté particulière. Le Wiki propose plusieurs méthodes d’installation pour chaque système (Linux, macOS), mais le plus facile est encore d’utiliser un PC Windows.

Installer SmartRF Flash Programmer

Commencez par récupérer la version 1 du logiciel SmartRF Flash Programmer sur le site de Texas Instrument en allant sur cette page. Vous aurez besoin de créer un compte utilisateur gratuit. Décompressez le ZIP et installez SmartRF Flash Programmer.

Connecter le CC Debugger au Sniffer CC2531

Branchez le Sniffer au CC Debugger à l’aide d’un câble de liaison. Le Sniffer est équipé d’un connecteur au pas de 1mm. La carte GBAN sert juste à changer de format de câble. Il n’y a pas de détrompeur sur le CC2531. Utilisez la photo ci-dessous pour orienter correctement le câble (le détrompteur vers l’intérieur du Sniffer).

Branchez le CC Debugger et le Sniffer CC2531 sur l’ordinateur. La LED du Debugger va être rouge au branchement., Appuyez sur le bouton RESET pour la passer en vert. On est prêt pour flasher le firmware.

Installer les drivers

Télécharger le driver Windows swrc212 du boitier CC Debugger (ici). Décompressez le fichier ZIP. Branchez le CC Debugger. Windows va tenter d’installer automatiquement le driver mais va probablement échouer. Le plus facile est et d’ouvrir le gestionnaire de périphérique et de faire un clic droit sur le CC Debugger puis de choisir l’option Mettre à jour le pilote…

Dans la fenêtre qui s’ouvre, choisissez Rechercher un pilote sur mon ordinateur

Puis, indiquez le chemin vers le dossier swrc212 qui contient le drivers (32-bits et 64-bits).

Windows scan le répertoire à la recherche du drivers adapté à votre version. Validez le drivers trouvé pour terminer l’installation. A la fin, les deux appareils doivent être correctement installés.

Télécharger le firmware

Le firmware Zigbee2MQTT est disponible sur GitHub sur cette page. Télécharger la dernière version (fichier hex)

Attention, le lien précédent est mort https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator/CC2531/bin (merci à Nicolas)

Flasher le firmware

Lancez le programme SmartRF Flash Programmer. Indiquez le chemin vers l’image du firmware (fichier hex précédemment téléchargé) puis cliquez sur Perform Action. L’installation dure moins d’une minute. Ne débranchez rien pendant l’opération.

Installer la passerelle Zigbee2MQTT sur le Raspberry Pi

Branchez le sniffer USB sur le Raspberry Pi et ouvrez un Terminal (ou connectez vous en SSH). Exécutez cette commande pour trouver le port sur lequel se trouve le Sniffer.

ls -l /dev/tty*

En général, il est branché sur le port ttyACM0.

Vérifiez maintenant que Nodejs et npm sont installés sur Raspbian. Si vous utilisez Jeedom ou Node-RED, vous n’avez rien à installer.

node --version  # v8.X.X mini
npm --version   # v5.X.X mini

Si ce n’est pas le cas, exécutez ces deux commandes ou suivez ce tutoriel pour plus de détail.

sudo curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs git make g++ gcc

Maintenant, il ne reste plus qu’à installer Zigbee2MQTT

# Clone zigbee2mqtt
sudo git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt
sudo chown -R pi:pi /opt/zigbee2mqtt

# Installation des dépendances - Install dependencies
cd /opt/zigbee2mqtt
npm install

La commande npm install reste en attente à la fin de l’installation. Vous pourrez la quitter manuellement à la lecture du message

node-pre-gyp info ok

Configurer la passerelle

Le fichier de configuration se trouve dans le dossier data.

nano /opt/zigbee2mqtt/data/configuration.yaml

Modifiez les paramètres MQTT :

  • topic de base
  • adresse IP du broker MQTT (server). Ne changez rien si le sniffer est branché sur le même Raspberry Pi
  • user et password si le broker est protégé par un mot de passe (fortement conseillé, suivez ce tutoriel pour le configurer)
# MQTT settings
mqtt:
  # MQTT base topic for zigbee2mqtt MQTT messages
  base_topic: zigbee2mqtt
  # MQTT server URL
  server: 'mqtt://localhost'
  # MQTT server authentication, uncomment if required:
  # user: my_user
  # password: my_password

Enregistrez avec CTRL+X puis O. Tout est prêt !

Ajouter un accessoire Xiaomi Aqara ou Mijia

Lancez le script de la gateway

cd /opt/zigbee2mqtt
npm start

Attendez d’avoir le message Zigbee: allowing new devices to join.

Pour le test, je vous propose d’intégrer le détecteur de présence Xiaomi Mi Motion Sensor. La procédure est identique quelque soit l’accessoire.

Prenez un trombone et maintenez le micro-interrupteur durant 3 à 5 secondes jusqu’à ce que la LED blue clignote. Vous devriez obtenir directement l’identifiant unique de votre accessoires. Le script s’occupe du jumelage. Contrairement à la gateway officielle, il faut empêcher l’accessoire de s’endormir en appuyant régulièrement (1 fois par seconde) sur le bouton d’association jusqu’à ce que le processus d’association débute.

Dès que le premier message arrive (détection de mouvement, mesure de température…), c’est terminé, votre accessoire Zigbee est maintenant associé.

2018-6-4 12:37:41 INFO Zigbee: allowing new devices to join.
2018-6-4 12:37:48 WARN Message without device!
spinlock: false []
2018-6-4 12:38:04 INFO New device with address 0x00158d000155d2b7 connected!
2018-6-4 12:38:04 INFO MQTT publish, topic: 'zigbee2mqtt/bridge/log', payload: '{"type":"device_connected","message":"0x00158d000155d2b7"}'
2018-6-4 12:38:08 INFO Connecting with device...
2018-6-4 12:38:08 INFO MQTT publish, topic: 'zigbee2mqtt/bridge/log', payload: '{"type":"pairing","message":"connecting with device"}'
2018-6-4 12:38:13 INFO Connecting with device...
2018-6-4 12:38:40 INFO MQTT publish, topic: 'zigbee2mqtt/bridge/log', payload: '{"type":"pairing","message":"device incoming"}'
2018-6-4 12:38:45 INFO MQTT publish, topic: 'zigbee2mqtt/0x00158d000155d2b7', payload: '{"click":"double"}'

Renommer les accessoires

Par défaut le script utilise l’identifiant unique de l’accessoire domotique comme nom. Ce n’est pas forcément le plus facile pour s’y retrouver. On peut facilement modifier le nom en allant le changer dans le fichier de configuration. Arrêtez le script et ouvrez de nouveau le fichier de configuration

nano /opt/zigbee2mqtt/data/configuration.yaml

En bas du fichier de configuration, vous allez trouver une nouvelle section nommée devices. Indiquez le nom de chaque accessoire avec la clé friendly_name. Evitez de mettre des espaces dans le nom des accessoires pour éviter les problèmes de Topic avec MQTT.

devices:
  '0x00158d000155d2b7':
    friendly_name: 'Aqara_Switch'
    retain: false
  '0x00158d000159a218':
    friendly_name: 'PIR'
    retain: false
  '0x00158d000149a352':
    friendly_name: 'Porte'
    retain: false

Démarrer automatiquement le pont Zigbee2mqtt au démarrage de Raspbian avec systemctl

Jens Willmer, le développeur à l’origine du projet vient de publier le script nécessaire pour démarrer le pont au démarrage de Raspbian. En cas de coupure de courant ou de redémarrage du Raspberry Pi suite à une mise à jour, c’est plus pratique. Créez un nouveau fichier de configuration systemctl

sudo nano /etc/systemd/system/zigbee2mqtt.service

puis collez le code suivant

[Unit]
Description=zigbee2mqtt
After=network.target

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

[Install]
WantedBy=multi-user.target

Pour démarrer le pont manuellement, exécutez la commande suivante

sudo systemctl start zigbee2mqtt

Ensuite, vérifiez que tout fonctionne comme prévu avec la commande status

sudo systemctl status zigbee2mqtt

Le service est correctement démarré

● zigbee2mqtt.service - zigbee2mqtt
   Loaded: loaded (/etc/systemd/system/zigbee2mqtt.service; disabled; vendor preset: enabled)
   Active: active (running) since Tue 2018-09-11 11:45:24 UTC; 7s ago
 Main PID: 18086 (npm)
   CGroup: /system.slice/zigbee2mqtt.service
           ├─18086 npm
           ├─18095 /usr/bin/node /usr/lib/node_modules/npm/node_modules/update-notifier/check.js {"pkg":{"name":"npm","version":"5.6.0"}}
           ├─18109 sh -c node index.js
           └─18110 node index.js
sept. 11 11:45:24 raspberrypi systemd[1]: Started zigbee2mqtt.
sept. 11 11:45:29 raspberrypi npm[18086]: > zigbee2mqtt@0.1.0 start /opt/zigbee2mqtt
sept. 11 11:45:29 raspberrypi npm[18086]: > node index.js

On peut activer le démarrage automatique au prochain démarrage de Raspbian

sudo systemctl enable zigbee2mqtt.service

D’autres commandes utiles

  • sudo systemctl stop zigbee2mqtt, pour arrêter le service. Mise à jour, renommer les devices…
  • sudo journalctl -u zigbee2mqtt.service -f, permet d’afficher le journal d’exécution

Mise à jour de Zigbee2mqtt

La mise à jour n’est pas ce qu’il y a de plus simple mais il suffit de suivre à la lettre les commandes indiquées à Jens

# On arrête le service et on se place dans le répertoire d'installation du projet
sudo systemctl stop zigbee2mqtt
cd /opt/zigbee2mqtt # Backup de la configuration
cp -R data data-backup # Update
git checkout HEAD -- npm-shrinkwrap.json
git pull
rm -rf node_modules
npm install # On restaure la configuration
cp -R data-backup/* data
rm -rf data-backup # On re-démarre le service zigbee2mqtt
sudo systemctl start zigbee2mqtt

Un système d’alarme en 5′ chrono avec Node-RED et le plugin Homekit

En attendant un test complet avec Jeedom et Domoticz, voici une petite démo réalisée en quelques minutes avec Node-RED. On va créer un petit système d’alarme en utilisant Node-RED pour récupérer les états d’un contacteur de porte (pour la porte d’entrée) ainsi qu’un détecteur de présence qui surveille le salon.

Un noeud fonction permet d’extraire les données récupérées par le pont Zigbee. En fonction de ce que le capteur envoi, on pourra récupérer l’état et quelque fois le niveau et la tension de la batterie. On récupère en sortie du Node fonction 4 données utiles :

  1. L’état du capteur (booléen)
  2. Le niveau de batterie (0 à 100%)
  3. Un message que l’on pourra affiché sur le dashboard ou un message furtif
  4. La configuration pour un accessoire Homekit
msg1={};
msg2={};
msg3={};
msg4={};
msg1.payload = msg.payload.contact;
msg2.payload = msg.payload.battery;
if ( msg.payload.contact ) {
    msg3.payload = "La porte est fermée"
    msg4.payload = {
      ContactSensorState : 0
    }
} else {
    msg3.payload = "La porte est ouverte !"
    msg4.payload = {
      ContactSensorState : 1
    }
}

return [msg1,msg2,msg3,msg4];

Et voilà, en moins de 5 minutes sans avoir besoin d’installer un serveur domotique, vous pouvez développer un petit système d’alarme avec Node-RED

Le flow du projet à importer dans Node-RED

[{"id":"1c34793f.a5ff77","type":"mqtt in","z":"82ba45a3.b704f8","name":"PIR","topic":"zigbee2mqtt/PIR","qos":"2","broker":"12f512eb.9c8b5d","x":130,"y":100,"wires":[["f3413bab.47fab8"]]},{"id":"3a4b5967.b574c6","type":"function","z":"82ba45a3.b704f8","name":"Split","func":"msg1={};\nmsg2={};\nmsg3={};\nmsg4={};\nmsg1.payload = msg.payload.occupancy;\nmsg2.payload = msg.payload.battery;\n\nif ( msg.payload.occupancy ) {\n msg3.payload = \"Présence détectée !\"\n msg4.payload = {\n OccupancyDetected : 1\n }\n} else {\n msg3.payload = \"la pièce est vide\"\n msg4.payload = {\n OccupancyDetected : 0\n }\n}\n\n\nreturn [msg1,msg2,msg3,msg4];\n\n","outputs":4,"noerr":0,"x":380,"y":100,"wires":[["3b83fee7.b1a2b2"],["c23193fa.630a9"],["3a2d5f81.eee14"],["bc648e31.f6e3f"]],"inputLabels":["json"],"outputLabels":["Etat","NIveau batterie","Message notification","Etat Homekit"]},{"id":"f3413bab.47fab8","type":"json","z":"82ba45a3.b704f8","name":"","property":"payload","action":"","pretty":false,"x":250,"y":100,"wires":[["3a4b5967.b574c6"]]},{"id":"c23193fa.630a9","type":"ui_gauge","z":"82ba45a3.b704f8","name":"","group":"a76cdc5d.be91a","order":0,"width":"4","height":"4","gtype":"gage","title":"PIR","label":"%","format":"{{value}}","min":0,"max":"100","colors":["#b51220","#e6e600","#17ca0d"],"seg1":"","seg2":"","x":550,"y":120,"wires":[]},{"id":"2e447a4a.601166","type":"ui_gauge","z":"82ba45a3.b704f8","name":"","group":"a76cdc5d.be91a","order":0,"width":"4","height":"4","gtype":"gage","title":"Porte","label":"%","format":"{{value}}","min":0,"max":"100","colors":["#b51118","#e6e600","#32ca2b"],"seg1":"","seg2":"","x":530,"y":360,"wires":[]},{"id":"7cc7f334.508d0c","type":"mqtt in","z":"82ba45a3.b704f8","name":"Porte","topic":"zigbee2mqtt/Porte","qos":"2","broker":"12f512eb.9c8b5d","x":130,"y":340,"wires":[["1c94d73d.c53d69"]]},{"id":"b832b436.0ac2a8","type":"function","z":"82ba45a3.b704f8","name":"Split","func":"msg1={};\nmsg2={};\nmsg3={};\nmsg4={};\nmsg1.payload = msg.payload.contact;\nif ( msg.payload.contact ) {\n msg3.payload = \"La porte est fermée\"\n msg4.payload = {\n ContactSensorState : 0\n }\n} else {\n msg3.payload = \"La porte est ouverte !\"\n msg4.payload = {\n ContactSensorState : 1\n }\n}\n\nmsg2.payload = msg.payload.battery;\n\n\n\nreturn [msg1,msg2,msg3,msg4];","outputs":4,"noerr":0,"x":380,"y":340,"wires":[["a1d7b7f8.8f6458"],["2e447a4a.601166"],["f37b5a94.a19b98","a47a5db8.951a4"],["5d52112d.4c9f"]],"outputLabels":["Etat","Niveau batterie","Message Notification","Etat Homekit"]},{"id":"1c94d73d.c53d69","type":"json","z":"82ba45a3.b704f8","name":"","property":"payload","action":"","pretty":false,"x":250,"y":340,"wires":[["b832b436.0ac2a8"]]},{"id":"a1d7b7f8.8f6458","type":"ui_switch","z":"82ba45a3.b704f8","name":"","label":"Etat Porte","group":"80560196.e17ca","order":1,"width":0,"height":0,"passthru":true,"decouple":"false","topic":"","style":"","onvalue":"true","onvalueType":"bool","onicon":"","oncolor":"","offvalue":"false","offvalueType":"bool","officon":"","offcolor":"","x":540,"y":320,"wires":[[]]},{"id":"3b83fee7.b1a2b2","type":"ui_switch","z":"82ba45a3.b704f8","name":"","label":"Etat PIR","group":"80560196.e17ca","order":4,"width":0,"height":0,"passthru":true,"decouple":"false","topic":"","style":"","onvalue":"true","onvalueType":"bool","onicon":"","oncolor":"","offvalue":"false","offvalueType":"bool","officon":"","offcolor":"","x":560,"y":80,"wires":[[]]},{"id":"f37b5a94.a19b98","type":"ui_toast","z":"82ba45a3.b704f8","position":"top right","displayTime":"10","highlight":"","outputs":0,"ok":"OK","cancel":"","topic":"","name":"","x":570,"y":400,"wires":[]},{"id":"bc648e31.f6e3f","type":"homekit-service","z":"82ba45a3.b704f8","accessory":"be545a0c.987228","name":"PIR","serviceName":"OccupancySensor","x":550,"y":200,"wires":[[]]},{"id":"5d52112d.4c9f","type":"homekit-service","z":"82ba45a3.b704f8","accessory":"abf76c70.fbd85","name":"Mi Switch","serviceName":"ContactSensor","x":540,"y":480,"wires":[[]]},{"id":"a47a5db8.951a4","type":"ui_text","z":"82ba45a3.b704f8","group":"80560196.e17ca","order":2,"width":0,"height":0,"name":"","label":"Etat","format":"{{msg.payload}}","layout":"row-spread","x":530,"y":440,"wires":[]},{"id":"3a2d5f81.eee14","type":"ui_text","z":"82ba45a3.b704f8","group":"80560196.e17ca","order":3,"width":0,"height":0,"name":"","label":"Présence","format":"{{msg.payload}}","layout":"row-spread","x":560,"y":160,"wires":[]},{"id":"12f512eb.9c8b5d","type":"mqtt-broker","z":"","name":"MQTT Local","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"a76cdc5d.be91a","type":"ui_group","z":"","name":"Niveaux batteries","tab":"6355179e.0ee2e8","order":2,"disp":true,"width":"4","collapse":false},{"id":"80560196.e17ca","type":"ui_group","z":"","name":"Etats ","tab":"6355179e.0ee2e8","order":1,"disp":true,"width":"8","collapse":false},{"id":"be545a0c.987228","type":"homekit-accessory","z":"","accessoryName":"Xiaomi Mi Motion","pinCode":"111-11-111","port":"","manufacturer":"Xiaomi","model":"RTCGQ01LM","serialNo":"0x00158d000159a218","accessoryType":"11"},{"id":"abf76c70.fbd85","type":"homekit-accessory","z":"","accessoryName":"Xiaomi Mi Switch","pinCode":"111-11-111","port":"","manufacturer":"Xiaomi","model":"WXKG01LM","serialNo":"0x00158d000155d2b7","accessoryType":"6"},{"id":"6355179e.0ee2e8","type":"ui_tab","z":"","name":"Xiaomi Smart Home","icon":"dashboard"}]

Vous pouvez même intégrer vos accessoires Xiaomi Aqara et Mijia dans l’appli Maison si vous possédez un iPhone.

Les accessoires de sécurité peuvent envoyer des notifications dès qu’un événement est déclenché même si vous n’êtes pas chez vous (à condition d’avoir un pont Homekit à la maison, une Apple TV ou un iPad).

Pour en savoir plus, je vous conseille de lire ces tutoriels précédents :

Verrouiller la gateway

Une fois que tous les accessoires sont associés, il est plus prudent d’interdire l’association de nouveaux périphériques. Dans le fichier de configuration, passez la clé permit_join à false.

Boitier à imprimer en 3D

J’ai mis à disposition les fichiers STL d’un petit boitier à imprimer en 3D sur Thingiverse ici.

Comparaison de la portée de réception par rapport à la gateway officielle

Le sniffer USB CC2531 est avant tout est accessoire pour mettre au point les projets d’objets connectés. L’antenne Zigbee est gravée sur le PCB. Elle n’est pas forcément optimisée pour une réception à très longue portée. Pour en avoir le coeur net, j’ai fait un test comparatif (rapide) entre ma Gateway officielle et le Sniffer CC2531. Rien de bien scientifique dans ce test, j’ai simplement placé les deux gateway l’une à coté de l’autre puis vérifié la réception du bouton connecté dans les mêmes conditions (au même endroit).

Lieu Gateway Officielle Xiaomi Sniffer Zigbee CC2531
Chambre 1 Oui Oui
Chambre 2 Non Oui
Chambre 3 Non Non
Grenier Oui Oui
Grenier (très éloigné) Non Non

A ma grande surprise, le Sniffer reçoit aussi bien (pour ne pas dire mieux) les commandes du bouton connecté Mi Switch que la gateway officielle. C’est dommage qu’il n’existe pas de connecteur pour une antenne externe pour améliorer encore un peu plus la portée de réception. Mais vu le prix d’un Sniffer, ne vous privez pas de multiplier les ponts 🙂

Pour le moment les gammes Aqara et Mijia ne sont pas encore commercialisées dans la boutique officielle de Xiaomi France qui s’est ouverte le 25 mai dernier. En attendant, vous pourrez vous procurer vos accessoires directement en chine ou sur Amazon.

Page GitHub du projet : zigbee2mqtt 

Plugins officiels Domoticz et Home Assistant

Deux plugins ont été développés pour faciliter l’intégration sur Domoticz et Home Assistant. J’ai juste testé le plugin sous Domoticz. Suivez ce tutoriel qui explique en détail comment installer des plugins python sur Domoticz.

Une fois installé, vous disposez d’un nouveau type de matériel qui dispose d’un panneau de configuration. Il permet d’indiquer l’adresse IP du broker MQTT sur lequel récupérer les accessoires et d’activer / désactiver l’autorisation de jumelage.

Une fois configuré, tous vos accessoires déjà jumelés apparaissent automatiquement dans la liste des appareils. Il ne reste plus qu’à les ajouter comme n’importe quel autre accessoire domotique.

Comme vous pouvez le constater, le friendly name est correctement utilisé pour nommer les accessoires

Comment ajouter de nouveaux accessoires à Domoticz ?

Commencez par jumelé les nouveaux accessoires comme d’habitude.

Normalement, les nouveaux devices devraient être ajoutés automatiquement à la liste des accessoires disponibles mais si ce n’est pas le cas, ouvrez le plugin Zigbee2MQTT dans les appareils puis cliquez sur update (mettre à jour). Retournez voir la liste des accessoires, vous devriez y trouver les nouveaux appareils.

Mises à jour :

  • [17/04/2020] Kit de démarrage CC2531
  • [11/09/2018] comment démarrer le pont comme un service avec systemctl
  • [7/02/2019] installer le plugin Zigbee2MQTT pour Domoticz
  • [20/05/2019] Mise à jour vers le nouveau lien de téléchargement du firmware sur GitHub

Avez-vous aimé cet article ?