espeasy et MQTT import

Forum dédié aux bricolages d'objets connectés IOT et leurs communications avec DomoticZ :
- Remplacement de firmware des prises, modules relais ...
- Fabrication à base d'ESP8266, de NodeMCU, de Weemos et consorts ...
totof60
Messages : 373
Inscription : 29 avr. 2016, 09:31

espeasy et MQTT import

Message par totof60 »

Bonjour

Je souhaite récupérer des infos de domoticz sur un wemos et ultérieurement les afficher sur un écran .

Je n'arrive pas à paramétrer le MQTT import dans espeasy .

Mosquitto est fonctionnel sur mon Domoticz

Dans l'aide espeasy il y a : https://www.letscontrolit.com/wiki/inde ... QTT_Import

mais je ne sais pas quoi mettre dans : "MQTT topic"

La commande suivante

Code : Tout sélectionner

mosquitto_sub -h 192.168.0.22 -v -t "#"
dans un terminal me renvoie cela par exemple :

Image

Si quelqu'un peut m'aider merci
Domoticz V2022.2
sous Buster, Homebridge,RfLink
Raspberry pi3, Google home mini
plein de truc wifi !! de l'esp-01 jusque le nodemcu en passant par le wemos et même du DIY
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: espeasy et MQTT import

Message par Jeff »

Dans controller , protcol, tu choisis domoticz mqtt : 192.168.0.22 port 1883
Controller Suscribe : domoticz/out
Controller Publish: domoticz/in

Dans device : MQTT import
Topic 1 : domoticz/out/Congelateur/Temperature
Topic 2: domoticz/out/Cpu_usage/Energy
:)
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
totof60
Messages : 373
Inscription : 29 avr. 2016, 09:31

Re: espeasy et MQTT import

Message par totof60 »

Merci Jeff

C'est une des config que j'ai essayé mais ça ne fonctionne pas :(
Domoticz V2022.2
sous Buster, Homebridge,RfLink
Raspberry pi3, Google home mini
plein de truc wifi !! de l'esp-01 jusque le nodemcu en passant par le wemos et même du DIY
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: espeasy et MQTT import

Message par Jeff »

totof60 a écrit :Merci Jeff

C'est une des config que j'ai essayé mais ça ne fonctionne pas :(
J'ai le doute ! Marche très bien chez moi sur plusieurs esp avec différentes versions. Sinon utilises node-red et regarde ce qui est diffusé en MQTT, ca va grandement t'aider.
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: espeasy et MQTT import

Message par Jeff »

Jeff a écrit :
J'ai le doute ! Marche très bien chez moi sur plusieurs esp avec différentes versions. Sinon utilises node-red et regarde ce qui est diffusé en MQTT, ca va grandement t'aider.
Erreur de ma part, ce que je t'ai donné fonctionne car je le transforme via node-red !
Si ca t'intéresse je te donne le flow.

node-red.png
node-red.png (23.6 Kio) Consulté 12177 fois
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
totof60
Messages : 373
Inscription : 29 avr. 2016, 09:31

Re: espeasy et MQTT import

Message par totof60 »

Merci pour le retour ! ouf j'ai déjà plus beaucoup de cheveux et j’étais en train de me les arracher :roll:

Je vais donc étudier node red
Domoticz V2022.2
sous Buster, Homebridge,RfLink
Raspberry pi3, Google home mini
plein de truc wifi !! de l'esp-01 jusque le nodemcu en passant par le wemos et même du DIY
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: espeasy et MQTT import

Message par Jeff »

Node-red est de base sur raspberry en version graphique.
Node red + mqtt + domoticz, tout est ici
https://www.domoticz.com/wiki/MQTT
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
totof60
Messages : 373
Inscription : 29 avr. 2016, 09:31

Re: espeasy et MQTT import

Message par totof60 »

Node-red est installé , je tente de le comprendre !!

Et si j'ai bien compris il est possible de copier un flow déjà fait via le clipboard.
Si ca t'intéresse je te donne le flow.
Et donc oui cela m'intéresse.merci d'avance ;)
Domoticz V2022.2
sous Buster, Homebridge,RfLink
Raspberry pi3, Google home mini
plein de truc wifi !! de l'esp-01 jusque le nodemcu en passant par le wemos et même du DIY
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: espeasy et MQTT import

Message par Jeff »

Et voila :D
Flow domoticz extraction domoticz temp et humidité selon le nom

Code : Tout sélectionner

[{"id":"9f9e45d2.510ea8","type":"mqtt in","z":"d9f74ef.52e2cb","name":"","topic":"domoticz/out","qos":"2","broker":"f0e0a1f2.be3d4","x":150,"y":160,"wires":[["5d20ca17.3a8464"]]},{"id":"f0b8d329.751d4","type":"debug","z":"d9f74ef.52e2cb","name":"","active":true,"console":"false","complete":"payload","x":887,"y":154,"wires":[]},{"id":"5d20ca17.3a8464","type":"json","z":"d9f74ef.52e2cb","name":"","x":330,"y":160,"wires":[["c48eec15.0aa43","712c747e.24772c"]]},{"id":"da99a6a6.ea36f8","type":"mqtt out","z":"d9f74ef.52e2cb","name":"","topic":"","qos":"","retain":"","broker":"f0e0a1f2.be3d4","x":669,"y":153,"wires":[]},{"id":"c48eec15.0aa43","type":"function","z":"d9f74ef.52e2cb","name":"Temperature","func":"msg.topic = \"domoticz/out/\"+msg.payload.name+\"/Temperature\";\n\nif  (msg.payload.dtype === \"Temp + Humidity\") \n{\nmsg.payload = msg.payload.svalue1\nreturn msg;\n}\nelse if (msg.payload.dtype === \"Temp\")\n{\nmsg.payload = msg.payload.svalue1\nreturn msg;\n}\n\n\n","outputs":1,"noerr":0,"x":510,"y":100,"wires":[["da99a6a6.ea36f8","f0b8d329.751d4"]]},{"id":"7044a4f3.ca9f6c","type":"comment","z":"d9f74ef.52e2cb","name":"Temperature et humidity","info":"In this example the IDX in the switch node is \nrepublished to a topic named domoticz/out/[devicename]\nthe repub function translate value 1 to ON","x":199,"y":94,"wires":[]},{"id":"712c747e.24772c","type":"function","z":"d9f74ef.52e2cb","name":"Humidity","func":"msg.topic = \"domoticz/out/\"+msg.payload.name+\"/Humidity\";\n\nif  (msg.payload.dtype === \"Temp + Humidity\") \n{\nmsg.payload = msg.payload.svalue2\nreturn msg;\n}\n\n","outputs":1,"noerr":0,"x":500,"y":220,"wires":[["da99a6a6.ea36f8","f0b8d329.751d4"]]},{"id":"f0e0a1f2.be3d4","type":"mqtt-broker","z":"","broker":"192.168.1.200","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"15","cleansession":true,"willTopic":"","willQos":"0","willPayload":"","birthTopic":"","birthQos":"0","birthPayload":""}]
Tu as aussi les exemples de flow domoticz ici : https://www.domoticz.com/wiki/Flows

Bonus, dashboard node-red avec valeur issue de domoticz (node dashboard à installer), tu comprendras au bout d'un moment qu'il faut ajouter des nodes, récupérer des valeurs et les faire suivre suivant des topics sur Espeasy ou nextion...

Code : Tout sélectionner

[{"id":"383f9c95.7bf454","type":"ui_gauge","z":"99413ae3.745a28","name":"","group":"d5250cf6.8651","order":0,"width":0,"height":0,"gtype":"gage","title":"Air","label":"°C","format":"{{value}}","min":"-10","max":"40","colors":["#35bdff","#e6e600","#ca3838"],"seg1":"12","seg2":"28","x":653,"y":196,"wires":[]},{"id":"5c6e24a8.ac41dc","type":"mqtt in","z":"99413ae3.745a28","name":"","topic":"domoticz/out","qos":"2","broker":"66520baf.9e25f4","x":110,"y":140,"wires":[["cf0e68c.7398a98"]]},{"id":"339182a1.9169ce","type":"comment","z":"99413ae3.745a28","name":"Temp piscine","info":"In this example the IDX in the switch node is \nrepublished to a topic named domoticz/out/[devicename]\nthe repub function translate value 1 to ON","x":119,"y":74,"wires":[]},{"id":"cf0e68c.7398a98","type":"json","z":"99413ae3.745a28","name":"","x":293,"y":216,"wires":[["98655fd0.9216f","2de32e68.2418a2","f981712f.cf522"]]},{"id":"6dfb6c24.f05164","type":"debug","z":"99413ae3.745a28","name":"","active":false,"console":"false","complete":"payload","x":673,"y":136,"wires":[]},{"id":"1e89848e.798e6b","type":"http request","z":"99413ae3.745a28","name":"","method":"GET","ret":"txt","url":"192.168.1.200:8080/json.htm?type=devices&rid=138","tls":"","x":259,"y":551,"wires":[["4c97d95e.0bd918"]]},{"id":"53f3d5b6.b3544c","type":"inject","z":"99413ae3.745a28","name":"","topic":"","payload":"{\"type\":\"METER_VALUE\",\"update_time\":1450629539000,\"value\":36049.50,\"unit\":\"l\"}","payloadType":"str","repeat":"","crontab":"","once":false,"x":119,"y":551,"wires":[["1e89848e.798e6b"]]},{"id":"5b087f47.1e249","type":"debug","z":"99413ae3.745a28","name":"","active":true,"console":"true","complete":"payload","x":729,"y":551,"wires":[]},{"id":"4c97d95e.0bd918","type":"json","z":"99413ae3.745a28","name":"","x":419,"y":551,"wires":[["804c5da2.f4768"]]},{"id":"804c5da2.f4768","type":"function","z":"99413ae3.745a28","name":"data","func":"msg.payload = msg.payload.result[0].Data\nreturn msg;","outputs":1,"noerr":0,"x":559,"y":551,"wires":[["5b087f47.1e249"]]},{"id":"1571e71.046d819","type":"comment","z":"99413ae3.745a28","name":"Request http et send","info":"","x":169,"y":491,"wires":[]},{"id":"98655fd0.9216f","type":"function","z":"99413ae3.745a28","name":"Piscine","func":"msg.topic = \"domoticz/out/\"+msg.payload.name+\"/Temperature\";\n\nif  (msg.payload.name === \"Piscine\") \n{\nmsg.payload = msg.payload.svalue1\nreturn msg;\n}\n\n\n\n","outputs":1,"noerr":0,"x":436.333984375,"y":88,"wires":[["6dfb6c24.f05164","2d66a0d2.7cbab","d65ddbaf.023a68"]]},{"id":"2de32e68.2418a2","type":"function","z":"99413ae3.745a28","name":"Exterieure","func":"msg.topic = \"domoticz/out/\"+msg.payload.name+\"/Temperature\";\n\nif  (msg.payload.name === \"Exterieure\") \n{\nmsg.payload = msg.payload.svalue1\nreturn msg;\n}\n\n\n\n","outputs":1,"noerr":0,"x":449.333984375,"y":217.666015625,"wires":[["383f9c95.7bf454","b7a3959b.58b258","73cddff2.b96a2"]]},{"id":"2d66a0d2.7cbab","type":"ui_gauge","z":"99413ae3.745a28","name":"","group":"b6194925.fe8318","order":0,"width":0,"height":0,"gtype":"gage","title":"Eau","label":"°C","format":"{{value}}","min":0,"max":"35","colors":["#35bdff","#e6e600","#ca3838"],"seg1":"24","seg2":"30","x":653,"y":56,"wires":[]},{"id":"b7a3959b.58b258","type":"debug","z":"99413ae3.745a28","name":"","active":false,"console":"false","complete":"payload","x":673,"y":276,"wires":[]},{"id":"73cddff2.b96a2","type":"ui_chart","z":"99413ae3.745a28","name":"Graph air","group":"d5250cf6.8651","order":0,"width":0,"height":0,"label":"","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","ymin":"","ymax":"","removeOlder":"3","removeOlderPoints":"","removeOlderUnit":"86400","cutout":0,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"x":663,"y":236,"wires":[[],[]]},{"id":"d65ddbaf.023a68","type":"ui_chart","z":"99413ae3.745a28","name":"Graph piscine","group":"b6194925.fe8318","order":0,"width":0,"height":0,"label":"","chartType":"line","legend":"false","xformat":"HH:mm:ss","interpolate":"linear","nodata":"","ymin":"","ymax":"","removeOlder":"3","removeOlderPoints":"","removeOlderUnit":"86400","cutout":0,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"x":683,"y":96,"wires":[[],[]]},{"id":"7bef8627.34cf58","type":"debug","z":"99413ae3.745a28","name":"","active":true,"console":"false","complete":"payload","x":681,"y":400,"wires":[]},{"id":"f981712f.cf522","type":"function","z":"99413ae3.745a28","name":"Multi courbes","func":"if (msg.payload.name === \"Exterieure\") \n{\nvar msg1 = {};\nmsg1.payload = msg.payload.svalue1;\nmsg1.topic = 'Exterieure';\nreturn [msg1, null, null];\n}\n\nelse if (msg.payload.name === \"Piscine\")\n{\nvar msg2 = {};\nmsg2.payload = msg.payload.svalue1;\nmsg2.topic = 'Piscine';\nreturn [null, msg2, null];\n}\n\nelse if (msg.payload.name === \"Salle\")\n{\nvar msg3 = {};\nmsg3.payload = msg.payload.svalue1;\nmsg3.topic = 'Salle';\nreturn [null, null, msg3];\n}\n\n\n","outputs":"3","noerr":0,"x":452,"y":368,"wires":[["7bef8627.34cf58","747feffa.0d5b9"],["747feffa.0d5b9","7bef8627.34cf58"],["747feffa.0d5b9","7bef8627.34cf58"]]},{"id":"747feffa.0d5b9","type":"ui_chart","z":"99413ae3.745a28","name":"Temperature","group":"446027bd.237618","order":0,"width":"6","height":"8","label":"","chartType":"line","legend":"true","xformat":"HH:mm:ss","interpolate":"linear","nodata":"Waiting value !","ymin":"","ymax":"","removeOlder":"3","removeOlderPoints":"","removeOlderUnit":"86400","cutout":0,"colors":["#0080ff","#ff8000","#008000","#8000ff","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"x":681,"y":340,"wires":[[],[]]},{"id":"d5250cf6.8651","type":"ui_group","z":"","name":"Exterieure","tab":"b6df447b.f76ed8","order":2,"disp":true,"width":"6"},{"id":"66520baf.9e25f4","type":"mqtt-broker","z":"","broker":"192.168.1.200","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"15","cleansession":true,"willTopic":"","willQos":"0","willPayload":"","birthTopic":"","birthQos":"0","birthPayload":""},{"id":"b6194925.fe8318","type":"ui_group","z":"","name":"Piscine","tab":"b6df447b.f76ed8","order":3,"disp":true,"width":"6"},{"id":"446027bd.237618","type":"ui_group","z":"","name":"Piscine et exterieure","tab":"b6df447b.f76ed8","order":1,"disp":true,"width":"6"},{"id":"b6df447b.f76ed8","type":"ui_tab","z":"","name":"Extérieure et piscine","icon":"dashboard","order":2}]
Dashboard.png
Dashboard.png (22.57 Kio) Consulté 12080 fois
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
totof60
Messages : 373
Inscription : 29 avr. 2016, 09:31

Re: espeasy et MQTT import

Message par totof60 »

Génial merci


Par contre les remontées de température négative sembles ne pas se faire ?
Edit : si c'est bon !

j'ai cette erreur dans le debug :

Code : Tout sélectionner

msg : string[40]
"Unexpected token C in JSON at position 0"
Domoticz V2022.2
sous Buster, Homebridge,RfLink
Raspberry pi3, Google home mini
plein de truc wifi !! de l'esp-01 jusque le nodemcu en passant par le wemos et même du DIY
Répondre