Interfacer (en lecture/écriture) une chaudière De Dietrich (GTU 1205V par ex.) avec contrôleur Diematic 3 à Jeedom en filaire (via Modbus).
Attention : Cet article contient des instructions techniques dont un mauvais usage pourrait au mieux dérégler votre chaudière au pire la rendre inutilisable. Je ne pourrais en aucun cas être tenu responsable et n’assure aucun support technique. De même vous pourrez sans doute oublier votre garantie De Dietrich / contrat de maintenance.
Pour information cette chaudière n’est pas compatible avec les thermostats connectés type « Netatmo » etc, …


Prérequis
Connaissances
- Informatique général (dont dev PHP)
- Raspberry PI (installation et configuration générale; dont shell linux)
- Jeedom (installation et configuration générale)
- Electricité & électronique général (base)
Matériel
- Un raspberry Pi + alimentation + dongle Wifi
- Un câble Mini DIN: http://amzn.to/2h3a3Xt (Lien de sarakha63-domotique.fr)
- Un adaptateur Modbus RTC: http://amzn.to/2w8EH8u (Lien de sarakha63-domotique.fr)
Logiciel
- Jeedom (ma version actuelle: 4.0.25)
- Plugin Modbus RTU – en beta (5€)
Procédure
Branchement
Avertissement: Coupez l’interrupteur différentiel général avant toute intervention électrique!

- Couper votre câble Mini DIN sur une extrémité et connecter à l’adaptateur Modbus

- Connecter l’autre extrémité du câble à votre chaudière

Vérification liaison Modbus
Depuis Windows
- Brancher l’adaptateur Modbus à votre machine et recherchez son port COM. Note : Sous Windows 10 pas besoin d’installer de pilote
- Installer et lancer le logiciel « Modscan » (version démo) sur votre PC
- Faire Connection => Connect et suivre la configuration de l’image ci-dessous

- Vous devriez voir les valeurs du « Holding Register » évoluer (ne pas s’inquiéter des erreurs éventuelles) – Note: la chaudière a le Device ID « 10 »
Note: il existe un autre logiciel qui semble plus intuitif: Modbus Doctor
Depuis Linux
- Brancher l’adaptateur Modbus à votre machine et rechercher son port tty. Note : pas besoin d’installer de pilote normalement
- Installer https://github.com/epsilonrt/mbpoll (non conseillé sur le raspberry Pi du Jeedom; surcharge de dépendance inutile)
- Adapter la commande suivante pour afficher le réseau modbus (ne pas s’inquiéter des erreurs éventuelles)
mbpoll -a 10 -b 9600 -d 8 -s 1 -P none -t 3 -o 5.00 -l 100 -r 1 -c 100 /dev/ttyUSB0
Configuration Jeedom
- Brancher l’adaptateur RTU à votre Jeedom
- Installer le plugin « Modbus RTU » depuis le store Jeedom (payant)
- Lancer l’installation des dépendances
- Démarrer le Daémon

- Ajouter un nouvel équipement dans le plugin et configurer ainsi:
- Note: Sélectionner le « modèle » va écraser la zone « Communication »
- Note 2: Il est possible de se connecter à un linux distant également (non testé)

Voici la table des données que vous allez pouvoir récupérer et écrire à partir de maintenant:

