Handy Ladegerät automatisch anschalten

Huhu,
ich stehe mittlerweile etwas auf dem Schlauch, was es betrifft, dass mein Pixel Ladegerät sich automatisch bei weniger als 70% anstellt.
Die erste Aktion die funktioniert trotz der vielen Ifs und und oders ganz gut…
Zwar jetzt noch ein Oder gemacht, bei der Power, dass er das bei 80% oder 100% nur überprüft, weil mein Pixel alle 2-3 Wochen das Handy von 80% auf 100% lädt. Das Ladegerät soll halt auch aus, da selbst wenn der geladen ist und nicht weiterlädt mein Ladegerät noch ein Verbrauch von 5 Watt hat (aber nur wenn Handy halt da drauf liegt…).

Lange rede gar kein Sinn… Er schaltet mein Ladegerät bei U70% nicht ein. Das ging mal, als die Automation alleine für sich stand, wollte das halt jetzt schick zusammen fassen.
Ich dachte man kann Unterschiedliche Aktionen vereinen, wie in dem Fall, wenn der Trigger in dem Fall der selbe ist. Was ja eine Veränderung des Battery Levels ist. Der löst auch aus.
Ladegerät geht aber nicht an.

Irgendwie funktioniert immer weniger, jetzt wo man langsam mehr versucht, die Automationen “aufzuhübschen” oder individueller einzustellen. Obwohl doch “eigentlich” alles dasselbe scheint. Ich glaube da ist mein Menschlicher Verstand noch nicht richtig “eingelogikt” für :wink:

alias: Pixel 8 laden
description: ""
triggers:
  - trigger: state
    entity_id:
      - sensor.pixel_8_battery_level
  - event: start
    id: Startup
    trigger: homeassistant
conditions:
  - condition: state
    entity_id: device_tracker.pixel_8
    state: home
actions:
  - if:
      - condition: or
        conditions:
          - condition: numeric_state
            entity_id: sensor.shelly_plug_s_02_ladegerat_watt
            above: 3
            below: 6
          - condition: and
            conditions:
              - condition: numeric_state
                entity_id: sensor.pixel_8_battery_power
                above: -0.5
                below: 0.5
                enabled: true
              - condition: or
                conditions:
                  - condition: numeric_state
                    entity_id: sensor.pixel_8_battery_level
                    above: 99
                  - condition: numeric_state
                    entity_id: sensor.pixel_8_battery_level
                    above: 79
                    below: 81
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Startup
              - condition: or
                conditions:
                  - condition: numeric_state
                    entity_id: sensor.shelly_plug_s_02_ladegerat_watt
                    above: 3
                    below: 6
                  - condition: numeric_state
                    entity_id: sensor.pixel_8_battery_power
                    above: -0.5
                    below: 0.5
    then:
      - action: switch.turn_off
        metadata: {}
        data: {}
        target:
          entity_id: switch.shelly_plug_s_02_ladegerat_switch
      - action: notify.mobile_app_pixel_8
        metadata: {}
        data:
          message: >-
            Dein Pixel ist auf {{ states('sensor.pixel_8_battery_level') }}%
            geladen.
          title: Fullpower
          data:
            ttl: 0
            priority: high
  - if:
      - condition: numeric_state
        entity_id: sensor.pixel_8_battery_level
        below: 70
      - condition: and
        conditions:
          - condition: trigger
            id:
              - Startup
          - condition: numeric_state
            entity_id: sensor.pixel_8_battery_level
            below: 70
    then:
      - action: switch.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: switch.shelly_plug_s_02_ladegerat_switch
mode: single

Du hast die conditions unten als and drin, heißt nur beim Homeassistant startup greift deine zweite Action

Ich habe doch beides oder nicht? Einmal wenn unter 70% und einmal wenn unter 70% & Home Assistant startet?
Und sind die Wenn in den Condition nicht auch als “Oder” bzw. das erste was stimmt greift? Ansonsten habe ich ja halb Doppelt gemoppelt :thinking:

Gibt es einen bestimmten Grund, warum der Startup-Trigger nochmals in den Bedingungen auftaucht?

Ich sehe den zweiten Block (Schalter an) ebenfalls als doppeltgemoppelt.

Den ersten Bedingungsblock (Schalter aus) lese ich so:

Iirgendeine von drei Bedingungen soll erfüllt sein:

  1. Entweder: Wattzahl zwischen 3 und 6

  2. oder:
    battery power zwischen-0.5 und 0.5 UND battery level >99 oder
    battery power zwischen-0.5 und 0.5 UND battery level zwischen 79 ind 81

  3. oder:
    Trigger = startup UND Wattzahl zwischen 3 und 6 oder
    Trigger = startup UND battery power zwischen-0.5 und 0.5

Erster Schritt sollte immer sein, in die traces zu schauen.

Hm nein, es gibt keinen Grund, stimmt, dass braucht man ja nicht. Einfach öhm… Menschliches Versagen. :sweat_smile:
Stimmt aus dem ersten Block kann der ja auch raus…

Der erste Bedingungsblock ist so auch richtig. Da die Wattzahl zwischen 3-6 Watt meistens die Leerlauf war vom Ladegerät. Auch wenn ich dachte, da habe ich einen warte 1 Minute drinnen gehabt, damit er nicht zufällig mal ausgeht, beim laden, wenn er mal diesen Wert hat.
Bin da noch etwas am herum probieren und verfeinern. Bei der Power hatte ich das und hinzugefügt, weil er sonst zwischendrinnen auch mal ausgelöst hat, wenn das Handy im Idle Modus war.

Habe jetzt mal Temporär den Wert geändert, für Ladegerät an, weils Handy geladen war, wegen dem Trace. Jetzt ging es…
Die Sache mit dem Startup habe ich rausgenommen. Wenn das nicht jetzt andere Gründe des Erfolges hat. Die Bedingung war doch nur doppelt, er hätte doch unabhängig vom Home Assistant auslösen müssen oder “was denkt” da Home Assistant Logisch, damit ich das für mich (zukünftig) nachvollziehen kann. Die Wenn lösen doch aus, wenn einer davon ausgelöst wird?
Einmal war ja unter 70, die zweite war unter 70 und Startup. Die erste war doch da wahr?

Alles gut. Wollte nur sichergehen, das richtig verstanden zu haben.
Du kannst so viele Trigger reinknallen, wie du willst. Trigger sind grundsätzlich oder (es sein denn, du benutzt einen Template-Trigger, wo du mehrere Sachen bestimmen kannst).

Warum das Ganze nicht gemacht hat, was du willst, kann dir wie gesagt am besten die trace verraten. Schau doch mal in die trace-Historie.

1 „Gefällt mir“

Ich habe eben mal geschaut, allerdings kann ich den Trace nicht weit genug zurück legen. Weiß nicht, ob da nur die letzten 5 angezeigt werden. Aber ich kann nicht mehr den letzten (heutigen) nachvollziehen, warum er unter 70% nicht anging, weil der Trace ja bei jedem Prozent anging und er anscheinend so viele nicht verfolgen kann.
Muss also warten bis mein Handy wieder leerer wird. :slight_smile:

Wenn du willst, kannst in den Yaml-Modus der Automation switchen und Folgendes reinkopieren:


trace:
  stored_traces: 25

HA speichert von Haus aus nur die letzten 5. Mit dem obigen Code kannst du eine andere Speicherzahl festlegen.

1 „Gefällt mir“

Guten Morgen,
danke für den Hinweis Kitty. Auch wegen den Trace, ich glaube ich vergesse den leider noch zu oft.
Das Problem schien sich jetzt ohne die UND Bedingung des gestarteten Home Assistant gelöst zu haben. Ich habe jetzt Testweise nochmal wieder erstellt. Und Zack schaltete sich die Automation nicht mehr ein. Ich weiß, ich brauche die nicht.
Jetzt würde mich aus Lernzwecken aber noch interessieren. Warum löst er denn nicht aus, obwohl doch die erste Bedingung dass er unter 70% bzw. die erste WENN ja erfüllt ist? :thinking:


Ich nehme an, dass die Konfiguration schneller geladen wurde, als das Event start gegriffen hat, somit der Batterie-Sensor bereits verfügbar wurde, während HA den Start noch nicht vollständig abgeschlossen hatte.

1 „Gefällt mir“

Hm? In meinem Test hatte ich jetzt Home Assistant gar nicht neu gestartet. Ich habe den Startup ja nur als “Backup”, wenn ich Home Assistant neu starte, dass er die Automation auch neu abruft, auch wenn das Handy schon Unter 70% ist.
Ansonsten gilt ja immer das erste, wenn unter 70%. Also mein Gedanke Entweder U70% oder Startup Und U70%

Ach so, war gedanklich beim ersten Block.

Der zweite Block ist eine UND Verknüpfung. Da die Automation nicht durch Startup getriggert wurde, kann die Bedingung nicht erfüllt sein…

1 „Gefällt mir“