Irrigation Custom Component with Custom Card

Thank you very much for your detailed response! I’ll look into this.

It is interesting to me that soil moisture is something that is only very rarely used for irrigation systems. To me it seems like that would be much easier and more reliable than all the approximative evaporation-calculations that are being done in many systems.

Thanks for the integration - proving useful in a drying climate.

If the program is set to a frequency of 2 (ie every 2nd day) and a zone is set to frequency of 3, does that mean the zone will operate only every 6 days (ie when both program & zone coincide to turn on)?

Hi,

The program level frequency is the default if a zone has not been configured with a frequency. If a zone frequency has been configured it will operate at that frequency. You can enable/disable the zone frequency in the zone configuration.

for example:
Program: 2 days
Zone 1: 3 days - will run every 3 days
Zone 2: not defined - will run every 2 days

Program: Mon, Wed
Zone 1: 3 days - will run every 3 days
Zone 2: not defined - will run only on Monday and Wednesday

This is designed to have the same start time but varying zone frequency based on an areas water requirement.

Thanks, all good.

I’m testing this integration for a day now with four Sonoff SWV water valves. They run in sequence, so that the sprinklers can make full use of the tap mains pressure and volume. Since they come with a flow sensor, I’m using the Watering Volume slider.

I have the feeling that volume and time values don’t match:

  • Input is 4 L
  • When the program starts, Zone A (blue) gives a remaining time of over 16 minutes.
  • When the zone starts, it suddenly goes down to ~8 minutes and counts down as expected.
  • In the history graph, I can see that it ran for ~8 minutes, and used 0.5m³/h during that time; thus ~67 liters.

Is there anything I could tweak to get a more accurate (and thus a more granular) pre-selection of the water volume?

Hi,

The flow rate expected is l/m so your 0.5m³/h, 500l/h will need to be converted to l/m ~ 8.3 (500/60).

I would expect the zone to run for only 30 seconds to give 4L.

You can use a template sensor to convert the value provided.

template:
  - sensor:
    - name: Flow Sensor 
      state: "{{ int(states('sensor.your_flow_meter))*1000 /60}}"

Thank you for the pointer, Peter! The Template Sensor did not update when I created them via gui; the program cancelled because it couldn’t see any flow.
I’ve then created them in the configuration.yaml, and it works. Example:

template:
  - trigger:
      - platform: state
        entity_id: sensor.ventil_a_flow
    sensor:
      - name: "Ventil A l/min"
        unique_id: "ventil_a_l_min"
        unit_of_measurement: "l/min"
        device_class: volume_flow_rate
        state: >
          {{ (trigger.to_state.state | float(0) * 1000 / 60) | round(2) }}
        availability: >
          {{ trigger.to_state.state not in ['unavailable', 'unknown', 'none'] }}

I need some help.
I setup a program as in the screenshot (which runs on Tue, Thu and Sun)


Today is Tuesday 9:58PM and the card displays next run in 8 hours (tomorrow is Wednesday)

Also what is the Frequency setting in the card ?, if I select a day from it then it overrides the program

Hi, the frequency option you set in the configuration provides the option for what you see in the card.

As you have not selected a day to run it will run every day.

If you want to run on Tue, Thu, Sun you will need to create an entry like this:

I checked my documentation and it is not very good covering this aspect, sorry.

Thank you for the awesome work.
It wasn’t so clear from the documentation that this is a free form entry in the configuration, I thought I had to select from the dropdown.

Now I am getting this message and the water switch turns on and off immediately