Simple dusk automation with reactive attitude

Hi!

I tried to make automation to keep simple “Dusk” state as active as possible sync with sun elevation.
Any tricks to make this simpler?

dusk:
  name: Dusk
  icon: mdi:weather-sunset-down

- alias: Check sun elevation for dusk
  trigger:
    - platform: homeassistant
      event: start
    - platform: state
      entity_id: sun.sun
    - platform: state
      entity_id: input_boolean.dusk
  action:
    entity_id: input_boolean.dusk
    service_template: >-
      {% if is_state('input_boolean.dusk', 'on') and state_attr('sun.sun', 'elevation') >= 2.5 %}
        input_boolean.turn_off
      {% elif is_state('input_boolean.dusk', 'off') and state_attr('sun.sun', 'elevation') <= -2.5 %}
        input_boolean.turn_on
      {% elif is_state('input_boolean.dusk', 'on') %}
        input_boolean.turn_on
      {% elif is_state('input_boolean.dusk', 'off') %}
        input_boolean.turn_off
      {% endif %}

You could use the sun2 integration, it has a dusk sensor:

1 Like

Thanks, Ill take a look.