Ich habe ein DOIF gebaut. welches nicht ganz korrekt läuft, leider sehe ich scheinbar den Wald vor lauter Bäumen nicht mehr und hoffe ihr könnt mir weiterhelfen.
Es geht um einen Luftentfeuchter (Steuerung über Tasmota Steckdose), welcher in Abhängigkeit vom Wert eines Shelly Feuchtefühlers, des Status eines Homematic Fensterkontakts sowie einer Zeitperiode gesteuert sein soll.
Folgende Definition habe ich geschrieben:
( [Klimasensor_Keller_Zimmer:params_humidity_0_rh] >53 and [07:30-21:30|8] and [Keller_Zimmer_Fensterkontakt:state] eq "closed") (set Tasmota_Keller_Luftentfeuchter on) DOELSEIF ( [Klimasensor_Keller_Zimmer:params_humidity_0_rh] >53 and [10:30-22:00|7] and [Keller_Zimmer_Fensterkontakt:state] eq "closed") (set Tasmota_Keller_Luftentfeuchter on) DOELSE (set Tasmota_Keller_Luftentfeuchter off)
Die Steuerung funktioniert abhängig von der Luftfeuchte einwandfrei, jedoch sollte doch sobald das Fenster bei laufendem Entlüfter geöffnet wird, das Gerät stoppen. Dem ist aber leider nicht so. Ein Event des Fensterkontakts wird ausgelöst.
Was übersehe ich?
Poste mal den List-Output vom DOIF-Device von dem vermeintlich falschen Zustand.
Ich Depp....Hab den Grund gefunden, natürlich muss ich auf STATE des Fensterkontakts reagieren und nicht auf state...
Sorry für die Aufregung. Problem gelöst.
Zitat von: theotherhalf am 04 Januar 2025, 13:34:13Ich Depp....Hab den Grund gefunden, natürlich muss ich auf STATE des Fensterkontakts reagieren und nicht auf state...
Sorry für die Aufregung. Problem gelöst.
Eigentlich nicht. STATE ist ein Internal und produziert selbst keine Events. In diesem Fall reagiert DOIF allerdings auf alle Events des Devices, das kann auch nachteilhaft sein.
Hmm. Ich habe die Bedingung gerade auf STATE geändert und nun klappt es.
Es gibt zwei readings des Homematic Kontakts, STATE und state.
Im Event Log erscheint das STATE
Hatte ein Event-on-Change auf das Reading STATE des Fensterkontakts gesetzt vor langer Zeit. Daher erschien es auch im Log.
Nun abgeändert auf state und die Bedingung angepasst. Klappt!
Brauchst du die beiden cmd-States für irgendwas oder könntest du die beiden Zeitangaben or verknüpfen und in eine Zeile packen?