Template Nutzung - Sensor

Hallo

ich mache gerade meine ersten Schritte mit HA und versuche ein paar Sachen auszutesten. Dabei bin ich zu dem Problem gekommen, dass die gelieferten Werte der Stromzähler anscheinend nicht so direkt nutzbar sind. Bei der Suche bin ich auf die Möglichkeit der Nutzung von Templates gekommen.
Problem ist folgendes:

Habe zwei Zähler - 1x Zweiwegezähler 1x PV-Anlagenzähler.

Der Anlagenzähler liefert mir über das json-File:
Wirkleistung_Bezug.Lieferung170 einen negativen Wert
Der Zweiwegezähler liefert mitr über das json-File:
Wirkleistung_Bezug.Leistung170 immer nur einen Wert - unabhängig, ob es sich um Leistung
von aussen (Fremdstrom) oder abzugebene Lesitung handelt

Ich habe mir in einer Sensor.yaml über die Platform:Rest diverse Entitäten erstellt - u.a.:

Fremd_Ext_Ext_Bezug_Aktuell (Wirkleistung_Bezug.Leistung170) → aus Zweiwegezähler
PV_Lieferung_Aktuell (Wirkleistung_Bezug.Leistung170) → aus Zweiwegezähler
PV_Erzeugung_Aktuell (Wirkleistung_Bezug.Leistung170) → aus PV-Anlagenzähler

Leider ergibt es ich, dass die Entitäten “PV_Lieferung_Aktuell " und Fremd_Ext_Ext_Bezug_Aktuell” immer den gleichen Wert anzeigen.

Jetzt war mein Gedanke, die Entitäten über ein Template anzupassen:

In den Entwicklerwerkzeugen habe ich es ausgetestet:

Dann habe ich versucht, das in der “sensor.yaml” entsprechend einzufügen (nicht wundern, es ist bewusst auskommentiert, weil es aktuell nicht läuft).

06-05-2023_11-43-09

Und da bin ich an dem Problem. Wenn ich die Kommentierung wegneheme und die Konfiguration prüfen lasse, dann läuft die Prüfung ohne Ende. Leider weiss ich nicht warum?
Dazu fehlt mir noch die Erfahrungen als Anfänger der Materie.

Aber vielleicht sieht jemand den Grund und kann mir einen Hinweis geben.

Danke

Karl

Moin,
nimm es mal aus der sensor.yaml raus und pack es in die template.yaml
und Herzlich Willkommen in der Community

LG
Tobi

Ok, habe ich gemacht , die Überprüfung ist durchgeführt.

Muss ich die Datei dann noch in der configuration.yaml noch mit dem Befehl:

template: !include template.yaml

noch einfügen?
Weil nach dem Neustart war meine neue Entität nicht verfügbar…

Oder muss ich den EIntrag ändern - habe jetzt Template-Einträge gefunden, wo der Abschnitt:
- platform: template
sensors:

nicht drin sind?

Karl

Moin,
ja du musst template: !include template.yaml in die configuration.yaml schreiben wenn es da noch nicht drin ist.
In der template.yaml fängst du dann am besten so an:

- sensor:
  - name:
    state_class:
    ....usw

LG
Tobi

Tobi,

danke für deine Hilfe - habe es soweit eingefügt, aber ich bekomme jetzt im Log eine Fehlermeldung:

…die mir erst mal nichts sagen.

Die Einträge in der template.yaml sehen so aus:

06-05-2023_13-59-11

Ist der Aufbau verkehrt?

Karl

Moin,
hier nochmal eine kleine hilfe zum Code posten.
ich würde bei ID`s immer ohne Leerzeichen arbeiten siehe deine unique_id.
und bei Watt müsste das state_class: measurement sein, was anderes fällt mir grade nicht auf.

Edit:
Und es sieht so aus als ob er Probleme mit dem Namen hat warum auch immer.
Ich benutze da meistens " aber eigentlich müsste ' auch funktionieren.

LG
Tobi

Ja, ich habe beide Varianten immer wieder mal gefunden (') oder (") und beide mal probiert - aber immer wieder die gleiche Meldung:

2023-05-06 14:29:51.729 ERROR (MainThread) [homeassistant.config] Invalid config for [template]: expected dictionary for dictionary value @ data[‘sensors’][‘device_class’]. Got ‘power’ <<
naja, ich werde mal weiter probieren…

Nachtrag:

bin einen Schritt weitergekommen und die Entität wird erstellt… Leider wird kein Wert eingetragen

Beim Testen wird ein Wert ausgegeben (jetzt gerade 0)…dann sollte doch auch der Wert “0” angezeigt werden.

06-05-2023_16-42-30

Gibt es noch irgend was anderes zu beachten?
Bin für jeden Hinweis dankbar…

Gerade gesehen, die folgende Fehlermeldung im Log.

bzw. diese Meldung

ValueError: Sensor sensor.emlog_pv_lieferung_aktuell_template_2 has device class power, state class measurement unit W and suggested precision None thus indicating it has a numeric value; however, it has the non-numeric value: (<class ‘str’>)

wie kann ich das vermeiden?

Karl

:crayon:by HarryP: Zusammenführung Doppelpost.
*@KHK *
Die “bearbeiten” Funktion hast Du ja schon ausprobiert, bitte verwende diese zukünftig innerhalb der ersten 24h auch für Ergänzungen/Korrekturen. Danke!

@KHK

Vorab herzlich willkommen im HA-Forum! :slight_smile:

Hilft Dir dieses Video von @simon42 evtl. weiter?

Hallo
ich brauche noch ein wenig Unterstützung - habe jetzt verschiedene ähnliche “Templates” mir mal angeschaut, aber irgendwie will es nicht so wie ich es gern möchte…vielleicht nur eine Kleinigkeit, dich ich ständig übersehe.
In der “Template Entwicklungs-Umgebung” habe ich folgendes getestet:

Ich habe in der “template.yaml” folgenden Eintrag dann gemacht:

09-05-2023_15-01-53

Bei der Aktivierung bekomme ich dann folgende Fehlermeldung in dem Log:

Leider sagt mir diese Fehlermeldung erst mal gar nichts - bei der G-Suche habe ich nichts gefunden, was mir irgendwie weitergeholfen hat.

Bin für jeden Hinweis dankbar.

Karl

Moin,
warum hast du am ende der template.yaml 2 x {% endif %} stehen?
Und es wäre schon wen du die Sachen als Code posten würdest und nicht als Bild.
Ich hätte keine Lust für eine Lösung alles abzutippen.

LG
Tobi

Du schreibst auch an einer Stelle ’ und an anderer ".

Probiere es mal mit {{ solar + house }} anstelle von {% set ... (solar + house) %}
Info:

Du möchtest ja das ausgeben (print) in deinem Sensor deswegen musst du deine Rechning in deiner If schleife in {{ }} setzen.

sri, ich werde es mal probieren - bei Gelegenheit den code zu posten…

…und werde mal mit den weiteren Hinweisen probieren.

:crayon:by HarryP: Zusammenführung Doppelpost.
@KHK
Bitte zukünftig für Nachträge/Korrekturen die „bearbeiten“ Funktion (geht 24h) verwenden. Danke!

danke für den Hinweis…

1 „Gefällt mir“