Last active
February 26, 2023 17:26
-
-
Save necto/9f9c7982022b298a73c9d75a72192cf1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
blueprint: | |
name: Motion-activated Day/Nigh Brightness-adjusted Light | |
description: Turn on a light when motion is detected. Light brightness will be adjusted depending on the time of the day | |
domain: automation | |
source_url: https://gist.github.com/necto | |
input: | |
motion_entity: | |
name: Motion Sensor | |
selector: | |
entity: | |
domain: binary_sensor | |
device_class: motion | |
light_target: | |
name: Light | |
selector: | |
target: | |
entity: | |
domain: light | |
no_motion_wait: | |
name: Wait time | |
description: Time to leave the light on after last motion is detected. | |
default: 20 | |
selector: | |
number: | |
min: 0 | |
max: 3600 | |
unit_of_measurement: seconds | |
night_end_time: | |
name: Time when night ends | |
description: At this moment the light is no longer forcibly dimmed. | |
default: '06:00:00' | |
selector: | |
time: | |
day_begin_time: | |
name: Time when day begins | |
description: At this moment the light brightness is forcibly hightened. | |
default: '08:00:00' | |
selector: | |
time: | |
day_end_time: | |
name: Time when day ends | |
description: At this moment the light is no longer forcibly brightened. | |
default: '19:00:00' | |
selector: | |
time: | |
night_begin_time: | |
name: Time when night begins | |
description: At this moment the light is forcibly dimmed. | |
default: '21:00:00' | |
selector: | |
time: | |
# If motion is detected within the delay, | |
# we restart the script. | |
mode: restart | |
max_exceeded: silent | |
trigger: | |
platform: state | |
entity_id: !input motion_entity | |
from: "off" | |
to: "on" | |
action: | |
- alias: "Turn on the light" | |
choose: | |
- alias: "Night - dim light" | |
conditions: | |
- condition: time | |
after: !input night_begin_time | |
before: !input night_end_time | |
sequence: | |
- service: light.turn_on | |
target: !input light_target | |
data: | |
brightness: 1 | |
- alias: "Day - bright light" | |
conditions: | |
- condition: time | |
after: !input day_begin_time | |
before: !input day_end_time | |
sequence: | |
- service: light.turn_on | |
target: !input light_target | |
data: | |
brightness_pct: 70 | |
default: | |
- service: light.turn_on | |
target: !input light_target | |
- alias: "Wait until there is no motion from device" | |
wait_for_trigger: | |
platform: state | |
entity_id: !input motion_entity | |
from: "on" | |
to: "off" | |
- alias: "Wait the number of seconds that has been set" | |
delay: !input no_motion_wait | |
- alias: "Turn off the light" | |
service: light.turn_off | |
target: !input light_target |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment