Hallo,
ich habe mir mit einem DOIF einen Dimmer für eine HUE-Lampe konfiguriert. Das Ziel:
Wird ein zuvor definierter Schalter (schalter_fade) auf den Status "on" gesetzt, dimmt die HUE Lampe über den DOIF langsam auf 0. Ist die HUE Lampe bei der Dimmstufe 0 angekommen, wird schalter_fade wieder auf off gesetzt.
Internals:
CFGFN
NAME schalter_fade
NR 3140
STATE on
TYPE dummy
Readings:
2016-01-04 20:41:10 state on
Attributes:
devStateIcon .*:ios-on-blue
icon ios-off
room Büro
webCmd on:off
Internals:
CFGFN
DEF ([schalter_fade] eq "on")
(
{
my $bri = ReadingsVal("HUEDevice6","bri",100);;
if ($bri>0) {
Log 1, "di_fade Dimm $bri";;
fhem("set HUEDevice6 dimDown 5");;
}
else {
Log 1, "di_fade Dimm Ende";;
fhem("set schalter_fade off");;
}
}
)
NAME di_fade
NR 3142
NTFY_ORDER 50-di_fade
STATE cmd_2
TYPE DOIF
Readings:
2016-01-04 20:30:38 Device schalter_fade
2016-01-04 20:30:38 cmd_event schalter_fade
2016-01-04 20:30:38 cmd_nr 2
2016-01-04 20:30:38 e_schalter_fade_STATE off
2016-01-04 20:30:38 state cmd_2
2016-01-04 20:30:38 wait_timer no timer
Condition:
0 InternalDoIf('schalter_fade','STATE','') eq "on"
Devices:
0 schalter_fade
all schalter_fade
Do:
0:
0 {my $bri = ReadingsVal("HUEDevice6","bri",100);;if ($bri>0) { Log 1, "di_fade Dimm $bri";; fhem("set HUEDevice6 dimDown 5");; }else { Log 1, "di_fade Dimm Ende";; fhem("set schalter_fade off");; }}
1:
Helper:
globalinit 1
last_timer 0
sleepdevice schalter_fade
sleepsubtimer 0
sleeptimer -1
Internals:
0 schalter_fade:STATE
all schalter_fade:STATE
Itimer:
Readings:
State:
Timerfunc:
Trigger:
Attributes:
loglevel 6
repeatcmd 15
verbose 5
Alles soweit prima, mit
set schalter_fade on
startet der Dimm-Vorgang,
set schalter_fade off
stoppt den Dimm-Vorgang wieder. Kommt der Dimm-Vorgang via DOIF aber selbstständig bis zur Dimm-Stufe 0 ist zwar laut Readings der Status von schalter_fade: off ,aber DOIF wird weiter abgearbeitet. Bis ich per Hand
set schalter_fade off
setze. Ich verstehe hier den Unterschied zwischen dem
set schalter_fade off
aus dem DOIF-Code und dem händischen
set schalter_fade off
nicht. Kann mir jemand auf die Sprünge helfen?
Weiterhin habe ich bei dem DOIF etwas mit "verbose" und "loglevel" experimentiert, in die Log-Datei fhem-2016... wird nicht geloggt. Wo finde ich die Logging-Ausgaben?
Grüße Detlev.
Siehe hier: http://forum.fhem.de/index.php/topic,41859.msg341029.html#msg341029