FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: fhem_cgn am 07 Mai 2016, 17:00:52

Titel: doif wird zur Endlosschleife - gelöst
Beitrag von: fhem_cgn am 07 Mai 2016, 17:00:52
Wie die Überschrift es schon vermuten lässt - doif wird bei mir zur Endlosschleife und ich weiß leider nicht warum.
Dabei geht es um einen Taster (Taster_WZ_3; HM 6 fach Wandtaster), der kurz oder lang gedrückt werden soll und dann nach bestimmten Vorgaben 2 Leuchten (Aktor_Beleuchtung_Sw_01, Aktor_Beleuchtung_Sw_04; HM 4 fach Schaltaktor) ein- bzw. ausschalten soll. 

Erstmal in "Klartext" was überhaupt passieren soll

Wenn (Taster_WZ_3=kurz gedrückt & Aktor_Beleuchtung_Sw_04=aus) dann (Aktor_Beleuchtung_Sw_04=an)
Wenn (Taster_WZ_3=kurz gedrückt & Aktor_Beleuchtung_Sw_04=an) dann (Aktor_Beleuchtung_Sw_04=aus & Aktor_Beleuchtung_Sw_01=aus)
Wenn (Taster_WZ_3=lang gedrückt & Aktor_Beleuchtung_Sw_01=aus) dann (Aktor_Beleuchtung_Sw_01=an und Aktor_Beleuchtung_Sw_04=an)

Aus DEF von di_wzT3s

([Taster_WZ_3] =~ "Short" && [Aktor_Beleuchtung_Sw_04] eq "off")
(set Aktor_Beleuchtung_Sw_04 on)
DOELSEIF ([Taster_WZ_3] =~ "Short" && [Aktor_Beleuchtung_Sw_04] eq "on")
(set Aktor_Beleuchtung_Sw_04 off, set Aktor_Beleuchtung_Sw_01 off)
DOELSEIF ([Taster_WZ_3] =~ "Long" && [Aktor_Beleuchtung_Sw_01] eq "off")
(set Aktor_Beleuchtung_Sw_04 on, set Aktor_Beleuchtung_Sw_01 on)



Der Code führt leider zu einem lustigen blinken von Aktor_Beleuchtung_Sw_04.
Bei langem drücken der Taste, gehen bei Leuchten an - der Teil funktioniert also korrekt.
Drücke ich dann kurz, gehen beide Leuchten an - soweit auch noch korrekt; dann fängt jedoch Aktor_Beleuchtung_Sw_04 an zu blinken. Warum? Was mache ich da falsch, bzw. wie kann ich das unterdrücken?
Titel: Antw:doif wird zur Endlosschleife
Beitrag von: CoolTux am 07 Mai 2016, 17:06:29
Die Bedingungen für Deine Aktoren musst Du mit Fragezeichen versehen. So das sie nicht triggern sondern nur abgefragt werden.
Näheres siehe Commandref.



Grüße
Titel: Antw:doif wird zur Endlosschleife
Beitrag von: fhem_cgn am 07 Mai 2016, 17:16:33
Danke für die schnelle Hilfe - jetzt gehts  :)