Si l’écriture ne fonctionne pas voici des fichiers de remplacement:
https://blog.winckel.fr/wp-content/uploads/2020/03/modbusrtu_diff.zip
Source et remerciements :
Cette article s’inspire principalement des sources ci-dessous. L’objectif étant de faire « l’état de l’art » sur le sujet. Du hardware au software en passant par le contenu du BUS.
super boulot , merci beaucoup 😉
super boulot effectivement !
j’ai pu enfin comprendre pourquoi je n’arrivais pas à recevoir les infos de ma chaudière.
par contre je rencontre un problème avec l’écriture…
de base cela ne fonctionne pas. j’ai donc ouvert le fichier décrit, trouvé la fonction execute, modifié le code (sauvegardé l’ancien fichier,au cas où). et la réponse de jeedom est sans appel : modbusrtu does not exist ! (en rouge, en bandeau en haut, et le plugin n’apparait plus sur le dashboard)
bref, je ne vois pas trop où je me plante :/
j’ai essayé les coil/input/discrete/holding , rien n’y fait, je n’arrive pas à changer ma consigne .
Si toutefois quelqu’un saurait m’aider ca serait super 🙂
Bonjour Adrien,
Voici le fichier complet avec les 2 modifications https://blog.winckel.fr/wp-content/uploads/2019/11/modbusrtu.zip
=> Compatible avec la version « 2019-10-31 01:53:55 » du plugin modbusrtu officiel
Whoaaa, ça c’est de la réactivité !
Je vais tester ça et je viens faire un retour
Bonne journée 🙂
Bon bah rien à dire si ce n’est merci beaucoup ! Ça fonctionne impeccable !! Je vais enfin pouvoir créer mes scénarios de présence pour faire de vraies économies et avoir un meilleur confort pour la petite famille !
Merci encore pour la réactivité et le partage, et bonne journée
Ps : je vais quand même aller voir ce sur quoi je me suis planté dans la soirée, histoire de… 😅
Bonjour,
Merci pour ce super travail. J ai pu connecter ma chaudiere sans soucis et récupérer quelques infos. Par contre, j ai vu sur une de tes captures d ecran que tu avais calculé la consommation en fioul de ta chaudière (en litre), est ce que tu pourrais m en dire plus sur le calcul que tu as fait ?
Merci et bonne soirée
Bonjour Damien,
J’ai essayé différentes techniques.
La plus efficace dans mon cas étant celle-ci :
(durationBetween(#[Chaufferie][Chaudière (avancé)][Bruleur]#,1,Yesterday 00:00,Today 00:00))/60*4.1023384
En clair; je demande à Jeedom le temps d’allumage du bruleur pendant 24h et je multi par la consommation du bruleur.
Comment connaitre la consommation du bruleur ? Excellente question !
– En mode calcul: http://compteurfioul.free.fr/?/Consommation/consommation-fioul
– Sinon ma technique; j’utilise le temps de fonctionnement du bruleur entre 2 recharges de fioul… C’est hyper précis en pratique…
La valeur a le gros avantage d’être comparable d’un jour à l’autre (si T° intérieur constante de 00h00 à 00h00). Permettant de jouer sur les réglages et constater les changements de consommation. A noter que je ne regarde pas l’évolution de la consommation mais plutôt le résultat du calcul suivant:
conso/20-(Temperature extérieur moyenne sur la même période)
Permettant de lisser en fonction de la température extérieure. Ce n’est pas parfait mais permet de comparer des choux et des choux.
Autre avantage; plus besoin de contrôler la citerne de fioul. Jeedom connais à chaque instant le niveau de combustible.
David
Bonjour
merci pour ce tuto, je possede une autre chaudiere que celle presenté.
j ai aussi un port modbus est ce que cela fonctionnerais aussi ou c est vraiment compatiblque qu avec dedietrich..??
merci d avance
julien
Bonjour,
C’est compatible. Il faut juste trouver la messagerie de votre chaudière + le « device id »
Bon courage 🙂
Merci pour le retour le soucis c est que su ma chaudière je n est que deux connecteur au lieu des 3 sur votre tuto.
J en conclu que celui qui me manque c est le gnd dans ce cas je pourrais le brancher sur le gnd du raspberry.
après plusieurs recherche sur le net je devrais brancher la chaudière sur les bornes tr+ et tr- si je me trompe n hésitez pas a me le dire.
j ai de très bonne connaissance en elec et automatisme en création de programme mais hélas pas en communication modbus.
merci d avance et encore merci pour votre tuto.
julien
Je ne suis pas non plus un grand utilisateur du modbus (plutôt CAN et Ethernet). Mais si que 2 fils je dirais TR+ et TR- effectivement.
Personnellement j’ai procédé par essai erreur jusqu’à trouver le bon câblage (laborieux…). Il n’y a pas de risque à mon sens (si basse tension évidemment…); au pire le dongle USB ne captera que du bruit impossible à interpréter.
Bonne chance 🙂
Bonjour
merci pour la réponse rapide après plusieurs essais j ai déjà réussi a connecter le convertisseur sur le pc et savoir sur quel port il était configuré. j ai les leds qui s allume bien des lors que la connexion a la chaudière est faite.
le seul problème c est que je ne trouve pas l id de la chaudière auriez vous une idée ou un logiciel pour trouver cette id… après plusieurs recherche je suis tjrs au même point meme avec modscan.
Merci d avance
cordialement
julien
Bonjour,
Via la commande linux il est possible de faire un script pour « scanner » le réseau.
Dans ce genre là :
boucle {variable} de 0 => 100 (par exemple)
(
mbpoll -a {VARIABLE} -b 9600 -d 8 -s 1 -P none -t 3 -o 5.00 -l 100 -r 1 -c 1 /dev/ttyUSB0
)
Après analyse du résultat. Voir si l’une des requête ne fini par en timeout.
Bonne journée
bonjour
Merci, je n y avais pas pensé. apres essais je suis bien en time out surtoute les id
Bonjour,
Mauvais branchement ? Problème avec la masse ?
Vous êtes sûre que c’est du modbus ? Quel est votre modèle de chaudière ?
Bonne journée
Bonjour
j ai essayé plusieurs branchements en croisé les leds d envoi et reception clignotent bien.
Je pense pas le problème a la masse car je suis bien connecté.
Il s agit d une chaudière chappee moorrea hte gbi gbvi 35
sur la doc technique il parle d adressage pour les télécommandes mais cela ne fonctionne pas non plus.
Merci d avance
cordialement julien
Apres quelques Echanges avec le constructeur de la chaudiere le bornier bus correspond juste a la communication entre le thermostat et la chaudiere ce n est pas vraiment du modbus.
Fausse joie mdr.
si toute fois vous auriez une solution je suis tjr preneur car le service technique ne connais peut etre pas vraiment le modbus ou ce que je souhaitais faire
merci pour votre aide.
Bonjour Julien
Vos tests semblent indiquer que le service technique dit vrai.
Après rapide recherche. Les chaudières CHAPPEE semble compatible Modbus mais moyennant un accessoire. Voir ici: https://www.chappee.com/content/download/28757/file/8%20HP%202019.pdf. Maintenant c’est plutôt de la chaudière collective. Voir si cela est adaptable à votre modèle.
Il est question d’un accessoire « Module protocole Modbus ». Problème la chose pointe à 170€.
Bon courage.
David
Bonjour
Je vous remercie pour votre aide.
J avais vu cet accessoire mais mais je me suis dis qu avec un peux de chance j arriverais a lire et écrire sans.
malheureusement je vais être obliger d acheter sa si je veux pouvoir communiquer avec jeedom.
Si je comprend bien ce boitier ces comme un convertisseur de données de la chaudiere vers modbus pour pouvoir interagir via une GTC.
Merci d avance pour votre aide.
cordialement
julien
Bonjour,
Bravo pour ce super boulot….
Pour ma chaudière De Dietrich MC25LP équipé d’un Diamatic3, je suis sur le point d’acheter un module USR-W610 wifi (car pas d’Ethernet près de la chaudière) et un câble avec sa prise Din 4 broches.
Etant équipé d’un serveur domotique HOME ASSISTANT équipé WIFI, je pense récupéré les infos de la chaudière via le module USR-W610 wifi. Ca doit le faire….
Ma question est : en parallèle de tout ceci, est-ce que je peux installer un thermostat (NEST V3) dans le salon pour réguler la température du salon en plus de ma domotique? Afin d’avoir tout de même un pilotage de la température.
D’avance merci pour votre aide. Cdlt.
Patric
Bonjour,
A ma connaissance la Diematic 3 n’est pas compatible avec NEST et autres thermostats intelligents. De mémoire c’est une histoire d’absence de contact sec et de compatibilité OpenTherm.
https://support.google.com/googlenest/answer/9251766?hl=fr&ref_topic=9361965
Je cite: « Certains systèmes propriétaires s’appuient sur un protocole de communication en série pour contrôler le thermostat. Ces protocoles sont propres au fabricant du système et ne sont pas standards. Seuls les thermostats du même fabricant sont alors compatibles. ».
=> C’est notre cas ici avec la sonde d’ambiance propriétaire
Après une fois l’accès au Modbus établi c’est possible d’aller créer des choses (contact sec, …).
[CHAUDIERE] > MODBUS > Jeedom (ou autre) < I/O Raspberry PI < NEST Bon y du travail pour le pondre le truc... Me concernant je préfère laisser l'électronique standard piloter la chaudière et simplement piloter les températures cibles via le Modbus. Tenez moi au courant si vous trouvez une technique ! Bonne journée. David
Bonjour,
J’ai quelques soucis avec les commandes « action ».
J’arrive bien a faire des action pour modifier la consigne, mais la modification du mode de chauffage ou du mode d’ECS.
Pour le mode de chauffage (adresse 17), en info, jeedom me renvoie un nombre que j’ai pu faire correspondre, par test, aux valeurs suivantes : 8 = AUTO / 33 = vacances.
J’ai essayé de faire une commande pour passer de AUTO a vacances, mais je n’arrive pas a injecter la valeur.
Une idée?
Bonjour,
Le problème que j’avais concernais les chiffre à virgules; je doute que cela est lié mais avez vous essayé les fichiers de remplacement que je propose ? (Note: le problème est potentiellement corrigé sur la version du plugin actuelle – la chose fonctionnant chez moi je ne touche plus ! 😛 -)
De but en blanc si la commande fonctionne pour une autre action de même type (nombre entier) j’essayerais de faire la modification via un utilitaire externe à Jeedom type Modscan. Cela permettrais d’écarter les potentiels problèmes de configuration.
Il est possible que votre chaudière se contente de diffuser cette information sans permettre de la modifier. Me concernant je n’arrive pas non plus à passer en « mode hiver » depuis le Modbus. Mais dans mon cas je n’ai même pas l’information en lecture (du moins pas trouvé).
David
Bonsoir a tous,
Je possède une chaudière DeDietrich MCA35 et je cherche désespérément a me connecter au Modbus
Pour cela j’ai acheté une insterface USR W610 (Wifi)
Je l’ai connecté et réglé le port com en 9600,n,8,1, le working mode en « STA » et le data transfert mode en « Modbus TCP Modbus RTU »
Je peux me connecter sur l’interface d’administration du W610 sans problème via son IP
En revanche je ne recois aucune infos…
Le voyant « RXD » clignote uniquement quand j’allume la chaudière pendant environ 5 secondes et ensuite plus rien.
Si quelqu’un avait d’une idée d’où j’aurais pu merdé.
D’avance merci
Bonjour,
Si le RX ne clignote pas; peut-être que la chaudière est en attente d’ordre sur le modbus pour émettre ?
Bonjour,
Un grand merci pour cet article de blog, que je vais essayer de suivre pas à pas.
J’ai cependant une question : j’ai un petit budget donc j’ai trouvé sur Leboncoin un adaptateur USB vers série de ce modèle, mais il ne présente pas les ports + et – évoqués sur l’article :
https://www.amazon.fr/AZDelivery-Adaptateur-FT232RL-Arduino-Adapter/dp/B01N9RZK6I/ref=mp_s_a_1_6?dchild=1&keywords=Ftdi+Usb+Ttl&qid=1611746817&sr=8-6
A votre avis je peux l’utiliser pour effectuer le branchement ? Et si oui comment ?
Un grand merci pour votre aide
PS : je compte raccorder ça sur un Raspberry Pi sur lequel je ferai tourner Jeedom