Presence Sensor Light automation

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Turn on / off lights using presence sensor
with configuration like:

  • Brighter percentage
  • Wait time
  • Transition time
  • Light sensor

based on Motion light blueprint from home-assistant.

blueprint:
  name: Presence-activated Light
  description: Turn on a light when presence is detected.
  domain: automation
  source_url: https://github.com/antoniopacheco/presence_light/presence_light.yaml
  input:
    presence_entity:
      name: Presence Sensor
      description: Presence sensor device
      selector:
        entity:
          domain: binary_sensor
          device_class: occupancy
    light_target:
      name: Light
      description: Light device
      selector:
        target:
          entity:
            domain: light
    bright_percentage:
      name: Bright Percentage
      description: Brightness level that the light will turn into once is turned on
      default: 100
      selector:
        number:
          min: 0
          max: 100
          unit_of_measurement: percentage
    no_motion_wait:
      name: Wait time
      description: Time to leave the light on after last motion is detected.
      default: 0
      selector:
        number:
          min: 0
          max: 3600
          unit_of_measurement: seconds
    off_transition:
      name: Transition time
      description: Time in seconds of transition turning off
      default: 0
      selector:
        number:
          min: 0
          max: 60
          unit_of_measurement: seconds
    light_sensor:
      name: Light sensor
      description: Light sensor to read from
      default: []
      selector:
        entity:
          domain:
            - sensor
          device_class:
            - illuminance
          multiple: false
    light_threshold:
      name: Light threshold
      description: Light sensor‘s lower threshold
      default: 200
      selector:
        number:
          min: 0
          max: 255

# If presence is detected within the delay,
# we restart the script.
mode: restart
max_exceeded: silent

trigger:
  platform: state
  entity_id: !input presence_entity
  from: "off"
  to: "on"

condition:
  - condition: numeric_state
    entity_id: !input light_sensor
    below: !input light_threshold

action:
  - alias: "Turn on the light"
    service: light.turn_on
    target: !input light_target
    data:
      brightness_pct: !input bright_percentage

  - alias: "Wait until there is no motion from device"
    wait_for_trigger:
      platform: state
      entity_id: !input presence_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
    data:
      transition: !input off_transition
2 Likes

Any chance to add an “on_transition” option?