Moin ihr! 🙂
Optolink ist 'alt', aber noch in Benutzung (bei mir auch). Öfter gab es Anfragen zum Betrieb zu lokalen Zwecken aber trotzdem weiter das Vitoconnect für Viessmann Cloud/Vicare/Viguide/Vi.API/Garantieverlängerung zu benutzen. Dazu jetzt hier die benutzerfreundliche Lösung, natürlich wieder open-source und kostenlos:
Er verbindet euer Optolink Gerät auf total einfache Weise mit allem was das Herz begehrt.
Kein Gehassel mit komplizierter Einrichtung und irgendwelchen kryptischen xml's. Einfach nen Raspi, ein paar Python Module draufkopiert, Optolinkadapter und bei Bedarf das Vitoconnect angesteckt, ggf. noch ein paar Anpassungen in der Settings_ini (COM Ports, IP Adressen, MQTT Passwort, Poll-Liste, ...) und los.
viel Spass damit & Grüsse!
Phil 🖖
> Als Betriebssystem wäre meine Wahl jetzt Ubuntu etc.
@Roman88 nimm das 'Raspbian OS' (ruhig 64bit) per Raspberry Pi Imager https://blog.berrybase.de/raspberry-pi-imager-dein-leitfaden-zum-tool/ Die Raspbians sind Debian Abkömmlinge für Raspi 'optimiert'. Benutzen glaubich die meisten.
Erstmal ein dickes Danke an HerrP für die Infos und die Software.
Ich habe eine Frage zur Erzeugung der Entititäten im HomeAssistant für meine Vitodens 300-W B3HB.
Im Homeassistant kommen die MQTT Daten im Mosquitto Broker an und lassen sich mit MQTT Explorer anschauen.
Laut Beschreibung, so wie ich es verstanden habe, kann ich mit homeassistant_create_entities.py die Entitäten im HA erzeugen. Dazu brauche ich die zu meiner Anlage passende homeassistant_entities.json. Dazu habe ich mir von "350 Poll Configuration Samples" die Datei "poll_list.py.txt" passend zur Vitodens 300-W B3HB runtergeladen und in .py umbenannt. Alles liegt nun im Openconnect Ordner meines Raspberrys.
Und ab da stehe ich auf dem Schlauch. Wie komme ich von poll_list.py zur homeassistant_entities.json?
Einfach mit copy/paste die Datenpunkte einzeln von einer Datei in die andere kopieren? Oder geht das eleganter?
Denn homeassistant_create_entities.py braucht doch homeassistant_entities.json, oder nicht?
Ich bin noch relativ neu in Homeassistant und MQTT. Deshalb will ich nicht einfach rumprobieren.
Wäre toll wenn mir da jemand den entscheidenden Tipp geben könnte.
Am besten vergleicht du die Polllist.py und homeassistant_entities.json am https://github.com/philippoo66/optolink-splitter/wiki/350-Poll-Configuration-Samples#vitocal-vitocal... .
Die Link zwischen beide is "Name" in der Pollist und "name" in der json Datei..
> Wie komme ich von poll_list.py zur homeassistant_entities.json?
@donald24 wenn du die json für die B3HB fertig hast, wäre es super wenn du sie dann auch in's Wiki lädst (das ist offen, nötgenfalls gib sie uns und wir laden sie rein).
Ich hab kein Home Assistant und überhaupt keine Ahnung davon, deswegen konnte ich die Datei nicht bereitstellen...
Raspberry Pi Zero W läuft auch?
WLAN würde mir reichen.
moin @Feldheizung !
ja, Zero geht auch. hat letztens jemand gemacht (und den Zero dabei gleich mit der Spannung aus dem Vitoconnect versorgt, weil er den Vitoconnect wollte....). Wenn du willst/brauchst such ich mal den Thread raus, geht aber eigentlich genauso wie mit dem 'großen' Raspi. Performance null Problem.
Ich versuche es mal mit einem A+, der hat einen Nativen USB und voller Größe.
Sehe dass sich lange Zeit niemand mehr dazu gemeldet hat. Habe auf Grundlage des Artikels unter https://www.rustimation.eu/index.php/viessmann-ohne-api-optolink-splitter-1/ die Installation soweit hinbekommen, dass die Heizung über das Optolink Kabel an den Raspberry Zero W beständig Daten liefert, aber den Weg zur Übertragung dieser Daten auf den Mosquitto broker des Home Assistenten scheitere ich und brauche dringend Hilfe.
Im Ergebnis möchte ich z.B. Sensoren im HomeAssistenten wie Warmwasser starten oder Wärmepumpe ein/aus nutzen für die Automatisierung zur Nutzung meiner Solarüberschussmengen.
Hardware:
Raspberry Pi Zero 2 W mit aktiviertem UART und CP2102 über /dev/ttyUSB0.
Viessmann Optolink-USB-Kabel angeschlossen, Kommunikation mit Heizung funktioniert.
Software:
Projekt optolink-splitter gemäß Option B aus rustimation.eu eingerichtet.
Virtuelle Python-Umgebung (venv) ist aktiv.
optolinkvs2.py läuft stabil:
Serielle Kommunikation zeigt zyklisch gültige Telegramme (z. B. KT 25.6, WW 50.0, etc.).
MQTT-Verbindung zum externen Broker 192.168.178.39:1883 wird erfolgreich aufgebaut (Log zeigt CONNACK, SUBACK, etc.).
LWT-Topic (Vito/LWT) wird korrekt gesendet und empfangen.
Mosquitto (HA):
MQTT-Broker unter Home Assistant (auf Raspi 3) läuft, Login mit User mqttuser funktioniert.
Abo via mosquitto_sub -h 192.168.178.39 -u mqttuser -P 4711xx -t "Vito/#" zeigt nur Vito/LWT online, aber keine weiteren Daten.
Hauptproblem:
Die eigentlichen Messwerte (KT, WW, 0x00f8 usw.) werden nicht an MQTT veröffentlicht.
Kein einziger publish_datapoint(...)-Aufruf scheint MQTT-Daten zu senden.
Diagnose zeigt:
Datei mainloop.py war leer oder fehlt.
Funktion publish_datapoint(...) wurde im Projekt zunächst nicht gefunden.
Nach Ergänzung der fehlenden Funktion bleibt MQTT-Ausgabe dennoch aus.
Ich wollte eigentlich einige py-dateien beifügen aber das geht nicht.
Würde mich freuen wenn jemand mir weiterhilft, da ich gefühlt so kurz vor dem Ziel bin.
Sehe dass sich lange Zeit niemand mehr dazu gemeldet hat. Habe auf Grundlage des Artikels unter https://www.rustimation.eu/index.php/viessmann-ohne-api-optolink-splitter-1/ die Installation soweit hinbekommen, dass die Heizung über das Optolink Kabel an den Raspberry Zero W beständig Daten liefert, aber den Weg zur Übertragung dieser Daten auf den Mosquitto broker des Home Assistenten scheitere ich und brauche dringend Hilfe.
Im Ergebnis möchte ich z.B. Sensoren im HomeAssistenten wie Warmwasser starten oder Wärmepumpe ein/aus nutzen für die Automatisierung zur Nutzung meiner Solarüberschussmengen.
Hardware:
Raspberry Pi Zero 2 W mit aktiviertem UART und CP2102 über /dev/ttyUSB0.
Viessmann Optolink-USB-Kabel angeschlossen, Kommunikation mit Heizung funktioniert.
Software:
Projekt optolink-splitter gemäß Option B aus rustimation.eu eingerichtet.
Virtuelle Python-Umgebung (venv) ist aktiv.
optolinkvs2.py läuft stabil:
Serielle Kommunikation zeigt zyklisch gültige Telegramme (z. B. KT 25.6, WW 50.0, etc.).
MQTT-Verbindung zum externen Broker 192.168.178.39:1883 wird erfolgreich aufgebaut (Log zeigt CONNACK, SUBACK, etc.).
LWT-Topic (Vito/LWT) wird korrekt gesendet und empfangen.
Mosquitto (HA):
MQTT-Broker unter Home Assistant (auf Raspi 3) läuft, Login mit User mqttuser funktioniert.
Abo via mosquitto_sub -h 192.168.178.39 -u mqttuser -P 4711xx -t "Vito/#" zeigt nur Vito/LWT online, aber keine weiteren Daten.
Hauptproblem:
Die eigentlichen Messwerte (KT, WW, 0x00f8 usw.) werden nicht an MQTT veröffentlicht.
Kein einziger publish_datapoint(...)-Aufruf scheint MQTT-Daten zu senden.
Diagnose zeigt:
Datei mainloop.py war leer oder fehlt.
Funktion publish_datapoint(...) wurde im Projekt zunächst nicht gefunden.
Nach Ergänzung der fehlenden Funktion bleibt MQTT-Ausgabe dennoch aus.
Ich wollte eigentlich einige py-dateien beifügen aber das geht nicht.
Würde mich freuen wenn jemand mir weiterhilft, da ich gefühlt so kurz vor dem Ziel bin.
Die poll_list bestimmt welche Datenpunkte mittels MQTT übertragen werden. Beispiele van Pollliste finden Sie hier: https://github.com/philippoo66/optolink-splitter/wiki/350-Poll-Configuration-Samples. Wenn Sie den Type der py-dateien in .txt ändern können die beigefügt werden.
muss ich jetzt in frage stellen, warum wir für unsere 2021 komplett neue heizung so ne alte technik mit optolink bekommen haben oder waren wir da gerade so an der grenze?
Unsere Vitocal 300G, neu installiert in März 2024 hat auch noch Optolink.