Powerfox in Homeassistant Integrieren – Api auslesen

Den kleinen Powerfox / Poweroptihabe ich ja schon vorgestellt. Ich nutze ihn jetzt knapp ein halbes Jahr und bisher läuft alles Problemlos. Seitdem Homeassistant die Möglichkeit bietet den Energieverbrauch zu monitieren macht es natürlich Sinn, die Daten auch in Homeassistant zu importieren.

Dies ist durch die einfache API von Powerfox problemlos möglich. Um es einzubinden, müsst ihr lediglich ein paar Zeilen in eurer Configuration.yaml einfügen und ihr habt dann den Aktuellen Verbrauchswert in Homeassistant und könnt ihn zum Energie Dashboard hinzufügen.

Den Code fügt ihr im Bereich sensor: hinzu oder legt diesen an, wenn ihr das noch nicht getan habt.

- platform: rest
  resource: https://backend.powerfox.energy/api/2.0/my/main/current?unit=kwh
  name: stromzaehler_gesamt_powerfox
  value_template: "{{ value_json.A_Plus }}"
  unit_of_measurement: kWh
  username: deine_mail@email.de
  password: dein_password
  authentication: basic
  scan_interval: 300
  device_class: energy
  state_class: total_increasing


Wenn alles funktioniert, könnt ihr euer Energie Dashboard unter Einstellungen > Energie hinzufügen und trackt ab da die Stunden / Tages / Monats / Jahreswerte in Homeassistant. Ich finde das eine tolle Sache, da es die Möglichkeit bieten seinen Verbrauch etwas besser zu verstehen und zu optimieren.

Ansicht des Tagesverbrauchs
Ansicht Monatsverbrauch
Jahresverbrauch

20 Kommentare

  1. Pingback: Digitalen Stromzähler auslesen – Powerfox Test – Smartebude

  2. olivet Antworten

    Danke für die Anleitung.
    den code habe ich hinzugefügt aber unter Energie taucht nichts auf.
    kann ich irgendwo prüfen, ob etwas fehlgeschlagen ist ? Muss ich bzgl. JSON etwas installieren?

    Gruß, Olivet

    • David Autor des BeitragsAntworten

      Hi,
      Ja du könntest ( sofern aktiviert ) in den Entwicklungswerkzeugen nachschauen ob dort Werte für deinen Rest Sensor vorhanden sind.

      Alternativ unter Einstellungen > Log schauen ob dort etwas auftaucht von deinem Sensor

      • oliver Antworten

        Logger: homeassistant.components.websocket_api.http.connection
        Source: components/websocket_api/connection.py:96
        Integration: Home Assistant WebSocket API (documentation, issues)
        First occurred: 20:32:15 (1 occurrences)
        Last logged: 20:32:15

        [2970263856] Received invalid command: energy/info

        das steht in den logs.

        • David Autor des BeitragsAntworten

          Das scheint unabhängig aufzutreten… Den Fehler haben scheinbar viele.

          Du könntest mich folgende 2 Zeilen zu deinem Sensor hinzufügen, danach neustarten:

          device_class: energy
          state_class: total_increasing

  3. Remy Antworten

    Hi,

    das hat super geklappt. Vielen Dank.

    Eventuell kannst du mir noch ne kleine hilfestellung geben?

    Ich hab 2 Zähler:
    Der erste ist für Haushaltsstrom
    Der zweite für die Wärmepumpe.

    Kannst du mir sagen wie ich beide anzeigen lassen kann? aktuell seh ich nur den Gesamtwert der Wärmepumpe.

    Viele Grüße
    Remy

  4. Justus Antworten

    Hi, ich habe das genau so wie du gesagt hast eingefügt in die „/config/configuration.yaml“ aber leider gibt er mir folgenden error zurück: „The system cannot restart because the configuration is not valid: Error loading /config/configuration.yaml: while parsing a block mapping in „/config/configuration.yaml“, line 3, column 1 expected , but found ‚-‚ in „/config/configuration.yaml“, line 15, column 1″
    Weisst du dazu etwas?

    • David Autor des BeitragsAntworten

      Laut Fehlermeldung hast du in Zeile 3 ein falsches Zeichen.
      Wo genau hast du den Code eingefügt? Klingt so, als wenn er nicht im Sensor Block ist.

  5. Ede Antworten

    Hi,
    ich nutze die API in Verbindung mit google Sheets/Script.
    Leider bekomme ich seit kurzem die Rückmeldung, dass ich nur eine Abfrage innerhalb von 5 Minuten machen darf. Da ich mehrere Optis habe und verschiedene Abfragen dazu machen möchte, ist das ein Worst Case für mich. Oder mache ich etwas falsch?
    Danke für die Rückantwort!
    VG,
    Ede

  6. Jan Antworten

    Ich habee das ganze wie beschrieben installiert und in den Entwicklerwerkzeugen steht als Wert unknown. Was fehlt damit es funktioniert?
    VG Jan

  7. Jan Antworten

    Hallo David,
    dies sieht dann so aus: API
    {„Outdated“:false,“Watt“:18,“Timestamp“:1653488538,“A_Plus“:28.972,“A_Minus“:0.37}

    Fehlermeldung: HA
    Logger: homeassistant.helpers.template
    Source: helpers/template.py:1879
    First occurred: 24. Mai 2022, 10:08:04 (364 occurrences)
    Last logged: 16:23:09

    Template variable error: ‚value_json‘ is undefined when rendering ‚{{ value_json.A_Plus }}‘

    müsste gehen, aber der wo ist der Fehler ?
    VG Jan

  8. Jan Antworten

    der Fehler sass wieder vor der Tastatur.
    Email statt „.com“ mit „.de“ eingegeben
    jetzt gehts. 🙂

  9. Pingback: Energie-Dashboard - IT und Hausautomation

    • Tom Antworten

      Hallo Frank,
      ich habe meine Frage hier im Board gestellt, sollte aber eigentlich an Dich gehen :-), ich hoffe, Du kannst mir helfen, ich bekomme es nicht hin.
      Mein Zähler ist ein EMH mMe4.0, die App von Poweopti zeigt Einspeisung und Netzbezug richtig an.

      im Home Assistant klappt alles bis auf die Werte der Einspeisung. Habe hier mal meine Config kopiert. Der powerOpti zeigt mir aber auch die Watt „-“ werte selbst an, nur in der Enrgie kommt nichts an. Der Netzbezug funktioniert.
      Der log vom Poweropti selbst zeigt zwar ein „-“ vor der aktuellen Leistung, also Rückspeisung, aber im Wert A_Minus eine „0“

      poweropti wechselte zu {„Outdated“:false,“Watt“:-75,“Timestamp“:1656679690,“A_Plus“:395.351,“A_Minus“:0}

      # Loads default set of integrations. Do not remove.
      default_config:

      # Text to speech
      tts:
      – platform: google_translate

      automation: !include automations.yaml
      script: !include scripts.yaml
      scene: !include scenes.yaml
      rest:
      – authentication: basic
      username: xxx
      password: xxx
      scan_interval: 15
      resource: https://backend.powerfox.energy/api/2.0/my/main/current?unit=kwh
      sensor:
      – name: „poweropti“
      json_attributes:
      – „Watt“
      – „Timestamp“
      – „A_Plus“
      – „A_Minus“
      – „Outdated“

      template:
      – sensor:
      – name: „StromShellaktuell“
      unit_of_measurement: „W“
      device_class: „power“
      state_class: „measurement“
      unique_id: „123456789987654321“
      state: >
      {{ state_attr(’sensor.poweropti‘, ‚Watt‘) }}
      – sensor:
      – name: „StromShellBezug“
      unit_of_measurement: „kWh“
      device_class: „energy“
      state_class: „total_increasing“
      unique_id: „123456789987654322“
      state: >
      {{ state_attr(’sensor.poweropti‘, ‚A_Plus‘) }}
      – sensor:
      – name: „StromShellNetzLieferung“
      unit_of_measurement: „kWh“
      device_class: „energy“
      state_class: „total_increasing“
      unique_id: „123456789987654323“
      state: >
      {{ state_attr(’sensor.poweropti‘, ‚A_Minus‘) }}

  10. Tom Antworten

    Hi, schöne Anleitung, funktioniert soweit, aber wie kann ich denn die Einspeisung auswerten? Der Zähler zeigt mir ein „-“ an, wenn meine Solarenergie den Verbrauch übersteigt. Wie kann man das erreichen, dass er einen extra sensor, nur für die Minuswerte erhält, den ich dann als „Einspeisung“ einrichten kann? irgendeine Idee?
    In der Powerfox App, klappt das, ich sehe dort auch die Werte der Einspeisung

Schreibe einen Kommentar zu oliver Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.