85 lines
2.1 KiB
YAML
85 lines
2.1 KiB
YAML
blueprint:
|
|
name: Motion-activated Switch
|
|
description: Turn on a switch when motion is detected.
|
|
domain: automation
|
|
input:
|
|
motion_entity:
|
|
name: Motion Sensor
|
|
selector:
|
|
entity:
|
|
domain: binary_sensor
|
|
device_class: motion
|
|
lightsensor_entity:
|
|
name: Illuminance Sensor
|
|
selector:
|
|
entity:
|
|
domain: sensor
|
|
device_class: illuminance
|
|
illuminace_level:
|
|
name: Max Illuminance
|
|
description: Maximal immuminance level in lux. If illuminance is higher, light
|
|
will not be enabled
|
|
default: 300
|
|
selector:
|
|
number:
|
|
min: 0.0
|
|
max: 5000.0
|
|
unit_of_measurement: lux
|
|
mode: slider
|
|
step: 1.0
|
|
switch_target:
|
|
name: Switch
|
|
selector:
|
|
target:
|
|
entity:
|
|
domain: switch
|
|
time_from:
|
|
name: Active from
|
|
description: A time input which defines the time from which motion is detected
|
|
selector:
|
|
time: {}
|
|
time_to:
|
|
name: Active to
|
|
description: A time input which defines the time to which motion is detected
|
|
selector:
|
|
time: {}
|
|
no_motion_wait:
|
|
name: Wait time
|
|
description: Time to leave the light on after last motion is detected.
|
|
default: 120
|
|
selector:
|
|
number:
|
|
min: 0.0
|
|
max: 3600.0
|
|
unit_of_measurement: seconds
|
|
mode: slider
|
|
step: 1.0
|
|
source_url: https://community.home-assistant.io/t/turn-on-a-switch-when-motion-is-detected/255709
|
|
mode: restart
|
|
max_exceeded: silent
|
|
trigger:
|
|
- platform: state
|
|
entity_id: !input 'motion_entity'
|
|
from: 'off'
|
|
to: 'on'
|
|
condition:
|
|
- condition: and
|
|
conditions:
|
|
- condition: time
|
|
after: !input 'time_from'
|
|
before: !input 'time_to'
|
|
- condition: numeric_state
|
|
entity_id: !input 'lightsensor_entity'
|
|
below: !input 'illuminace_level'
|
|
action:
|
|
- service: switch.turn_on
|
|
target: !input 'switch_target'
|
|
- wait_for_trigger:
|
|
platform: state
|
|
entity_id: !input 'motion_entity'
|
|
from: 'on'
|
|
to: 'off'
|
|
- delay: !input 'no_motion_wait'
|
|
- service: switch.turn_off
|
|
target: !input 'switch_target'
|