Skip to content

Domotiser sa chaudière Viessmann

Nouknouk edited this page Jul 3, 2020 · 26 revisions

Projet en cours d'étude.

Le principe:

Les chaudières Viessmann ont (parfois derrière un cache) deux LEDs 'classiques', qui contiennent également un émetteur et un récepteur infra-rouge. Ces deux LEDs IR sont une interface série permettant au chauffagiste de dialoguer avec la chaudière

  • pour récupérer des informations
  • pour envoyer des ordres (régler la température, mode éco, etc...)

LEDs interface IR viessmann

L'encoche en forme de 'V' au milieu permet au chauffagiste de 'caler' son appareil bien en face des LEDs pour communiquer avec la chaudière.

Au moyen d'un montage électronique simple, composé de deux LEDs infrarouges (éméteur/récepteur), on peut fabriquer un 'modem' qui permettra de dialoguer avec la chaudière (dans les deux sens).

La liste des valeurs et commandes disponibles dépend de la chaudière, mais ça peut aller loin dans le détail (logique: c'est prévu pour les chauffagistes). Exemples:

  • Température extérieure, chaudière, du réservoir de stockage, de départ, de retour, des gaz d'échappement, ...
  • Niveau actuel, performance actuelle, Panne du brûleur, Le brûleur démarre
  • Consommation de gaz, Heures de fonctionnement
  • Pompe de charge du réservoir de stockage, Pompe de circulation
  • Position du mélangeur, du papillon
  • Performances réelles de l'usine
  • Mode de fonctionnement: Économie, Party mode,
  • Phase de chauffage par minuterie, Dégagement d'eau chaude, Pompe de circuit de chauffage
  • Activation de la salle, Température cible de la pièce
  • Risque de gel,
  • etc...

L'objectif (à terme):

  • Pouvoir commander à distance la chaudière.
  • Avoir dans mon soft domotique des remontées d'informations telles-que l'illustration ci-après (forum Bricozone) ... mais à ma sauce, intégrées dans mon écosystème domotique.
  • A terme pouvoir supprimer complètement le panneau de contrôle de la chaudière situé l'entrée, et le remplacer par un écran tactile qui donnera accès au contrôle de la chaudière mais aussi plus largement à l'ensemble de la domotique de la maison.

Exemple trouvé sur le forum Bricozone:

dashboard vitocontrol domoticz

Ce que j'ai fait (pour le moment):

Je suis parti sur un montage à base d'ESP32 qui sera lui-même relié en USB à mon serveur domotique.

Le montage présenté sur OpenV pour un ESP32 ne fonctionnait pas bien chez moi ; l'absence de transistor entre les broches de l'ESP32 et les LEDs pousse le circuit dans ses retranchements, au delà de sa capacité normale, le rendant instable.

J'ai finalement opté pour le circuit présenté sur la page OpenV pour le Raspberry PI, parfaitement compatible avec l'ESP32.

montage ESP32 sur Viessmann

Après un premier prototype, j'ai réalisé le petit circuit, que j'ai intégré dans un boitier fait sur mesure et imprimé en 3D.

!Montage de l'ESP32 dans boitier sur la chaudière

Infos techniques:

https://github.com/openv/openv/wiki/Die-Optolink-Schnittstelle

documentation:

Les composants électroniques:

En plus de quelques résistances et transistors standards, la communication est assurée par deux LEDs infrarouges (une pour la réception, l'autre pour l'émission). Les LEDs infrarouges sont des modèles particuliers (longueur d'onde, ...).

  • SFH 309 FA pour le récepteur
  • SFH 487 - 2 pour l'émetteur (trouvé sur eBay, mais produit en fin de vie, remplaçable par un Vishay TSHA4401 ?)

les modèles de chaudières

doc: https://github.com/openv/openv/wiki/Ger%C3%A4te

Différents protocoles en fonction du modèle de chaudière: GW, KW1, KW2, 300. Les adresses et le protocole diffèrent selon l'appareil.

forme, contenu des trames, etc...: https://github.com/openv/openv/wiki/Protokolle

Chaque famille de contrôle possède un ID d'appareil de deux octets. Dans de nombreux contrôleurs, cet ID de périphérique peut être interrogé à l'aide de l'adresse 0xf8.

Étant donné que les appareils d'une famille peuvent différer en termes de configuration matérielle et de version logicielle, un ID d'appareil étendu peut être nécessaire pour une identification précise.

Cet ID d'appareil étendu comprend généralement 4 octets à partir de l'adresse 0xf8 et se compose comme suit:

Type d'appareil: 0xf8, 0xf9
Révision matérielle: 0xfa
Index logiciel: 0xfb

Le protocole KW

Ce protocole est pris en charge par les commandes Vitotronic de la série KW. Il est similaire à l'ancien protocole GWG, mais prend également en charge les adresses d'une longueur de 2 octets.

Pour autant que l'on sache, tous les contrôleurs qui prennent en charge le protocole 300 sont rétrocompatibles avec le protocole KW et peuvent également être adressés via ce dernier protocole.

Interface série (Optolink):

4800 8 E 2, sans protocole de prise de contact

Communication (toutes les valeurs en hexadécimal)

  • Vitotronic envoie périodiquement 0x05
  • Immédiatement (xx msec) après avoir reçu 0x05, un télégramme peut être envoyé et recevra une réponse immédiatement.
  • Avant qu'un autre télégramme puisse être envoyé, vous devez attendre le prochain 0x05.
  • Au lieu d'attendre le prochain 0x05, le prochain télégramme peut également être envoyé immédiatement après avoir reçu une réponse. Le télégramme ne doit pas être initié avec 0x01 (logiquement parlant, 0x01 n'est donc pas un octet de début de télégramme mais un ACK à 0x05).

Détails du télégramme:

01 octet de début de télégramme (ACK sur 0x05) F7 Type F7 = lecture F4 = écriture XX XX adresse XX Nombre d'octets demandés

Exemple de requête de température extérieure (V200KW2)

TX: 01 TX: F7 55 25 02 RX: 5B 00> température extérieure 9,1 ° C

Exemple de requête ID d'appareil

TX: 01 TX: F7 00 F8 02 RX: 20 98 0x2098 = V200KW2

Réglez le circuit de chauffage A1 en mode économie (V200KW2)

TX: 01 TX: F4 23 02 01 01 RX: 00 = confirmation OK

liste des valeurs

Pour chaque protocole + modèle de chaudière, on a une liste des valeurs qu'on peut récupérer et des commandes qu'on peut exécuter.

doc: https://github.com/openv/openv/wiki/Adressen

Clone this wiki locally