meX | Deine smarte Heizöl Füllstandsanzeige mit App

Hat jemand schon den mex in HA am laufen oder geht das nicht.

Habe nur den Beitrag in ioBroker Forum gefunden.

https://forum.iobroker.net/topic/33096/heizöl24-mex

Und wen es keine API gibt wird es keine Integration geben.

LG

Ok Danke dir vieleicht dauert es einfach noch

wen die im Juli 2020 gesagt haben das die an einer API arbeiten und die jetzt noch nicht draußen ist wirst du ehr ne neu Heizung haben bevor die ne API haben.
Ich glaube nicht das die daran arbeiten.

3 „Gefällt mir“

Ich habe den meX letzte Woche im Home Assistant meines Schwagers angebunden. Es waren viele Stunden voller ausprobieren, aber am Ende läuft’s. Dummerweise komme ich gerade nicht aus der Ferne auf seinen Home Assistant, aber ich versuche es mal aus dem Gedächtnis zu reproduzieren.

  1. Über den File Editor die Datei heizoel24.mex/mex.py at main · ltspicer/heizoel24.mex · GitHub anlegen
  2. Dort die Zugangsdaten für meX sowie den eigenen MQTT Broker ändern
  3. Im Skript steht “DEBUG = False”. Das mal auf “DEBUG = True” ändern
  4. Per SSH verbinden (ich nutze “Advanced SSH & Web Terminal”)
  5. Das in Schritt 1 hochgeladene Skript mit “chmod 754 mex.py” ausführbar machen. Ggf. musst du mit “cd VERZEICHNIS_NAME” erst noch zum Verzeichnis wecheln, in dem das Skript liegt
  6. Jetzt ein wenig Python-Kram installieren:
    apk update
    apk add python3
    apk add py3-pip
    pip3 install requests
    pip3 install paho-mqtt
    pip3 install typing-extensions
  7. Jetzt gerne mal testweise mit “./mex.py” ausführen. Ich hoffe, bis hierher kommen keine Fehler.
  8. Jetzt noch die Sensoren in der configuration.yaml anlegen. Hier ein Beispiel:

mqtt:
sensor:
- name: “Füllstand MEX”
state_topic: “MEX/Items/CurrentVolume”

Leider habe ich gerade nicht mehr Infos, weil ich wie gesagt aktuell keinen Zugriff auf die Home Assistant Instanz habe. Ich habe halt noch unit_of_measurement und weitere Details beim Sensor ergänzt und Sensoren für alles weitere angelegt. Die state_topic-Werte habe ich herausgefunden, indem ich unter “Einstellungen > Integrations > MQTT > Konfigurieren” auf das Topic “MEX/#” gelauscht habe, wenn das Skript ausgeführt wurde.

  1. Home Assistant neu starten
  2. Schritt 7 erneut ausführen, um noch mal die Daten zu lesen.
  3. Nun sollte es die Entität “Füllstand MEX” mit einem Wert geben
  4. So, hier hänge ich noch. Das Skript muss nun periodisch ausgeführt werden. Mit crontab wird es nicht aufgerufen. Also habe ich jetzt mal eine Automation gebaut und hoffe, dass diese täglich den Aufruf macht.
  5. Wenn alles läuft den Schritt 3 rückgängig machen und wieder “DEBUG = False” eintragen
1 „Gefällt mir“

Hi derlangemarkus,

vielen vielen Dank für diese coole Anleitung.

Bei mir wird beim zuhören nur CalculatedRemaining angezeigt wie bekomme ich die anderen Werte da rein. z.B. würde ich sehr gerne den aktuellen Füllstand per % anzeigen lassen. Und wenn ich den Sensor als Entität anzeigen lasse steht da nur “Unbekannt”. Was muss ich tun?

Hallo,

ich bekomme leider keine Werte, kann aber alle Daten per Terminal und Aufruf des mex.py abfragen.

Wenn du auf “Einstellungen > Geräte & Dienste” gehst, hast du dann dort MQTT als Integration? Wenn ich dort drauf gehe, finde ich bei mir einen Eintrag namens “core-mosquito”. Damit werden die Daten, die mex.py rausruft, abgefangen und in HA reingepackt.

Wie oben beschrieben, kann man da dann auch auf “Konfigurieren” klicken und mal auf das Topic “MEX/#” lauschen. Sobald das Skript läuft, sieht man dann, welche Daten rein kommen.

Ich vermute, da liegt der Fehler bei deinem Setup.

Hier jetzt auch mal alle Sensoren für die configuration.yaml:

