Irrigation Unlimited Integration

Irrigation unlimited + HASmartIrrigation with multiple Zones in a controller

We have 10 zones under 4 controllers. Each of the controllers is a BHyve 1x or 4x valve. Each of the Zones is configured in HASmartIrrigation

I’m green to HA, so I probably made this harder than it needs to be :frowning:

When creating the HASmartIrrigation automation the example asks to trigger on the smart irrigation zone, and then to adjust time on the sequence entity ID. The sequence entity ID contains multiple Zones

Should I be placing each zone into the integration unlimited as a separate controller?

configuration:

Each zone is in HASmartIrrigation

Controller BHyve Valve 1

  • Zone K

Controller BHyve Valve 2

  • Zone A

Controller BHyve Valve 3

  • Zone B / C / E / H

Controller BHyve Valve 4

  • Zone D / F / G / unused

irrigation_unlimited configuration:

controllers:
  - name: "Controller BHyve Valve 1"
    all_zones_config:
      show:
        timeline: true
      duration: 0:00
    preamble: "00:01"
    postamble: "00:01"
    zones:
      name: "zone_k"
      entity_id: "switch.zone_k_zone"
    sequences:
      - name: "Sequence BHyve Valve 1 Zone K"
        zones:
          - zone_id: 1

  - name: "Controller BHyve Valve 2"
    all_zones_config:
      show:
        timeline: true
      duration: 0:00
    preamble: "00:01"
    postamble: "00:01"
    zones:
      name: "zone_a"
      entity_id: "switch.zone_a_zone"
    sequences:
      - name: "Sequence BHyve Valve 2 Zone A"
        zones:
          - zone_id: 1

  - name: "Controller BHyve Valve 3"
    all_zones_config:
      show:
        timeline: true
      duration: 0:00
    preamble: "00:01"
    postamble: "00:01"
    zones:
      - name: "zone_b"
        entity_id: "switch.zone_b_zone"
      - name: "zone_c"
        entity_id: "switch.zone_c_zone"
      - name: "zone_e"
        entity_id: "switch.zone_e_zone"
      - name: "zone_h"
        entity_id: "switch.zone_h_zone"
    sequences:
      - name: "Sequence BHyve Valve 3 Zone BCEH"
        zones:
          - zone_id: 1
          - zone_id: 2
          - zone_id: 3
          - zone_id: 4

  - name: "Controller BHyve Valve 4"
    all_zones_config:
      show:
        timeline: true
      duration: 0:00
    preamble: "00:01"
    postamble: "00:01"
    zones:
      - name: "zone_d"
        entity_id: "switch.zone_d_zone"
      - name: "zone_f"
        entity_id: "switch.zone_f_zone"
      - name: "zone_g"
        entity_id: "switch.zone_g_zone"
    sequences:
      - name: "Sequence BHyve Valve 4 Zone DFG"
        zones:
          - zone_id: 1
          - zone_id: 2
          - zone_id: 3

Automation

# Filename: irrigation_unlimited_smart_irrigation.yaml
#
# Verion: 1.0.4
#
# Description: Example automation for HAsmartirrigation integration
# (smart_irrigation)[https://github.com/jeroenterheerdt/HAsmartirrigation]
#
# This automation tracks a Smart Irrigation sensor and transfers the
# the calculation to a Irrigation Unlimited sequence. When the sequence
# completes the Smart Irrigation bucket is reset.
#
# Change the relevant Smart Irrigation and Irrigation Unlimited entities.
# DO NOT simply copy this file as it will NOT WORK, it must be configured
# to suit your setup as indicated below.
#
# This file is a package and should be located in the config/packages
# folder. If you do not have a packages folder then create it and add
# the following to configuration.yaml
#
# homeassistant:
#  packages: !include_dir_named packages
#
# More information on packages can be found at https://www.home-assistant.io/docs/configuration/packages
#
automation:
  - alias: Smart Irrigation adjustment
    id: "IU1653097957047"
    description: Adjust watering times based on smart irrigation calculations
    mode: single
    triggers:
      - trigger: state
        # Change the Smart Irrigation entity_id as required
        entity_id: sensor.smart_irrigation_irrigation_d
        to: null
    actions:
      - action: irrigation_unlimited.adjust_time
        data:
          actual: "{{ timedelta(seconds=trigger.to_state.state | int(0)) }}"
          # Change the Irrigation Unlimited sequence entity_id as required
          # +++++++++++ Sequence contains Zones DFG +++++++++++ 
          entity_id: binary_sensor.irrigation_unlimited_c4_s1

  - alias: Smart Irrigation reset bucket
    id: "IU1653098247170"
    description: Resets the Smart Irrigation bucket after watering
    mode: single
    triggers:
      - trigger: event
        event_type: irrigation_unlimited_finish
    condition:
      - "{{ trigger.event.data.schedule.index is not none }}" # Not a manual run
      # Match the following to the Irrigation Unlimited entity_id as above
      # +++++++++++ Sequence contains Zones DFG +++++++++++ 
      - "{{ trigger.event.data.entity_id == 'binary_sensor.irrigation_unlimited_c4_s1' }}"
    actions:
      - action: smart_irrigation.reset_bucket
        # Match the following to the Smart Irrigation entity_id as above
        entity_id: sensor.smart_irrigation_irrigation_d
        data: {}

The duration: as you have it in the configuration.yaml file will not work. Just set it to a nominal value.

The interface between Smart Irrigation and Irrigation Unlimited is done by an automation. This is the glue between the two components. There are actually two automations; The first is where Smart Irrigation calculates the duration and notifies Irrigation Unlimited and the second when Irrigation Unlimited completes the watering and tells Smart Irrigation to reset the bucket.

The two operations run independently from each other. By default Smart Irrigation runs around 23:00 every night but irrigation is typically done around sunrise but winter it could be every other day or once a week even. The automation as shown in 9.2 allows the components to work together.

Thank you!

if you could be so kind to review:

(1) Currently we have 10 zones - next year it will be over 50, is there an easy way to have the automation reference a list or key/value pair?

(2) based on your advice:

irrigation unlimited config:
– moved under a single controlled
– removed duration from all_zones_config
– added 1 minute duration to all zones
– used sequences after the zone definition to coordinate the 4 BHyves
– added a schedule to each sequence

automation
–updated to reference zone instead of sequence

Irrigation Unlimited:

# 
# Controller BHyve Valve 1 
#   Zone K
#
# Controller BHyve Valve 2 
#   Zone A
#
# Controller BHyve Valve 3 
#   Zone B / C / E / H
#
# Controller BHyve Valve 4
#   Zone D / F / G / unused
controllers:
  - name: "The Garden"
    #--------------------------------
    all_zones_config:
      show:
        timeline: true
    preamble: "00:01"
    postamble: "00:01"
    #--------------------------------
    zones:
      # Controller BHyve Valve 2 
      #   Zone A
      #
      # zone_id: 1
      - name: "zone_a"
        entity_id: "switch.zone_a_zone"
        duration: "00:01"
      #
      # Controller BHyve Valve 3 
      #   Zone B / C / E / H
      #     
      # zone_id: 2
      - name: "zone_b"
        entity_id: "switch.zone_b_zone"
        duration: "00:01"
      # zone_id: 3
      - name: "zone_c"
        entity_id: "switch.zone_c_zone"
        duration: "00:01"
      # zone_id: 4
      - name: "zone_e"
        entity_id: "switch.zone_e_zone"
        duration: "00:01"
      # zone_id: 5
      - name: "zone_h"
        entity_id: "switch.zone_h_zone"
        duration: "00:01"
      #
      # Controller BHyve Valve 4
      #   Zone D / F / G / unused
      # zone_id: 6
      - name: "zone_d"
        entity_id: "switch.zone_d_zone"
        duration: "00:01"
      # zone_id: 7
      - name: "zone_f"
        entity_id: "switch.zone_f_zone"
        duration: "00:01"
      # zone_id: 8
      - name: "zone_g"
        entity_id: "switch.zone_g_zone"
        duration: "00:01"
      #
      # Controller BHyve Valve 1 
      #   Zone K
      #
      # zone_id: 9
      - name: "zone_k"
        entity_id: "switch.zone_k_zone"
        duration: "00:01"
      #--------------------------------
    sequences:
      - name: "Sequence BHyve Valve 2"
        schedules:
          - time: "02:00"
        zones:
          - zone_id: 1
      - name: "Sequence BHyve Valve 3"
        schedules:
          - time: "02:00"
        zones:
          - zone_id: 2
            zone_id: 3
            zone_id: 4
            zone_id: 5
      - name: "Sequence BHyve Valve 4"
        schedules:
          - time: "02:00"
        zones:
          - zone_id: 6
            zone_id: 7
            zone_id: 8
      - name: "Sequence BHyve Valve 1"
        schedules:
          - time: "02:00"
        zones:
          - zone_id: 9

automation:

# Filename: irrigation_unlimited_smart_irrigation.yaml
#
# Verion: 1.0.4
#
# Description: Example automation for HAsmartirrigation integration
# (smart_irrigation)[https://github.com/jeroenterheerdt/HAsmartirrigation]
#
# This automation tracks a Smart Irrigation sensor and transfers the
# the calculation to a Irrigation Unlimited sequence. When the sequence
# completes the Smart Irrigation bucket is reset.
#
# Change the relevant Smart Irrigation and Irrigation Unlimited entities.
# DO NOT simply copy this file as it will NOT WORK, it must be configured
# to suit your setup as indicated below.
#
# This file is a package and should be located in the config/packages
# folder. If you do not have a packages folder then create it and add
# the following to configuration.yaml
#
# homeassistant:
#  packages: !include_dir_named packages
#
# More information on packages can be found at https://www.home-assistant.io/docs/configuration/packages
#
automation:
  - alias: Smart Irrigation adjustment
    id: "IU1653097957047"
    description: Adjust watering times based on smart irrigation calculations
    mode: single
    triggers:
      - trigger: state
        # Change the Smart Irrigation entity_id as required
        entity_id: sensor.smart_irrigation_irrigation_d
        to: null
    actions:
      - action: irrigation_unlimited.adjust_time
        data:
          actual: "{{ timedelta(seconds=trigger.to_state.state | int(0)) }}"
          # Change the Irrigation Unlimited sequence entity_id as required
          # +++++++++++ Sequence contains Zones DFG +++++++++++ 
          entity_id: binary_sensor.irrigation_unlimited_c4_z1

  - alias: Smart Irrigation reset bucket
    id: "IU1653098247170"
    description: Resets the Smart Irrigation bucket after watering
    mode: single
    triggers:
      - trigger: event
        event_type: irrigation_unlimited_finish
    condition:
      - "{{ trigger.event.data.schedule.index is not none }}" # Not a manual run
      # Match the following to the Irrigation Unlimited entity_id as above
      # +++++++++++ Sequence contains Zones DFG +++++++++++ 
      - "{{ trigger.event.data.entity_id == 'binary_sensor.irrigation_unlimited_c4_z1' }}"
    actions:
      - action: smart_irrigation.reset_bucket
        # Match the following to the Smart Irrigation entity_id as above
        entity_id: sensor.smart_irrigation_irrigation_d
        data: {}

I understand the need for a common automation as the system grows larger and have been thinking of a generic solution. To this end I have opened up an issue here. Please continue the discussion over there.

Thank you kindly!

Hi rgc99,
I was wondering if there’s a way to skip the upcoming schedule and jump straight to the next one.
Also, would it be possible to have this feature available directly on the card? It would be super handy!

Hi Leonardo,

You can use the suspend service to temporarily pause or skip a schedule. There are two modes; for a duration and until a date and time. The for version is available on the card. Learn more here

Working on a dashboard :slight_smile:

When manually setting times to all zones (normal scenario for us is to run everything for x minutes manually) and then starting via the manual run service call, disabled zones are running. Is it possible to respect disabled even if there is a time set on the zone?

Take a look at the allow_manual setting in the zone object. This controls if a manual run can be performed on a disabled zone.

Hello,
I run into a problem.
My config:
irrigation_unlimited:
controllers:
all_zones_config:
show:
timeline: true
config: true
zones:
- name: “Lawn right”
zone_id: “1”
entity_id: “switch.irrigation_switch_2_l1”
- name: “Lawn left”
zone_id: “2”
entity_id: “switch.irrigation_switch_2_l2”
- name: “Drip Kitchen plots”
zone_id: “8”
entity_id: “switch.irrigation_switch_2_l4”
- name: “Drip garden plots”
zone_id: “7”
entity_id: “switch.irrigation_switch_2_l3”
sequences:
- name: “Sunrise”
schedules:
- name: “Sunrise LAWN”
time:
sun: “sunrise”
before: “00:30”
zones:
- zone_id: 1
duration: “00:10”
- zone_id: 2
duration: “00:10”
- name: “Sunrise after”
schedules:
- name: “Sunrise”
time:
sun: “sunrise”
after: “00:30”
zones:
- zone_id: 8
duration: “00:20”
- zone_id: 7
duration: “00:20”
- name: “Sunset”
schedules:
- name: “Sunset”
time:
sun: “sunset”
after: “00:10”
zones:
- zone_id: 7
duration: “00:20”
- zone_id: 8
duration: “00:20”
The “dashboard”

But on the manual run card I can’t choose any zones,controller:


The irrigation is running well, but sometimes i’d like to use this feature.
Logs are empty no error codes… :frowning: I tried to find what is the problem, but I failed.

of course i’ve installed the extensions (packages and additonal py script)
Thanks in advance for your help

Hello everyone,

I’m really stuck with the adjustment of my irrigation (based on HAsmartirrigation). I looked into the documentation extensively and double checked all of it multiple times. However, despite syntax-correct config (it seems) and also successfull adjustments the actual irrigation time sticks to the same time of (always!) 20 minutes.

So I do have this configuration running successfully since some weeks:

# Documentation: https://github.com/rgc99/irrigation_unlimited

refresh_interval: 10
history:
  enabled: true
controllers:
  - name: "Rasenbewässerung"
    zones:
      # Rasen-Sprinkler
      # zone: 1
      - entity_id: "switch.ventil1_grau_terrasse"
        name: "Rasen Terrasse"
        maximum: "00:45"
        duration: "00:20" # Default running time when no time is provided (e.g. manual run)
      # zone: 2
      - entity_id: "switch.ventil2_gruen_rasengarten"
        name: "Rasen Garten"
        maximum: "01:00"
        duration: "00:30" # Default running time when no time is provided (e.g. manual run)
      # zone: 3
      - entity_id: "switch.ventil4_lila_sprinkler_vorgarten"
        name: "Rasen Vorgarten"
        maximum: "00:30"
        duration: "00:25" # Default running time when no time is provided (e.g. manual run)
    sequences:
      - name: "Sommer"
        schedules:
          - name: "Vor Sonnenaufgang"
            anchor: finish
            time:
              sun: "sunrise"
              before: "01:05" # starting time: 30min before sun rise
            weekday: [mon, wed, fri, sat] # which weekdays to irrigate
            month: [jun, jul, aug] # which months this shedule is effective
        zones:
          # which zones are affected by this sequence config
          - zone_id: 2
          - zone_id: 1
          - zone_id: 3
      - name: "Frühling und Herbst"
        schedules:
          - name: "Frühling & Herbst"
            time: "06:30"
            weekday: [mon, wed, fri]
            month: [apr, may, sep, oct]
        zones:
          - zone_id: 1
          - zone_id: 2
          - zone_id: 3

  - name: "Tropfbewässerung"
    all_zones_config:
      maximum: "00:30" # maximum time to irrigate
      duration: "00:15" # default duration per zone (if not defined or manual run)
    zones:
      # Tropfbewässerungszonen
      # zone: 1
      - entity_id: "switch.ventil3_rot_hecken"
        name: "Tropfer Hecken, Terrasse & Radgarten"
      # zone: 2
      - entity_id: "switch.ventil5_gelb_tropfleitung_vorgartenterrasse"
        name: "Tropfer Vorgarten & Garage"
    sequences:
      - name: "Sommer"
        duration: "00:15" # duraton of irrigation for each zone
        delay: "00:01" ## delay inbetween irrigation
        schedules:
          - name: "Vor Sonnenaufgang"
            time:
              sun: "sunrise"
              before: "01:30" # starting time: 1h 30min before sun rise
            duration: "00:30" # extend the sequence duration (see above) to 30min in total (for all zones together!)
            weekday: [sun, tue, thu] # which weekdays to irrigate
            month: [jun, jul, aug] # which months this shedule is effective
        zones:
          # which zones are affected by this sequence config
          - zone_id: 1
          - zone_id: 2
      - name: "Frühling und Herbst"
        duration: "00:10"
        delay: "00:01"
        schedules:
          - name: "Frühling & Herbst"
            time: "06:30"
            weekday: [sun, tue, thu]
            month: [apr, may, sep, oct]
        zones:
          - zone_id: 1
          - zone_id: 2

I also do have an automation for each of the zones of the first controller above which are all successfully executed at 23:00. They all look like this:

alias: Smart Irrigation Anpassung Rasenbewässerung Garten
description: Adjust watering times based on smart irrigation calculations
triggers:
  - trigger: state
    entity_id:
      - sensor.smart_irrigation_garten
    to: null
actions:
  - action: irrigation_unlimited.adjust_time
    data:
      actual: "{{ timedelta(seconds=trigger.to_state.state | int(0)) }}"
      entity_id: binary_sensor.irrigation_unlimited_c1_z2
mode: single

I also do have a reset bucket automation like this successfully executed when irrigation is finished:

alias: Smart Irrigation reset bucket - nach Rasenbewässerung
description: Resets the Smart Irrigation bucket after watering
triggers:
  - trigger: event
    event_type: irrigation_unlimited_finish
conditions:
  - condition: template
    value_template: "{{ trigger.event.data.schedule.index is not none }}"
  - condition: or
    conditions:
      - condition: template
        value_template: >-
          {{ trigger.event.data.entity_id ==
          'binary_sensor.irrigation_unlimited_c1_s1' }}
      - condition: template
        value_template: >-
          {{ trigger.event.data.entity_id ==
          'binary_sensor.irrigation_unlimited_c1_s2' }}
actions:
  - action: smart_irrigation.reset_bucket
    entity_id: sensor.smart_irrigation_garten
    data: {}
mode: single

So with all of this in place I checked yesterday evening (long before irrigation this morning) and manually triggered the smartIrrigation-calculation to calculate irrigation times:

Then I checked the irrigation-unlimited-entity for that zone and saw the attribute “adjustment” being adjusted to the value calculated by smartIrrigation:

So far so good.

This morning I checked the run time and the zone (as any other) was irrigated for exact 20 minutes (again!):

Not sure if relevant, but the entity looked like this then:

I did not yet switch on debug-logging (but did so now, while writing the post) however, the logs for now just show a warning I don’t see related:

So I’m puzzled like hell where this 20 minutes limit is coming from…???

Does anyone see clearer?

@GuMiSZu What is this entity showing in developer tools: input_select.irrigation_unlimited_entities

Do you have an automation like this (enabled and running successfully) in your setup:

alias: Irrigation Unlimited Entities Change
triggers:
  - trigger: state
    entity_id:
      - input_select.irrigation_unlimited_entities
    from: <none>
actions:
  - action: input_select.select_option
    target:
      entity_id:
        - input_select.irrigation_unlimited_sequences
    data:
      option: <none>
  - action: input_select.set_options
    target:
      entity_id:
        - input_select.irrigation_unlimited_sequence_zones
    data:
      options:
        - <none>

Is nobody else seeing this odd behavior where a sequence can’t be stopped?

Today I got a notification that a sequence had finished:

which is for this sequence (which is now running again).

My wife had disabled the first one by mistake (she wanted to disable the second one). So I enabled the “Hot tub…” one and then the East hill started up. Again.

And now when I click on Cancel on the “Native Plants Drips” it doesn’t stop. But, I have addiional “Irrigation Complete” notifications in Home Assistant.

You can see here on the logbook for the physical valve swtich that it first turned on at 8:00am and off at 9:30. But, then at 9:44am is when I re-enabled the “Hot tub & allong wall drips” and then that zone started up again.

Canceling the sequence does not stop it. But, I was able to cancel the individual zone 24 (which then turned off the valve), but the sequence is still running:

And the controller now shows an hourglass.

Here’s the sequence.

    sequences:

      # 1 ------------ New low-water native plants -------------
      - name: "Navive Plants Drips"
        delay: 30
        # Default for each zone is one hour
        duration:
          hours: 1
        zones:
          - zone_id: d1   # Drips at hot tub and wall
          - zone_id: d20  # Living planter, gas meter, and south wall.
          - zone_id: d24  # Hill and bottom of fountain
            # This zone's defult is one hour thrity minutes
            duration:
              hours: 1.5

        schedules:
          - name: "Summer [fri]"
            time: "07:00"
            month: [may,jun,jul,aug,sep]
            weekday: [fri]

          - name: "Spring/fall"
            time: "07:00"
            month: [apr,oct]
            weekday: [tue]
            # This is total run time for the sequence
            duration:
              hours: 1

I don’t have much controller config:

refresh_interval: 30
controllers:
  - name: Apple Orchard
    all_zones_config:
      future_span: 7
      # allow_manual_run: true
      show:
        timeline: true

    # Queue manual runs instead of running immediately.
    queue_manual: true

Happy to provide more logs.

Hi,
I have a relatively simple setup: one zone and one sequenze which includes only this zone. I adjust the duration of the sequenze based on the duration I get from the HA smart irrigation integration.

This works well.

But I want to split the duration into several durations with a pause inbetween. E.g. when HA smart irrigation calculates a duration of 25 min, I want to irrigate 10 min, 30min pause, 10 min, 30 min pause and 5 min. I.e. max 10min intervals and then adding 30min pause.

What would be the best/proper way to set this up?

Thanks for an comment!

You could divide the water time like this

irrigation_unlimited:
  controllers:
    - name: My Controller
      zones:
        - name: Zone 1
      sequences:
        - name: My Sequence
          schedules:
            - time: "06:00"
          zones:
            - zone_id: 1
              duration: "0:10:00"
              delay: "0:30:00"
              repeat: 3

Not exactly breaking it into maximum 10 minute chunks but instead spreading over a number of periods

Hello,

thanks for this great integration!
I am struggling a lot currently with irrigation unlimited.
For some reason, the automatic watering seems not to be executed.
I notice, that my automations that connect smart_irrigation with Irrigation Unlimited do work.
An update in smart_irrigation updates the respective sensor in IU.

The sensor looks like this:

This is the general configuration:

irrigation_unlimited:
  controllers:
    zones:
      - name: "Vorne"
        entity_id: "switch.bewasserung_vorne"
      - name: "Hinten"
        entity_id: "switch.bewasserung_hinten"
      - name: "Tropf"
        entity_id: "switch.bewasserung_tropf"
      - name: "Dachterrasse"
        entity_id: "switch.bewasserung_dach"

    sequences:
      - delay: "00:01"
        schedules:
          - name: "Nachts"
            time: "23:35"
            weekday: [mon, wed, fri]
            month: [apr, may,jun, jul, aug, sep]              
        zones:
          - zone_id: 1
            duration: "00:10"
          - zone_id: 2
            duration: "00:10"
          - zone_id: 3
            duration: "00:10"
          - zone_id: 4
            duration: "00:5"

What is notable: The card also does not display the durations:

Do you have any idea, what could be wrong here?

Greetings,
Hendrik

Edit:
the state of the controller was “off” previously (no idea why).
Now I set it to on

but it remains off:

index: 0
enabled: true
suspended: null
status: "off"
zone_count: 4
sequence_count: 1
zones: ""
sequence_status:
  - index: 0
    name: Run 1
    enabled: true
    suspended: null
    status: "off"
    icon: mdi:stop-circle-outline
    start: "2025-07-04T23:35:00+02:00"
    duration: 0
    adjustment: "=0:00:00"
    schedule:
      index: 0
      name: Nachts
    zones:
      - index: 0
        enabled: true
        suspended: null
        status: "off"
        icon: mdi:stop-circle-outline
        duration: 0
        adjustment: ""
        zone_ids:
          - "1"
      - index: 1
        enabled: true
        suspended: null
        status: "off"
        icon: mdi:stop-circle-outline
        duration: 0
        adjustment: ""
        zone_ids:
          - "2"
      - index: 2
        enabled: true
        suspended: null
        status: "off"
        icon: mdi:stop-circle-outline
        duration: 0
        adjustment: ""
        zone_ids:
          - "3"
      - index: 3
        enabled: true
        suspended: null
        status: "off"
        icon: mdi:stop-circle-outline
        duration: 0
        adjustment: ""
        zone_ids:
          - "4"
current_schedule: deprecated (use current_zone)
current_zone: not running
percent_complete: 0
next_schedule: deprecated (use next_zone)
next_zone: none
volume: null
flow_rate: null
icon: mdi:water-off
friendly_name: Controller 1

Was that the issue?

The times are still not displayed in the card though…

Hello,

I have been spending large parts of last night and this morning on it and I cannot get the schedule to run. The manual run works.

As soon as I run

action: irrigation_unlimited.adjust_time
data:
  entity_id: binary_sensor.irrigation_unlimited_c1_m
  actual:
    hours: 0
    minutes: 10
    seconds: 0
  sequence_id: 1

But when I connect with smart_irrigation with the blueprint

alias: Irrigation Unlimited adjust watering time for a sequence.
description: ""
use_blueprint:
  path: jeroenterheerdt/Irrigation Unlimited adjust time sequence.yaml
  input:
    irrigation_zone: sensor.smart_irrigation_vorne
    unlimited_sequence: binary_sensor.irrigation_unlimited_c1_s1
    unlimited_sequence_id: 1
    time_on: "20:40:00"

The schedule is empty again in the irrigation_unlimited card.
And tomorrow, I will be on holidays and my plants will die :frowning:

Ok, I got further. With this automation it works:

alias: Smart Irrigation adjustment Vorne aus github
description: Adjust watering times based on smart irrigation calculations
triggers:
  - trigger: state
    entity_id:
      - sensor.smart_irrigation_vorne
    to: null
actions:
  - action: irrigation_unlimited.adjust_time
    data:
      actual: "{{ timedelta(seconds=trigger.to_state.state | int(0)) }}"
      entity_id: binary_sensor.irrigation_unlimited_c1_s1
      zones: 1
mode: single

I would like to understand though, what was wrong… So any reply is really appreciated.

What is still unclear for me is the meaning of what the card says: