von wo hast du denn den Code kopiert? Das siehtr entweder nach automations.yaml aus, oder nach dem Code aus dem Trace Menü.
Beides ist ein schlechter Weg, da für yaml wichtige Einrückungen nicht mitkopiert werden. Die ID oben weißt auf die automations.yaml hin, wo ich nicht empfehlen würde dort direkt zu schreiben. Die ID ist sonst im yaml Bereich gar nicht vorhanden.
Du kannst einfach in der geöffneten Automation auf die drei Punkte oben rechts klicken und dann “In YAML bearbeiten” wählen. Dabei bleiben normalerweise dann beim Kopieren auch die Einrückungen erhalten.
Ich denke mal so soll eigentlich aussehen:
alias: Wallbox an - Überschuss
description: ""
triggers:
- trigger: numeric_state
entity_id: sensor.lg_ess_de1807bkrd027037_netz_aktive_leistung
for:
hours: 0
minutes: 25
seconds: 0
above: -1200
conditions:
- condition: device
type: is_off
device_id: 5947e7bb220607a5b6c64afc12b772c5
entity_id: e17bc9a47408b53ffbe71843b62377fe
domain: switch
- condition: time
before: "18:00:00"
weekday:
- mon
- tue
- wed
- thu
- fri
- sat
- sun
actions:
- type: turn_on
device_id: 5947e7bb220607a5b6c64afc12b772c5
entity_id: e17bc9a47408b53ffbe71843b62377fe
domain: switch
- action: notify.mobile_app_iphone_von_florian
metadata: {}
data:
message: Wallbox an
continue_on_error: true
mode: single
Also ich würde sagen hier ist ein Logikfehler enthalten. Du verwendest ja numeric_state. Das bedeutet aber nicht das der Status über einen gewissen Bereich so sein soll wie eingestellt. Das bedeutet, dass ausgelöst wird, wenn der Wert den eingestellt Wert unterschreitet oder überschreitet. Wird der Wert von -1200 also (hier:)überschritten above -1200 → (Richtugn 0 ist überschreiten), dann beginnt der Timer an zu laufen… im Prinzip für nichts. Du willst doch (so hab ich es verstanden) das der Wert für 25 Minuten bei weniger als dem eingestellten Wert sein muss um getriggert zu werden…
Dann der Einbruch auf -300 (es regnet), aber -300 ist immernoch größer (above) als -1200 also bleibt es dabei… → Bedingung nicht erfüllt… Es wird nicht abgebrochen.
Bei Einspeisung (Netz-Bezug ist positiv, Einspeisung ist negativ) ist -300 W (wenig Einspeisung) mathematisch größer als -1200W (viel Einspeisung). Der Trigger löst also aus, wenn weniger eingespeist wird oder sogar Strom bezogen wird! Wenn er einschalten soll, wenn mehr als 1200W eingespeist werden, müsste der Trigger below: -1200 lauten.
Vorschlag:
Erstell dir einen Helfer, der dir über 25 Minuten einen Mittelwert aus der Einspeisung bildet:
Einstellungen / Geräte und Dienste / Helfer. Dort wählst du Filter… bei Filter nimmst du dann den gleitenden Durschnitt. Bei Fenstergröße wählst du dann deine 25 Minuten aus.
Was soll der Bereich Weekday bewirken? Da steht ohnhin jeder Tag. Dann kann der auch weg…
Die 18 Uhr kannst du natürlich so lassen… 18 Uhr ist aber gerade für solche Automationen extrem hart statisch… Die Sonnenscheindauer verschiebt sich doch stark im Sommer und Winterwechsel… Da würde ich eher sunset setzen… und bspw da nen offset von 2 Stunden oder so rein nehmen… also immer 2 Stunden vor Sonnenuntergang
So könnte die Automation dann aussehen:
alias: Wallbox an - Überschuss
description: ""
triggers:
- trigger: numeric_state
entity_id: sensor.durchschnitt
below: -1200
conditions:
- condition: device
type: is_off
device_id: 5947e7bb220607a5b6c64afc12b772c5
entity_id: e17bc9a47408b53ffbe71843b62377fe
domain: switch
- condition: sun
before: sunset
before_offset:
hours: -1
minutes: 0
seconds: 0
actions:
- type: turn_on
device_id: 5947e7bb220607a5b6c64afc12b772c5
entity_id: e17bc9a47408b53ffbe71843b62377fe
domain: switch
- action: notify.mobile_app_iphone_von_florian
metadata: {}
data:
message: "Wallbox an"
continue_on_error: true
mode: single
Als Tipp:
Ich würde keine Geräte verwenden, sondern immer Entiäten. Die sind wesentlich wartungsfreundlicher. Lesbare Namen. Geht ein Gerät kaputt kannst du dem neuen Gerät dieselbe ID geben und es läuft wieder, inkl Statistikwerte. Geräte IDs sind kryptisch.