Page 1 sur 6

[Resolu] Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 26 sept. 2025, 14:13
par Speedycool
Bonjour,
J'ai un Domoticz sur RPI5 en version 2025.1 - Le RPI5 est en Bookworm , à jour ( Debian 12 64 bits).
Les données de ce domoticz sont émises sur MQTT via "MQTT Client Gateway with LAN Interface", et ca fonctionne bien
Ces données sont récupérées sur un autre Domoticz sur RPI3 ( version 2025.1 ) sur Bullseye ( Debian 11 32 bits ) .
Les données sont récupérées via MQTTMAPPER. le fichier de configuration est correct, et les dispositifs ont bien été créé automatiquement sur RPI3 via MQTTMAPPER.
La plupart des dispositifs reçoivent bien leur données, et les graphiques sont bien identiques à ceux du RPI5, SAUF 3 dispositifs, définis en "Général, managed counter". Pour ceux-ci, aucune donnée n'est enregistrée dans les tables. Il n'y aucun message d'erreur.
J'ai vérifié via MQTT-explorer que les données transmises étaient correctes.
J'ai également vérifié que les caractéristiques des dispositifs en cause étaient conformes aux originaux sur RPI5.
J'ai vérifié via le mode debug que les données récupérées par MQTTMAPPER étaient correctes.

Alors que les définitions, les données, sont correctes, comment est-il possible que la mise à jour ne se fasse pas ?

Si vous avez une idée .....

Merci d'avance

Modération

Publié : 26 sept. 2025, 21:03
par Keros
Sujet déplacé dans la section dédiée à MQTT.

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 27 sept. 2025, 10:37
par Speedycool
Bonjour,
Ok, et merci.
Comme je ne pense pas que le problème soit MQTT, j'avais penché plutôt pour un problème d'interprétation de Domoticz.
Mais pas de problème !
Je cherche toujours la cause du problème.

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 02 oct. 2025, 22:21
par Flying Domotic
Est-il possible de voir la partie du fichier de configuration de MqttMapper concernée, ainsi qu'un exemple de topic MQTT ?

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 05 oct. 2025, 10:32
par Speedycool
Bonjour,
Voici les éléments demandés :

Pour MQTTMapper.json :

Code : Tout sélectionner

    },
    "Gaz - conso KWH": {
        "topic": "domoticz/RPI5/out/Gaz - conso KWH",
        "type": "243", "subtype": "33","switchtype": "0",
        "mapping": {"item": "svalue1","digits": 1}
    },
    "Gaz - Conso M3": {
        "topic": "domoticz/RPI5/out/Gaz - Conso M3",
        "type": "243", "subtype": "33","switchtype": "1",
        "mapping": {"item": "svalue1","digits": 1}
    },
    "Electricite - Linky": {
        "topic": "domoticz/RPI5/out/Electricite - Linky",
        "type": "243", "subtype": "33","switchtype": "0",
        "mapping": {"item": "svalue1;svalue2","digits": 1}
    },
Voici les topics correspondants, vus de MQTT explorer :

Code : Tout sélectionner

{
	"Battery" : 255,
	"LastUpdate" : "2025-10-04 09:00:01",
	"RSSI" : 12,
	"description" : "",
	"dtype" : "General",
	"hwid" : "12",
	"id" : "82047",
	"idx" : 47,
	"name" : "Gaz - Conso M3",
	"nvalue" : 0,
	"org_hwid" : "12",
	"stype" : "Managed Counter",
	"svalue1" : "187.0",
	"unit" : 1
}

{
	"Battery" : 255,
	"LastUpdate" : "2025-10-04 09:00:01",
	"RSSI" : 12,
	"description" : "",
	"dtype" : "General",
	"hwid" : "12",
	"id" : "82046",
	"idx" : 46,
	"name" : "Gaz - conso KWH",
	"nvalue" : 0,
	"org_hwid" : "12",
	"stype" : "Managed Counter",
	"svalue1" : "20880.0",
	"unit" : 1
}
{
	"Battery" : 255,
	"LastUpdate" : "2025-10-04 14:05:02",
	"RSSI" : 12,
	"description" : "",
	"dtype" : "General",
	"hwid" : "14",
	"id" : "82067",
	"idx" : 67,
	"name" : "Electricite - Linky",
	"nvalue" : 0,
	"org_hwid" : "14",
	"stype" : "Managed Counter",
	"svalue1" : "7989.0",
	"svalue2" : "2025-10-03",
	"unit" : 1
}
J'ai d'autres éléments ( météo, Zigate, ......) qui sont parfaitement transmis du RPI5 ( source ) vers RPI3.

Merci d'avance de votre aide.

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 05 oct. 2025, 10:59
par Flying Domotic
Et on trouve bien des topics "domoticz/RPI5/out/Gaz - conso KWH", "domoticz/RPI5/out/Gaz - Conso M3" et "domoticz/RPI5/out/Electricite - Linky" dans MqttExplorer ?

Parce qu'avec la configuration par défaut, on serait plutôt sur "domoticz/out".

De même, MqttMapper est bien connecté sur le serveur MQTT qui reçoit ces messages (on a vite fait d'attendre le messages sur ma mauvaise machine, expérience vécue ;-) ?

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 05 oct. 2025, 15:58
par Speedycool
Oui, ce sont bien les topics émis par domoticz sur RPI5, visibles dans MQTT explorer, et exploités par MQTTMapper sur RPI3.

je n'ai qu'un serveur MQTT, installé sur RPI5.

J'ai ainsi une douzaine de types de données échangées selon la même structure de topics dans le sens RPI5-->RPI3, et quelques-unes dans le sens RPI3-->Rpi5.

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 05 oct. 2025, 22:19
par Flying Domotic
Est-il possible d'activer la trace "debug" en mode "verbose" dans MqttMapper et me dire si MqttMapper reçoit bien les messages ?

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 06 oct. 2025, 14:06
par Speedycool
MqttMapper reçoit bien les messages :

Code : Tout sélectionner

2025-10-06 13:56:16.564 (MQ - Gaz - conso KWH) Updating device from 1027370:'20760' to have values 20760:'20760'.
2025-10-06 13:56:32.610 (MQ - Gaz - Conso M3) Updating device from 9371:'186' to have values 186:'186'.
2025-10-06 13:56:50.150 (MQ - Electricite - Linky) Updating device from 0:'6226;2025-10-05' to have values 0:'6226;2025-10-05'.
Voici les messages correspondants dans MQTT explorer :

Code : Tout sélectionner

{
	"Battery" : 255,
	"LastUpdate" : "2025-10-06 14:00:02",
	"RSSI" : 12,
	"description" : "",
	"dtype" : "General",
	"hwid" : "12",
	"id" : "82046",
	"idx" : 46,
	"name" : "Gaz - conso KWH",
	"nvalue" : 0,
	"org_hwid" : "12",
	"stype" : "Managed Counter",
	"svalue1" : "20760.0",
	"unit" : 1
}
{
	"Battery" : 255,
	"LastUpdate" : "2025-10-06 14:00:02",
	"RSSI" : 12,
	"description" : "",
	"dtype" : "General",
	"hwid" : "12",
	"id" : "82047",
	"idx" : 47,
	"name" : "Gaz - Conso M3",
	"nvalue" : 0,
	"org_hwid" : "12",
	"stype" : "Managed Counter",
	"svalue1" : "186.0",
	"unit" : 1
}
{
	"Battery" : 255,
	"LastUpdate" : "2025-10-06 13:51:30",
	"RSSI" : 12,
	"description" : "",
	"dtype" : "General",
	"hwid" : "14",
	"id" : "82067",
	"idx" : 67,
	"name" : "Electricite - Linky",
	"nvalue" : 0,
	"org_hwid" : "14",
	"stype" : "Managed Counter",
	"svalue1" : "6226.0",
	"svalue2" : "2025-10-05",
	"unit" : 1
}
Ces données sont mises à jour une fois par jour, sur RPI5 via un script Python, qui s'appuie sur des fichiers excel téléchargés sur les sites de GRDF et SICAE ( électricité ). Les données sont correctement mises à jour sur RPI5 : les graphiques sont tout à fait corrects, et les valeurs sont bien celles que j'ai dans les fichiers excel d'origine.

Autre information : si je modifie les Stype à 28 ( counter ) au lieu de 33 ( Managed counter ), les données sont enegistrées dans la BDD de domoticz RPI3, mais ça ne correspond pas aux données d'origine ( les données s'ajoutent jour par jour ).

Je me base sur ce document : https://wiki.domoticz.com/Developing_a_ ... vice_Types ( paragraphe Available Device Types )

Re: Données provenant de MQTT non mises à jour dans la BDD domoticz

Publié : 06 oct. 2025, 18:22
par Flying Domotic
Le type 28 correspond à "Incremental counter", il est conçu pour additionner la valeur envoyée au total déjà existant. En gros, il faut l'utiliser si on n'a pas de compteur, mais juste une impulsion à chaque fois qu'on vient de consommer une unité d'un "truc".

Par contre, le log semble indiquer que MqttMapper envoie la modification à Domoticz (la ligne de log précède celle de l'update de Domoticz). Si Domoticz ne modifie pas la valeur, c'est probablement qu'il ne l'apprécie pas trop. Dans le cas du Linky, c'est certainement parce qu'il attend juste une valeur de compteur, mais pas de date (";2025-10-05" dans l'exemple donné).

Du coup, le problème pourrait venir de ce que les dispositifs d'origine sur le RPI-5 ne soient pas de type 243/33/0 (ou 1) ? Il est important D'avoir exactement le même type de dispositif des 2 côtes, si on veut transférer des valeurs sans avoir à les convertir/assembler/découper (ici, dans le cas du Linky, virer la date)

Pour info, il y a un autre plug-in qui permet de copier des dispositifs d'une instance de Domoticz vers une autre instance de Domoticz sans trop se poser de question à https://github.com/FlyingDomotic/domoti ... ync-plugin.