ETA Touch: Kurze Anleitung zur Einbindung in Home Assistant

Es gibt 17 Antworten in diesem Thema, welches 15.627 mal aufgerufen wurde. Der letzte Beitrag () ist von renekcl.

  • Hallo Zusammen,


    hier eine kurze Anleitung wie ihr diverse ETA Parameter mit der Homeautomatisierungssoftware Home Assistant über die ETA REST-Schnittstelle auslesen könnt.
    Eine fertige "HA Integration" gibt es leider nicht, dafür kann man die vorhandene Home Assistant sensor platform "rest" benutzen.


    1) REST-schnittstelle eures Kessels aktivieren. Da ist an diversen Stellen beschrieben, z.B. im Thread "ETA: Anleitung: Datenaufzeichnung ..."


    2) Jetzt könnte ihr Werte über eine URL abfragen, z.B. die Kesseltemperatur
    http://192.168.178.75:8080/user/var///40/10021/0/11109/0
    Die IP Adresse durch die Adresse eures Kessel ersetzen. Die URL könnt ihr einfach im Browser testen.


    3) Jetzt geht ihr in Home Assistant -> File Editor -> /config/configuration.yaml und fügt dort dem "sensor:" Bereich folgendes hinzu:


    Es wird alles 120 Sekunden der Wert für die Abgastemperatur ausgelesen.
    Auf Einrückung achten!



    Code
    sensor:
      - platform: rest
        name: "ETA Abgas Temp"
        scan_interval: 120
        resource: http://192.168.178.75:8080/user/var//40/10021/0/11110/0
        value_template: '{{ value_json.eta.value["@strValue"] | replace(",", ".") | float }}'
        unit_of_measurement: "°C"


    4) Jetzt Home Assistant neu starten. Dann solltet ihr die neue Entity "ETA Abgas Temp" finden. Die könnt ihr z.B. in der UI als Graph anzeigen lassen.


    Jetzt könnt ihr für jeden Parameter einen Sensor anlegen.
    Die Codes aller Parameter findet ihr einfach über den Browser: http://192.168.178.75:8080/user/menu



    Erklärung zu dem HA rest sensor:


    Die Restschnittstelle liefert XML zurück:
    <etaversion="1.0">
    <valueuri="/user/var/120/10601/0/0/12197" strValue="3,6"unit="°C" decPlaces="1" scaleFactor="10"advTextOffset="0">36</value>
    </eta>


    Das wird von HA automatisch mit dem Paket xmltodict nach JSON konvertiert und hat dann die folgende Form:


    {"eta":{"@version": "1.0", "value": {"@uri":"/user/var/120/10601/0/0/12197", "@strValue":"3,6", "@unit": "C", "@decPlaces":"1", "@scaleFactor": "10","@advTextOffset": "0", "#text": "36"}}}


    value_template definiert ein template, dass den Wert von "@strValue" extrahiert. Dann muss noch das dezimal "," durch einen "." ersetzt werden und der String in eine float-Zahl konvertiert werden.


    Tipp: Über http://homeassistant.local:8123/developer-tools/template könnte ihr die templates einfach ausprobieren



    Ich hoffe, es hilft jemanden weiter. - ETA - kurze Anleitung Einbindung in Home Assistant

  • Wie schaut das ganze mit einem Eta Pe15 Baujahr 2011 mit serieller Schnittstelle aus

    haben im Haus einen Raspberry Pi mit Home Assistent laufen und eine Netzwerkdose im Bereich des Kessels

    danke

  • Das weiß ich leider nicht, die Beschreibung ist für eine ETA PU15 mit Netzwerkanschluss.


    Für die serielle Schnittstelle müsste man rausfinden, wie man darüber die Daten ausliest, dann eine Bridge z.B:mit einem Arduino bauen der die Daten üb er die serielle Schnittstelle ausliest und auf dem LAN bereitstellt.

    Evt. gibt es auch eine fertige Serial-via-LAN Hardware die man benutzen kann, für USB gibt es soetwas.

  • Mittlerweile habe ich eine ETA PU integration über custom_component geschrieben.


    ha_custom_components/eta at master · hubtub2/ha_custom_components
    Custom components for Home Assistant. Contribute to hubtub2/ha_custom_components development by creating an account on GitHub.
    github.com


    Die müsst ihr laden und nach /config/custom_components/eta kopieren, dann den Eintrag in configuration.yaml machen (siehe README.md) und dann neu starten.


    Tipp: im neuen HA Energie Monitor könnte ihr den ETA Sensor für Gesamtenergie als "Gas Quelle" hinzufügen (Pelletheizung scheint es noch nicht zu geben - aber es ist ja praktisch ein HolverGASer).

  • Hat sich die URL zum Menübaum geändert?? Bei mir geht http://192.168.178.57:8080/user/menu nicht.


    http://192.168.178.57:8080/user/var/40/10021/0/11109/0 zeigt mir aber zb die Temperatur an, also müsste die rest api ja eigentlich gehen.

    Warum /user/menu bei dir nicht geht, weiß ich nicht. Aber wenn /user/var/... funktioniert ist die REST Schnittstelle auf jeden Fall aktiviert, und die HA Integration sollte auch funktionieren...

  • Guten Morgen slowmind,


    ich habe ein kleines Problem,


    ich bekomme unsere Heizung in Homeassistand einfach nicht eingebunden.

    Es hatte mal kurz funktioniert, als ich dann die Namen richtig eingetragen hatte, hat es nichtmehr funktioniert.


    Dann habe ich alles nochmal von vorne gemacht und es nichtmehr eingebunden bekommen.


    Fehlermeldungen aus dem Log:


    2022-11-17 22:11:29.796 ERROR (MainThread) [homeassistant.components.sensor] Error while setting up eta_heating platform for sensor

    Traceback (most recent call last):

    File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 281, in _async_setup_platform

    await asyncio.shield(task)

    File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run

    result = self.fn(*self.args, **self.kwargs)

    File "/config/custom_components/eta/sensor.py", line 86, in setup_platform

    add_entities([

    File "/config/custom_components/eta/sensor.py", line 87, in <listcomp>

    EtaSensor(config, hass, sensor.get('name'), sensor.get('uri'), sensor.get('unit'), sensor.get('state_class'),

    File "/config/custom_components/eta/sensor.py", line 140, in __init__

    serial1 = serial1['eta']['value']['@strValue']

    KeyError: 'value'


    Meine Config in der configuration.yaml:

    sensor:

    - platform: eta_heating

    host: 192.168.1.99

    port: 8080

    scan_interval: 60


    Config mit der es kurz funktioniert hatte und jetzt nichtmehr:

    sensors_custom.py:


    from homeassistant.const import TIME_SECONDS


    SENSORS_CUSTOM = [

    {

    "uri": "/120/10601/0/0/12528", # Puffer Flex Ladezustand

    },

    {

    "uri": "/121/10251/0/11153/0", # Puffer 2 Temperatur

    },

    {

    "uri": "/48/10391/0/11110/0", # Abgastemperatur

    "unit": TIME_SECONDS

    },

    ]


    Config mit der nichtsmehr funktioniert hatte:

    from homeassistant.const import TIME_SECONDS


    SENSORS_CUSTOM = [

    {

    "name": "Puffer Flex Ladezustand",

    "uri": "/120/10601/0/0/12528",

    "unit": TEMP_CELSIUS

    },

    {

    "name": "Puffer 2 Temperatur oben",

    "uri": "/121/10251/0/11153/0",

    "unit": TEMP_CELSIUS

    },

    {

    "name": "Abgastemperatur",

    "uri": "/48/10391/0/11110/0",

    "unit": TEMP_CELSIUS

    },

    ]


    Jetzt hoffe ich, dass du mir weiterhelfen kannst:-)

    Viele liebe Grüße,

    Overon

  • Hallo overon,


    willkommen im Holzheizer-Holzvergaser-Forum! :thumbup:


    Ich bin zwar nicht angesprochen und kenne weder Homeassistant noch die ETATouch-RESTful-API. Zwei Dinge sind mir aufgefallen (alles ohne Gewähr):


    1. Besipiel: Diese Syntax ist etwas seltsam. Ich vermute, dass nach "# Abgastemperatur" ein Komma fehlt?


    2. Beispiel: Hier ist die Syntax "schöner". Du verwendest die Konstante TEMP_CELSIUS, dann musst du sie vermutlich auch importieren:


    Viele Grüße von Karlheinz :)

    Seit Juni 2011:

    ETA Twin: SH30/P25 "noTouch" (Füllraum 150 Liter)

    Hopf Pelletaustragung: 6x UniWok-Saugsonden (Lager für 6 to)

    Paradigma Pufferspeicher: 2x Aqua Expresso (1090 + 958 Liter; seriell verbunden)

    Paradigma FrischWasserStation

    Paradigma VR-Solarpanel: 2x CPC21 Star Azzurro (10m²; Aqua-System ohne Glykol)

  • Hallo Karlheinz,

    vielen Dank für deine schnelle Antwort / Hilfe.


    Habe deine änderungen umgesetzt, allerdings immernoch der selbe Fehler und keine veränderung, funktioniert immer noch nicht.


    Viele liebe Grüße,

    Overon

  • Hm, das ist schade.


    Du kannst gerne die aktuelle Version plus Fehlermeldung nochmals einstellen. Das wird slowmind auch brauchen, falls er mal wieder reinschaut. Am besten aber jeweils mit dem BB-Code "Code </>" einkleiden.


    Noch eine Frage:

    Hast du die neueste Version vom 15.09.2022 aus Github installiert? Weil die Zeilennummern aus dem Fehlerprotokoll passen nicht so richtig zum aktuellen Sourcecode.


    Viele Grüße von Karlheinz :)

    Seit Juni 2011:

    ETA Twin: SH30/P25 "noTouch" (Füllraum 150 Liter)

    Hopf Pelletaustragung: 6x UniWok-Saugsonden (Lager für 6 to)

    Paradigma Pufferspeicher: 2x Aqua Expresso (1090 + 958 Liter; seriell verbunden)

    Paradigma FrischWasserStation

    Paradigma VR-Solarpanel: 2x CPC21 Star Azzurro (10m²; Aqua-System ohne Glykol)

  • Hallo zusammen,


    nach etwas Suche, bin ich auf diesen Thread gestoßen.

    Ich teste gerade home assistant und möchte dazu meinen PU15 einbinden.

    Bin was Ha angeht noch nicht wirklich im Thema, da ich es wie gesagt erstmal teste.


    Wie habt ihr das gemacht und läuft das bei euch ohne Probleme?

    Habt ihr das über die Integration von slowmind laufen?

    Vielen Dank vorab für eure Unterstützung!

  • Hallo Overon,


    die Fehlermeldung sagt mir auf anhieb leider nichts.


    Was du mal probieren kannst, ist den Fork von Michael Schmid zu verwenden, er hat die Integration weiterentwickelt und ist deutlich aktiver als ich:


    GitHub - zypro/ha_eta: Custom components for Home Assistant
    Custom components for Home Assistant. Contribute to zypro/ha_eta development by creating an account on GitHub.
    github.com

  • Hallo zusammen,


    erstmal vielen Dank für die Anleitung, das hat sehr gut funktioniert, ich musste nur keine Anpassung machen und auch den Home Assistant erstmal richtig einrichten.


    Gibt es eine komplette Dokumentation von der ETA Rest API, welcher Sensor, etc. - welche genaue Zustände und Daten liefert?


    Viele Grüße


    Sven

  • Etaminator

    Hat das Label Projekt hinzugefügt.
  • Hallo zusammen,

    bin neu hier im Board und möchte meinen ETA TWIN in HA einbinden.

    Ich habe versucht https://github.com/zypro/ha_eta einzubinden und bin da nach Anleitung vorgegangen,

    Jedoch funktioniert es bei mir leider nicht.

    Habe mal einen Screenshot angehängt meiner Config und das Logfile angehängt.


    Nach einem Neustart bekomme ich folgend Fehler:

    Logger: homeassistant.components.sensor

    Source: helpers/entity_platform.py:359

    Integration: Sensor (documentation, issues)

    First occurred: 10. November 2023 um 21:01:13 (1 occurrences)

    Last logged: 10. November 2023 um 21:01:13

    -----------

    Error while setting up eta_heating platform for sensor

    Traceback (most recent call last):

    File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 359, in _async_setup_platform

    await asyncio.shield(task)

    File "/usr/local/lib/python3.11/concurrent/futures/thread.py", line 58, in run

    result = self.fn(*self.args, **self.kwargs)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "/config/custom_components/eta/sensor.py", line 86, in setup_platform

    add_entities([

    ^

    File "/config/custom_components/eta/sensor.py", line 87, in <listcomp>

    EtaSensor(config, hass, sensor.get('name'), sensor.get('uri'), sensor.get('unit'), sensor.get('state_class'),

    File "/config/custom_components/eta/sensor.py", line 140, in __init__

    serial1 = serial1['eta']['value']['@strValue']

    ~~~~~~~~~~~~~~^^^^^^^^^

    KeyError: 'value'

    ---------


    Bin absoluter Newbie in dem Thema und komme hier leider nicht weiter.

    Wäre um Hilfe Dankbar wie es ans laufen bekomme und die Entitäten angezeigt bekomme.


    Viele Grüße

  • Hallo zusammen,


    weiß jemand ob man über die REST API auch Warnungen abgreifen kann? Aktuell schicke ich noch eine Email wenn der Aschekasten geleert werden muss. Ich frage mich ob man die Warnung auch abgreifen kann. Alternativ kann ich natürlich den Wert für Verbrauch seit Leerung Aschebox abgreifen, aber es interessiert mich dennoch ob man generell die Warnungen abgreifen kann.


    PS: Es gibt inzwischen auch eine HACS Integration für die API, damit lassen sich die gewünschten Sensoren direkt in der HA GUI einbinden.

    GitHub - nigl/homeassistant_eta_integration: Integration of ETA (Heating) sensors to home assistant
    Integration of ETA (Heating) sensors to home assistant - GitHub - nigl/homeassistant_eta_integration: Integration of ETA (Heating) sensors to home assistant
    github.com


    Gruß

    René

  • Etaminator

    Hat den Titel des Themas von „ETA: kurze Anleitung Einbindung in Home Assistant“ zu „ETA Touch: Kurze Anleitung zur Einbindung in Home Assistant“ geändert.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!