mqtt:
  - sensor:
      - name: "Füllstand MEX"
        unique_id: "mex.current_volume"
        state_topic: "MEX/Items/CurrentVolume"
        json_attributes_topic: "MEX/RemainsUntilCombined/histogram/timestamp"
        unit_of_measurement: "l"
        device_class: "volume_storage"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"

  - sensor:
      - name: "Füllstand MEX in Prozent"
        unique_id: "mex.current_volume_percentage"
        state_topic: "MEX/Items/CurrentVolumePercentage"
        unit_of_measurement: "%"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Restbestand MEX in Tagen"
        unique_id: "mex.remaining_days"
        state_topic: "MEX/Items/RemainingDays"
        unit_of_measurement: "Tage"
        device_class: "duration"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Füllstand MEX ist leer am"
        unique_id: "mex.remains_until"
        state_topic: "MEX/Items/RemainsUntil"
        device_class: "timestamp"
        value_template: "{{ as_datetime(value) }}"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Verbrauch MEX"
        unique_id: "mex.usage"
        state_topic: "MEX/Items/Usage"
        suggested_display_precision: 2
        unit_of_measurement: "l/Tag"
        device_class: "volume_flow_rate"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Batterie-Ladung MEX"
        unique_id: "mex.battery_percentage"
        state_topic: "MEX/Items/BatteryPercentage"
        unit_of_measurement: "%"
        device_class: "battery"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Gekauft für MEX"
        unique_id: "mex.last_order_price"
        state_topic: "MEX/Items/LastOrderPrice"
        unit_of_measurement: "EUR"
        device_class: "monetary"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Verbleibend Wert MEX"
        unique_id: "mex.remains_value"
        state_topic: "MEX/RemainsUntilCombined/RemainsValue"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Verbleibend Einheit MEX"
        unique_id: "mex.remains_unit"
        state_topic: "MEX/RemainsUntilCombined/RemainsUnit"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Verbleibend Monat MEX"
        unique_id: "mex.month_and_year"
        state_topic: "MEX/RemainsUntilCombined/MonthAndYear"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Preis zum Vortag MEX"
        unique_id: "mex.price_compared_to_yesterday_percentage"
        state_topic: "MEX/PricingForecast/PriceComparedToYesterdayPercentage"
        unit_of_measurement: "EUR"
        device_class: "monetary"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Preisprognose MEX"
        unique_id: "mex.price_forecast_percentage"
        state_topic: "MEX/PricingForecast/PriceForecastPercentage"
        unit_of_measurement: "%"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"
  - sensor:
      - name: "Füllstandsverlauf MEX"
        unique_id: "mex.histogram"
        state_topic: "MEX/RemainsUntilCombined/histogram/dayIndex"
        json_attributes_topic: "MEX/RemainsUntilCombined/histogram/dayIndex"
        device:
          name: "MEX"
          manufacturer: "HeizOel24"
          model: "meX"
          identifiers:
            - "tg_mex"

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

1 „Gefällt mir“

MoinMoin,

vielen Dank für die Rückantwort und das super Sensoren Script.
Dein Script hatte ich gestern gleich einmal eingerichtet und auf einmal habe ich unter der MQTT Integration ein neues Gerät zu meinen bereits vorhandenen RING Cams.
Leider wird mir aber auch hier unter jedem Sensor “Unbekannt” angezeigt.
Auf der Topic MEX/# lauscht aber der MEX.
Über das Python Script wird im Debug Modus im Terminal alles richtig abgefragt.


Hast Du den MQTT direkt auf Deinem HA eingerichtet? Ich hatte jetzt mal die Debug Protokollierung aktiviert und mir die Ausgabe angesehen und finde überhaupt nichts von MEX. Meine Ring Cams werden sauber abgefragt aber sonst nichts.

Mit der Version 1.7 des mex.py Scripts läuft jetzt alles.

Hallo,

läuft das ganze eigentlich bei Euch über einen Cronjob oder wie habt Ihr das umgesetzt?

Ich habe leider das selbe Problem mit der Version 2.4,auf Topic hören ist alles da aber keine Daten in den Sensoren. Vieleicht hast du eine Lösung

Habe das gleiche Problem wie hast du es gelöst.

MoinMoin, suche mal im Netz nach der 1.7 Version des Scripts. Damit kann ich auf jeden Fall schon einmal die Daten abrufen. Leider habe ich bis jetzt immer noch keine Lösung finden können, täglich automatisch z.B. per CronJob die Werte automatisch herunterzuladen von Heizoel24.

Leider findet mann die Version 1.7 nicht nur die 2.4 hast du Sie noch und kannst mir sie schicken?

Danke dir probiers dann aus geht mit der Version 1.7 danke dir

Maybe you have time to check out my integration GitHub - MartinStoffel/heizoel24mex: Integration of HeizOel24 MEX sensor into Home Assistant

1 „Gefällt mir“

Hallo, die Idee ist klasse. Endlich keinen 2. raspi mit dem Skript für Mex oder meinen Energymeter und andere Python Skripte die mehr als pyscript benötigen.

Leider lässt HA die Installation der zusätzlichen Pakete nicht zu. Er gibt ein error bzgl. gesucherte Umgebung oder so aus.

Die Installation habe ich im Terminal von HA versucht.

Frage: läuft das bei euch und wie habt ihr die Installation der Pakete gemacht?

Gruß