Page 1 sur 2

Paramétrage sonde de température

Publié : 10 nov. 2024, 20:00
par DiliaK
Bonsoir,

Si ce topic est mal placé, j'en suis désolé.

J'ai un souci d'implémentation de ce plugin.

Je fais remonter de mosquitto des infos comme cela :

Code : Tout sélectionner

{
"Sonde temp extérieure":{
"Temp_ext": 14.1
},
"Sonde temp intérieure":{
"Temp_int": 21
},
"Sonde hum extérieure":{
"Hum_ext": 80
},
"Sonde hum intérieure":{
"Hum_int": 57
},
"Sonde 1":{
"Temp_1": 28
},
"Sonde 2":{
"Temp_2": 41
}
}

Mon routeur Modbus vers MQTT est configuré avec ça :

Code : Tout sélectionner

{
"Sonde temp extérieure":{
"Temp_ext": "Temp-ext"
},
"Sonde temp intérieure":{
"Temp_int":"Temp-int"
},
"Sonde hum extérieure":{
"Hum_ext":"Hum-ext"
},
"Sonde hum intérieure":{
"Hum_int":"Hum-int"
},
"Sonde 1":{
"Temp_1":"Temp-1"
},
"Sonde 2":{
"Temp_2":"Temp-2"
}
}
A savoir que la config n'est pas très souple et ne permet guère mieux.

J'utilise cette conf dans le plugin pour tests :

Code : Tout sélectionner

"Beed room temperature": {
        "topic": "domoticz/in",
        "type": "80", "subtype": "5", "switchtype": "0",
        "mapping": {"item": "Temp_ext"}
    }
Avec pour objectif d'avoir plusieurs widgets par la suite, bien sûr.

Si je n'utilise qu'une seule sonde dans mon routeur {"Temp_ext": "Temp-ext"} par exemple, ça fonctionne nickel mais si je mets toutes les sondes c'est le bazar et rien ne fonctionne.

Je pensais simplement que le mapping prenait la valeur suivant le trigger programmé donc ne risquait pas de se planter....

En fait, je ne sais pas aller chercher les infos correctement. J'ai pourtant épluché la doc de long en large...
A savoir que je n'ai qu'un topic ou tout est dedans...

Merci de votre aide !

Re: Plugin MQTT de FlyingDomotic

Publié : 10 nov. 2024, 21:07
par Flying Domotic
Bonsoir,
C'est la bonne place !
Le souci vient du topic qui ne semble pas le bon. Ce n'est pas "domoticz/in" (qui contient toutes les demandes de changement envoyées à Domoticz par MQTT), mais plus le topic qui contient le json avec toutes les valeurs.

Re: Plugin MQTT de FlyingDomotic

Publié : 10 nov. 2024, 22:09
par DiliaK
Hello,

Merci pour la réponse. En fait, j'envoie ça dans Mosquitto :
Topic.PNG
Topic.PNG (24.27 Kio) Consulté 3522 fois

Re: Plugin MQTT de FlyingDomotic

Publié : 10 nov. 2024, 22:23
par Flying Domotic
Il faut changer "domoticz/in" par un truc du genre "modbusRouter" dans le paramétrage et dans la config MqttMapper.

Pour info, le log de Domoticz doit être rempli de messages du genre "je comprends pas ce qu'on m'envoie dans domoticz/in vu que le format n'est pas le bon" -)

Accessoirement, un rapport toutes les 10 secondes, c'est plutôt agressif. Toutes les minutes (voire 2 ou 5) est en général suffisant.

Re: Plugin MQTT de FlyingDomotic

Publié : 10 nov. 2024, 23:13
par DiliaK
OK, je teste, merci :)

Re: Plugin MQTT de FlyingDomotic

Publié : 10 nov. 2024, 23:24
par DiliaK
Effectivement, c'est plus clean mais :

Il faut que je travaille la "key" mais pas encore saisi comment :P
2024-11-10 23:22:50.504 AAAAA: Pushing 'ReadEvent' on to queue
2024-11-10 23:22:50.505 AAAAA: Processing 'ReadEvent' message
2024-11-10 23:22:50.505 AAAAA: Received 261 bytes of data
2024-11-10 23:22:50.505 AAAAA: 30 82 02 00 0a 6d 71 74 74 6d 61 70 70 65 72 7b 22 53 6f 6e 0®..mqttmapper{"Son
2024-11-10 23:22:50.505 AAAAA: 64 65 20 74 65 6d 70 20 65 78 74 c3 a9 72 69 65 75 72 65 22 de.temp.extérieure"
2024-11-10 23:22:50.505 AAAAA: 3a 7b 22 54 65 6d 70 5f 65 78 74 22 3a 31 33 2e 36 30 30 30 :{"Temp_ext":13.6000
2024-11-10 23:22:50.505 AAAAA: 30 30 7d 2c 22 53 6f 6e 64 65 20 74 65 6d 70 20 69 6e 74 c3 00},"Sonde.temp.int�
2024-11-10 23:22:50.505 AAAAA: a9 72 69 65 75 72 65 22 3a 7b 22 54 65 6d 70 5f 69 6e 74 22 ɲieure":{"Temp_int"
2024-11-10 23:22:50.506 AAAAA: 3a 31 32 7d 2c 22 53 6f 6e 64 65 20 68 75 6d 20 65 78 74 c3 :12},"Sonde.hum.ext�
2024-11-10 23:22:50.506 AAAAA: a9 72 69 65 75 72 65 22 3a 7b 22 48 75 6d 5f 65 78 74 22 3a ɲieure":{"Hum_ext":
2024-11-10 23:22:50.506 AAAAA: 37 36 2e 35 30 30 30 30 30 7d 2c 22 53 6f 6e 64 65 20 68 75 76.500000},"Sonde.hu
2024-11-10 23:22:50.506 AAAAA: 6d 20 69 6e 74 c3 a9 72 69 65 75 72 65 22 3a 7b 22 48 75 6d m.intérieure":{"Hum
2024-11-10 23:22:50.506 AAAAA: 5f 69 6e 74 22 3a 37 34 2e 38 30 30 30 30 30 7d 2c 22 53 6f _int":74.800000},"So
2024-11-10 23:22:50.506 AAAAA: 6e 64 65 20 31 22 3a 7b 22 54 65 6d 70 5f 31 22 3a 32 32 2e nde.1":{"Temp_1":22.
2024-11-10 23:22:50.506 AAAAA: 38 30 30 30 30 30 7d 2c 22 53 6f 6e 64 65 20 32 22 3a 7b 22 800000},"Sonde.2":{"
2024-11-10 23:22:50.506 AAAAA: 54 65 6d 70 5f 32 22 3a 36 32 38 30 2e 35 30 30 30 30 30 7d Temp_2":6280.500000}
2024-11-10 23:22:50.506 AAAAA: 7d .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. }
2024-11-10 23:22:50.506 AAAAA: Pushing 'onMessageCallback' on to queue
2024-11-10 23:22:50.506 AAAAA: Processing 'onMessageCallback' message
2024-11-10 23:22:50.506 AAAAA: Calling message handler 'onMessage' on 'module' type object.
2024-11-10 23:22:50.507 Error: AAAAA: Can't find device key mqttmapper

Re: Plugin MQTT de FlyingDomotic

Publié : 10 nov. 2024, 23:50
par Flying Domotic
Je peux avoir une copie du fichier de configuration JSON de MqttMapper ?

Re: Plugin MQTT de FlyingDomotic

Publié : 11 nov. 2024, 00:06
par DiliaK
Avec le log au dessus, c'était comme ça :

Code : Tout sélectionner

"Température sonde extérieure": {
        "topic": "mqttmapper",
        "type": "80", "subtype": "5", "switchtype": "0",
        "mapping": {"item": "Temp_ext"}
    }
J'en suis là :

Code : Tout sélectionner

"Température sonde extérieure": {
        "topic": "mqttmapper",
        "type": "80", "subtype": "5", "switchtype": "0",
        "key": "Tempext",
        "mapping": {"item": "Temp_ext"}
    }
Pareil, trouve toujours pas la key "Tempext" cette fois.

Je vais tester en supprimant les espaces et les caractères accentués dans le titre mais je ne pense pas que ce soit ça.

Re: Plugin MQTT de FlyingDomotic

Publié : 11 nov. 2024, 00:54
par DiliaK
Désolé, j'avais oublié de réactiver la découverte des widgets...

Log :
2024-11-11 00:52:43.915 AAAAA: Pushing 'ReadEvent' on to queue
2024-11-11 00:52:43.945 AAAAA: Processing 'ReadEvent' message
2024-11-11 00:52:43.945 AAAAA: Received 270 bytes of data
2024-11-11 00:52:43.945 AAAAA: 30 8b 02 00 0c 6d 6f 64 62 75 73 72 6f 75 74 65 72 7b 22 53 0ˮ..modbusrouter{"S
2024-11-11 00:52:43.945 AAAAA: 6f 6e 64 65 20 74 65 6d 70 20 65 78 74 c3 a9 72 69 65 75 72 onde.temp.extérieur
2024-11-11 00:52:43.945 AAAAA: 65 22 3a 7b 22 54 65 6d 70 5f 65 78 74 22 3a 31 33 2e 34 30 e":{"Temp_ext":13.40
2024-11-11 00:52:43.945 AAAAA: 30 30 30 30 7d 2c 22 53 6f 6e 64 65 20 74 65 6d 70 20 69 6e 0000},"Sonde.temp.in
2024-11-11 00:52:43.945 AAAAA: 74 c3 a9 72 69 65 75 72 65 22 3a 7b 22 54 65 6d 70 5f 69 6e térieure":{"Temp_in
2024-11-11 00:52:43.945 AAAAA: 74 22 3a 31 31 2e 38 30 30 30 30 30 7d 2c 22 53 6f 6e 64 65 t":11.800000},"Sonde
2024-11-11 00:52:43.945 AAAAA: 20 68 75 6d 20 65 78 74 c3 a9 72 69 65 75 72 65 22 3a 7b 22 .hum.extérieure":{"
2024-11-11 00:52:43.945 AAAAA: 48 75 6d 5f 65 78 74 22 3a 37 36 2e 35 30 30 30 30 30 7d 2c Hum_ext":76.500000},
2024-11-11 00:52:43.946 AAAAA: 22 53 6f 6e 64 65 20 68 75 6d 20 69 6e 74 c3 a9 72 69 65 75 "Sonde.hum.intérieu
2024-11-11 00:52:43.946 AAAAA: 72 65 22 3a 7b 22 48 75 6d 5f 69 6e 74 22 3a 37 34 2e 38 30 re":{"Hum_int":74.80
2024-11-11 00:52:43.946 AAAAA: 30 30 30 30 7d 2c 22 53 6f 6e 64 65 20 31 22 3a 7b 22 54 65 0000},"Sonde.1":{"Te
2024-11-11 00:52:43.946 AAAAA: 6d 70 5f 31 22 3a 32 33 2e 34 30 30 30 30 30 7d 2c 22 53 6f mp_1":23.400000},"So
2024-11-11 00:52:43.946 AAAAA: 6e 64 65 20 32 22 3a 7b 22 54 65 6d 70 5f 32 22 3a 36 32 38 nde.2":{"Temp_2":628
2024-11-11 00:52:43.946 AAAAA: 30 2e 35 30 30 30 30 30 7d 7d .. .. .. .. .. .. .. .. .. .. 0.500000}}
2024-11-11 00:52:43.946 AAAAA: Pushing 'onMessageCallback' on to queue
2024-11-11 00:52:43.946 AAAAA: Processing 'onMessageCallback' message
2024-11-11 00:52:43.946 AAAAA: Calling message handler 'onMessage' on 'module' type object.
2024-11-11 00:52:43.947 AAAAA: onMQTTPublish found modbusrouter, Device 'AAAAA - Température sonde extérieure', message '{'Sonde temp extérieure': {'Temp_ext': 13.4}, 'Sonde temp intérieure': {'Temp_int': 11.8}, 'Sonde hum extérieure': {'Hum_ext': 76.5}, 'Sonde hum intérieure': {'Hum_int': 74.8}, 'Sonde 1': {'Temp_1': 23.4}, 'Sonde 2': {'Temp_2': 6280.5}}'
2024-11-11 00:52:43.947 Error: AAAAA: Can't find >Temp_ext< in >{'Sonde temp extérieure': {'Temp_ext': 13.4}, 'Sonde temp intérieure': {'Temp_int': 11.8}, 'Sonde hum extérieure': {'Hum_ext': 76.5}, 'Sonde hum intérieure': {'Hum_int': 74.8}, 'Sonde 1': {'Temp_1': 23.4}, 'Sonde 2': {'Temp_2': 6280.5}}<
2024-11-11 00:52:43.947 AAAAA: Setting AAAAA - Température sonde extérieure to ><
2024-11-11 00:52:43.947 (AAAAA - Température sonde extérieure) Updating device from 0:'' to have values 0:''.

Re: Plugin MQTT de FlyingDomotic

Publié : 11 nov. 2024, 00:57
par Flying Domotic
Il est préférable d'indiquer "modbusRouter" dans le topic de Mosquitto, plutôt que "MqttMqpper". C'est sur cette modif que mon fichier de configuration est basé.

Une fois la modif faite, essayer avec ça :

Code : Tout sélectionner

{
	"Sonde extérieure": {
		"topic": "modbusRouter",
		"key": "sonde ext",
		"type": "82", "subtype": "1", "switchtype": "0",
		"initial": {"svalue": "0;0;0"},
		"mapping": {"item": "Sonde temp extérieure/Temp_ext;Sonde hum extérieure/Hum_ext;~0"}
	},
	"Sonde intérieure": {
		"topic": "modbusRouter",
		"key": "sonde int",
		"type": "82", "subtype": "1", "switchtype": "0",
		"initial": {"svalue": "0;0;0"},
		"mapping": {"item": "Sonde temp intérieure/Temp_int;Sonde hum intérieure/Hum_int;~0"}
	},
	"Sonde 1": {
		"topic": "modbusRouter",
		"key": "sonde 1",
		"type": "80", "subtype": "5", "switchtype": "0",
		"mapping": {"item": "Sonde 1/Temp_1"}
	},
	"Sonde 2": {
		"topic": "modbusRouter",
		"key": "sonde 2",
		"type": "80", "subtype": "5", "switchtype": "0",
		"mapping": {"item": "Sonde 2/Temp_2"}
	}
}
Pour info, on peut mettre n'importe quoi dans key, tant que c'est unique pour l'ensemble du fichier de configuration. On n'en a besoin que si on a 2 dispositifs (ou plus) avec le même topic.

Ce qui manquait, c'est l'extraction des items avec l'arborescence. C'est à cause du paramétrage un peu compliqué dans Mosquitto.

Ne pas oublier de détruire les anciens dispositifs.