Hallo zusammen,
ich brauche mal Eure Hilfe. So langsam bin ich leicht überfragt und hoffe auf Eure Kompetenz.
Wie Simon in seinem Block beschrieben hat, habe ich erfolgreich seit einem Jahr einen Hichi IR-WiFi mit Tasmota-SML Stromzähler im Einsatz.
Auch die Template Sensoren konnte ich nahezu übernehmen.
Beim näheren prüfen ist nun mit der Spook Integration und den neuen Updates von HA ein paar Fehlermeldungen aufgetreten.
Ursprünglicher code in der configurtion. yaml unter den Punkt template:
- sensor:
# Stromzähler Keller Verbrauch
- name: "Stromzähler Verbrauch"
unique_id: "StromVerbrauch"
unit_of_measurement: 'kWh'
device_class: "energy"
state_class: "total_increasing"
state: >-
{{ float(states('sensor.tasmota_sml_total_kwh')) | round(3) }}
geänderte Code um die float Default Problematik zu lösen
- sensor:
# Stromzähler Keller Verbrauch
- name: "Stromzähler Verbrauch"
unique_id: "StromVerbrauch"
unit_of_measurement: 'kWh'
device_class: "energy"
state_class: "total_increasing"
state: >-
{{ states('sensor.tasmota_sml_total_kwh') | float(default=0) | round(3) }}
nun bekomme ich zwar keine Fehlermeldungen mehr jedoch bekomme ich jetzt Werte die utopisch und falsch sind. Dabei werden die Gesamtjahreswerte angegeben und nicht wie üblich immer nur die Differenz. Das passiert mal öfter mal weniger aber fast täglich. Und ja das liegt höchstwahrscheinlich am schlechten Wlan empfang im Keller.
Jedoch hat Chat GPT und folgender Post gezeigt dass dies auch gelöst werden kann.
https://community.simon42.com/t/fehlerhafte-messwerte-energie-dashboard/8936/9
Chat GPT hatte mir folgendes gezeigt:
- sensor:
# Stromzähler Keller Verbrauch
- name: "Stromzähler Verbrauch"
unique_id: "StromVerbrauch"
unit_of_measurement: 'kWh'
device_class: "energy"
state_class: "total_increasing"
state: >-
{% set new_value = states('sensor.tasmota_sml_total_kwh') | float(default=0) %}
{% set last_value = states('sensor.stromzahler_verbrauch') | float(default=0) %}
{% if new_value >= last_value and (new_value - last_value) < 10 %}
{{ new_value | round(3) }}
{% else %}
{{ last_value | round(3) }}
{% endif %}
Leider funktioniert dieser code nicht wirklich, da die bekannten Templatesensoren (obwohl die Angabe des Namens ja identisch ist und nur die Berechnung angepasst wurde) nicht mehr erkannt wurden zu den vorhandenen im Energiedashboard.
Daher meine Frage an Euch: Wie kann ich diesen Code zum laufen bringen, sodass diese utopischen Werte herausgefiltert werden und die gleichen Sensoren benutzt werden um keine Daten zu verlieren oder neue Sensoren im Enegiedashboard hinzufügen zu müssen?
Oder wie habt ihr diese Problematik behoben?
VG Markus