Template für Ecotracker

Hallo zusammen,
ich bin relativ neu im Thema Homeassitant und versuche den EcoTracker von everhome auszulesen. Ich habe dazu folgendes in der configuration.yaml hinzugefügt:

Es gibt keine Syntaxfehler, die configuration.yaml lässt sich ohne Probleme laden, und die Sensoren werden auch angelegt. Sie erhalten aber leider keine Werte!
Kann mir jemand weiterhelfen?

:pencil2: by tarag: Bild aufgrund von Anzeige Zugangsdaten gelöscht.

Moin,
wenn du Code postest bitte immer als Formatierten Text:
image
Das macht den Leuten hier das leben leichter.

für mich sieht die Einrückung verkehrt aus, das müsste so anfangen:

template:
  - sensor:
      - name: ....

Hast du mal bei dir nachgeguckt hast du überhaupt einen Sensor der so heißt:
image
Oder hast du den Code nur von irgendwo aus dem Internet.

Außerdem wird der Rest Sensor nicht im Bereich Template funktionieren:

sensor:
  - platform: rest
    ...

Du hast da auch dein Passwort mit im Bild, weswegen du es aus dem Post löschen solltest und ich empfehle dir ein Passwortmanager, dann brauch man nicht so leicht Passwörter nehmen.
Außerdem hast du password: falsch geschrieben.
image

LG
Tobi

1 „Gefällt mir“

Hey, es gibt nen Github mit einer Schritt für Schritt Einrichtung. Damit habe ich das problemlos hinbekommen.

Warum ist HA so unfreundlich zu mir?
Es ist doch alles richtig:

Die Ecotracker-Entitäten sind in der Config.yaml eingetragen:

template:
  - sensor:
    - name: "Ecotracker Aktueller Verbrauch"
      unique_id: "EcoTrackerVerbrauch"
      device_class: "power"
      state_class: "measurement"
      unit_of_measurement: "W"
      state: >
            {{ state_attr('sensor.ecotracker', 'power') }}

    - name: "Ecotracker Bezug"
      unique_id: "EcoTrackerBezug"
      device_class: "energy"
      state_class: "total_increasing"
      unit_of_measurement: "KWh"
      state: >
            {{ iif(state_attr('sensor.ecotracker', 'energyCounterIn'), (state_attr('sensor.ecotracker', 'energyCounterIn') | float/1000)| round(2)) }}

    - name: "Ecotracker Einspeisung"
      unique_id: "EcoTrackerVerbrauch"
      device_class: "energy"
      state_class: "total_increasing"
      unit_of_measurement: "kWh"
      state: >
            {{ iif(state_attr('sensor.ecotracker', 'energyCounterOut'), (state_attr('sensor.ecotracker', 'energyCounterOut') | float/1000)| round(2)) }}

Ich habe sogar eine unique-id vergeben, nachdem ich irgendwo las, das das irgendwie relevant ist.

Auch in den Entwicklerwerkzeugen finde ich keine Auffälligkeiten:

Trotzdem kann ich sie nicht im Energiedashboard zuweisen. Das heißt der Einspeisungssensor ging zunächst (bis ich heute versucht habe es zu richten), nur der Bezugssensor nicht. Jetzt sind beide verschwunden …

P.S.:

Ach ja, die Helfer für die Sensoren gibt es natürlich auch:

Problem gelöst: in den Statements für die configuration.yaml aus GitHub ist ein Fehler!!!
Als Einheit für den Bezug steht “KWh” drin. Deshalb wird der Sensor nicht erkannt. Ich habe es in “kWh” geändert und nach 2 Tagen hatte sich der Sensor eingerenkt und dann ging es.

Aber es ergibt sich eine weitere Frage:

Wann man den aktuellen Bezug in W (nicht kWh) haben möchte muss man einen Helfer anlegen, der direkt die Entität “sensor.ecotracker” ausliest (ich vermute die Werte stammen aus der .json) und hier den Wert für “power” aus dem String extrahiert. Aber wie macht man sowas?

Guten Tag Leute,

