abbrechen
Suchergebnisse werden angezeigt für 
Anzeigen  nur  | Stattdessen suchen nach 
Meintest du: 

Optolink Switch (Splitter) - Vitoconnect, MQTT & TCP/IP

 

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:

 

der OptolinkVs2-Switch

HerrP_0-1713897747645.png

 

Er verbindet euer Optolink Gerät auf total einfache Weise mit allem was das Herz begehrt.

  • Home Automation Anbindung per MQTT
  • W/LAN Anbindung per TCP/IP und einfachen Ascii + $Hex
  • Parallelbetrieb des Vitoconnect und damit Vicare, Viguide, Viessmann API weiter nutzbar und Erhaltung der erweiterten Garantie

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.

 

HerrP_2-1713897813860.png

HerrP_0-1733508497215.png

HerrP_0-1738135993065.png

 

viel Spass damit & Grüsse!

Phil 🖖

 

 

188 ANTWORTEN 188

> 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.

Was funktioniert:

  • 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.


Was nicht funktioniert:

  • 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.

Was funktioniert:

  • 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.


Was nicht funktioniert:
  • 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.

‎17.06.2025 19:40
 
 

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.

moin @GMeier !

 

Sorry, Viessmann hat mir wohl die Benachrichtigungen gestrichen...

edit: sie haben die Domain geändert und die Mails hingen im Spamfilter...

 

Ich würde vorschlagen du lädst noch mal das komplette Projekt runter / klonst es und ersetzt deine lokale Kopie (komplett). Gewöhnlich funktioniert das Projekt problemlos. Es gibt keine Datei mainloop.py im Projekt. Irgendwas ist bei dir schief gegangen. Versuch einfach mal 

  git clone https://github.com/philippoo66/optolink-splitter/

statt den Umweg über die zip Geschichte.

 

00f8 ist kein Messwert sondern die Device Id der Anlage. die ändert sich nicht und steht entsprechend auch nicht in der poll list. Wenn du die lesen willst, schickst du im MQTT Explorer (oder in sonst einem client) den raw string  r;0xf8;8 auf den Topic Vito/cmnd. dann bekommst du unter Vito/resp die 8 Bytes der device id. Da ist auch ein guter Test, um zu probieren, ob das Ganze funktioniert.

 

Die poll list musst du entsprechend einer Anlage anpassen. in

  https://github.com/philippoo66/optolink-splitter/wiki/350-Poll-Configuration-Samples

gibt es diverse Listen für diverse Anlagen als Vorschläge. Per se steht die poll list in der settings_ini.py, du kannst aber auch eine poll_list.py aus dem Wiki nehmen und in's Projektverzeichnis kopieren, dann wird die benutzt.

 

Sorry dass es so lange gedauert hat mit der Antwort!! ich werd mal schauen, was bei meinen Benachrichtigungen nicht mehr geht... Bei weiteren Fragen hier schreieben, ich guck jetzt mal explizit hier rein.

 

Grüsse!

Phil 

 

 

@Fele  am Anfang der neuen Generation haben viele Heizis lieber noch die alte eingebaut, weil die neue am Anfang sehr viele Probleme hatte.

 

Grüsse!

Phil

Top-Lösungsautoren