Gartenbewässerung Automation HA oder Node Red

Moin liebe Community,

ich benötige Hilfe für eine Automation meiner Gartenbewässerung.
Ich habe 2 Bewässerungszonen mit jeweils einem Zigbee Bewässerungscomputer (der etwa nach 9 Minuten automatisch stoppt), die jeweils nacheinander 45 Minuten bewässert werden sollen.

Meine Idee ist:
AUTOMATION A) 1 Stunde vor Sonnenaufgang => Zone 1 Switch einschalten => Zeitverögerung 45 Minuten => Zone 1 Switch ausschalten und aktiviere Automation B
AUTOMATION B) Wenn Zone 1 fertig => Zone 2 Switch einschalten => Zeitverögerung 45 Minuten => Zone 2 Switch ausschalten und deaktiviere Automation B

Da allerdings meine beiden Zigbee Bewässerungscomputer sich nach verschiedenen Zeiten (zwischen 08:37 Minuten bis 11:21 Minuten) automatisch ausschalten, komme ich mit meiner Automation nicht weiter.

Wie kann ich die Zigbee Geräte wieder einschalten und dabei so viele Wiederholungen durchlaufen lassen, dass ich rund 45 Minuten Bewässerung realisieren kann?
Hierbei ist es egal, ob in HA direkt eine Automation erstellt wird oder Node Red dafür genutzt werden soll. Beides vorhanden.

Über eure Hilfe würde ich mich sehr freuen.

So könntest Du es machen:

Richte erst einmal zwei Timer-Helfer ein mit je 45 Minuten Laufzeit.

Automatisierung 1

Auslöser

  • Sonnenaufgang minus eine Stunde

Aktionen

  • Start des ersten Timers
  • Richte eine Wiederholung ein, die läuft, bis der Timer untätig wird. Darin eine Wenn-dann-Aktion: Wenn das Ventil abschaltet, dann einschalten

Automatisierung 2

Auslöser

  • Erster Timer ändert sich zu untätig

Aktionen

  • Schließen des ersten Ventils
  • Start des zweiten Timers
  • Wiederholung wie oben mit zweitem Timer und zweitem Ventil

Für genau 45 Minuten Laufzeit des zweiten Ventils lässt Du eine weitere Automatisierung durch das Ablaufen des zweiten Timers auslösen, in der Du das Ventil schließen lässt.

Alle drei Automatisierungen kannst Du auch in eine einzige packen.

1 „Gefällt mir“

Hi, ich habe meine Bewässerung so gelöst, das ich das über node-red gemacht hab weil das am einfachsten geht. Dabei wird der Sonnenauf und untergang berücksichtigt und ob es am Tag regnen soll oder nicht. Ich stell mal den Flow für node-red hier ein dann kannst Du das für Dich anpassen und eventuell erweitern.

[{"id":"797bf7aa946f60a0","type":"tab","label":"Gartenbewässerung","disabled":false,"info":"Bewässerung der Pflanzen nach Temperatur, Bodenfeuchtigkeit und Wettervorhersage.","env":[]},{"id":"25b486094eb30732","type":"comment","z":"797bf7aa946f60a0","name":"Automatische Gartenbewässerung V2.0","info":"# ","x":170,"y":140,"wires":[]},{"id":"28545b29054caaa8","type":"suncron","z":"797bf7aa946f60a0","name":"30 min nach Sonnenaufgang","lat":"50.5956616","lon":"8.8339205","replay":false,"ejectScheduleOnUpdate":false,"sunrisePayload":"on","sunrisePayloadType":"str","sunriseTopic":"","sunriseOffsetType":"1","sunriseOffsetHours":0,"sunriseOffsetMinutes":"30","sunriseOffset":"1800","sunriseEndPayload":"","sunriseEndPayloadType":"str","sunriseEndTopic":"","sunriseEndOffsetType":1,"sunriseEndOffsetHours":0,"sunriseEndOffsetMinutes":0,"sunriseEndOffset":0,"goldenHourEndPayload":"","goldenHourEndPayloadType":"str","goldenHourEndTopic":"","goldenHourEndOffsetType":1,"goldenHourEndOffsetHours":0,"goldenHourEndOffsetMinutes":0,"goldenHourEndOffset":0,"solarNoonPayload":"","solarNoonPayloadType":"str","solarNoonTopic":"","solarNoonOffsetType":1,"solarNoonOffsetHours":0,"solarNoonOffsetMinutes":0,"solarNoonOffset":0,"goldenHourPayload":"","goldenHourPayloadType":"str","goldenHourTopic":"","goldenHourOffsetType":1,"goldenHourOffsetHours":0,"goldenHourOffsetMinutes":0,"goldenHourOffset":0,"sunsetStartPayload":"","sunsetStartPayloadType":"str","sunsetStartTopic":"","sunsetStartOffsetType":1,"sunsetStartOffsetHours":0,"sunsetStartOffsetMinutes":0,"sunsetStartOffset":0,"sunsetPayload":"","sunsetPayloadType":"str","sunsetTopic":"","sunsetOffsetType":1,"sunsetOffsetHours":0,"sunsetOffsetMinutes":0,"sunsetOffset":0,"duskPayload":"","duskPayloadType":"str","duskTopic":"","duskOffsetType":1,"duskOffsetHours":0,"duskOffsetMinutes":0,"duskOffset":0,"nauticalDuskPayload":"","nauticalDuskPayloadType":"str","nauticalDuskTopic":"","nauticalDuskOffsetType":1,"nauticalDuskOffsetHours":0,"nauticalDuskOffsetMinutes":0,"nauticalDuskOffset":0,"nightPayload":"","nightPayloadType":"str","nightTopic":"","nightOffsetType":1,"nightOffsetHours":0,"nightOffsetMinutes":0,"nightOffset":0,"nadirPayload":"","nadirPayloadType":"str","nadirTopic":"","nadirOffsetType":1,"nadirOffsetHours":0,"nadirOffsetMinutes":0,"nadirOffset":0,"nightEndPayload":"","nightEndPayloadType":"str","nightEndTopic":"","nightEndOffsetType":1,"nightEndOffsetHours":0,"nightEndOffsetMinutes":0,"nightEndOffset":0,"nauticalDawnPayload":"","nauticalDawnPayloadType":"str","nauticalDawnTopic":"","nauticalDawnOffsetType":1,"nauticalDawnOffsetHours":0,"nauticalDawnOffsetMinutes":0,"nauticalDawnOffset":0,"dawnPayload":"","dawnPayloadType":"str","dawnTopic":"","dawnOffsetType":1,"dawnOffsetHours":0,"dawnOffsetMinutes":0,"dawnOffset":0,"x":140,"y":320,"wires":[["8a5bbd1253da2acc"]]},{"id":"8a5bbd1253da2acc","type":"api-current-state","z":"797bf7aa946f60a0","name":"Automatik aktiv?","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","entity_id":"input_boolean.gartenbewasserung","state_type":"str","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":380,"y":320,"wires":[["be082d3dc06e5490"],[]]},{"id":"7a938b6185fbe2ec","type":"api-current-state","z":"797bf7aa946f60a0","name":"Erw. Temperatur","server":"49761872cda20bfb","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.openweathermap_forecast_temperature","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1340,"y":320,"wires":[["967e9f528bbe7dc9","3064fdc8fbfe2c58"]]},{"id":"abb7fea365d82f73","type":"api-current-state","z":"797bf7aa946f60a0","name":"Erw. Niederschlag abfragen","server":"49761872cda20bfb","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.openweathermap_forecast_precipitation","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"erwartet","propertyType":"msg","value":"","valueType":"entityState"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1920,"y":300,"wires":[["c6171ef7391d9254"]]},{"id":"85aa6cd125f3657f","type":"comment","z":"797bf7aa946f60a0","name":"Erw. Niederschlag","info":"","x":1810,"y":160,"wires":[]},{"id":"3476efdc53fe037e","type":"delay","z":"797bf7aa946f60a0","name":"","pauseType":"delay","timeout":"30","timeoutUnits":"minutes","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"allowrate":false,"outputs":1,"x":2910,"y":300,"wires":[["058801a7235cbadb"]]},{"id":"058801a7235cbadb","type":"api-call-service","z":"797bf7aa946f60a0","name":"Gartenbewässerung aus","server":"49761872cda20bfb","version":5,"debugenabled":false,"domain":"switch","service":"turn_off","areaId":[],"deviceId":[],"entityId":["switch.schalter_bewasserung_schalter"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":3170,"y":300,"wires":[[]]},{"id":"9bb7d36c0177d6f7","type":"comment","z":"797bf7aa946f60a0","name":"Muss es beregnet werden?","info":"","x":2220,"y":160,"wires":[]},{"id":"5afaacfd17ac8c9a","type":"api-call-service","z":"797bf7aa946f60a0","name":"Gartenbewässerung an","server":"49761872cda20bfb","version":5,"debugenabled":false,"domain":"switch","service":"turn_on","areaId":[],"deviceId":[],"entityId":["switch.schalter_bewasserung_schalter"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":2630,"y":300,"wires":[["3476efdc53fe037e"]]},{"id":"3cf739901a492604","type":"comment","z":"797bf7aa946f60a0","name":"Bewässerung für 30 min","info":"","x":2850,"y":160,"wires":[]},{"id":"be082d3dc06e5490","type":"api-current-state","z":"797bf7aa946f60a0","name":"Gefallene Regenmenge abfragen (V2)","server":"49761872cda20bfb","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.rainfactor","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":650,"y":320,"wires":[["3826280f0f938b41"]]},{"id":"7ef358fe42f5bd35","type":"comment","z":"797bf7aa946f60a0","name":"Tatsächliche Regenmenge letzten 24h abfragen","info":"","x":780,"y":180,"wires":[]},{"id":"3826280f0f938b41","type":"change","z":"797bf7aa946f60a0","name":"Letzten 24h tats. Regen zw.-speichern (v2)","rules":[{"t":"set","p":"tagesregenmenge","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1030,"y":320,"wires":[["7a938b6185fbe2ec"]]},{"id":"c6171ef7391d9254","type":"api-current-state","z":"797bf7aa946f60a0","name":"Regenwahrscheinlichkeit über 70%?","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"70","halt_if_type":"num","halt_if_compare":"gte","entity_id":"sensor.openweathermap_forecast_precipitation_probability","state_type":"num","blockInputOverrides":false,"outputProperties":[],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":2270,"y":300,"wires":[[],["5afaacfd17ac8c9a"]]},{"id":"967e9f528bbe7dc9","type":"api-current-state","z":"797bf7aa946f60a0","name":"Bodentemperatur","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"15","halt_if_type":"num","halt_if_compare":"gte","entity_id":"sensor.gartenbodenmessung_temperature","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1590,"y":280,"wires":[["abb7fea365d82f73"],[]]},{"id":"3064fdc8fbfe2c58","type":"api-current-state","z":"797bf7aa946f60a0","name":"Bodenfeuchte","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"55","halt_if_type":"num","halt_if_compare":"lte","entity_id":"sensor.gartenbodenmessung_soil_moisture","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1580,"y":380,"wires":[["abb7fea365d82f73"],[]]},{"id":"6c5c4b9374fac21e","type":"comment","z":"797bf7aa946f60a0","name":"Automatische Gartenbewässerung V2.0","info":"# ","x":170,"y":500,"wires":[]},{"id":"384e77c38420a85a","type":"suncron","z":"797bf7aa946f60a0","name":"30 min vor Sonnenuntergang","lat":"50.5956595","lon":"8.833913","replay":false,"ejectScheduleOnUpdate":false,"sunrisePayload":"","sunrisePayloadType":"str","sunriseTopic":"","sunriseOffsetType":"-1","sunriseOffsetHours":0,"sunriseOffsetMinutes":"0","sunriseOffset":"0","sunriseEndPayload":"","sunriseEndPayloadType":"str","sunriseEndTopic":"","sunriseEndOffsetType":"-1","sunriseEndOffsetHours":0,"sunriseEndOffsetMinutes":"0","sunriseEndOffset":"0","goldenHourEndPayload":"","goldenHourEndPayloadType":"str","goldenHourEndTopic":"","goldenHourEndOffsetType":1,"goldenHourEndOffsetHours":0,"goldenHourEndOffsetMinutes":0,"goldenHourEndOffset":0,"solarNoonPayload":"","solarNoonPayloadType":"str","solarNoonTopic":"","solarNoonOffsetType":1,"solarNoonOffsetHours":0,"solarNoonOffsetMinutes":0,"solarNoonOffset":0,"goldenHourPayload":"","goldenHourPayloadType":"str","goldenHourTopic":"","goldenHourOffsetType":1,"goldenHourOffsetHours":0,"goldenHourOffsetMinutes":0,"goldenHourOffset":0,"sunsetStartPayload":"","sunsetStartPayloadType":"str","sunsetStartTopic":"","sunsetStartOffsetType":1,"sunsetStartOffsetHours":0,"sunsetStartOffsetMinutes":0,"sunsetStartOffset":0,"sunsetPayload":"on","sunsetPayloadType":"str","sunsetTopic":"","sunsetOffsetType":"-1","sunsetOffsetHours":0,"sunsetOffsetMinutes":"30","sunsetOffset":"1800","duskPayload":"","duskPayloadType":"str","duskTopic":"","duskOffsetType":1,"duskOffsetHours":0,"duskOffsetMinutes":0,"duskOffset":0,"nauticalDuskPayload":"","nauticalDuskPayloadType":"str","nauticalDuskTopic":"","nauticalDuskOffsetType":1,"nauticalDuskOffsetHours":0,"nauticalDuskOffsetMinutes":0,"nauticalDuskOffset":0,"nightPayload":"","nightPayloadType":"str","nightTopic":"","nightOffsetType":1,"nightOffsetHours":0,"nightOffsetMinutes":0,"nightOffset":0,"nadirPayload":"","nadirPayloadType":"str","nadirTopic":"","nadirOffsetType":1,"nadirOffsetHours":0,"nadirOffsetMinutes":0,"nadirOffset":0,"nightEndPayload":"","nightEndPayloadType":"str","nightEndTopic":"","nightEndOffsetType":1,"nightEndOffsetHours":0,"nightEndOffsetMinutes":0,"nightEndOffset":0,"nauticalDawnPayload":"","nauticalDawnPayloadType":"str","nauticalDawnTopic":"","nauticalDawnOffsetType":1,"nauticalDawnOffsetHours":0,"nauticalDawnOffsetMinutes":0,"nauticalDawnOffset":0,"dawnPayload":"","dawnPayloadType":"str","dawnTopic":"","dawnOffsetType":1,"dawnOffsetHours":0,"dawnOffsetMinutes":0,"dawnOffset":0,"x":150,"y":620,"wires":[["dfdb5f1637bf3f0e"]]},{"id":"dfdb5f1637bf3f0e","type":"api-current-state","z":"797bf7aa946f60a0","name":"Automatik aktiv?","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","entity_id":"input_boolean.gartenbewasserung","state_type":"str","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":380,"y":620,"wires":[["4726fd2de3599533"],[]]},{"id":"363712f15bfe6c65","type":"api-current-state","z":"797bf7aa946f60a0","name":"Erw. Temperatur","server":"49761872cda20bfb","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.openweathermap_forecast_temperature","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1340,"y":620,"wires":[["203245314286806a","cd1622088fab6c0d"]]},{"id":"07fd1ebb779b4392","type":"api-current-state","z":"797bf7aa946f60a0","name":"Erw. Niederschlag abfragen","server":"49761872cda20bfb","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.openweathermap_forecast_precipitation","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"erwartet","propertyType":"msg","value":"","valueType":"entityState"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1920,"y":600,"wires":[["8e2c1a5c8d1a023f"]]},{"id":"a2e54fa655c392f8","type":"comment","z":"797bf7aa946f60a0","name":"Erw. Niederschlag","info":"","x":1810,"y":460,"wires":[]},{"id":"4174a0b86bd3579e","type":"delay","z":"797bf7aa946f60a0","name":"","pauseType":"delay","timeout":"30","timeoutUnits":"minutes","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"allowrate":false,"outputs":1,"x":2910,"y":600,"wires":[["15a04fe9e6830f2f"]]},{"id":"15a04fe9e6830f2f","type":"api-call-service","z":"797bf7aa946f60a0","name":"Gartenbewässerung aus","server":"49761872cda20bfb","version":5,"debugenabled":false,"domain":"switch","service":"turn_off","areaId":[],"deviceId":[],"entityId":["switch.schalter_bewasserung_schalter"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":3170,"y":600,"wires":[[]]},{"id":"59a10c4a15b51c1e","type":"comment","z":"797bf7aa946f60a0","name":"Muss es beregnet werden?","info":"","x":2220,"y":460,"wires":[]},{"id":"9c94a7eddb8e3da2","type":"api-call-service","z":"797bf7aa946f60a0","name":"Gartenbewässerung an","server":"49761872cda20bfb","version":5,"debugenabled":false,"domain":"switch","service":"turn_on","areaId":[],"deviceId":[],"entityId":["switch.schalter_bewasserung_schalter"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":2630,"y":600,"wires":[["4174a0b86bd3579e"]]},{"id":"47ea09b36f3abbe8","type":"comment","z":"797bf7aa946f60a0","name":"Bewässerung für 30 min","info":"","x":2850,"y":460,"wires":[]},{"id":"4726fd2de3599533","type":"api-current-state","z":"797bf7aa946f60a0","name":"Gefallene Regenmenge abfragen (V2)","server":"49761872cda20bfb","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.rainfactor","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":650,"y":620,"wires":[["1a2b9805e5b0ed68"]]},{"id":"862df1be12524eb6","type":"comment","z":"797bf7aa946f60a0","name":"Tatsächliche Regenmenge letzten 24h abfragen","info":"","x":780,"y":480,"wires":[]},{"id":"1a2b9805e5b0ed68","type":"change","z":"797bf7aa946f60a0","name":"Letzten 24h tats. Regen zw.-speichern (v2)","rules":[{"t":"set","p":"tagesregenmenge","pt":"msg","to":"payload","tot":"msg"}],"action":"","property":"","from":"","to":"","reg":false,"x":1030,"y":620,"wires":[["363712f15bfe6c65"]]},{"id":"8e2c1a5c8d1a023f","type":"api-current-state","z":"797bf7aa946f60a0","name":"Regenwahrscheinlichkeit über 70%?","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"70","halt_if_type":"num","halt_if_compare":"gte","entity_id":"sensor.openweathermap_forecast_precipitation_probability","state_type":"num","blockInputOverrides":false,"outputProperties":[],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":2270,"y":600,"wires":[[],["9c94a7eddb8e3da2"]]},{"id":"203245314286806a","type":"api-current-state","z":"797bf7aa946f60a0","name":"Bodentemperatur","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"15","halt_if_type":"num","halt_if_compare":"gte","entity_id":"sensor.gartenbodenmessung_temperature","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1590,"y":580,"wires":[["07fd1ebb779b4392"],[]]},{"id":"cd1622088fab6c0d","type":"api-current-state","z":"797bf7aa946f60a0","name":"Bodenfeuchte","server":"49761872cda20bfb","version":3,"outputs":2,"halt_if":"55","halt_if_type":"num","halt_if_compare":"lte","entity_id":"sensor.gartenbodenmessung_soil_moisture","state_type":"num","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":1580,"y":680,"wires":[["07fd1ebb779b4392"],[]]},{"id":"49761872cda20bfb","type":"server","name":"Hometomanik","version":5,"addon":false,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":"30","areaSelector":"id","deviceSelector":"id","entitySelector":"id","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true}]

Die Sensoren und Deine Daten musst Du nur anpassen. Ich hoffe es hilft Dir weiter.

1 „Gefällt mir“

Warum schalten sich denn deine Bewässerungscomputer aus? Haben die eine interne Logik die du nicht übersteuern kannst?

Deine Idee könnte man auch über ein Skript regeln.
Ich nutze die SmartIrigation Integration um mir die optimale Bewässerungsdauer zu berechnen und die Bewässert meinen Kreislauf entsprechend meiner Vorgabe (aber min 10 Minuten)

1 „Gefällt mir“

Guten Morgen Heiko,

vielen Dank für deine Nachricht, die ich so umgesetzt habe:
Zone 1

alias: Rasenbewässerung Zone 1
description: Zone 1 = Lang
trigger:
  - platform: sun
    event: sunrise
    offset: "-01:15:00"
condition: []
action:
  - service: timer.start
    metadata: {}
    data: {}
    target:
      entity_id: timer.helfer_bewasserung_zone_1
  - repeat:
      count: 1
      sequence:
        - if:
            - condition: state
              entity_id: switch.bew_dr_lang_zigbee_schalter
              state: "off"
          then:
            - service: switch.turn_on
              metadata: {}
              data: {}
              target:
                entity_id: switch.bew_dr_lang_zigbee_schalter
mode: single

Zone 2

alias: Rasenbewässerung Zone 2
description: Zone 2 = kurz
trigger:
  - platform: state
    entity_id:
      - timer.helfer_bewasserung_zone_1
    from: active
    to: idle
condition: []
action:
  - service: switch.turn_off
    metadata: {}
    data: {}
    target:
      entity_id: switch.bew_dr_lang_zigbee_schalter
  - service: timer.start
    metadata: {}
    data: {}
    target:
      entity_id: timer.helfer_bewasserung_zone_2
  - repeat:
      count: 1
      sequence:
        - if:
            - condition: state
              entity_id: switch.bew_dr_kurz_zigbee_schalter
              state: "off"
          then:
            - service: switch.turn_on
              metadata: {}
              data: {}
              target:
                entity_id: switch.bew_dr_kurz_zigbee_schalter
mode: single

Und dann noch die Abschaltung des Switches, die ich hier ja nicht nochmals einfügen muss.

Muss ich bei der Wiederholung nur 1x eingeben oder 6x eingeben, weil der Zigbee Bewässerungscomputer 6x innerhalb des Zeitraumes sich automatisch ausschaltet?

Vielen Dank für deine Rückemldung @JC00P3R

Diese Integration hatte ich auch, an dieser ist mir eben aufgefallen, dass sich mein Bewässerungscomputer ständig ausschaltet. Die Integration hatte eine Bewässerungszeit von 41 Minuten ausgegeben, aber nach 9:21 Minuten hat sich der Zigbee Bewässerungscomputer ausgeschaltet.

Ob man das in ZHA übersteuern kann, keine Ahnung. Das habe ich bisher nicht ausprobiert bzw. mich damit beschäftigt.

Nein, statt Anzahl wählst Du “Bis” aus und dann Entität/Zustand/DeinTimer und dann Zustand dann “Untätig”. Dann hört es exakt nach den 45 Minuten auf zu arbeiten. Dann ist das Ventil noch das letzte Mal geöffnet, aber mit der zweiten Automatisierung wird es ja gestoppt. Damit ist es egal, wie lange Deine Ventile zufällig geöffnet sind, Du bekommst immer Deine 45 Minuten.

1 „Gefällt mir“

Noch ist es verwirrend @HeikoBauer :smiley:

alias: Rasenbewässerung Zone 1
description: Zone 1 = Lang
trigger:
  - platform: sun
    event: sunrise
    offset: "-01:15:00"
condition: []
action:
  - service: timer.start
    metadata: {}
    data: {}
    target:
      entity_id: timer.helfer_bewasserung_zone_1
  - repeat:
      sequence:
        - if:
            - condition: state
              entity_id: switch.bew_dr_lang_zigbee_schalter
              state: "off"
          then:
            - service: switch.turn_on
              metadata: {}
              data: {}
              target:
                entity_id: switch.bew_dr_lang_zigbee_schalter
      until:
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1
          state: idle
mode: single

Vor Sonnenaufgang, dann mache …

Ist das so gemeint?
Nochmals vielen Dank für Eure Hilfe!

Ja, so, aber mir fällt gerade auf, dass wir es anders machen müssen. Nimm in der Aktion das Wenn-dann raus und nur das hier rein:

  • Warten auf einen Auslöser: Schalter wechselt von an zu aus
  • Bedingung: Timer ist aktiv
  • Schalter “Einschalten”

Die Timer-Abfrage deshalb, weil die Wiederholung in der letzten Schleife sonst noch mal einschaltet, auch wenn das Ventil eigentlich gerade endgültig abgeschaltet wurde.

1 „Gefällt mir“

@HeikoBauer

Bei “Warten auf einen Auslöser” gibt es keine Bedingung, die habe ich separat in einer weiteren Aktion hinzugefügt:

Nochmals nachbearbeitet:
image

Nicht ganz. Die Wiederholung muss bleiben, aber die Aktionen in ihr werden anders:

alias: Rasenbewässerung Zone 1
description: Zone 1 = Lang
trigger:
  - platform: sun
    event: sunrise
    offset: "-01:15:00"
condition: []
action:
  - service: timer.start
    metadata: {}
    data: {}
    target:
      entity_id: timer.helfer_bewasserung_zone_1
  - repeat:
      sequence:
        - wait_for_trigger:
            - platform: state
              entity_id:
                - switch.bew_dr_lang_zigbee_schalter
              from: "on"
              to: "off"
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1
          state: active
        - service: switch.turn_on
          target:
            entity_id: switch.bew_dr_lang_zigbee_schalter
          data: {}
      until:
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1
          state: idle
mode: single
1 „Gefällt mir“

@HeikoBauer

Super, vielen lieben Dank.
Die Automation wird Morgenfrüh durchlaufen, ich werde berichten :smiley:

Sehr gerne, bis morgen dann. :grinning:

Guten Morgen Zusammen,

natürlich ist die Bewässerungsautomation nicht durchlaufen worden.

image

Ich gehe mal davon aus, dass ich vergessen habe, den Bewässerungscomputer zu starten (Switch einschalten) :unamused:

Das habe ich nun noch hinzugefügt:

Und wir warten erneut auf Morgen :smiley:

Stimmt, starten muss es erst mal. :grinning: Mir ist gerade auch aufgefallen, dass wir das Ganze noch vereinfachen können, indem wir Öffnen und Warten in der Schleife vertauschen. Dann ist der erste Start vor der Wiederholung gar nicht mehr nötig und auch die Bedingung kann entfallen.

alias: Test Rasenbewässerung Zone 1
description: Zone 1 = Lang
trigger:
  - platform: sun
    event: sunrise
    offset: "-01:15:00"
condition: []
action:
  - service: timer.start
    metadata: {}
    data: {}
    target:
      entity_id: timer.helfer_bewasserung_zone_1
  - repeat:
      sequence:
        - service: switch.turn_on
          target:
            entity_id: switch.bew_dr_lang_zigbee_schalter
          data: {}
        - wait_for_trigger:
            - platform: state
              entity_id:
                - switch.bew_dr_lang_zigbee_schalter
              from: "on"
              to: "off"
      until:
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1
          state: idle
mode: single

Ich hab meine Bewässerungsautomatisierungen übrigens auch schon außerhalb der Gießzeiten getestet, indem ich einfach so lange die Wasserhähne abgedreht habe, an denen die Ventile hängen.

1 „Gefällt mir“

Guten Morgen,

das schöne am heutigen Tag, die Automation ist durchgelaufen, so wie es sein sollte.
Vielen lieben Dank für eure Unterstützung.

Mir ist aufgefallen, das ich noch die Bodenfeuchtigkeit nicht mit eingerechnet habe. Also habe ich 3 weitere Timer erstellt, um 4 verschiedene Zeiten zur Bewässerung zu habe. Diese dann in einer “Auswahl” gepackt, um je nach Bodenfeuchte einen Timer zu starten.

alias: Rasenbewässerung Zone 1
description: Zone 1 = Lang
trigger:
  - platform: sun
    event: sunrise
    offset: "-01:15:00"
condition: []
action:
  - choose:
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            below: 40
            above: 1
        sequence:
          - service: timer.start
            metadata: {}
            data: {}
            target:
              entity_id: timer.helfer_bewasserung_zone_1
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 40
            below: 60
        sequence:
          - service: timer.start
            metadata: {}
            data: {}
            target:
              entity_id: timer.helfer_bewasserung_zone_1_60min
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 60
            below: 70
        sequence:
          - service: timer.start
            metadata: {}
            data: {}
            target:
              entity_id: timer.helfer_bewasserung_zone_1_45min
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 70
            below: 80
        sequence:
          - service: timer.start
            metadata: {}
            data: {}
            target:
              entity_id: timer.helfer_bewasserung_zone_1_30min
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 80
            below: 100
        sequence: []
  - repeat:
      sequence:
        - service: switch.turn_on
          target:
            entity_id: switch.bew_dr_lang_zigbee_schalter
          data: {}
        - wait_for_trigger:
            - platform: state
              entity_id:
                - switch.bew_dr_lang_zigbee_schalter
              from: "on"
              to: "off"
      until:
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1
          state: idle
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1_60min
          state: idle
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1_45min
          state: idle
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1_30min
          state: idle
mode: single

Oder gibt es andere Möglichkeiten, die Bodenfeuchte mit einfließen zu lassen in diese Automation?

Das kannst Du einfacher machen. Nimm nur den einen Timer, den Du schon hattest. Denn beim Service timer.start kannst Du unten auch einen Haken bei der Dauer machen und dann die gewünschte Laufzeit eingeben. Du musst also nur eine Auswahl für den Start des einen Timers einsetzen und damit seine Laufzeit nach der Bodenfeuchte stellen.

1 „Gefällt mir“

Vielen Dank für den Tipp @HeikoBauer

alias: Rasenbewässerung Zone 1
description: Zone 1 = Lang
trigger:
  - platform: sun
    event: sunrise
    offset: "-01:15:00"
condition: []
action:
  - choose:
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            below: 40
            above: 1
        sequence:
          - service: timer.start
            metadata: {}
            data: {}
            target:
              entity_id: timer.helfer_bewasserung_zone_1
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 40
            below: 60
        sequence:
          - service: timer.start
            metadata: {}
            data:
              duration: "01:00:00"
            target:
              entity_id: timer.helfer_bewasserung_zone_1
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 60
            below: 70
        sequence:
          - service: timer.start
            metadata: {}
            data:
              duration: "00:45:00"
            target:
              entity_id: timer.helfer_bewasserung_zone_1
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 70
            below: 80
        sequence:
          - service: timer.start
            metadata: {}
            data:
              duration: "00:30:00"
            target:
              entity_id: timer.helfer_bewasserung_zone_1
      - conditions:
          - type: is_humidity
            condition: device
            device_id: 81b596bd41836085492ff05413c45d60
            entity_id: ac7ce655a16e84ff833f9a0725617c5f
            domain: sensor
            above: 80
            below: 100
        sequence:
          - service: timer.start
            metadata: {}
            data:
              duration: "00:00:00"
            target:
              entity_id: timer.helfer_bewasserung_zone_1
  - repeat:
      sequence:
        - service: switch.turn_on
          target:
            entity_id: switch.bew_dr_lang_zigbee_schalter
          data: {}
        - wait_for_trigger:
            - platform: state
              entity_id:
                - switch.bew_dr_lang_zigbee_schalter
              from: "on"
              to: "off"
      until:
        - condition: state
          entity_id: timer.helfer_bewasserung_zone_1
          state: idle
mode: single

Der Testdurchlauf wird morgenfrüh durchlaufen.

Ich muss schon sagen, ich habe sehr viel über tiefgreifende Automationen gelernt. Was so alles möglich ist in HA :wink:

Dankeschön.

Gerne. Was Du noch ändern müsstest, ist die Sequenz mit dem Null-Timer. Wenn Du null eingibst, läuft der Timer in seiner Grundeinstellung los. Und selbst, wenn Du die auf null setzt, läuft die Wiederholungsaktion noch einmal durch. Außerdem würde die zweite Automatisierung gar nicht starten, weil der Timer nie abläuft, sondern schon untätig ist.

Das lässt sich aber alles lösen. Dazu erst mal die Frage: Hast Du für beide Zonen getrennte Feuchtesensoren, muss also die zweite Automatisierung überhaupt gestartet werden, wenn die erste wegen der hohen Bodenfeuchte schon nicht laufen soll?

1 „Gefällt mir“

a) Es gibt nur einen Feuchtigkeitssensor und b) die zweite Zone muss nicht durchlaufen werden, wenn die erste Zone nicht startet.