design Domoticz + MQTT

L'intégration des autres protocoles dans Domoticz
mqu
Messages : 14
Inscription : 14 mai 2018, 18:20

design Domoticz + MQTT

Messagepar mqu » 14 mai 2018, 18:37

bonjour,
je suis à l'origine d'une passerelle entre une chaudière Viessman et le protocole MQTT. J'ai choisi ce protocole parce qu'il me semble que c'est le protocole standardisé des IOT.

Suite à cela, j'ai reçu une demande de support pour connecter ce logiciel à Domoticz. J'ai constaté que la façon dont le protocole MQTT est utilisé sur Domoticz est hors-norme :
  • inversion de la notion de client serveur : Domoticz devrait se comporter et se configurer en client par rapport au protocole MQTT ; et du coup, aucune nécessité de mettre en place un paramétrage spécifique à chaque instance de Domoticz
  • au lieu de cela, il faut dans la gateway MQTT donner des ID liées à Domoticz qui sont par définition très variable
  • au lieu de cela, il suffirait de configurer Domoticz avec pour paramétrage le serveur (broker) MQTT, et les différents topics (chemins) liés à chaque sensors

J'ai ouvert un ticket pour remonter ce problème. Je n'ai malheureusement pas réussi à me faire comprendre et entendre. Je n'ai pas envie de passer ma vie a discuter avec un autiste. Je vous laisse le soin de le faire, si vous avez le sentiment que cela en vaut la peine, à défaut, je considérerai que c'est bien moi l'autiste (désolé pour eux). Je considère que c'est toute la communauté Domoticz qui est pénalisée. Par ailleurs, préconisez d'utiliser Node-Red alors qu'on ne veut pas surcharger le traffic réseau en envoyant du JSON plutôt que d'envoyer des trames réseau individuelles : laissez moi sourire ...

je vous encourage donc a intervenir sur le ticket.

si via l'API, on sait récupérer une liste d'ID liées à des devices, en fonction d'un nom, ou d'une chaine de caractère, je veux bien un passer un peu de temps pour automatiser la chose.

liens :
- ticket github : https://github.com/domoticz/domoticz/issues/2387
- passerelle viessman-mqtt : https://github.com/mqu/viessmann-mqtt
- matériel supportant nativement MQTT : https://ubidots.com/docs/devices

bien cordialement, Marc.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


mqu
Messages : 14
Inscription : 14 mai 2018, 18:20

Re: design Domoticz + MQTT

Messagepar mqu » 14 mai 2018, 18:48

pour info, le protocole MQTT est aux objets de l'Internet (IOT), ce que la base des registres est au système Windows.
Dernière édition par mqu le 15 mai 2018, 10:29, édité 1 fois.

Antori91
Messages : 84
Inscription : 06 mai 2017, 19:11

Re: design Domoticz + MQTT

Messagepar Antori91 » 14 mai 2018, 19:53

Bonjour,
La commande JSON http://AdresseIpDomoticz/json.htm?type=devices permet de récupérer tous les devices définis dans Domoticz. Si pour votre interface, vous avez défini une nomenclature des noms des devices correspondants, c'est alors un jeu d'enfant de récupérer les numéros de device (qui sont effectivement variables d'une instance client à une autre).
Image

mqu
Messages : 14
Inscription : 14 mai 2018, 18:20

Re: design Domoticz + MQTT

Messagepar mqu » 14 mai 2018, 20:26

description du protocole MQTT :

  • MQTT est un protocole réseau basé sur TCP/IP, et donc en mode connecté
  • il fonctionne en mode client-serveur ; c'est une sorte de bus logiciel
  • le serveur est aussi appelé broker
  • un ou plusieurs client peuvent se connecter au serveur sans se connaître mutuellement
  • les clients ne sont pas nécessairement sur le même réseau informatique ; le réseau peut être filaire ou sans fil
  • traditionnellement, les données sont organisées de façon hiérarchique
  • le chemin d'accès à une variable est appelé "topic"
  • par exemple, on pourra trouver la température d'une chaudière à cette adresse (topic) : /maison/chaudiere/senseur/temp/interieur/ ; soit en anglais : /home/heater/sensor/temp/indoor
  • un ou plusieurs clients peuvent s'abonner (subscribe) à un topic déterminé : /home/heater/sensor/temp/indoor ou à tous les capteurs de température : /home/#/sensor/temp/#
  • modifier une valeur se fait par la primitive "publish".
  • il n'est pas nécessaire de faire de polling sur les valeurs : MQTT est notifiant.
  • il est possible d'implémenter un client MQTT sur certains micro-controleur (Ardiuno, ESP8266)
  • un serveur MQTT fonctionne aisément sur un Raspberry PI.
  • il existe des librairies implémentant le protocole MQTT dans pratiquement tous les langages : C, C++, Ruby, Python, Java, NodeJS, perl, ...
  • il existe plusieurs implémentation natives du serveur et du client
  • sur plateforme Android, on peut trouver des petits dashboard qui offrent des fonctionalités moins avancées que Domoticz, mais suffisantes pour controler un objet compatible MQTT. Le dashboard (tableau de bord) se programme en quelques clics
  • des offres cloud existent afin de fournir : dashbord interractif et historique. Malheureusement, ces offres sont souvent payanes

