DOIF zur Rollladensteuerung geht nicht mehr

Begonnen von Dennis R., 24 Juli 2018, 10:20:13

Vorheriges Thema - Nächstes Thema

Dennis R.

Hallo, mein DOIF zur Steuerung der Rollladen will nicht mehr. Es funktionierte alles einwandfrei, von einem auf den anderen Tag war dann Schluss.
do always bringt auch nichts, das DOIF wird nach initialize einmal komplett ausgeführt, also morgens hoch und abends runter, dann kommt nix mehr. Der Eventmonitor sagt mir auch nichts womit man arbeiten könnte. Jemand ne Idee?
Gruß Dennis
([{sunrise("HORIZON=0",0,"08:00","09:30")}|6|0] or [{sunrise("HORIZON=-2.0",0,"06:30","08:30")}|1|2|3|4|5]) (set Kueche_Rollo up;sleep 30;set Wohnen_Rollo up;sleep 30;set UG_Rest up;sleep 30;set Gaestebad up;sleep 30;set SpiZi_Rollo up;sleep 30;set OG_Rollo up) DOELSEIF ([{sunset("HORIZON=-5.0",0,"17:00","22:30")}|5|6] or [{sunset("HORIZON=-3",0,"16:40","22:00")}|0|1|2|3|4]) (set Kueche_Rollo down;sleep 30;set Wohnen_Rollo down;sleep 30;set UG_Rest down;sleep 30;set Gaestebad down;sleep 30;set SpiZi_Rollo down;sleep 30;set OG_Rollo down)

nils_

poste doch mal bitte ein list vom DOIF

dann solltest du dich nochmal mit der DOIF Syntax auseinander setzen!
- keine Semikolons (auch wenn sie funktionieren)
- das sleep kannst du mit dem wait-attribut lösen.
viele Wege in FHEM es gibt!

Damian

Zitat von: Dennis R. am 24 Juli 2018, 10:20:13
Hallo, mein DOIF zur Steuerung der Rollladen will nicht mehr. Es funktionierte alles einwandfrei, von einem auf den anderen Tag war dann Schluss.
do always bringt auch nichts, das DOIF wird nach initialize einmal komplett ausgeführt, also morgens hoch und abends runter, dann kommt nix mehr. Der Eventmonitor sagt mir auch nichts womit man arbeiten könnte. Jemand ne Idee?
Gruß Dennis
([{sunrise("HORIZON=0",0,"08:00","09:30")}|6|0] or [{sunrise("HORIZON=-2.0",0,"06:30","08:30")}|1|2|3|4|5]) (set Kueche_Rollo up;sleep 30;set Wohnen_Rollo up;sleep 30;set UG_Rest up;sleep 30;set Gaestebad up;sleep 30;set SpiZi_Rollo up;sleep 30;set OG_Rollo up) DOELSEIF ([{sunset("HORIZON=-5.0",0,"17:00","22:30")}|5|6] or [{sunset("HORIZON=-3",0,"16:40","22:00")}|0|1|2|3|4]) (set Kueche_Rollo down;sleep 30;set Wohnen_Rollo down;sleep 30;set UG_Rest down;sleep 30;set Gaestebad down;sleep 30;set SpiZi_Rollo down;sleep 30;set OG_Rollo down)

Diese Syntax gibt es nicht:

[{sunrise("HORIZON=-2.0",0,"06:30","08:30")}|1|2|3|4|5]

eher:

[{sunrise("HORIZON=-2.0",0,"06:30","08:30")}|12345]
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Dennis R.

#3
steh gerade auf dem Schlauch... Wie macht man nochmal ein list davon? ???
Damian, das werde ich mal testen. komisch ist nur das es knapp ein Jahr einwandfrei lief. Oder wurde das Modul geändert? Die Tage einfach ohne Leerzeichen eintragen?


Damian

Zitat von: Dennis R. am 24 Juli 2018, 10:35:38
steh gerade auf dem Schlauch... Wie macht man nochmal ein list davon? ???
Damian, das werde ich mal testen. komisch ist nur das es knapp ein Jahr einwandfrei lief. Oder wurde das Modul geändert? Die Tage einfach ohne Leerzeichen eintragen?

Leerzeichen wäre ja noch ok, aber nicht Pipezeichen | als zusätzlichen Trenner zwischen den Zahlen. Das Modul wurde irgendwann mal auf Buchstabenkürzel für Wochentage erweitert. Das kannst du aber alles in der Commandref zu DOIF nachlesen.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Dennis R.

#5
Les da gerade drin, also müsste es ja nun so wie unten eigentlich gehen?
wait sieht so aus: 30,30,30,30,30:30,30,30,30,30
da ich je Raum 30 Sekunden verzögern möchte.
([{sunrise("HORIZON=0",0,"08:00","09:30")}|60] or [{sunrise("HORIZON=-2.0",0,"06:30","08:30")}|12345]) (set Kueche_Rollo up) (set Wohnen_Rollo up) (set UG_Rest up) (set Gaestebad up) (set SpiZi_Rollo up) (set OG_Rollo up) DOELSEIF ([{sunset("HORIZON=-5.0",0,"17:00","22:30")}|56] or [{sunset("HORIZON=-3",0,"16:40","22:00")}|01234]) (set Kueche_Rollo down) (set Wohnen_Rollo down) (set UG_Rest down) (set Gaestebad down) (set SpiZi_Rollo down) (set OG_Rollo down)

Dennis R.

Manuell ausgeführt läuft es jetzt wie es soll!
Danke schonmal für die Hinweise!
Das bringt mich schon echt weiter!
Jetzt muss es nur noch von allein laufen, aber das seh ich ja heut abend.

pc1246

Zitat von: Dennis R. am 24 Juli 2018, 10:35:38
steh gerade auf dem Schlauch... Wie macht man nochmal ein list davon? ???
Damian, das werde ich mal testen. komisch ist nur das es knapp ein Jahr einwandfrei lief. Oder wurde das Modul geändert? Die Tage einfach ohne Leerzeichen eintragen?
list "Name des DOIF" (Ohne Haekchen eingeben)
Gruss Christoph
HP T610
Onkyo_AVR;3 Enigma2; SB_Server ; SB_Player; HM-USB mit 15 HM-CC-RT-DN, 3 HM_WDS10_TH_O, 6 HM-Sec-SCo, 4 HM-Sec-MDIR-2, 1 HM-Sen-MDIR-O-2, 8 Ferion 5000 OW ; PhilipsTV; 4 harmony hub; Jeelink mit 9 PCA301; Somfy; S7-300; 3 LGW; HUE; HM-IP auf Charly

Dennis R.

So war das mit dem List... Danke!
Das DOIF scheint zu funktionieren.

nils_

viele Wege in FHEM es gibt!

PV-Solar

Moin,

ich hänge mich hier mal mit an, da meine Rolladensteuerung seit dem FHEM-Update am 23.07. auch nicht mehr läuft.

Beiliegend meine Konfig des DOIF.
"verbose = 5" ist seit 3 Tagen drin - es kommen aber keine Einträge im fhem-log. (verbose global ist auf 2 gestellt)
"always" bräuchte meiner Meinung nach gar nicht, habe ich aber zum testen mal aktiviert.

Internals:
   DEF        ([13:00-18:30] and [ESPEasy_ESP_Easy_Lux_Sensor_TLS2561:Lux] > 4000) (set Lux_West_OnOFF on, set Arbeitszimmer down) DOELSEIF ([13:00-18:00] and [ESPEasy_ESP_Easy_Lux_Sensor_TLS2561:Lux] < 2000) (set Lux_West_OnOFF off, set Arbeitszimmer up)
   MODEL      FHEM
   NAME       Rollo_AZ_runter_Lux
   NR         151
   NTFY_ORDER 50-Rollo_AZ_runter_Lux
   STATE      initialized
   TYPE       DOIF
   READINGS:
     2018-07-31 21:09:30   Device          ESPEasy_ESP_Easy_Lux_Sensor_TLS2561
     2018-07-30 22:32:49   cmd             0
     2018-07-30 22:32:49   mode            enabled
     2018-07-30 22:32:49   state           initialized
     2018-07-31 18:30:00   timer_01_c01    01.08.2018 13:00:00
     2018-07-31 18:30:00   timer_02_c01    01.08.2018 18:30:00
     2018-07-31 18:00:00   timer_03_c02    01.08.2018 13:00:00
     2018-07-31 18:00:00   timer_04_c02    01.08.2018 18:00:00
   Regex:
   attr:
     wait:
       0:
         480
       1:
         600
   condition:
     0          DOIF_time($hash,0,1,$wday,$hms) and ReadingValDoIf($hash,'ESPEasy_ESP_Easy_Lux_Sensor_TLS2561','Lux') > 4000
     1          DOIF_time($hash,2,3,$wday,$hms) and ReadingValDoIf($hash,'ESPEasy_ESP_Easy_Lux_Sensor_TLS2561','Lux') < 2000
   days:
   devices:
     0           ESPEasy_ESP_Easy_Lux_Sensor_TLS2561
     1           ESPEasy_ESP_Easy_Lux_Sensor_TLS2561
     all         ESPEasy_ESP_Easy_Lux_Sensor_TLS2561
   do:
     0:
       0          set Lux_West_OnOFF on, set Arbeitszimmer down
     1:
       0          set Lux_West_OnOFF off, set Arbeitszimmer up
     2:
   helper:
     event      Lux: 87
     globalinit 1
     last_timer 4
     sleeptimer -1
     triggerDev ESPEasy_ESP_Easy_Lux_Sensor_TLS2561
     triggerEvents:
       Lux: 87
     triggerEventsState:
       state: Lux: 87
   internals:
   interval:
     0          -1
     1          0
     2          -1
     3          2
   intervalfunc:
   intervaltimer:
   itimer:
   localtime:
     0          1533121200
     1          1533141000
     2          1533121200
     3          1533139200
   readings:
     0           ESPEasy_ESP_Easy_Lux_Sensor_TLS2561:Lux
     1           ESPEasy_ESP_Easy_Lux_Sensor_TLS2561:Lux
     all         ESPEasy_ESP_Easy_Lux_Sensor_TLS2561:Lux
   realtime:
     0          13:00:00
     1          18:30:00
     2          13:00:00
     3          18:00:00
   time:
     0          13:00:00
     1          18:30:00
     2          13:00:00
     3          18:00:00
   timeCond:
     0          0
     1          0
     2          1
     3          1
   timer:
     0          0
     1          0
     2          0
     3          0
   timers:
     0           0  1
     1           2  3
   trigger:
   triggertime:
     1533121200:
       localtime  1533121200
       hash:
     1533139200:
       localtime  1533139200
       hash:
     1533141000:
       localtime  1533141000
       hash:
   uiState:
   uiTable:
Attributes:
   do         always
   room       ESPEasy,Rolladen
   verbose    5
   wait       480:600


Die Lux-Werte von ESPEasy_ESP_Easy_Lux_Sensor_TLS2561:Lux sind vorhanden. Heute waren z.B. Lux_Max = 17106.


Damian

Vermutlich erzeugt ESPEasy_ESP_Easy_Lux_Sensor_TLS2561:Lux kein Event, daher das Attribut checkReadingEvent 0  setzen, siehe https://fhem.de/commandref_DE.html#DOIF_checkReadingEvent
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

PV-Solar

Danke, das war's scheinbar tatsächlich. Jetzt fahren die Rolladen wie gewünscht.