Frage zu einem DOIF welches manchmal nicht schaltet?

Begonnen von moonsorrox, 08 Juli 2019, 16:23:07

Vorheriges Thema - Nächstes Thema

moonsorrox

Ich habe ein DOIF für eine Wegbeleuchtung, seit einiger Zeit aber passiert es das dieses immer Sonntag Abend die Beleuchtung nicht ausschaltet.
Ich habe schon einigemale drüber geschaut und kann nicht erkennen warum dieses passiert.

Vllt. hat hier jemand mal die Möglichkeit drüber zu schauen und findet etwas. Ich habe hier die DOELSEIF alle untereinander geschrieben der Übersichtlichkeit wegen im DOIF ist alles ohne \ hintereinander geschrieben
Hier mal der Code:
defmod di_WegBeleuchtung DOIF ([?du_Modus_WegBeleuchtung] eq "Dämmerung" and ([{sunset("CIVIL",-300,"16:30","22:20")}|8] or [{sunset("CIVIL",0,"16:30","22:20")}|7])) (set WegLampe_Sw_01 on)
DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Urlaub" and ([{sunset("CIVIL",0,"16:30","22:20")}|8] or [{sunset("CIVIL",0,"16:30","22:20")}|7])) (set WegLampe_Sw_01 on)\
DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Weihnachten" and ([{sunset("CIVIL",-300,"16:20","22:20")}|8] or [{sunset("CIVIL",0,"16:30","22:20")}|7])) (set WegLampe_Sw_01 on) DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Urlaub" and ([00:25|8] or [00:45|7])) (set WegLampe_Sw_01 off)
DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Weihnachten" and ([00:25|8] or [00:55|7])) (set WegLampe_Sw_01 off)
DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Dämmerung" and ([{sunset("CIVIL",3000,"19:00","22:54")}|78])) (set WegLampe_Sw_01 off,set WegLampe_Sw_02 on)
DOELSEIF ( [?du_Modus_WegBeleuchtung] eq "Dämmerung" and ([23:35|8] or [00:05|7])) (set WegLampe_Sw_02 off)



Ich bin schon drauf und dran das komplette DOIF zu ändern und nur für die Dämmerung also die normale Tagesschaltung zu ändern.

Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Damian

Wenn etwas am Wochenende nicht passiert, dann hat das oft mit fehlendem Zustandswechsel zu tun. Ich gehe davon aus, dass do always nicht gesetzt ist. Da du keine zyklischen Trigger abfragst, könnte do always die Lösung sein.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

moonsorrox

OK.. dann setze ich das mal.  :)
Ich war bisher immer der Meinung, dass zeitlich wiederkehrende Ereignisse kein "do always" brauchen, da ja die Zeit eigentlich immer wiederkehrt.
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Damian

Zitat von: moonsorrox am 09 Juli 2019, 15:25:46
OK.. dann setze ich das mal.  :)
Ich war bisher immer der Meinung, dass zeitlich wiederkehrende Ereignisse kein "do always" brauchen, da ja die Zeit eigentlich immer wiederkehrt.

ja, wenn aber z. B. am Wochenende etwas nicht ein- oder ausgeschaltet wird, dann wechselt der Zustand nicht und man wundert sich warum am nächsten Tag etwas nicht geschaltet wird - einfach weil das Modul noch im gleichen Zustand ist.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

moonsorrox

#4
OK Damian vielen Dank
ich habe jetzt mal meine ganzen DOIFs die am Sonntagabend oder besser die nach 0 Uhr schalten mit do always ausgestattet  ;)
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

moonsorrox

#5
hier jetzt mal eine Rückmeldung von mir...
Nachdem ich dieses DOIF von oben mit "do always" ausgestattet habe ging es gestern Abend wieder nicht aus... Ich habe nun mal die Zeiten das es ausschaltet vor 00:00 Uhr eingestellt.
Aber was kann es dann noch sein das es gerade am Sonntag Abend nicht ausschaltet..?

hier nochmal das jetzt geänderte DOIF:
Zitatdefmod di_WegBeleuchtung DOIF ([?du_Modus_WegBeleuchtung] eq "Dämmerung" and ([{sunset("CIVIL",-300,"16:30","22:20")}|8] or [{sunset("CIVIL",0,"16:30","22:20")}|7])) (set WegLampe_Sw_01 on) DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Urlaub" and ([{sunset("CIVIL",0,"16:30","22:20")}|8] or [{sunset("CIVIL",0,"16:30","22:20")}|7])) (set WegLampe_Sw_01 on) DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Weihnachten" and ([{sunset("CIVIL",-300,"16:20","22:20")}|8] or [{sunset("CIVIL",0,"16:30","22:20")}|7])) (set WegLampe_Sw_01 on) DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Urlaub" and ([00:25|8] or [00:45|7])) (set WegLampe_Sw_01 off) DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Weihnachten" and ([00:25|8] or [00:55|7])) (set WegLampe_Sw_01 off) DOELSEIF ([?du_Modus_WegBeleuchtung] eq "Dämmerung" and ([{sunset("CIVIL",3000,"19:00","22:54")}|78])) (set WegLampe_Sw_01 off,set WegLampe_Sw_02 on) DOELSEIF ( [?du_Modus_WegBeleuchtung] eq "Dämmerung" and ([23:30|8] or [23:55|7])) (set WegLampe_Sw_02 off)
attr di_WegBeleuchtung do always

setstate di_WegBeleuchtung initialized
setstate di_WegBeleuchtung 2019-07-23 12:12:44 cmd 0
setstate di_WegBeleuchtung 2019-07-23 12:12:44 mode enabled
setstate di_WegBeleuchtung 2019-07-23 12:12:44 state initialized
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_01_c01 23.07.2019 22:08:15|8
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_02_c01 23.07.2019 22:13:15|7
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_03_c02 23.07.2019 22:13:15|8
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_04_c02 23.07.2019 22:13:15|7
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_05_c03 23.07.2019 22:08:15|8
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_06_c03 23.07.2019 22:13:15|7
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_07_c04 24.07.2019 00:25:00|8
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_08_c04 24.07.2019 00:45:00|7
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_09_c05 24.07.2019 00:25:00|8
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_10_c05 24.07.2019 00:55:00|7
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_11_c06 23.07.2019 22:53:59|78
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_12_c07 23.07.2019 23:30:00|8
setstate di_WegBeleuchtung 2019-07-23 12:31:38 timer_13_c07 23.07.2019 23:55:00|7
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

Per

Verkleinere dein DOIF doch erstmal auf das Wesentliche, Weihnachten und Co kannst du später einpflegen.
Auch die verschiedenen Schaltzeiten an verschiedenen Wochentagen würde ich schrittweise testen.

moonsorrox

Eigentlich sollte es so funktinieren, denn so habe ich ja auch das DOIF schrittweise aufgebaut.
Das komische ist das er es am letzten WoE wieder richtig gemacht hat und es ja auch öfter am WoE funktionierte, nur ab und an bleibt das Licht auch an. Ich werde es mir wieter anschauen und evtl. die Zeiten ändern
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

rischbiter123

Moin,

kann es eventuell sein, dass es garnicht am DOIF liegt? Wenn es zwischendurch funktioniert, könnte es doch durchaus sein, dass der Schaltimpuls nicht bei den Lampen ankommt. Ich habe zwar 'nur' IT-Steckdosen, aber auch da habe ich ab und an das 'Problem', dass das Licht nicht ausgeht.

LG

Andreas
4*Raspi, Max Thermostate und Fensterkontakte, FB7590, Mysensors und NanoCUL, IT und Sonoff, zigbee2mqtt2

amenomade

Zitat von: rischbiter123 am 30 Juli 2019, 13:21:48
Moin,

kann es eventuell sein, dass es garnicht am DOIF liegt? Wenn es zwischendurch funktioniert, könnte es doch durchaus sein, dass der Schaltimpuls nicht bei den Lampen ankommt. Ich habe zwar 'nur' IT-Steckdosen, aber auch da habe ich ab und an das 'Problem', dass das Licht nicht ausgeht.

LG

Andreas
Deswegen kann man immer besser mit einem "list" des DOIFs analysieren. Da sieht man, ob das DOIF geschaltet hat, und warum.
Mit einer raw Defintion sieht man gar nichts, was mit Zustand angeht.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus