olnyhm
5. Oktober 2024 um 10:40
1
Moin,
Ich bin noch recht neu was HA angeht.
Habe shellys und auch schon ein paar zigbee Geräte integriert.
Aber folgendes Problem bekomme ich irgendwie nicht gelöst:
BWM im Durchgang soll das Licht gedimmt einschalten (32%) und wenn keine Bewegung erkannt nach 30sek wieder ausschalten.
Soweit so gut.
Wenn das Licht aber mit mehr als 33% eingeschaltet ist (ist dimmbar und wird eben manchmal heller benötigt) dann soll das Licht nicht ausgeschaltet werden.
Versucht habe ich es mit einer wenn dann Abfrage, aber hier wird das Licht dann auch nicht mehr ausgeschaltet wenn die Helligkeit nur auf 32% steht.
So in etwa:
alias: Lichtsteuerung
description: ""
triggers:
- trigger: state
entity_id:
- binary_sensor.xyz
from: "off"
to: "on"
id: einschalten
- trigger: state
entity_id:
- binary_sensor.xyz
from: "on"
to: "off"
id: ausschalten
for:
hours: 0
minutes: 0
seconds: 30
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id:
- einschalten
- condition: state
entity_id: light.xyz
state: "off"
sequence:
- action: light.turn_on
metadata: {}
data:
brightness_pct: 32
target:
entity_id: light.xyz
- conditions:
- condition: state
entity_id: light.xyz
state: "on"
- condition: trigger
id:
- ausschalten
- condition: template
value_template: >-
{{ state_attr('light.xyz', 'brightness') <=
(255*0.33) }}
sequence:
- action: light.turn_off
metadata: {}
data: {}
target:
entity_id: light.xyz
mode: single
Gruß
Osorkon
olnyhm
5. Oktober 2024 um 15:45
3
HI, danke für die schnelle Antwort.
da ich es auch gerne für zukünftige Projekte verstehen möchte, warum funktioniert es nicht auf folgende weise?
- id: '1728142848648'
alias: Neue Automatisierung
description: aktiv für 2 min
trigger:
- platform: state
entity_id:
- binary_sensor.bwm_durchgang_occupancy
to: 'on'
condition:
- condition: device
type: is_off
device_id: e0e527fa45ba2c5fcd2356611bf34dec
entity_id: 200ab581906be78a8845755af062f90c
domain: light
for:
hours: 0
minutes: 0
seconds: 1
enabled: true
- condition: state
entity_id: light.durchgang_licht
attribute: brightness
state: <= 36
action:
- type: turn_on
device_id: e0e527fa45ba2c5fcd2356611bf34dec
entity_id: 200ab581906be78a8845755af062f90c
domain: light
brightness_pct: 32
- wait_for_trigger:
- platform: state
entity_id:
- binary_sensor.bwm_durchgang_occupancy
to: 'off'
for:
hours: 0
minutes: 0
seconds: 30
- type: turn_off
device_id: e0e527fa45ba2c5fcd2356611bf34dec
entity_id: 200ab581906be78a8845755af062f90c
domain: light
mode: single
Gruß Daniel
Zum einem ist die einen Bedingung falsch:
- condition: state
entity_id: light.durchgang_licht
attribute: brightness
state: <= 36
Muss lauten:
- condition: numeric_state
entity_id: light.durchgang_licht
attribute: brightness
above: 32
Zum anderen wird Dir Dien Licht immer nach 30s ausgehen, egal ob zu dem Zeitpunkt noch einen Bewegung erkannt wird oder nicht?
Verwende keine Verzögerungen oder Warten auf Auslöser zum Ausschalten des Lichtes. Sondern immer eindeutige Ausläser
Bewegung an → Licht einschalten
Bewegung aus für x Sekunden/Minuten → Licht ausschalten
Anstatt der Template Bedingung, wie ich es oben verwendet habe, kannst Du natürlich sich das Attribut Helligkeit verwenden.
Auch würde ich Dir empfehlen nicht die kryptischen Device ID’s zu verwenden, das tut doch schon kleinen bei hinschauen weh!!
Sehe dann so aus:
alias: Lichtsteuerung
description: ""
triggers:
- trigger: state
entity_id:
- binary_sensor.bwm_durchgang_occupancy
from: "off"
to: "on"
id: einschalten
- trigger: state
entity_id:
- binary_sensor.bwm_durchgang_occupancy
from: "on"
to: "off"
id: ausschalten
for:
hours: 0
minutes: 0
seconds: 30
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id:
- einschalten
- condition: state
entity_id: light.durchgang_licht
state: "off"
sequence:
- action: light.turn_on
metadata: {}
data:
brightness_pct: 32
target:
entity_id: light.durchgang_licht
- conditions:
- condition: state
entity_id: light.durchgang_licht
state: "on"
- condition: trigger
id:
- ausschalten
- condition: numeric_state
entity_id: light.durchgang_licht
attribute: brightness
below: 33
sequence:
- action: light.turn_off
metadata: {}
data: {}
target:
entity_id: light.durchgang_licht
mode: single
BTW: Dein yaml code oben, sieht so aus, als ob Du diesen aus der automtaions.yaml raus kopiert hast. DU weisst schon, dass Du in der GUI zwischen den grafischen Editor und der YAML Ansicht hin und her umschalten kannst?
Gruß
Osorkon
olnyhm
5. Oktober 2024 um 17:33
5
Ok das mit dem umwandeln in yaml code war mir auch neu. Das grafische programmieren fällt mir am Anfang dann doch leichter
Wenn ich dort statt State above eintrage sagt er mir jedoch: Message malformed: extra keys mit allowed @data condotion [1] above
Erstelle eisenneue Automatisierung → Rechts oben 3 Punkte → Als YAML bearbeiten. Lösche alles und füge meinen letzte Automatisierung ein.
Wechsle zurück zum visuellen Editor. Prüfe ab alle Deinen Entitäten korrekt erkannt werden, wenn nicht, dann korrigieren.
Wenn du jetzt speichern tust, kommt kein Fehler!
Gruß
Osorkon
olnyhm
5. Oktober 2024 um 18:30
7
Ich habe es hinbekommen, Mega.
Ohne den entscheidenden Tipp von dir hätte ich wohl ewig gebraucht.
alias:%20Neue%20Automatisierung%0Adescription%3A%20aktiv%20f%C3%BCr%202%20min%0Atrigger%3A%0A%20%20-%20platform%3A%20state%0A%20%20%20%20entity_id%3A%0A%20%20%20%20%20%20-%20binary_sensor.bwm_durchgang_occupancy%0A%20%20%20%20to%3A%20%22on%22%0Acondition%3A%0A%20%20-%20condition%3A%20device%0A%20%20%20%20type%3A%20is_off%0A%20%20%20%20device_id%3A%20e0e527fa45ba2c5fcd2356611bf34dec%0A%20%20%20%20entity_id%3A%20200ab581906be78a8845755af062f90c%0A%20%20%20%20domain%3A%20light%0A%20%20%20%20for%3A%0A%20%20%20%20%20%20hours%3A%200%0A%20%20%20%20%20%20minutes%3A%200%0A%20%20%20%20%20%20seconds%3A%201%0A%20%20%20%20enabled%3A%20true%0Aaction%3A%0A%20%20-%20type%3A%20turn_on%0A%20%20%20%20device_id%3A%20e0e527fa45ba2c5fcd2356611bf34dec%0A%20%20%20%20entity_id%3A%20200ab581906be78a8845755af062f90c%0A%20%20%20%20domain%3A%20light%0A%20%20%20%20brightness_pct%3A%2032%0A%20%20-%20wait_for_trigger%3A%0A%20%20%20%20%20%20-%20platform%3A%20state%0A%20%20%20%20%20%20%20%20entity_id%3A%0A%20%20%20%20%20%20%20%20%20%20-%20binary_sensor.bwm_durchgang_occupancy%0A%20%20%20%20%20%20%20%20to%3A%20%22off%22%0A%20%20%20%20%20%20%20%20for%3A%0A%20%20%20%20%20%20%20%20%20%20hours%3A%200%0A%20%20%20%20%20%20%20%20%20%20minutes%3A%200%0A%20%20%20%20%20%20%20%20%20%20seconds%3A%2030%0A%20%20-%20if%3A%0A%20%20%20%20%20%20-%20condition%3A%20numeric_state%0A%20%20%20%20%20%20%20%20entity_id%3A%20light.durchgang_licht%0A%20%20%20%20%20%20%20%20attribute%3A%20brightness%0A%20%20%20%20%20%20%20%20below%3A%2088%0A%20%20%20%20then%3A%0A%20%20%20%20%20%20-%20type%3A%20turn_off%0A%20%20%20%20%20%20%20%20device_id%3A%20e0e527fa45ba2c5fcd2356611bf34dec%0A%20%20%20%20%20%20%20%20entity_id%3A%20200ab581906be78a8845755af062f90c%0A%20%20%20%20%20%20%20%20domain%3A%20light%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20-%20stop%3A%20Helligkeit%20manuell%20erh%C3%B6ht%0Amode%3A%20single
Aufm iPad sieht die Formatierung irgendwie komisch aus, sonst schicke ich es morgen noch mal vom pc
Ich wollte das auf jedenfall selber schaffen um auch etwas zu lernen und nicht einfach nur kopieren, so habe ich in der Schule schon nichts gelernt.
Kennst du dich zufällig auch mit Audioausgabe von HA über HomePod aus?
Gruß Daniel
by HarryP: Log-Zeilen formatiert
tarag
5. Oktober 2024 um 19:40
8
Mobile (Apple) Geräte machen irgendwie Mist beim Code kopieren.
olnyhm
6. Oktober 2024 um 15:03
9
So hier noch mal der code wie ich es jetzt umgesetzt habe, so funktioniert es wie gewünscht.
`alias: BWM_Automatisierung_Durchgang
description: aktiv für 2 min
trigger:
- platform: state
entity_id:
- binary_sensor.bwm_durchgang_occupancy
to: "on"
condition:
- condition: device
type: is_off
device_id: e0e527fa45ba2c5fcd2356611bf34dec
entity_id: 200ab581906be78a8845755af062f90c
domain: light
for:
hours: 0
minutes: 0
seconds: 1
enabled: true
action:
- type: turn_on
device_id: e0e527fa45ba2c5fcd2356611bf34dec
entity_id: 200ab581906be78a8845755af062f90c
domain: light
brightness_pct: 32
- wait_for_trigger:
- platform: state
entity_id:
- binary_sensor.bwm_durchgang_occupancy
to: "off"
for:
hours: 0
minutes: 0
seconds: 30
- if:
- condition: numeric_state
entity_id: light.durchgang_licht
attribute: brightness
below: 88
then:
- type: turn_off
device_id: e0e527fa45ba2c5fcd2356611bf34dec
entity_id: 200ab581906be78a8845755af062f90c
domain: light
else:
- stop: Helligkeit manuell erhöht
mode: single`
Vielen Dank für die Hilfe.
Gruß Daniel
tarag
6. Oktober 2024 um 15:44
10
Du solltest mit Entitäten, nicht Geräten, arbeiten. Das macht es bei einem Austausch von Geräten später deutlich einfacher.
olnyhm
6. Oktober 2024 um 16:52
11
Wie mache ich das?
Wenn ich in der grafischen Oberfläche als Entität zum Beispiel Lichtdurchgang angebe, passiert es so wie jeder, dass er die Entität ID einsetzt.
Osorkon
6. Oktober 2024 um 16:57
12
Einfach kleine Geräte vewenden.
Bei Auslöser:
Entität Auswählen → Zustand oder numerischer Zustand
Bei Bedingungen:
Entität Auswählen → Zustand oder numerischer Zustand
Bei Aktionen:
Nach Aktion suchen: z.B Licht einschalten oder Schalter ausschalten etc.
Dann als Ziel eine Entität auswählen
Gruß
Osorkon