-
Notifications
You must be signed in to change notification settings - Fork 1
Domotiser sa chaudière Viessmann
Projet en cours d'étude.
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...)
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...
- 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.
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. J'ai finalement opté pour le circuit présenté sur la page OpenV pour le Raspberry PI
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
https://github.com/openv/openv/wiki/Die-Optolink-Schnittstelle
- point de départ: Forum Domoticz: https://easydomoticz.com/forum/viewtopic.php?f=17&t=1955
- infos techniques openv Wiki sur GitHub:
- les différentes protocoles
- les montages hardware
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 ?)
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
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).
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
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.