You are currently viewing Ebus auslesen mit IOBroker

Ebus auslesen mit IOBroker

Ziel war es eine Vaillant-Wärmeversorgung in den IOBroker einzubinden. Der EBus-Adapter des IOBrokers ist in der Version 2.2.3 sehr stabil und hat die Möglichkeit sowohl auf den Datenstamm des EbusD zuzugreifen und diesen in Objekte zu schreiben, als auch eigene Abfragen über den http zu senden und zu empfangen. Ebenso kann der Ebusd-Dienst auch per MQTT kommunizieren. Da ich diverse Nächte in das Projekt gesteckt habe, möchte ich hier ein paar Hilfestellungen geben und die Quellen zusammenfassen. Vielleicht hilft es dem Einen oder Anderen.

Ich habe mich bei dem Ebus-Pegelwandler letztlich doch für die (unglaublich teure) Variante des Herstellers Esera-Tec entschieden, da ich einfach keine Zeit hatte selbst zu löten.

Die Selbstbauvariante vom FHEM-Forum ist aber auch nutzbar und wer gerne lötet kommt so auch zum Ziel. Die V2-Variante ohne Potiabgleich ist dabei die wesentlich bessere. Ich habe in der zwischenzeit beite Varianten einmal gelötet und getestet.
Mittlerweile gibt es auch bei Ebay immer mal wieder die Platinen oder gar die Wandler zu fairen Preisen.

Softwareseitig:

Die Dokumentation in IOBroker-Forum ist ganz ok und führt mit etwas Knobelei zu einem Ergebnis.

Basieren tut das ganze auf dem Deinst von John30, der auf GitHub dokumentiert und zu bekommen ist.

Der Dienst verfügt über erschiedene Möglichkeiten die Daten bereitzustellen. Ich habe mich für die Variante mit einem MQTT-Client entschieden. da ich ohnehin diverse Geräte über den Mosquitto kommunizieren lassen und daher auf dem IOBroker ein MQTT-Broker läuft, ist dies eine saubere Lösung.

Für den Laien ist es jedoch im Forum und auf GitHub nicht ganz eindeutig, wie der Ebusd-Dienst installiert und konfiguriert werden muss. Daher hier meine Tipps:

  • Bei der Installation wird im IOBroker Forum gleich im ersten Eintrag noch beschrieben, dass der Mosquitto-Dienst installiert und konfiguriert werden soll. Das ist grundsätzlich korrekt, jedoch durch das Alter des Eintrages nicht ganz trivial. Ich schlage vor, den MQTT-Broker einfach als Adapter in der IOBroker-Oberfläche zu installieren und zu konfigurieren. Dann hat man immer die aktuellste und kompatible Version zur Hand. Zudem können dann gleich die Objekte mit genutzt werden.
  • Am besten installiert man den Dienst entsprechend der WIKI des EBusD und nicht nach den Befehlsfolgen aus dem IOBroker-Forum. Denn:
  • Seit der Version 3 braucht man keine Config-Files mehr händisch kopieren. Dies geschieht automatisch bei Starten des Dienstes, wenn die –scanconfig option gesetzt wird.
  • Und: Die Standardeinstellungen für die Log-Files, Http-Ports und MQTT sind dort besser beschrieben

Die Gefundenen Geräte und Config-Files passen meist ganz gut. Ich musste zusätzliche Werte händisch abrufen, da meine AURA-Matic 600 als Solarreglereinheit wohl nicht direkt gefunden werden kann.

Alles in allem ist es ein Möglichkeit an die Daten aus der Heizung heranzukommen. Zum Beispiel kann man die Temperaturen der thermischen Solaranlage abrufen…

Oder die Außentemperatur des Fühlers, den Brennerstatus, Pumpenstatus und noch vile andere Datenpunkte.

Bei Fragen gerne posten.

Dieser Beitrag hat 4 Kommentare

  1. Waschy

    Danke für die schöne Beschreibung. Welche Hardware hast Du denn für den USB-eBus-Deamon-MQTT Zwischenschritt verwendet?

    1. msp

      Hallo,
      Ich habe alles auf einem Raspberry-Pi 4b laufen, der direkt mit USB-B an dem Esera-Tec-EBus-Wandler angeschlossen ist.
      Wenn man mehrere USB-Geräte angeschlossen hat, sollte man auf die USB-Ports achten und nicht umstecken, da sonst der fest zugewiesene Port in der Conifg nicht mehr stimmt.
      Viele Erfolg

  2. Waschy

    Hallo,
    einen Wandler habe ich … nur bin ich nicht sicher ob ich den Abgleich richtig geschafft habe … zwischen Data leuchtet dauerhaft (keine Daten) und Data aus (kein Daten) gibt es ja unendlich viele Zwischenstände. Welchen Zustand zeigt die LED denn optimalerweise? Ich habe leichtes Flackern mit vereinzelt stärkerem Leuchten … ich Log aber auf die Meldung „[bus error] poll ui YieldThisYear failed: ERR: arbitration lost“. Im IoBroker werden Objekte angezeigt, aber leider keine konkreten Werte – speziell die Abteilung „mqtt.0.ebusd.bai“ bleibt relativ leer. Was muss ich denn da noch aktivieren damit ich Daten bekomme? Im Log habe ich dann auch noch jede Menge: „received unknown BC cmd“ und „received unknown MS cmd“ – wie kann ich das noch auflösen? Um Tipps bin ich sehr dankbar!

    1. msp

      Hallo Waschy, sorry für die späte Rückmeldung. Der Abgleich ist eines der größten Hindernisse. Daher wurde auch die Version 2.0 der Hardware entwickelt, die ohne Abgleich klarkommt. Wie sehr die LED blinkt, hängt davon ab, welche Abfragen verarbeitet werden müssen. Bei dem Wandler von ESERA blinkt die LED schon viel viel, wenn alle Daten ausgelesen werden sollen. Dabei ist auch die Abfragerate (also wie oft du die Werte abfragst) entscheiden. Ich würde vorschlagen, erst einmal ohne MQTT und ohne IOBroker den Dienst zu prüfen. Welche Master findet denn deine Config? Was für eine Anlage hast du? Welche Geräte sind installiert? Für den Abgleich kannt du entsprechend der FHEM-Forumsseite den Dienst im Vordergrund mit einer Ausgabe starten. Hier : https://wiki.fhem.de/wiki/EBUS im Abschnitt „Poti Abgleichen“ wird dies beschrieben. Wenn das läuft, dann würde ich vorschlagen entweder nur über html oder über MQTT zu gehen. Melde dich gern, sobald das Terminal korrekte Werte liefert. Der Rest geht fast von allein;) VG, Marco

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.