Hi, ich hab mir mittels Gemeni eine Blueprint gebaut um mein Licht für mich smart zu machen.
- Ich will nur dass es angeht wenn es dunkel genug ist, dafür sollen Helligkeitssensoren genutzt werden.
2. Sollen die Lichter dann nur angehen, wenn Bewegung durch die Präzens/Bewegungsmelder erkannt werden.
3. Will ich verschiedene Zeitfenster haben z.b. 5 stück für die ich die Helligkeit der Lichter, so wie auch die Farbtemperatur einstellen kann. Ich will auch die Option haben wenn ich dann doch nah ein Zeitfenster nicht brauche dieses auszublenden bzw nicht zu berücksichtigen.
4. Will ich, das wenn ein Wecker auf meinen Smarthome gestellt ist, dass die hinterlegen Werte für die Zeitfenster ignoriert werden und dafür eigene Zeitfenster genutzt werden.
- Wenn ein Manueller einschaltbefehl z.b. per taste kommt, soll die automatition bei bewegung nicht starten, sondern der einschaltwert soll genommen werden, dann soll das licht nur ausgehen wenn keine präsenz mehr da ist.
(mal abgesehen davon das es punkt 5 nicht in die Blueprint geschafft hat)
Ich habe einen krassen Delay bis das licht angeht.
Nachdem der Lux wert passt und der Präsenzmelder ausgelöst hat dauert es einfach mal ca. 60 Sekunden bis das Licht angeht, die KI verzweifelt daran.
vielleicht hat da jemand von euch eine Lösung?
Ich wäre wirklich dankbar.
blueprint:
name: "V4 Lichtsteuerung: High Performance"
description: "Maximale Reaktionsgeschwindigkeit durch Trigger-Delay und optimierte Templates."
domain: automation
input:
motion_sensor:
name: Bewegungsmelder
selector:
entity:
domain: binary_sensor
device_class: motion
illuminance_sensor:
name: Helligkeitssensor
selector:
entity:
domain: sensor
device_class: illuminance
illuminance_threshold:
name: Helligkeits-Schwellenwert (lx)
default: 50
selector:
number:
min: 0
max: 1000
unit_of_measurement: lx
light_target:
name: Zu steuerndes Licht
selector:
entity:
domain: light
alarm_sensor:
name: Wecker-Sensor (optional)
default: "none"
selector:
entity:
domain: sensor
delay_off:
name: Ausschaltverzögerung (Sekunden)
default: 10
selector:
number:
min: 0
max: 3600
unit_of_measurement: s
transition_off:
name: Animationsdauer beim Ausschalten (Sekunden)
default: 4
selector:
number:
min: 0
max: 60
unit_of_measurement: s
# --- NORMAL PROFILE (1-5) ---
p1_enable:
name: Normal Profil 1 - Aktiv
default: true
selector:
boolean: {}
p1_time:
name: Normal Profil 1 - Startzeit
default: "06:00:00"
selector:
time: {}
p1_bri:
name: Normal Profil 1 - Helligkeit (%)
default: 100
selector:
number:
min: 1
max: 100
p1_color:
name: Normal Profil 1 - Farbtemperatur (Kelvin)
default: 4000
selector:
number:
min: 2000
max: 6500
p2_enable:
name: Normal Profil 2 - Aktiv
default: true
selector:
boolean: {}
p2_time:
name: Normal Profil 2 - Startzeit
default: "10:00:00"
selector:
time: {}
p2_bri:
name: Normal Profil 2 - Helligkeit (%)
default: 100
selector:
number:
min: 1
max: 100
p2_color:
name: Normal Profil 2 - Farbtemperatur (Kelvin)
default: 5000
selector:
number:
min: 2000
max: 6500
p3_enable:
name: Normal Profil 3 - Aktiv
default: false
selector:
boolean: {}
p3_time:
name: Normal Profil 3 - Startzeit
default: "14:00:00"
selector:
time: {}
p3_bri:
name: Normal Profil 3 - Helligkeit (%)
default: 100
selector:
number:
min: 1
max: 100
p3_color:
name: Normal Profil 3 - Farbtemperatur (Kelvin)
default: 4000
selector:
number:
min: 2000
max: 6500
p4_enable:
name: Normal Profil 4 - Aktiv
default: true
selector:
boolean: {}
p4_time:
name: Normal Profil 4 - Startzeit
default: "18:00:00"
selector:
time: {}
p4_bri:
name: Normal Profil 4 - Helligkeit (%)
default: 60
selector:
number:
min: 1
max: 100
p4_color:
name: Normal Profil 4 - Farbtemperatur (Kelvin)
default: 3000
selector:
number:
min: 2000
max: 6500
p5_enable:
name: Normal Profil 5 - Aktiv
default: true
selector:
boolean: {}
p5_time:
name: Normal Profil 5 - Startzeit
default: "22:00:00"
selector:
time: {}
p5_bri:
name: Normal Profil 5 - Helligkeit (%)
default: 20
selector:
number:
min: 1
max: 100
p5_color:
name: Normal Profil 5 - Farbtemperatur (Kelvin)
default: 2500
selector:
number:
min: 2000
max: 6500
# --- WECKER PROFILE (1-5) ---
pa1_enable:
name: Wecker Profil 1 - Aktiv
default: true
selector:
boolean: {}
pa1_time:
name: Wecker Profil 1 - Startzeit
default: "05:00:00"
selector:
time: {}
pa1_bri:
name: Wecker Profil 1 - Helligkeit (%)
default: 100
selector:
number:
min: 1
max: 100
pa1_color:
name: Wecker Profil 1 - Farbtemperatur (Kelvin)
default: 4000
selector:
number:
min: 2000
max: 6500
pa2_enable:
name: Wecker Profil 2 - Aktiv
default: true
selector:
boolean: {}
pa2_time:
name: Wecker Profil 2 - Startzeit
default: "08:00:00"
selector:
time: {}
pa2_bri:
name: Wecker Profil 2 - Helligkeit (%)
default: 100
selector:
number:
min: 1
max: 100
pa2_color:
name: Wecker Profil 2 - Farbtemperatur (Kelvin)
default: 5500
selector:
number:
min: 2000
max: 6500
pa3_enable:
name: Wecker Profil 3 - Aktiv
default: false
selector:
boolean: {}
pa3_time:
name: Wecker Profil 3 - Startzeit
default: "12:00:00"
selector:
time: {}
pa3_bri:
name: Wecker Profil 3 - Helligkeit (%)
default: 100
selector:
number:
min: 1
max: 100
pa3_color:
name: Wecker Profil 3 - Farbtemperatur (Kelvin)
default: 4500
selector:
number:
min: 2000
max: 6500
pa4_enable:
name: Wecker Profil 4 - Aktiv
default: true
selector:
boolean: {}
pa4_time:
name: Wecker Profil 4 - Startzeit
default: "17:00:00"
selector:
time: {}
pa4_bri:
name: Wecker Profil 4 - Helligkeit (%)
default: 70
selector:
number:
min: 1
max: 100
pa4_color:
name: Wecker Profil 4 - Farbtemperatur (Kelvin)
default: 3200
selector:
number:
min: 2000
max: 6500
pa5_enable:
name: Wecker Profil 5 - Aktiv
default: true
selector:
boolean: {}
pa5_time:
name: Wecker Profil 5 - Startzeit
default: "20:30:00"
selector:
time: {}
pa5_bri:
name: Wecker Profil 5 - Helligkeit (%)
default: 10
selector:
number:
min: 1
max: 100
pa5_color:
name: Wecker Profil 5 - Farbtemperatur (Kelvin)
default: 2000
selector:
number:
min: 2000
max: 6500
mode: restart
trigger:
- platform: state
entity_id: !input motion_sensor
to: "on"
id: "on"
- platform: state
entity_id: !input motion_sensor
to: "off"
id: "off"
for:
seconds: !input delay_off
variables:
# Mapping der Inputs für Template-Zugriff
alarm_entity: !input alarm_sensor
light_ent: !input light_target
p_list:
- {"e": !input p1_enable, "t": !input p1_time, "b": !input p1_bri, "c": !input p1_color}
- {"e": !input p2_enable, "t": !input p2_time, "b": !input p2_bri, "c": !input p2_color}
- {"e": !input p3_enable, "t": !input p3_time, "b": !input p3_bri, "c": !input p3_color}
- {"e": !input p4_enable, "t": !input p4_time, "b": !input p4_bri, "c": !input p4_color}
- {"e": !input p5_enable, "t": !input p5_time, "b": !input p5_bri, "c": !input p5_color}
pa_list:
- {"e": !input pa1_enable, "t": !input pa1_time, "b": !input pa1_bri, "c": !input pa1_color}
- {"e": !input pa2_enable, "t": !input pa2_time, "b": !input pa2_bri, "c": !input pa2_color}
- {"e": !input pa3_enable, "t": !input pa3_time, "b": !input pa3_bri, "c": !input pa3_color}
- {"e": !input pa4_enable, "t": !input pa4_time, "b": !input pa4_bri, "c": !input pa4_color}
- {"e": !input pa5_enable, "t": !input pa5_time, "b": !input pa5_bri, "c": !input pa5_color}
is_alarm: >
{% if alarm_entity != 'none' and states(alarm_entity) not in ['unknown', 'unavailable', 'none', ''] %}
{% set diff = as_timestamp(states(alarm_entity), 0) - as_timestamp(now()) %}
{{ diff > 0 and diff < 64800 }}
{% else %} false {% endif %}
active_profile: >
{% set profiles = pa_list if is_alarm == 'true' or is_alarm == True else p_list %}
{% set curr = now().strftime('%H:%M:%S') %}
{% set filtered = profiles | selectattr('e') | sort(attribute='t') | list %}
{% set past = filtered | selectattr('t', '<=', curr) | list %}
{% if past | length > 0 %} {{ past | last }}
{% else %} {{ filtered | last if filtered | length > 0 else {"b": 100, "c": 3000} }}
{% endif %}
action:
- choose:
- conditions:
- condition: trigger
id: "on"
- condition: or
conditions:
- condition: numeric_state
entity_id: !input illuminance_sensor
below: !input illuminance_threshold
- condition: state
entity_id: !input light_target
state: "on"
sequence:
- service: light.turn_on
target:
entity_id: !input light_target
data:
transition: 0
brightness_pct: "{{ (active_profile).b }}"
color_temp_kelvin: "{{ (active_profile).c }}"
- conditions:
- condition: trigger
id: "off"
sequence:
- service: light.turn_off
target:
entity_id: !input light_target
data:
transition: !input transition_off