ich habe das Template (s.u.) in die YAMAL eingebaut, fehlerfrei, HA Neustart. Die Entitäten von Ecotracker werden angezeigt, aber alle mit Wert Null. Ich habe einen Zweitarif Zähler. Verbräuche weden in der Everhome app angezeigt.

Ecotracker hat in der Fritzbox eine feste IP.

In der Everhome App ist Lokaler HTTP-Server: ja.

Mit Zugriff auf die JSON Daten im Brower werden die Verbrauchswerte dargestellt:

{
	"power":	343.83,
	"powerAvg":	345,
	"agePower":	776,
	"energyCounterOut":	133330.2,
	"energyCounterIn":	7928794.2,
	"energyCounterInT1":	5337201.6,
	"energyCounterInT2":	2591592.6
}

Problem: In HA werden die Werte nicht angezeigt, alles Null.

Zugriff auf den Ecotracker scheint zu funktionieren:

source_type: router ip: 192.168.178.157

last_time_reachable: 2026-02-15T08:42:41+00:00 connected_to: fritz.repeater

  1. Muss ich in der Fritzbox noch einen Portfreigeben ?
  2. Muss in der App etwas bei den Geräteeinstellungen geändert werden?
  3. Ist der Code fehlerhaft ?
  4. Muss irgendwo in HA noch was aktiviert werden?
  5. Oder dauert die Datenweitergabe tatsächlich mehrere Tage ?

Ich würde mich über eine Hilfestellung freuen, da diese Nullwerte scheinbar auch andere User am Anfang hatten.

Gruß Axel

# Eco-Tracker - Start

rest:
  - scan_interval: 5
    resource: http://192.168.172.157/v1/json
    sensor:
      - name: "ecotracker_api"
        json_attributes:
         - "power"
         - "powerAvg"
         - "energyCounterIn"
         - "energyCounterOut"
 
template:
  - sensor:
    -  name: "EcoTracker-aktueller-Verbrauch"
       unique_id: "EcoTrackerVerbrauch"
       device_class: 'power'
       # kann negativ sein, deswegen die Abfrage
       # zaehler laeuft nicht rueckwaerts
       state: >
               {% if ((state_attr('sensor.ecotracker_api', 'power') | float(0)) | round(2)) < 0 %}
                {{(states ('0.0') | float(0)) |round(2) }}
               {% else %}
                {{ ((state_attr('sensor.ecotracker_api', 'power') | float(0)) | round(2)) }}
               {% endif %}
       unit_of_measurement: "W"
       
    -  name: "EcoTracker-aktueller-Verbrauch"
       unique_id: "EcoTrackerBalkon"
       device_class: 'power'
       # kann negativ sein, deswegen die Abfrage
       state: "{{ ((state_attr('sensor.ecotracker_api', 'power') | float(0)) | round(2)) }}"
       unit_of_measurement: "W"

    -  name: "EcoTracker-durchschnitt-Verbrauch"
       unique_id: "EcoTrackerDurchschnitt"
       device_class: 'power'
       state: "{{ ((state_attr('sensor.ecotracker_api', 'powerAvg') | float(0)) | round(2)) }}"
       unit_of_measurement: "W"

    - name: "EcoTracker-Netzbezug"
      unique_id: "EcoTrackerBezug"
      state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterIn') | float(0)) / 1000) | round(2)) }}"
      unit_of_measurement: "kWh"
      device_class: 'energy'
      state_class: "total_increasing"

    - name: "EcoTracker-Einspeisung"
      unique_id: "EcoTrackerEinspeisung"
      state: "{{ (((state_attr('sensor.ecotracker_api', 'energyCounterOut') | float(0)) / 1000) | round(2)) }}"
      unit_of_measurement: "kWh"
      device_class: 'energy'
      state_class: "total_increasing"

# Eco-Tracker - Ende

Log

Logger: homeassistant.components.rest.data
Quelle: components/rest/data.py:175
Integration: RESTful (Dokumentation, Probleme)
Erstmals aufgetreten: 11:25:01 (7 Vorkommnisse)
Zuletzt protokolliert: 11:33:12

Timeout while fetching data: http://192.168.172.157/v1/json

Nach 1 Tag hat es ohne Veränderung der Konfig. die Werte angezeigt.

Wie ich schrub: das braucht seine Zeit. Geduld!