Skip to content

Instantly share code, notes, and snippets.

@Danielbook
Created May 17, 2021 11:08
Show Gist options
  • Save Danielbook/7814e7eb32e880b2d7c3fb5ba8430f4f to your computer and use it in GitHub Desktop.
Save Danielbook/7814e7eb32e880b2d7c3fb5ba8430f4f to your computer and use it in GitHub Desktop.
Motion and Illuminance level
blueprint:
name: Motion-activated Light with illuminance
description: Turn on a light when motion is detected and illuminance is below a set Lux level.
domain: automation
input:
motion_entity:
name: Motion Sensor
selector:
entity:
domain: binary_sensor
device_class: motion
lux_entity:
name: Illuminance Sensor
selector:
entity:
domain: sensor
device_class: illuminance
lux_level:
name: Illuminance level
description: If lux is below this value and motion is detected, the light will turn on.
default: 100
selector:
number:
min: 0
max: 1000
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: 120
selector:
number:
min: 0
max: 3600
unit_of_measurement: seconds
mode: restart
max_exceeded: silent
trigger:
platform: state
entity_id: !input motion_entity
from: "off"
to: "on"
condition:
condition: numeric_state
entity_id: !input lux_entity
below: !input lux_level
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
@aioue
Copy link

aioue commented Oct 7, 2022

Is it possible to make this function the same as the Hue app pairing? I.e. make the bulb dim for a short period before fulling turning off, and to have different behaviours based on the time of day? (Evening brightness and day brightness)

@trackzero
Copy link

Found an unexpected behavior; if I'm moving about the room continuously while the luminance drops, it won't turn on until the motion detection sensor clears and then triggers again. in other words, needs to also trigger if lux drops below !input lux_level and motion_entity state is already on. I think this fixes it: https://gist.github.com/trackzero/8c6b4ec48549df03a5e2408e693a62ab

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment