
Depuis le 31 janvier 2022, la version stable 2022.1 de Domoticz est disponible. Au delà des correctifs et des améliorations diverses, il y a une véritable évolution dans la philosophie et l’architecture de ce logiciel.
Un nouveau composant illustre particulièrement la nouvelle orientation de Domoticz, c’est MQTT Auto Discovery Client Gateway with LAN interface. Avec ce nouveau « matériel » (c’est plutôt du logiciel – mais cela illustre bien l’évolution), Domoticz est libéré de la gestion du matériel (au sens hard) et va gérer un protocole (Message Queuing Telemetry Transport) indépendant de la technologie utilisée par les dispositifs (zwave, zigbee, bluetooth, 433Mhz, wifi, etc.).

Sur ce schéma qui vient du wiki de Domoticz, on voit bien la couche MQTT avec Mosquitto comme broker qui vient s’intercaler entre Domoticz et les différents réseaux de dispositifs.
Tout ce qui existe déjà va continuer à fonctionner, les dongles zWave, les RFLink ou RFXcom, les Gateway Xiaomi, etc. mais progressivement il sera sage de migrer vers la nouvelle cible avec MQTT. On aura un Domoticz plus léger (donc plus rapide) et qui va cesser de se complexifier à chaque nouveau protocole.
Pour gérer les protocoles zwave, zigbee, etc. on va utiliser de nouveaux logiciels zwavejs2mqtt, zigbee2mqtt, etc. qui sont indépendants de Domoticz et sont souvent aussi utilisés par d’autres produits de domotique (homeassistant, openhab, etc.). C’est une grande partie de la domotique open source qui migre vers ce type d’architecture, toujours sans utilisation du Cloud pour la performance et la confidentialité des données 🙂

Certains, comme OpenMQTTGateway ci-dessus sont multi protocoles et d’autres comme zigbee2mqtt ou zwavejs2mqtt sont dédiés à un seul protocole.
Comme vous avez pu le lire dans le blog, j’ai déjà migré vers MQTT pour certains de mes dispositifs en 433Mhz lorsque j’ai installé Tasmota sur un Sonoff RF et pour tous mes dispositifs Zigbee avec Zigbee2mqtt. Je viens de supprimer le plugin que j’utilisais pour zigbee2mqtt (devenu inutile) et d’installer MQTT AD à la place, il me servira aussi pour remplacer openzwave (vivement !). Je teste actuellement OpenMQTTGateway sur un ESP32 pour le bluetooth que je vais pouvoir positionner presque n’importe où dans la maison (j’ai juste besoin d’une prise).
En effet, un des atouts de cette architecture est la possibilité de répartir les composants puisque MQTT est transporté sur le réseau IP. Le sonoff qui gère mes télécommandes 433Mhz est à côté de ma box alimenté via un port usb de cette box. Zigbee2mqtt peut être installé sur mon Pi Bureautique toujours sous tension alors que mon Pi Domoticz se trouve dans mon grenier- and so on !
Quelques trucs pour migrer du plugin domoticz zigbee2mqtt à MQTT AD :
- Dans Zigbee2mqtt, donner un nom simplifié à chaque dispositif existant, c’est ce nom qui va être utilisé pour nommer les futurs dispositifs créés automatiquement par MQTT AD dans Domoticz
- Toujours dans Zigbee2mqtt, dans Paramètres/Principal cocher Home Assitant integration et Permit join comme ci-dessous.

Paramètres dans Zigbee2mqtt - Ne pas supprimer le plugin domoticz zigbee2mqtt mais simplement le désactiver.
- Renommer les dispositifs déjà ajoutés via le plugin domoticz zigbee2mqtt (en rajoutant -old par exemple)
- Donner au plugin MQTT AD un nom spécifique au protocole à gérer pour une évolution plus facile lorsqu’on rajoutera zwavejs2mqtt.

- Après l’activation de MQTT AD, les nouveaux dispositifs vont apparaître progressivement dans Domoticz (directement dans les onglets ad hoc sans avoir à passer par « ajouter un dispositif »), ce sera un peu plus long pour ceux qui sont sur batterie.
- Les dispositifs lqi (qualité du lien zigbee entre le dispositif et le coordinateur – de 0 à 255) et batterie ne sont plus ajoutés dans Domoticz (c’est plutôt mieux car plus épuré) les informations sont accessibles via l’interface de Zigbee2mqtt.

- On voit dans la log de Zigbee2mqtt les remontées mqtt vers le topic homeassitant

Pour ceux qui n’utilisent pas le plugin domoticz zigbee2mqtt, il faut juste activer le plugin MQTT AD et le logiciel Zigbee2mqtt.