best regards.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Antori91
Messages : 84
Inscription : 06 mai 2017, 19:11

Re: design Domoticz + MQTT

Messagepar Antori91 » 14 mai 2018, 22:22

Ouais, mais quel rapport entre les généralités de votre dernier post et le sujet. MQTT, on connait. On ne vous a pas attendu...Voyez ici pour un exemple personnel : http://www.domoticz.com/forum/viewtopic ... 38&t=21608
Pour être moins dans l'exemple personnel, beaucoup ici utilisent avec Domoticz le progiciel ESP Easy qui supporte MQTT.
So, c'est quoi le sujet? ou votre problème? A priori que votre code non développé pour Domoticz s'appuie sur une hiérarchie de topics quand Domoticz n'en utilise que deux en faisant ensuite la différence à l'intérieur des topics via les numéros de device embarqués dans des commandes à la syntaxe JSON...
Je pense que l'histoire de Domoticz a commencé avant la vôtre (votre passerelle) et par ailleurs Domoticz n'est pas seulement lié à MQTT. Remettre en cause les milliers de développements MQTT dans le monde pour Domoticz par un changement drastique du design ne serait pas un choix des développeurs que je trouverai judicieux. Si vous voulez faire quelque chose de générique pour Domoticz, développez un plugin. Si vous ne voulez rien changer à votre code et que ce soit Domoticz qui s'adapte, je crois que vous rêvez...N'étant qu'un simple utilisateur de Domoticz, opinion qui n'engage que moi...
Image

mqu
Messages : 14
Inscription : 14 mai 2018, 18:20

Re: design Domoticz + MQTT

Messagepar mqu » 15 mai 2018, 09:30

bonjour et merci pour la réponse.

  • je viens de découvrir qu'il existe des firmware ESP qui sont spécifiquement développés pour s'interfacer avec Domoticz, via MQTT ; c'est plutôt une bonne chose et cela simplifie largement la mise en place de capteurs compatibles avec cet environnement
  • cependant, il doit y avoir des capteurs dont on ne sait pas changer le firmware, dans ce cas, il est plus problématique de les coupler avec Domoticz
  • il est sans doute aussi possible de trouver des capteurs dont un peut changer le firmware, mais pour lesquels il n'y a pas eu de développement spécifique pour DomoticZ
  • la solution Node-Red est sans doute assez générique, mais manifestement pas si facile a utiliser ; c'est un pis-aller. Elle nécessite de développer une double compétence.
  • je ne viens aucunement en donneur de leçon et je ne prétends pas connaitre mieux que d'autre le protocole MQTT ; je me suis permis de faire un rappel des fonctionnalités qui me semblent importantes.
  • je constate que la passerelle MQTT-Viessman que j'ai réalisée fonctionne nativement avec plusieurs soft sans avoir à écrire une seule ligne de code, juste par configuration (Jeedom, Home-Assitant)
  • j'ai reçu par mail une demande de support pour intégrer mon développement (GW Viessman-MQTT) sur Domoticz ; je me permets donc de proposer une piste générique. Pour satisfaire cette demande, je crois que je vais être contraint d'installer Domoticz sur l'une de mes Rasp et passer plusieurs heures à configurer et développer la GW. Sachant que cela n'est pas nécessaire pour d'autre solutions de home-automation, on peut sans doute comprendre que cela ... me gave. On peut préciser que le demandeur n'a sans doute pas la compétence requise pour effectuer lui même cette opération pourtant assez simple. Cela peut se faire dans n'importe quel langage supportant MQTT ; cela doit même pouvoir se faire avec Node-Red solution proposée par la team Domoticz. Il n'y arrive pas, que voulez-vous que je vous dise ... Qu'il passe sur une autre solution de Home-Automation ?
  • le coup du logiciel libre je connais ; je suis dedans depuis plus de 25 ans. Je ne vais pas contribuer à l'ensemble des softs de la planète. Je fais une proposition sur le site de dev de Domoticz et je me retrouve en face d'une personne qui ne veut rien entendre et ferme mon ticket en non résolu et se permet de supprimer tout ou partie de mes commentaires.

