NEWS
Viessman Vitocal CAN zu MQTT
-
M mcm1957 verschob dieses Thema von ...nicht in offiziellem Repo am
-
[UPDATE v1.01] ESP32 HCV Adapter: Vitocal jetzt per MQTT steuern (DID-Schreibzugriff) & CAN-Filter
Hallo zusammen,
es gibt ein großes Update auf Version v1.0.0 für den ESP32-basierten HCV/CAN-Adapter! Neben dem gewohnten Auslesen könnt ihr eure Heizung ab sofort auch aktiv über ioBroker steuern.
🚀 Die wichtigsten Neuerungen:
- Aktive Steuerung über MQTT (DID Schreibzugriff)
Ihr könnt Datenpunkte (DIDs) jetzt direkt per JSON-Payload beschreiben – beispielsweise den Raumtemperatur-Sollwert.
- MQTT Topic zum Senden:
HCV/writeDid - Beispiel-Payload (Sollwert Mischerkreis 1 auf 20,0 °C setzen):
{"did": 424, "value": 200}(Hinweis: Der Wert
200entspricht 20,0 °C wegen desFloat_10-Faktors in dervcalobj.did).- Rückmeldung: Der Adapter sendet das Ergebnis direkt an
HCV/writeDidResponse({"status": "success"}oder{"status": "error"}).
- Integriertes CAN-Bus Logging mit Filter
Das Logging kann nun auf bestimmte CAN-IDs gefiltert werden. Das macht das Analysieren eigener Datenpunkte und Erweitern von MQTT-Topics extrem einfach, ohne den Log zuzumüllen. - Neues DID-Handling & UI-Anpassungen
Stabileres Parsing der Parameter und überarbeitete Darstellung der Hilfetexte im Web-Interface.
🧩 Beispiel für ioBroker (JavaScript / Block)
Wenn ihr den Datenpunkt
mqtt.0.HCV.writeDid(oder euer entsprechendes Topic) beschreiben wollt, könnt ihr das ganz einfach per JavaScript erledigen:// Beispiel: Raumtemperatur-Sollwert auf 20.5 °C setzen (did: 424, Float_10 -> value: 205) function setVitocalTemp(targetTemp) { let payload = { did: 424, value: Math.round(targetTemp * 10) }; // Sendet das JSON an das Steuerungs-Topic sendTo('mqtt.0', 'sendMessage2Client', { topic: 'HCV/writeDid', message: JSON.stringify(payload) }); } // Aufruf: 20.5 °C senden setVitocalTemp(20.5);💡 Tipp: Falls ihr mit dem MQTT-Adapter im "Client/Server"-Modus arbeitet, könnt ihr das JSON auch einfach als String direkt in den Datenpunkt
mqtt.0.HCV.writeDidschreiben.⚠️ Sicherheitshinweis: Bitte prüft vor dem Schreiben eigener DIDs immer die Skalierungsfaktoren in eurer
vcalobj.did, um falsche Werte im Steuergerät zu vermeiden.🧩 Blockly-Tipp:
Wer lieber mit Blockly arbeitet: Nutzt einfach den Baustein erstelle Objekt mit den Feldern did (Zahl) und value (Zahl), schaltet den Baustein JSON nach Text davor und steuert damit direkt den Datenpunkt mqtt.0.HCV.writeDid
Den Code und das Release v1.01 findet ihr wie gewohnt auf GitHub. Feedback und Fragen gerne hier im Thread!
- Aktive Steuerung über MQTT (DID Schreibzugriff)
-
Beta-Test: Vitocal 200 S CAN-to-MQTT Bridge: Eigenständige Lese-Software für die Vitocal (WO1C / CAN)
Hallo zusammen,
neben der bestehenden Lösung für die Vitocal 250 (E3-Serie) steht ab sofort auch eine Beta-Variante für die Vitocal 200 (WO1C / HCV-Serie) bereit. Die HCV-Hardware ist mit der V250 Variante identisch.
Da sich das Protokoll der Vitocal-200-Generation grundlegend von der E3-Serie unterscheidet, gibt es hierfür einen eigenen Software-Stand.
⚠️ Wichtige Hinweise zum aktuellen Beta-Status:
-
🔒 Schreibschutz / Passiv: In dieser Beta-Phase sind keinerlei Schreiboperationen auf den CAN-Bus zugelassen. Die Software arbeitet rein lesend/passiv, um das Heizungssystem absolut zu schonen.
-
🔍 Unvollständige DIDs: Es werden derzeit noch nicht alle DIDs/Messwerte erkannt oder angezeigt. Die Adress-Zuordnungen der WO1C-Plattform werden schrittweise erweitert.
-
⏱️ Rückmeldungen & Traces: Da aktuell völlig unklar ist, wie groß das Interesse in der Community ist, bitte ich um Verständnis, dass Auswertungen von zugesendeten CAN-Traces und Rückmeldungen evtl. zeitversetzt erfolgen.
Was die V200-Software in dieser Beta bietet:
-
📄 Eigenes Profil-Format (
vcalobj200.did): NATIVE Unterstützung für Adressen im WO1C-Hex-Format (z. B.0x0100,0x0371). -
💾 Integrierter CAN-Logger & Download: Der Bus-Traffic kann in die Datei
canLog200.txtgeschrieben und direkt über die Web-Oberfläche heruntergeladen werden (dank Chunked-Streaming auch überhcv.localohne Abstürze). -
📊 Web-UI Dashboard: Live-Anzeige der bereits dekodierten Datenpunkte direkt im Browser.
Aufruf an Interessierte mit Vitocal 200 / WO1C:
Wer Lust hat, die Firmware auf eigener Hardware zu testen oder rohe CAN-Traces zur Analyse beizusteuern, findet das Projekt und die Hardware-Dateien hier:👉 GitHub Repository: https://github.com/chrkir/hcv
Über erste Tests und zugesandte CAN-Logs zur Erweiterung der DID-Datenbank freue ich mich!
-
-
@chrkir funktioniert dein Adapter auch mit einer vitocal 200-A?
-
[UPDATE v1.14.0] Viessmann Vitocal 250 per Web-Interface steuern
Ab sofort müsst ihr Parameter der Vitocal 250 (wie die Warmwasser-Solltemperatur) nicht mehr zwingend per MQTT-Payload senden. Mit der v1.14.0 könnt ihr Werte direkt über das HCV Web-Interface anpassen.
Visueller Dialog: Klick auf den Parameter öffnet ein Eingabefenster mit Dropdown/Wertauswahl.
Integrierter Plausibilitäts-Schutz: Min/Max-Grenzen (Min: 10 | Max: 60) und die zugehörige DID (0x18C) werden direkt angezeigt, um Fehleingaben zu vermeiden.
1-Klick-Übertragung: Ein Klick auf Senden schreibt den neuen Sollwert sofort auf den CAN-Bus der Heizung mit Betätigung der WP:

-
Hallo teletapi,
die Hardware ist Opensource und ja man kann mit den KiCad Daten unter github sich den Adapter selbst erstellen. Außerdem bieten wir auf der embdes.com Website einen fertig aufgebauten HCV-Adapter an.
Github verweist auch auf die Seite aber das ist wohl etwas unübersichtlich.
Grüße
Christian -
danke, sieht ja ganz gut aus, nächstes We gehts bei uns los mit dem Reinigen und absaugung des Aussentanks und Montags geht s los mit der Wärmepumpe ebenfalls eine Vitocal 250A. Zunächst hab ich mich mal darauf vorbereitet den E3onCan zu nutzen aber das mit MQTT liest sich nicht schlecht
-
danke, sieht ja ganz gut aus, nächstes We gehts bei uns los mit dem Reinigen und absaugung des Aussentanks und Montags geht s los mit der Wärmepumpe ebenfalls eine Vitocal 250A. Zunächst hab ich mich mal darauf vorbereitet den E3onCan zu nutzen aber das mit MQTT liest sich nicht schlecht
@teletapi Wenn Du ioBroker nutzt, stehen mit dem Adapter ioBroker.e3oncan sämtliche verfügbaren Daten der Anlage direkt als States im Objektbaum zur Verfügung. Dazu benötigst Du weder open3e noch MQTT. Der Adapter kann zudem verschieden Energiezähler auswerten und per "Collect" Daten einsammeln, die die Viessmann-Geräte von sich aus versenden. Alle am Bus verfügbaren Geräte werden beim Geräte-Scan automatisch erkannt.
Wenn Datenpunkte für andere Geräte per MQTT benötigt werden, kann Du das einfach in ioBroker konfigurieren. Das funktioniert in beide Richtungen, d.h. Du kannst per MQTT Datenpunkte auch schreiben.
Die neuesten Features des Adapters sind hier beschrieben.
-
Hallo zusammen,
ioBroker.e3oncan ist für reine ioBroker-Nutzer definitiv eine bequeme Lösung, wenn man alles in einer Instanz haben möchte.Wer allerdings eine systemunabhängige und entkoppelte Lösung sucht, profitiert bei unserem ESP32-HCV-Adapter von ein paar entscheidenden Architektur-Vorteilen:
Standalone & Edge Device: Die Aufbereitung und das Parsen laufen direkt auf der dedizierten ESP32-Hardware. Die Heizung bleibt sauber angebunden – egal ob der ioBroker-Server neu startet, geupdatet wird oder abstürzt.
Kein Lock-in (Standard-MQTT): Durch das offene MQTT-Format bist du absolut flexibel. Wechselst du später zu Home Assistant, Node-RED oder KNX, nutzt du das Gateway einfach nahtlos weiter.
Integriertes Web-UI mit Direkt-Steuerung: Du hast direkt auf dem Gerät eine eigene grafische Oberfläche. Werte können dort nicht nur abgelesen, sondern über ein Formular mit automatischer Min/Max-Plausibilitätsprüfung sicher verstellt werden (z. B. Warmwasser-Sollwert), ohne dass man erst ein Dashboard im Smart Home bauen muss.
Integriertes CAN-Logging & Analysis: Der Adapter bringt ein eigenes CAN-Bus-Logging inklusive ID-Filterung direkt im Web-Interface mit. Um neue DIDs zu finden oder den Bus zu analysieren, braucht man keine externen Linux-Tools wie SocketCAN.
Am Ende ist es eine Frage der Philosophie: Möchte man einen rein Software-basierten Adapter im ioBroker-Prozess oder ein eigenständiges Hardware-Gateway direkt an der Vitocal, das per MQTT mit jedem beliebigen System spricht. Wobei reine Softwarelösung meinem Verständnis nach nicht so ganz stimmt den es wird ja noch der USB-CAN-Adpter benötigt und der zwingend mit Galvanisch getrennter Kopplung und das max. 10m von der Vitocal entfernt.
Viel Erfolg beim Einbau der Vitocal 250A am Montag!
-
Hallo zusammen,
ioBroker.e3oncan ist für reine ioBroker-Nutzer definitiv eine bequeme Lösung, wenn man alles in einer Instanz haben möchte.Wer allerdings eine systemunabhängige und entkoppelte Lösung sucht, profitiert bei unserem ESP32-HCV-Adapter von ein paar entscheidenden Architektur-Vorteilen:
Standalone & Edge Device: Die Aufbereitung und das Parsen laufen direkt auf der dedizierten ESP32-Hardware. Die Heizung bleibt sauber angebunden – egal ob der ioBroker-Server neu startet, geupdatet wird oder abstürzt.
Kein Lock-in (Standard-MQTT): Durch das offene MQTT-Format bist du absolut flexibel. Wechselst du später zu Home Assistant, Node-RED oder KNX, nutzt du das Gateway einfach nahtlos weiter.
Integriertes Web-UI mit Direkt-Steuerung: Du hast direkt auf dem Gerät eine eigene grafische Oberfläche. Werte können dort nicht nur abgelesen, sondern über ein Formular mit automatischer Min/Max-Plausibilitätsprüfung sicher verstellt werden (z. B. Warmwasser-Sollwert), ohne dass man erst ein Dashboard im Smart Home bauen muss.
Integriertes CAN-Logging & Analysis: Der Adapter bringt ein eigenes CAN-Bus-Logging inklusive ID-Filterung direkt im Web-Interface mit. Um neue DIDs zu finden oder den Bus zu analysieren, braucht man keine externen Linux-Tools wie SocketCAN.
Am Ende ist es eine Frage der Philosophie: Möchte man einen rein Software-basierten Adapter im ioBroker-Prozess oder ein eigenständiges Hardware-Gateway direkt an der Vitocal, das per MQTT mit jedem beliebigen System spricht. Wobei reine Softwarelösung meinem Verständnis nach nicht so ganz stimmt den es wird ja noch der USB-CAN-Adpter benötigt und der zwingend mit Galvanisch getrennter Kopplung und das max. 10m von der Vitocal entfernt.
Viel Erfolg beim Einbau der Vitocal 250A am Montag!
@chrkir funktioniert dein Adapter auch mit einer vitocal 200-A?
-
Hallo zusammen,
ioBroker.e3oncan ist für reine ioBroker-Nutzer definitiv eine bequeme Lösung, wenn man alles in einer Instanz haben möchte.Wer allerdings eine systemunabhängige und entkoppelte Lösung sucht, profitiert bei unserem ESP32-HCV-Adapter von ein paar entscheidenden Architektur-Vorteilen:
Standalone & Edge Device: Die Aufbereitung und das Parsen laufen direkt auf der dedizierten ESP32-Hardware. Die Heizung bleibt sauber angebunden – egal ob der ioBroker-Server neu startet, geupdatet wird oder abstürzt.
Kein Lock-in (Standard-MQTT): Durch das offene MQTT-Format bist du absolut flexibel. Wechselst du später zu Home Assistant, Node-RED oder KNX, nutzt du das Gateway einfach nahtlos weiter.
Integriertes Web-UI mit Direkt-Steuerung: Du hast direkt auf dem Gerät eine eigene grafische Oberfläche. Werte können dort nicht nur abgelesen, sondern über ein Formular mit automatischer Min/Max-Plausibilitätsprüfung sicher verstellt werden (z. B. Warmwasser-Sollwert), ohne dass man erst ein Dashboard im Smart Home bauen muss.
Integriertes CAN-Logging & Analysis: Der Adapter bringt ein eigenes CAN-Bus-Logging inklusive ID-Filterung direkt im Web-Interface mit. Um neue DIDs zu finden oder den Bus zu analysieren, braucht man keine externen Linux-Tools wie SocketCAN.
Am Ende ist es eine Frage der Philosophie: Möchte man einen rein Software-basierten Adapter im ioBroker-Prozess oder ein eigenständiges Hardware-Gateway direkt an der Vitocal, das per MQTT mit jedem beliebigen System spricht. Wobei reine Softwarelösung meinem Verständnis nach nicht so ganz stimmt den es wird ja noch der USB-CAN-Adpter benötigt und der zwingend mit Galvanisch getrennter Kopplung und das max. 10m von der Vitocal entfernt.
Viel Erfolg beim Einbau der Vitocal 250A am Montag!
-
ja, wobei zur Zeit Schreiboperationen nicht unterstützt werden bis klar ist das die entsprechenden CAN-Nachrichten ohne Fehler erkannt werden. So bin ich auch bei der V250 vorgegangen.
-
@chrkir Ich hab gesehen das die Hardware des HCV auf Stecker 72 in der Vitocal angklemmt wird während E3oncan auf Stecker 91 in der Vitocal angeschlossen wird wo ist denn da der Unterschied..?
@teletapi
Das ist eine sehr gute Frage. Beide Stecker hängen an der CAN-Bus-Architektur der E3-Elektronik, unterscheiden sich aber in ihrer Aufgabe im Gesamtsystem:Stecker 72 (Interner System-Bus):
Über Stecker 72 läuft die primäre Kommunikation der Wärmepumpen-Kernkomponenten – also direkt zwischen HPMUMASTER (Hauptregler), HMU (Außeneinheit/Kompressor) und dem HMI (Touch-Display).
Der Vorteil beim HCV auf Stecker 72 ist, dass wir hier direkt am "Herzschlag" der Anlage sitzen und den ungefilterten System-Traffic live mitlesen können (z. B. wenn das Display Parameter abfragt oder der Kompressor nachregelt).Stecker 91 ist von Viessmann soweit mir bekannt ist, für externe Systemerweiterungen vorgesehen (z. B. Mischermodule EM-M1, Solarmodule EM-S1 oder Stromspeicher). E3onCAN nutzt diesen Stecker oft, weil er primär für das Anstecken externer Komponenten im Viessmann-Ökosystem gedacht ist.
Zusammengefasst: Stecker 72 greift direkt die interne Systemkommunikation ab, während Stecker 91 die Schnittstelle für externe Viessmann-Erweiterungen ist. Funktionieren tut das Auslesen der Datenpunkte auf beiden Wegen, aber auf 72 sieht man auch den internen Modul-Traffic der Wärmepumpe was aus meiner Sicht für die Nutzung des HCV am meisten Sinn macht.
Also man kann die HCV auch an den externen CAN-Bus hängen solange die aufgenommen Daten den eigen Informationsbedarf decken. Wichtig in beiden Fällen, für den internen Bus darf kein Widerstand geschaltet werden, bei dem externen hängt es davon ab ob nur HPMU und der HCV verbunden sind.
-
@chrkir Ich hab gesehen das die Hardware des HCV auf Stecker 72 in der Vitocal angklemmt wird während E3oncan auf Stecker 91 in der Vitocal angeschlossen wird wo ist denn da der Unterschied..?
-
ja, wobei zur Zeit Schreiboperationen nicht unterstützt werden bis klar ist das die entsprechenden CAN-Nachrichten ohne Fehler erkannt werden. So bin ich auch bei der V250 vorgegangen.
@chrkir ah ok. Danke für deine Nachricht. Dann warte und hoffe ich weiter ☺️
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden