ESPHome: DIY Irrigation Controller With Internal Scheduler

Hi,

I managed to make everything working and cover 6 zones

this is the configuration page

I also added 2 additional switches
one to stop all the schedules when they are running
image

- platform: template
    name: Stop All Zones
    id: irrigation_stop_zones
    icon: mdi:sprinkler-variant
    optimistic: true
    turn_on_action:
      - switch.turn_off: irrigation_channel_1
      - switch.turn_off: irrigation_channel_2
      - switch.turn_off: irrigation_channel_3
      - switch.turn_off: irrigation_channel_4
      - switch.turn_off: irrigation_channel_5
      - switch.turn_off: irrigation_channel_6
      - delay: 10s
      - switch.turn_off: irrigation_stop_zones

one to “suspend” the schedule (eg. you want to suspend the irrigation for a period of time, but you don’t want to clean the configurations or turn off the esp)

image

  - platform: template
    name: Irrigation Zone 1
    id: irrigation_zone_1
    icon: mdi:sprinkler-variant
    lambda: return id(irrigation_channel_1).state;
    optimistic: true
    turn_on_action:
      # Turn on if not disabled and not running
      if:
        condition:
          and:
            - lambda: return id(irrigation_zone_1_duration) > 0;
            - binary_sensor.is_off: ui_stop_irrigation_automation
        then:
          - switch.turn_on: irrigation_channel_1
    turn_off_action:
      - switch.turn_off: irrigation_channel_1

let me know what you think or if you have made additional configurations or have any suggestions

regards

2 Likes