Last active
February 22, 2021 15:15
-
-
Save christovic/b5a2cbcfba81edc81a2bc3d2f96c7f11 to your computer and use it in GitHub Desktop.
Have lights come on with motion when the sun is below a specified elevation
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 Light | |
description: Turn on a light when motion is detected. | |
domain: automation | |
source_url: https://gist.github.com/christovic/b5a2cbcfba81edc81a2bc3d2f96c7f11 | |
input: | |
motion_entity: | |
name: Motion Sensor | |
selector: | |
entity: | |
domain: binary_sensor | |
device_class: motion | |
light_target: | |
name: Light | |
selector: | |
target: | |
entity: | |
domain: light | |
turn_off_time: | |
name: Don't turn on the light after this time | |
selector: | |
time: | |
turn_on_time: | |
name: Turn on the light after this time | |
selector: | |
time: | |
sun_elevation: | |
name: Sun Elevation | |
default: 2 | |
selector: | |
number: | |
max: 90 | |
min: -10 | |
mode: box | |
unit_of_measurement: degrees | |
no_motion_wait: | |
name: Wait time | |
description: Time to leave the light on after last motion is detected. | |
default: 120 | |
selector: | |
number: | |
min: 0 | |
max: 3600 | |
unit_of_measurement: seconds | |
# 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" | |
condition: | |
condition: and | |
conditions: | |
- condition: numeric_state | |
entity_id: sun.sun | |
attribute: elevation | |
below: !input sun_elevation | |
- condition: time | |
before: !input turn_off_time | |
after: !input turn_on_time | |
action: | |
- service: light.turn_on | |
target: !input light_target | |
- wait_for_trigger: | |
platform: state | |
entity_id: !input motion_entity | |
from: "on" | |
to: "off" | |
- delay: !input no_motion_wait | |
- 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