Ecotracker im HA Energiedashboard

ich habe irgendwie unsinnige Werte im Standard Energie, Dashboard. Ich lese meinen Zähler mit dem EcoTracker aus und dieser ist in der Yaml ja als ein Sensor definiert der positive wie negative Werte annehmen kann . Im Energieflow Dashboard Plus welches ja die aktuellen live Daten zeigt kann man ja auch definieren das es ein Sensor mit diese beiden Zuständen ist. Im „Normalen“ Dashboard aber nicht ? Ich hab die Yaml aus der Community übernommen und dann den/die Helfer erstellt. Wo ist meine Fehler oder was hab ich vergessen?

Ein Energy Sensor hat normalerweise nur positive Werte, ich tippe mal das du hier einen Power Sensor meinst.
Für das Energie Bord benötigst du zwei Sensoren, also Bezug und Einspeisung. Also musst du aus dem Power Sensor zwei getrennte Sensoren erstellen

Daraus dann zwei Energy Sensoren

Moin, ich glaube du verwechselst hier etwas. Du hast aktuell Livedaten in Watt für positive und negative Werte. Du musst dir aber für das EnergieDashboard kWh Werte erstellen. Du brauchst also Sensoren in kWh für das Energie Dashboard und den Rest hat Drecksfresse schneller erklärt… :wink:

Hmm ok und wie bringe ich den einem Sensor bei das er nur die negativen Werte aus dem Powerdaten vom ecotracker nimmt und der andere nur die positiven Werte? Die Quelle ist ja für beide identisch (deswegen sehe ich ja auch die „komischen „Werte bei mir (vermutlich)

am besten in der Yaml:
Name und unique_id bitte anpassen und
natürlich deinen Sensor verwenden :v:

template:
  - sensor:

# Überschuss positiv
#
#
      - name: Ueberschuss Lepus Power positiv
        state: >
         {% set x = states('sensor.bitshake_smartmeterreader_lepus_power') |float(0) %}
         {% if x <= 0 -%}
         {{ x *-1 }} 		 			 			 		 
         {% else %}
         0
         {% endif %}        
        icon: mdi:flash-red-eye
        unit_of_measurement: 'W'
        device_class: power
        state_class: measurement
        unique_id: ueberschuss_lepus_power_positiv_0000000000
#
#
# Netzbezug
#
#
      - name: Netzbezug Lepus Power
        state: >
         {% set x = states('sensor.bitshake_smartmeterreader_lepus_power') |float(0) %}
         {% if x >= 0 -%}
         {{ x }} 		 			 			 		 
         {% else %}
         0
         {% endif %}       
        icon: mdi:flash-red-eye
        unit_of_measurement: 'W'
        device_class: power
        state_class: measurement
        unique_id: netzbezug_lepus_power_0000000000

und danach für beide neuen Sensoren noch jeweils einen Integralsensor [kWh] erstellen

Vielen Dank, ich denke ich bin ein etwas weiter gekommen. (Hoffe ich),

Ich habe eine neue template_sensors.yaml erstellt und dort die Konfiguration erstellt

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

    - name: "Ecotracker Bezug Total"
      device_class: "energy"
      state_class: "total_increasing"
      unit_of_measurement: "kWh"
      state: >
        {{ state_attr('sensor.ecotracker', 'energyCounterIn') | default(0) | float / 1000 | round(2) }}

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

    - name: "Ecotracker_Einspeisung Power negativ"
      device_class: power
      state_class: measurement
      unit_of_measurement: 'W'
      unique_id: Ecotracker_Einspeisung_power_negativ_0000000000
      state: >
        {% set x = states('sensor.ecotracker_power') | float(0) %}
        {% if x <= 0 %}
          {{ x * -1 }}
        {% else %}
          0
        {% endif %}

    - name: "Netzbezug Ecotracker positiv"
      device_class: power
      state_class: measurement
      unit_of_measurement: 'W'
      unique_id: Netzbezug_Ecotracker_power_positiv_0000000000
      state: >
        {% set x = states('sensor.ecotracker_power') | float(0) %}
        {% if x >= 0 %}
          {{ x }}
        {% else %}
          0
        {% endif %}

Und dann die beiden Integralsensoren

Hat ne Weile gedauert bis ich das mit den Einrückungen so hinbekommen hat das keiner Fehler mehr erscheint.
Aber im Energiedashboard ist immer noch alles „0“. Vielleicht noch etwas Geduld?

EDIT: Code bitte immer im Editor über die Codefunktion „</>“ einfügen

Das Energie Dashboard wird stündlich mit den aktuellen Daten aufgerechnet, daher einfach etwas Geduld haben. :slight_smile:

Guten Morgen, nein leider auch heute Morgen nix.

die Konfiguration hat anscheinend immer noch irgendwo ein Fehler

Dann zeige doch mal bitte all diese Sensoren in den Entwicklerwerkzeugen => Template

trage das bitte bei dir mal ein und zeige einen Screenshot von dir

Ecotracker aktueller Verbrauch
{{ states('sensor.ecotracker_aktueller_verbrauch')}}
{{ state_attr('sensor.ecotracker', 'power') }}

Ecotracker Bezug Total
{{ states('sensor.ecotracker_bezug_total')}}
{{ (state_attr('sensor.ecotracker', 'energyCounterIn') | default(0) | float(0)) / 1000 | round(2)}}

Ecotracker Einspeisung Total
{{ states('sensor.ecotracker_einspeisung_total')}}
{{ (state_attr('sensor.ecotracker', 'energyCounterOut') | default(0) | float(0)) / 1000 | round(2) }}

Ecotracker_Einspeisung Power negativ
{{ states('sensor.ecotracker_einspeisung_power_negativ')}}
{{ states('sensor.ecotracker_power')}}

Netzbezug Ecotracker positiv
{{ states('sensor.netzbezug_ecotracker_positiv')}}
{{ states('sensor.ecotracker_power')}}

Was mir beim erstellen aufgefallen ist, diese sind meines Erachtens FEHLERHAFT
Korrigiert habe ich sie oben

{{ state_attr('sensor.ecotracker', 'energyCounterIn') | default(0) | float / 1000 | round(2) }}
sowie
{{ state_attr('sensor.ecotracker', 'energyCounterOut') | default(0) | float / 1000 | round(2) }}

Anmerkung: hier fehlen bei allen die unique_id:
das führt dazu das du sie in der WebUI nicht bearbeiten kannst
daher noch bei jeden diesen Eintrag hinzufügen
Beispiel für den ersten Sensor

        unique_id: ecotracker_aktueller_verbrauch

bei den anderen bitte anpassen
Achtung: keine Leerzeichen, nur Kleinschreibung und EinEinDeutig (nur ein mal vergeben)


Danke, so siehts jetzt aus. Irgendwo ist aber immer noch der Wurm drinm, denn die beiden Neuen unten sind ja 0 obwohl der aktuelle Verbrauch größer 0 ist

Eigentlich solltest du den Code von mir nehmen :hugs:
Also bitte noch einmal,
Aber ich schau mir das mal am Laptop an

so:

oben erstellst du einen Power Sensor:

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

der Sensor heist also: „sensor.ecotracker_aktueller_verbrauch

und zum Aufteilen verwendest du aber: "sensor.ecotracker_power"
Was ist das für ein Sensor?
und was gibt dieser aus (ohne Aufteilung)

{{ states('sensor.ecotracker_power')}}

stand ja schon oben in meinem Code

Danke, ich habs dann jetzt auch hinbekommen. :slight_smile: negativ und positiv wird jetzt richtig angezeigt und verrechnet. Und an einem Dashboard habe ich auch rumgespielt :slight_smile: