From 27befbfea6071786fa79a0a1ce0a0d713000306a Mon Sep 17 00:00:00 2001 From: thomas Date: Fri, 29 Aug 2025 19:51:26 +0000 Subject: [PATCH] =?UTF-8?q?blueprints/automation/motion-light.yaml=20gel?= =?UTF-8?q?=C3=B6scht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- blueprints/automation/motion-light.yaml | 114 ------------------------ 1 file changed, 114 deletions(-) delete mode 100644 blueprints/automation/motion-light.yaml diff --git a/blueprints/automation/motion-light.yaml b/blueprints/automation/motion-light.yaml deleted file mode 100644 index b4ff98b..0000000 --- a/blueprints/automation/motion-light.yaml +++ /dev/null @@ -1,114 +0,0 @@ -blueprint: - name: Motion-activated Light with Optional Lux - description: Turn on a light when motion is detected, optionally only if lux is below a threshold. - domain: automation - author: Home Assistant - input: - motion_entity: - name: Motion Sensor - selector: - entity: - filter: - - device_class: occupancy - domain: binary_sensor - - device_class: motion - domain: binary_sensor - light_target: - name: Light - selector: - target: - entity: - domain: light - lux_entity: - name: Lux Sensor (optional) - default: null - selector: - entity: - domain: sensor - device_class: illuminance - lux_threshold: - name: Lux Threshold - description: Only turn on the light if lux is below this value. - default: 50 - selector: - number: - min: 0 - max: 1000 - unit_of_measurement: lx - 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" - -variables: - lux_entity_var: !input lux_entity - lux_threshold_var: !input lux_threshold - -condition: - - alias: "Optional lux check" - condition: template - value_template: > - {% if lux_entity_var and states(lux_entity_var) not in ['unknown','unavailable'] %} - {{ states(lux_entity_var) | float(0) < lux_threshold_var | float(0) }} - {% else %} - true - {% endif %} - -action: - - alias: "Set dynamic brightness" - variables: - max_brightness: 255 - sun_elevation: "{{ state_attr('sun.sun','elevation') | float(0) }}" - current_lux: > - {% if lux_entity_var %} - {{ states(lux_entity_var) | float(0) }} - {% else %} - 0 - {% endif %} - brightness: >- - {% set base = 50 %} - {% if sun_elevation > 10 %} - {% set base = 100 %} - {% elif sun_elevation > 0 %} - {% set base = 150 %} - {% else %} - {% set base = 200 %} - {% endif %} - {% if current_lux > 50 %} - {% set base = base - ((current_lux / 500) * base) | int %} - {% endif %} - {{ [base, max_brightness] | min }} - - - alias: "Turn on the light" - service: light.turn_on - target: !input light_target - data: - brightness: "{{ brightness }}" - - - 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