ich brauche bitte ein bisschen Unterstützung.
Ich habe eine kleine einfache Stuerung für meine Gartenbewässerung.
Kurze Erklärung.
Durch den Startbutton schaltet ein Wasserkreis für eine im Timer eingestellte Zeit ein. Nach Ablauf des Timers schaltet Kreis 1 aus und Kreis 2 wird für die gleiche Zeit eingeschaltet. Der Stoppbutton soll alles ausschalten und die Timer Resetten.
Jetzt zum Problem: Wenn Kreis 1 an ist und ich drücke auf stop, dann geht zwar kreis 1 aus aber nach ablauf des Timers geht dann kreis 2 an, das sorge schon für eine nasse überraschung

Wie kann man die Regel ganz abbrechen und die Timer resetten.
Items:
Code: Alles auswählen
Switch Aussen_Rasensprenger_Hinten "Hinten" {channel="shelly:shelly25-relay:98cdac2476ad:relay1#output"}
Switch Aussen_Rasensprenger_Vorn "Vorne" {channel="shelly:shelly25-relay:98cdac2476ad:relay2#output"}
Switch Rasenprenger_Auto "Automatik"
Switch Timer_Auto "Timer Automatik"
Number Timerzeit "Zeit [%d min]"
Code: Alles auswählen
var Timer tZeit = null
var vartimer
rule "RasensprengerAuto"
when
Item Rasenprenger_Auto received update
then
if (Rasenprenger_Auto.state == ON) {
Aussen_Rasensprenger_Hinten.sendCommand(ON)
val Integer Timer_Time = (Timerzeit.state as DecimalType).intValue
tZeit = createTimer(ZonedDateTime.now.plusMinutes(Timer_Time),[|
Aussen_Rasensprenger_Hinten.sendCommand(OFF)
tZeit = null
Aussen_Rasensprenger_Vorn.sendCommand(ON)
tZeit = createTimer(ZonedDateTime.now.plusMinutes(Timer_Time),[|
Aussen_Rasensprenger_Vorn.sendCommand(OFF)
tZeit = null
Rasenprenger_Auto.sendCommand(OFF)
])
])
}
if (Rasenprenger_Auto.state == OFF) {
tZeit = null
tZeit2 = null
Aussen_Rasensprenger_Hinten.sendCommand(OFF)
Aussen_Rasensprenger_Vorn.sendCommand(OFF)
} return
end
Code: Alles auswählen
Switch item=Aussen_Rasensprenger_Hinten label="Rasensprenger Hinten"
Switch item=Aussen_Rasensprenger_Vorn label="Rasensprenger Vorne"
Switch item=Rasenprenger_Auto label="Rasensprenger Automatik" mappings=[ON="Start",OFF="Stopp"] icon=water
Setpoint item=Timerzeit label="Dauer in Minuten [%d min]" step=1 minValue=1 maxValue=30 icon=time
Gruß
Tim