Dear Friends,
I have created an automation that does the following:
- Activates scenes based on input_select activated by various triggers
- Automates covers based on input_select that shows curtain open or close preference
- Everything conditioned to light levels outside, input_selects, motion and BLE espresense
I want to know if it is the most efficient way to achieve the results or there is a better way to do it. Many times when I select a scene, it gets stuck and starts working after 10-15 seconds.
alias: GF Kavya Bedroom Automation
description: ""
trigger:
- platform: state
entity_id:
- binary_sensor.gf_kavya_bedroom_presence_sensor
to: "on"
id: Motion detected
- platform: state
entity_id:
- binary_sensor.gf_kavya_bedroom_presence_sensor
to: "off"
for:
hours: 0
minutes: >-
{{
states('input_number.gf_kavya_bedroom_scene_automation_t1_input_helper')
| float }}
seconds: 0
id: Motion clear T1
- platform: state
entity_id:
- binary_sensor.gf_kavya_bedroom_presence_sensor
to: "off"
for:
hours: 0
minutes: >-
{{
states('input_number.gf_kavya_bedroom_hvac_automation_t2_input_helper')
| float }}
seconds: 0
id: Motion clear T2
- platform: state
entity_id:
- input_select.scenes_gf_kavya_bedroom
id: Scene Change
- platform: state
entity_id:
- sensor.ts_kavya_room_occupancy_count_ble
to: null
id: Occupancy Count Change
- platform: state
entity_id:
- cover.gf_kavya_bedroom_curtains
- platform: time
id: Morning Curtain Open
at: input_datetime.gf_kavya_bedroom_morning_curtain_open_time
- platform: state
entity_id:
- input_select.scenes_gf_kavya_curtain_preference
condition: []
action:
- choose:
- conditions:
- condition: or
conditions:
- condition: trigger
id:
- Motion detected
- condition: state
state: "on"
entity_id: binary_sensor.gf_kavya_bedroom_presence_sensor
- condition: trigger
id:
- Scene Change
sequence:
- choose:
- conditions:
- condition: or
conditions:
- condition: state
entity_id: cover.gf_kavya_bedroom_curtains
state: closed
- condition: state
entity_id: binary_sensor.ts_kavya_bedroom_dark_illuminance_levels
state: "on"
sequence:
- choose:
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: eStudy
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene_kavya_estudy_mode
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Study
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene_kavya_study_mode
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Reading
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene_kavya_reading_mode
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Relax
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene_kavya_relax_mode
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Guest
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene_kavya_guest
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Bright Warm
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene_kavya_bright_warm_mode
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Bright White
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene_kavya_bright_white_mode
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Sleep
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: and
conditions:
- condition: state
entity_id: cover.gf_kavya_bedroom_curtains
state: open
- condition: state
entity_id: binary_sensor.ts_kavya_bedroom_dark_illuminance_levels
state: "off"
sequence:
- choose:
- conditions:
- condition: or
conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: eStudy
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Study
sequence:
- service: light.turn_off
data: {}
target:
entity_id:
- light.gf_kavya_bedroom_all_lights
- service: light.turn_on
data:
kelvin: 2000
brightness_pct: 35
target:
entity_id: light.gf_kavya_study_desk_lamp
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Sleep
sequence:
- service: scene.turn_on
target:
entity_id: scene.gf_scene
metadata: {}
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: or
conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Relax
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Guest
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Bright Warm
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Bright White
sequence:
- service: light.turn_off
data: {}
target:
entity_id:
- light.gf_kavya_bedroom_all_lights
- light.gf_kavya_study_desk_lamp
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: or
conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_bedroom
state: Reading
sequence:
- service: light.turn_off
data: {}
target:
entity_id:
- light.gf_kavya_bedroom_all_lights
- light.gf_kavya_study_desk_lamp
- service: light.turn_on
data:
kelvin: 3250
brightness_pct: 70
target:
entity_id: light.gf_kavya_bedroom_ll3_bed_side
- choose:
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: >-
input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: or
conditions:
- condition: trigger
id:
- Occupancy Count Change
- Motion clear T1
- Scene Change
- condition: and
conditions:
- condition: state
entity_id: binary_sensor.gf_kavya_bedroom_presence_sensor
state: "off"
- condition: numeric_state
entity_id: sensor.ts_kavya_room_occupancy_count_ble
below: 0.5
sequence:
- service: scene.turn_on
data: {}
target:
entity_id: scene.gf_scene
- choose:
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_curtain_preference
state: Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
- conditions:
- condition: state
entity_id: input_select.scenes_gf_kavya_curtain_preference
state: Closed
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
enabled: true
- choose:
- conditions:
- condition: trigger
id:
- Morning Curtain Open
sequence:
- service: cover.open_cover
data: {}
target:
entity_id: cover.gf_kavya_bedroom_curtains
mode: restart