cordialement, Marc.

mqu
Messages : 14
Inscription : 14 mai 2018, 18:20

Re: design Domoticz + MQTT

Messagepar mqu » 15 mai 2018, 13:26

lien : comment se passer de MQTT et s'appuyer uniquement sur vtalk : http://easydomoticz.com/forum/viewtopic.php?f=17&t=1955

Panoramix
Messages : 2
Inscription : 17 mai 2018, 20:10

Re: design Domoticz + MQTT

Messagepar Panoramix » 17 mai 2018, 21:23

Bonsoir,
je viens de rejoindre domoticz, car je recherche un système open source ET standard.
Je viens d'essayer Gladys avec MQTT , NO COMMENT !
Après avoir installé Domoticz me voici ici :
-Je constate vu ce billet que certain membre de ce blog, jette des années d'expérience un 'Standard propriétaire domoticz' pour le MQTT à moi de flasher, m'adapter, etc, ...
Hé bien moi je vais rester dans le STANDARD open source car je suis une personne ouverte désirant ne pas recréer la poudre, mais être compatible avec un standard qui sera exploitable par tous.

bravo pour le travail réaliser par les 'VRAIS' de Domoticz et qui désirent le faire avancer...

Dans l'attente de l'intégration de MQTT je vous laisse, je vais réinitialiser ma config de base Raspian + Mosquitto et continuer mes recherches avant de me lancer dans un développement.

Courage à tous

Doume
Messages : 477
Inscription : 28 déc. 2014, 10:27
Localisation : Nord (59)
Contact :

Re: design Domoticz + MQTT

Messagepar Doume » 18 mai 2018, 09:34

Panoramix a écrit :bravo pour le travail réaliser par les 'VRAIS' de Domoticz et qui désirent le faire avancer...



C'est quoi, pour toi, les "VRAIS" ? Ceux qui acceptent de se plier à tes specs ?

MQTT ne définit en rien le contenu des messages : C'est seulement devenu un standard de 'transport' entre processus.
Domoticz dans son état actuel est totalement conforme à MQTT, et le supporte : La preuve, des interfaces comme ESPEasy, Wifinfo, Tasmota, ESPURNA, etc... dialoguent très bien avec Domoticz !

mqu
Messages : 14
Inscription : 14 mai 2018, 18:20

Re: design Domoticz + MQTT

Messagepar mqu » 18 mai 2018, 23:07

Doume a écrit :
MQTT ne définit en rien le contenu des messages : C'est seulement devenu un standard de 'transport' entre processus.
Domoticz dans son état actuel est totalement conforme à MQTT, et le supporte : La preuve, des interfaces comme ESPEasy, Wifinfo, Tasmota, ESPURNA, etc... dialoguent très bien avec Domoticz !


je pense que Panoramix est seul contre tous. Mais je le rejoins. La façon dont le protocole MQTT est utilisé au sein de Domoticz est vraiment atypique. En réalisant quelques acrobaties, on arrive a faire fonctionner. Pour cela, il faut :
- soit modifier un firmware natif MQTT,
- soit écrire un adaptateur MQTT-Domoticz.

en clair : Domoticz 1/ encapsule les datas dans du json, ne gère pas les topics mais utilise 2 topics permettant de créer une sorte de bus logiciel.

je suis actuellement en train d'écrire un adaptateur ruby-mqtt-domoticz. J'essaie de faire en sorte qu'il soit le plus générique possible. Dans les commentaires des "sensors", il suffira d'inscrire les topics associés a chaque sensors. Ensuite, via l'API, je pense pouvoir rendre la chose assez automatique. Plus nécessaire de se prendre la tete avec les "idx". De même le json sera bien encapsulé.

idéalement, si les dev Domoticz voulaient bien mettre une option "json" à true ou false dans l'implémentation MQTT et prendre en compte un topic par sensor, ca serait cool. Mais bon, on peut toujours rêver.

bien cordialement.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.



Revenir vers « Les autres protocoles : Enocean,X10 et les cartes piface.razberry »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité