Hallo zusammen,
ich habe ein Problem mit einem DOIF.
Ich steuere meine Rollläden alle über sunrise und sunset, siehe cmd_1 bis cmd_4 im DOIF, das funktioniert auch einwandfrei.
Im System-Log werden nur Aktivitäten eingetragen, wenn sich ein cmd Wechsel ergibt, ansonsten ist Ruhe.
Nun möchte ich den Rollladen völlig schließen wenn der TV an ist, auch das funktioniert.
Allerdings wird mit Aktivieren des Abschnitts "TV an --> Rollladen zu" ca. alle 2 Minuten in das System-Log der Status des DOIF geschrieben.
Wie gesagt, das passiert nur, wenn der Abschnitt TV an dem DOIF hinzugefügt wird und auch, wenn der TV gar nicht an ist.
Jemand eine Idee was hier falsch läuft?
Danke für eure Hilfe.
Grüße
Joachim
List vom DOIF
list 10_EG_WohnZimmer_Rollladen_Erker_Nord_UP_or_DOWN
Internals:
DEF ## Sonnenuntergang +15Min bis Sonnenaufgang -15Min Rollladen zu
([({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900) - ({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900)]) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd1 - 10_EG_WohnZimmer_Rollladen_Erker_Nord zu"})
## Sonnenuntergang bis (Sonnenuntergang +15Min) Rollladen 35% abends
DOELSEIF
([({twilight("TC_TWILIGHT","ss","16:00","22:00")}) - ({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900)]) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 35;;{Log 1, "cmd2 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 35 abends"})
## (Sonnenaufgang -15Min) bis Sonnenaufgang Rollladen 85% morgens
DOELSEIF
([({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900) - ({twilight("TC_TWILIGHT","sr","06:00","09:00")})] && [50_Aussen_Sensor_SuedSeite:intensity.av]>150) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 85;;{Log 1, "cmd3 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 85 morgens"})
## Sonnenaufgang bis Sonnenuntergang Rollladen auf
DOELSEIF
([({twilight("TC_TWILIGHT","sr","06:00","09:00")}) - ({twilight("TC_TWILIGHT","ss","16:00","22:00")})]) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd4 - 10_EG_WohnZimmer_Rollladen_Erker_Nord hoch"})
## ==================== Fernseher = an --> Rollladen zu
DOELSEIF
([({twilight("TC_TWILIGHT","sr","06:00","09:00")}) - ({twilight("TC_TWILIGHT","ss","16:00","22:00")})] && [10_EG_Wohnzimmer_TV_Pwr:power]>90) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd5 - TV an"})
DOELSE
(set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd6 - TV aus"})
MODEL FHEM
NAME 10_EG_WohnZimmer_Rollladen_Erker_Nord_UP_or_DOWN
NR 274
NTFY_ORDER 50-10_EG_WohnZimmer_Rollladen_Erker_Nord_UP_or_DOWN
STATE 20.05.2018 21:13:25, 21.05.2018 05:45:00, cmd_6
TYPE DOIF
Helper:
DBLOG:
cmd:
logdb:
TIME 1526829773.55746
VALUE 6
cmd_event:
logdb:
TIME 1526829773.55746
VALUE 10_EG_Wohnzimmer_TV_Pwr
cmd_nr:
logdb:
TIME 1526829773.55746
VALUE 6
mode:
logdb:
TIME 1526829204.87762
VALUE enabled
state:
logdb:
TIME 1526829773.55746
VALUE cmd_6
READINGS:
2018-05-20 17:22:53 Device 10_EG_Wohnzimmer_TV_Pwr
2018-05-20 17:22:53 cmd 6
2018-05-20 17:22:53 cmd_event 10_EG_Wohnzimmer_TV_Pwr
2018-05-20 17:22:53 cmd_nr 6
2018-05-20 17:22:53 e_10_EG_Wohnzimmer_TV_Pwr_power 0.22
2018-05-20 17:22:28 e_50_Aussen_Sensor_SuedSeite_intensity.av 4538.055
2018-05-20 17:13:24 mode enabled
2018-05-20 17:22:53 state cmd_6
2018-05-20 17:13:17 timer_01_c01 20.05.2018 21:13:25
2018-05-20 17:13:17 timer_02_c01 21.05.2018 05:45:00
2018-05-20 17:13:17 timer_03_c02 20.05.2018 20:58:25
2018-05-20 17:13:17 timer_04_c02 20.05.2018 21:13:25
2018-05-20 17:13:17 timer_05_c03 21.05.2018 05:45:00
2018-05-20 17:13:17 timer_06_c03 21.05.2018 06:00:00
2018-05-20 17:13:17 timer_07_c04 21.05.2018 06:00:00
2018-05-20 17:13:17 timer_08_c04 20.05.2018 20:58:25
2018-05-20 17:13:17 timer_09_c05 21.05.2018 06:00:00
2018-05-20 17:13:17 timer_10_c05 20.05.2018 20:58:25
Regex:
condition:
0 DOIF_time($hash,0,1,$wday,$hms)
1 DOIF_time($hash,2,3,$wday,$hms)
2 DOIF_time($hash,4,5,$wday,$hms) && ReadingValDoIf($hash,'50_Aussen_Sensor_SuedSeite','intensity.av')>150
3 DOIF_time($hash,6,7,$wday,$hms)
4 DOIF_time($hash,8,9,$wday,$hms) && ReadingValDoIf($hash,'10_EG_Wohnzimmer_TV_Pwr','power')>90
days:
devices:
2 50_Aussen_Sensor_SuedSeite
4 10_EG_Wohnzimmer_TV_Pwr
all 50_Aussen_Sensor_SuedSeite 10_EG_Wohnzimmer_TV_Pwr
do:
0:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd1 - 10_EG_WohnZimmer_Rollladen_Erker_Nord zu"}
1:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 35;;{Log 1, "cmd2 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 35 abends"}
2:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 85;;{Log 1, "cmd3 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 85 morgens"}
3:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd4 - 10_EG_WohnZimmer_Rollladen_Erker_Nord hoch"}
4:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd5 - TV an"}
5:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd6 - TV aus"}
helper:
DOIF_Readings_events
DOIF_eventas
event boot: off,current: 41,eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98,energy: 13053.4,energyCalc: 13053.4,frequency: 49.98,power: 0.22,13053.4,voltage: 232.9
globalinit 1
last_timer 10
sleeptimer -1
timerdev 10_EG_Wohnzimmer_TV_Pwr
timerevent boot: off,current: 41,eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98,energy: 13053.4,energyCalc: 13053.4,frequency: 49.98,power: 0.22,13053.4,voltage: 232.9
triggerDev 10_EG_Wohnzimmer_TV_Pwr
timerevents:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
13053.4
voltage: 232.9
timereventsState:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
state: 13053.4
voltage: 232.9
triggerEvents:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
13053.4
voltage: 232.9
triggerEventsState:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
state: 13053.4
voltage: 232.9
internals:
interval:
0 -1
1 0
2 -1
3 2
4 -1
5 4
6 -1
7 6
8 -1
9 8
itimer:
localtime:
0 1526843605
1 1526874300
2 1526842705
3 1526843605
4 1526874300
5 1526875200
6 1526875200
7 1526842705
8 1526875200
9 1526842705
readings:
2 50_Aussen_Sensor_SuedSeite:intensity.av
4 10_EG_Wohnzimmer_TV_Pwr:power
all 50_Aussen_Sensor_SuedSeite:intensity.av 10_EG_Wohnzimmer_TV_Pwr:power
realtime:
0 21:13:25
1 05:45:00
2 20:58:25
3 21:13:25
4 05:45:00
5 06:00:00
6 06:00:00
7 20:58:25
8 06:00:00
9 20:58:25
time:
0 ({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900)
1 ({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900)
2 ({twilight("TC_TWILIGHT","ss","16:00","22:00")})
3 ({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900)
4 ({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900)
5 ({twilight("TC_TWILIGHT","sr","06:00","09:00")})
6 ({twilight("TC_TWILIGHT","sr","06:00","09:00")})
7 ({twilight("TC_TWILIGHT","ss","16:00","22:00")})
8 ({twilight("TC_TWILIGHT","sr","06:00","09:00")})
9 ({twilight("TC_TWILIGHT","ss","16:00","22:00")})
timeCond:
0 0
1 0
2 1
3 1
4 2
5 2
6 3
7 3
8 4
9 4
timer:
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
timers:
0 0 1
1 2 3
2 4 5
3 6 7
4 8 9
trigger:
triggertime:
1526842705:
localtime 1526842705
hash:
1526843605:
localtime 1526843605
hash:
1526874300:
localtime 1526874300
hash:
1526875200:
localtime 1526875200
hash:
uiState:
uiTable:
Attributes:
do always
icon helper_doif
room 10_Erdgeschoss
stateFormat timer_01_c01, timer_02_c01, state
Internals:
DEF ## Sonnenuntergang +15Min bis Sonnenaufgang -15Min Rollladen zu
([({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900) - ({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900)]) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd1 - 10_EG_WohnZimmer_Rollladen_Erker_Nord zu"})
## Sonnenuntergang bis (Sonnenuntergang +15Min) Rollladen 35% abends
DOELSEIF
([({twilight("TC_TWILIGHT","ss","16:00","22:00")}) - ({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900)]) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 35;;{Log 1, "cmd2 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 35 abends"})
## (Sonnenaufgang -15Min) bis Sonnenaufgang Rollladen 85% morgens
DOELSEIF
([({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900) - ({twilight("TC_TWILIGHT","sr","06:00","09:00")})] && [50_Aussen_Sensor_SuedSeite:intensity.av]>150) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 85;;{Log 1, "cmd3 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 85 morgens"})
## Sonnenaufgang bis Sonnenuntergang Rollladen auf
DOELSEIF
([({twilight("TC_TWILIGHT","sr","06:00","09:00")}) - ({twilight("TC_TWILIGHT","ss","16:00","22:00")})]) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd4 - 10_EG_WohnZimmer_Rollladen_Erker_Nord hoch"})
## ==================== Fernseher = an --> Rollladen zu
DOELSEIF
([({twilight("TC_TWILIGHT","sr","06:00","09:00")}) - ({twilight("TC_TWILIGHT","ss","16:00","22:00")})] && [10_EG_Wohnzimmer_TV_Pwr:power]>90) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd5 - TV an"})
DOELSE
(set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd6 - TV aus"})
MODEL FHEM
NAME 10_EG_WohnZimmer_Rollladen_Erker_Nord_UP_or_DOWN
NR 274
NTFY_ORDER 50-10_EG_WohnZimmer_Rollladen_Erker_Nord_UP_or_DOWN
STATE 20.05.2018 21:13:25, 21.05.2018 05:45:00, cmd_6
TYPE DOIF
Helper:
DBLOG:
cmd:
logdb:
TIME 1526829773.55746
VALUE 6
cmd_event:
logdb:
TIME 1526829773.55746
VALUE 10_EG_Wohnzimmer_TV_Pwr
cmd_nr:
logdb:
TIME 1526829773.55746
VALUE 6
mode:
logdb:
TIME 1526829204.87762
VALUE enabled
state:
logdb:
TIME 1526829773.55746
VALUE cmd_6
READINGS:
2018-05-20 17:22:53 Device 10_EG_Wohnzimmer_TV_Pwr
2018-05-20 17:22:53 cmd 6
2018-05-20 17:22:53 cmd_event 10_EG_Wohnzimmer_TV_Pwr
2018-05-20 17:22:53 cmd_nr 6
2018-05-20 17:22:53 e_10_EG_Wohnzimmer_TV_Pwr_power 0.22
2018-05-20 17:22:28 e_50_Aussen_Sensor_SuedSeite_intensity.av 4538.055
2018-05-20 17:13:24 mode enabled
2018-05-20 17:22:53 state cmd_6
2018-05-20 17:13:17 timer_01_c01 20.05.2018 21:13:25
2018-05-20 17:13:17 timer_02_c01 21.05.2018 05:45:00
2018-05-20 17:13:17 timer_03_c02 20.05.2018 20:58:25
2018-05-20 17:13:17 timer_04_c02 20.05.2018 21:13:25
2018-05-20 17:13:17 timer_05_c03 21.05.2018 05:45:00
2018-05-20 17:13:17 timer_06_c03 21.05.2018 06:00:00
2018-05-20 17:13:17 timer_07_c04 21.05.2018 06:00:00
2018-05-20 17:13:17 timer_08_c04 20.05.2018 20:58:25
2018-05-20 17:13:17 timer_09_c05 21.05.2018 06:00:00
2018-05-20 17:13:17 timer_10_c05 20.05.2018 20:58:25
Regex:
condition:
0 DOIF_time($hash,0,1,$wday,$hms)
1 DOIF_time($hash,2,3,$wday,$hms)
2 DOIF_time($hash,4,5,$wday,$hms) && ReadingValDoIf($hash,'50_Aussen_Sensor_SuedSeite','intensity.av')>150
3 DOIF_time($hash,6,7,$wday,$hms)
4 DOIF_time($hash,8,9,$wday,$hms) && ReadingValDoIf($hash,'10_EG_Wohnzimmer_TV_Pwr','power')>90
days:
devices:
2 50_Aussen_Sensor_SuedSeite
4 10_EG_Wohnzimmer_TV_Pwr
all 50_Aussen_Sensor_SuedSeite 10_EG_Wohnzimmer_TV_Pwr
do:
0:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd1 - 10_EG_WohnZimmer_Rollladen_Erker_Nord zu"}
1:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 35;;{Log 1, "cmd2 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 35 abends"}
2:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 85;;{Log 1, "cmd3 - 10_EG_WohnZimmer_Rollladen_Erker_Nord 85 morgens"}
3:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd4 - 10_EG_WohnZimmer_Rollladen_Erker_Nord hoch"}
4:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd5 - TV an"}
5:
0 set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd6 - TV aus"}
helper:
DOIF_Readings_events
DOIF_eventas
event boot: off,current: 41,eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98,energy: 13053.4,energyCalc: 13053.4,frequency: 49.98,power: 0.22,13053.4,voltage: 232.9
globalinit 1
last_timer 10
sleeptimer -1
timerdev 10_EG_Wohnzimmer_TV_Pwr
timerevent boot: off,current: 41,eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98,energy: 13053.4,energyCalc: 13053.4,frequency: 49.98,power: 0.22,13053.4,voltage: 232.9
triggerDev 10_EG_Wohnzimmer_TV_Pwr
timerevents:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
13053.4
voltage: 232.9
timereventsState:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
state: 13053.4
voltage: 232.9
triggerEvents:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
13053.4
voltage: 232.9
triggerEventsState:
boot: off
current: 41
eState: E: 13053.4 P: 0.22 I: 41 U: 232.9 f: 49.98
energy: 13053.4
energyCalc: 13053.4
frequency: 49.98
power: 0.22
state: 13053.4
voltage: 232.9
internals:
interval:
0 -1
1 0
2 -1
3 2
4 -1
5 4
6 -1
7 6
8 -1
9 8
itimer:
localtime:
0 1526843605
1 1526874300
2 1526842705
3 1526843605
4 1526874300
5 1526875200
6 1526875200
7 1526842705
8 1526875200
9 1526842705
readings:
2 50_Aussen_Sensor_SuedSeite:intensity.av
4 10_EG_Wohnzimmer_TV_Pwr:power
all 50_Aussen_Sensor_SuedSeite:intensity.av 10_EG_Wohnzimmer_TV_Pwr:power
realtime:
0 21:13:25
1 05:45:00
2 20:58:25
3 21:13:25
4 05:45:00
5 06:00:00
6 06:00:00
7 20:58:25
8 06:00:00
9 20:58:25
time:
0 ({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900)
1 ({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900)
2 ({twilight("TC_TWILIGHT","ss","16:00","22:00")})
3 ({twilight("TC_TWILIGHT","ss","16:00","22:00")}+900)
4 ({twilight("TC_TWILIGHT","sr","06:00","09:00")}-900)
5 ({twilight("TC_TWILIGHT","sr","06:00","09:00")})
6 ({twilight("TC_TWILIGHT","sr","06:00","09:00")})
7 ({twilight("TC_TWILIGHT","ss","16:00","22:00")})
8 ({twilight("TC_TWILIGHT","sr","06:00","09:00")})
9 ({twilight("TC_TWILIGHT","ss","16:00","22:00")})
timeCond:
0 0
1 0
2 1
3 1
4 2
5 2
6 3
7 3
8 4
9 4
timer:
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
timers:
0 0 1
1 2 3
2 4 5
3 6 7
4 8 9
trigger:
triggertime:
1526842705:
localtime 1526842705
hash:
1526843605:
localtime 1526843605
hash:
1526874300:
localtime 1526874300
hash:
1526875200:
localtime 1526875200
hash:
uiState:
uiTable:
Attributes:
do always
icon helper_doif
room 10_Erdgeschoss
stateFormat timer_01_c01, timer_02_c01, state
Einträge im System-Log
2018.05.20 17:20:24 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:20:30 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:22:28 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:22:28 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:22:53 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:25:02 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:25:21 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:25:21 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:28:00 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:30:25 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:30:25 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:30:44 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:32:35 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:32:35 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:33:13 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:35:28 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:35:34 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
2018.05.20 17:35:34 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
jump to the top
List von der Schaltsteckdose
Internals:
DEF 52CD6A
IODev myHmUART
LASTInputDev RM_HmUART_DG
MSGCNT 195
NAME 10_EG_Wohnzimmer_TV
NOTIFYDEV global
NR 204
RM_HmUART_DG_MSGCNT 65
RM_HmUART_DG_RAWMSG 05000042CE845E52CD6A00000081FDE700001700290912FA
RM_HmUART_DG_RSSI -66
RM_HmUART_DG_TIME 2018-05-20 17:42:54
RM_HmUART_UG_MSGCNT 65
RM_HmUART_UG_RAWMSG 05000047CE845E52CD6A00000081FDE700001700290912FA
RM_HmUART_UG_RSSI -71
RM_HmUART_UG_TIME 2018-05-20 17:42:54
STATE CMDs_done
TYPE CUL_HM
channel_01 10_EG_Wohnzimmer_TV_Sw
channel_02 10_EG_Wohnzimmer_TV_Pwr
channel_03 10_EG_Wohnzimmer_TV_SenPwr
channel_04 10_EG_Wohnzimmer_TV_SenI
channel_05 10_EG_Wohnzimmer_TV_SenU
channel_06 10_EG_Wohnzimmer_TV_SenF
lastMsg No:CE - t:5E s:52CD6A d:000000 81FDE700001700290912FA
myHmUART_MSGCNT 65
myHmUART_RAWMSG 0500003ACE845E52CD6A00000081FDE700001700290912FA
myHmUART_RSSI -58
myHmUART_TIME 2018-05-20 17:42:54
protLastRcv 2018-05-20 17:42:54
protSnd 2 last_at:2018-05-20 14:57:45
protState CMDs_done
rssi_at_RM_HmUART_DG cnt:65 min:-70 max:-65 avg:-68.07 lst:-66
rssi_at_RM_HmUART_UG cnt:65 min:-72 max:-71 avg:-71.33 lst:-71
rssi_at_myHmUART cnt:65 min:-59 max:-57 avg:-58.01 lst:-58
rssi_myHmUART cnt:1 min:-60 max:-60 avg:-60 lst:-60
Helper:
DBLOG:
Activity:
logdb:
TIME 1526821056.63757
VALUE alive
state:
logdb:
TIME 1526821065.3967
VALUE CMDs_done
READINGS:
2018-05-20 14:57:36 Activity alive
2018-04-21 22:15:42 D-firmware 1.6
2018-04-21 22:15:42 D-serialNr NEQ1807022
2018-05-19 23:27:21 PairedTo 0x4C3DF4
2018-04-21 22:16:23 R-pairCentral 0x4C3DF4
2018-05-19 23:27:21 RegL_00. 02:01 0A:4C 0B:3D 0C:F4 18:00 00:00
2018-05-20 14:57:45 state CMDs_done
helper:
HM_CMDNR 206
cSnd ,014C3DF452CD6A010E
mId 00AC
regLst ,0
rxType 1
supp_Pair_Rep 0
ack:
expert:
def 1
det 0
raw 1
tpl 0
io:
newChn +52CD6A,00,00,00
nextSend 1526830974.69185
rxt 0
vccu VCCU
p:
52CD6A
00
00
00
prefIO:
myHmUART
mRssi:
mNo CE
io:
RM_HmUART_DG:
-66
-66
RM_HmUART_UG:
-71
-71
myHmUART:
-52
-52
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
role:
dev 1
prs 1
rssi:
at_RM_HmUART_DG:
avg -68.0769230769231
cnt 65
lst -66
max -65
min -70
at_RM_HmUART_UG:
avg -71.3384615384616
cnt 65
lst -71
max -71
min -72
at_myHmUART:
avg -58.0153846153846
cnt 65
lst -58
max -57
min -59
myHmUART:
avg -60
cnt 1
lst -60
max -60
min -60
tmpl:
Attributes:
IODev myHmUART
IOgrp VCCU:myHmUART
actCycle 000:30
actStatus alive
autoReadReg 4_reqStatus
expert 2_raw
firmware 1.6
icon it_television
model HM-ES-PMSw1-Pl
room 10_Erdgeschoss
serialNr NEQ1807022
subType powerMeter
webCmd getConfig:clear msgEvents
List vom Rollladen-Modul
Internals:
DEF 550278
IODev myHmUART
LASTInputDev RM_HmUART_DG
MSGCNT 662
NAME 10_EG_WohnZimmer_Rollladen_Erker_Nord
NOTIFYDEV global
NR 392
RM_HmUART_DG_MSGCNT 221
RM_HmUART_DG_RAWMSG 0500001D29A4105502784C3DF40601C800
RM_HmUART_DG_RSSI -29
RM_HmUART_DG_TIME 2018-05-20 17:45:20
RM_HmUART_UG_MSGCNT 221
RM_HmUART_UG_RAWMSG 0500004C29A4105502784C3DF40601C800
RM_HmUART_UG_RSSI -76
RM_HmUART_UG_TIME 2018-05-20 17:45:20
STATE auf
TYPE CUL_HM
lastMsg No:29 - t:10 s:550278 d:4C3DF4 0601C800
myHmUART_MSGCNT 220
myHmUART_RAWMSG 0501003F29A4105502784C3DF40601C800
myHmUART_RSSI -63
myHmUART_TIME 2018-05-20 17:45:20
protLastRcv 2018-05-20 17:45:20
protSnd 221 last_at:2018-05-20 17:45:20
protState CMDs_done
rssi_at_RM_HmUART_DG cnt:221 min:-33 max:-27 avg:-30.41 lst:-29
rssi_at_RM_HmUART_UG cnt:221 min:-81 max:-75 avg:-77.88 lst:-76
rssi_at_myHmUART cnt:220 min:-67 max:-61 avg:-64.01 lst:-63
rssi_myHmUART cnt:146 min:-73 max:-68 avg:-70.69 lst:-70
Helper:
DBLOG:
Activity:
logdb:
TIME 1526821056.36916
VALUE alive
deviceMsg:
logdb:
TIME 1526831120.15139
VALUE auf (to VCCU)
level:
logdb:
TIME 1526831120.15139
VALUE 100
motor:
logdb:
TIME 1526831120.15139
VALUE stop:auf
pct:
logdb:
TIME 1526831120.15139
VALUE 100
state:
logdb:
TIME 1526831120.15139
VALUE on
timedOn:
logdb:
TIME 1526831120.15139
VALUE zu
READINGS:
2018-05-20 14:57:36 Activity alive
2018-05-20 17:45:16 CommandAccepted yes
2018-05-18 18:20:10 D-firmware 2.8
2018-05-18 18:20:10 D-serialNr OEQ0049638
2018-05-19 23:26:54 PairedTo 0x4C3DF4
2018-05-18 18:20:16 R-driveDown 16 s
2018-05-18 18:20:16 R-driveTurn 0.5 s
2018-05-18 18:20:16 R-driveUp 16 s
2018-05-18 18:20:15 R-pairCentral 0x4C3DF4
2018-05-18 18:20:16 R-sign off
2018-05-19 23:26:54 RegL_00. 02:01 0A:4C 0B:3D 0C:F4 15:FF 18:00 00:00
2018-05-19 23:26:55 RegL_01. 08:00 09:00 0A:00 0B:00 0C:A0 0D:00 0E:A0 0F:05 10:00 30:06 57:24 56:00 00:00
2018-05-20 17:45:20 deviceMsg on (to VCCU)
2018-05-20 17:45:20 level 100
2018-05-20 17:45:20 motor stop:on
2018-05-20 17:45:20 pct 100
2018-05-20 17:45:20 recentStateType info
2018-05-20 17:45:20 state on
2018-05-20 17:45:20 timedOn off
helper:
HM_CMDNR 41
cSnd 114C3DF45502780201C8,114C3DF45502780201C8
dlvlCmd ++A0114C3DF45502780201C8
mId 0005
regLst ,0,1,3p
rxType 1
supp_Pair_Rep 0
ack:
dir:
cur stop
expert:
def 1
det 0
raw 1
tpl 0
io:
newChn +550278,00,00,00
nextSend 1526831120.45389
rxt 0
vccu VCCU
p:
550278
00
00
00
prefIO:
myHmUART
mRssi:
mNo 29
io:
RM_HmUART_DG:
-29
-29
RM_HmUART_UG:
-76
-76
myHmUART:
-59
-59
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
role:
chn 1
dev 1
prs 1
rpt:
IO myHmUART
flg A
ts 1526831120.13023
ack:
HASH(0x339abe8)
2980024C3DF455027800
rssi:
at_RM_HmUART_DG:
avg -30.4162895927602
cnt 221
lst -29
max -27
min -33
at_RM_HmUART_UG:
avg -77.8823529411764
cnt 221
lst -76
max -75
min -81
at_myHmUART:
avg -64.0181818181818
cnt 220
lst -63
max -61
min -67
myHmUART:
avg -70.6986301369864
cnt 146
lst -70
max -68
min -73
tmpl:
Attributes:
IODev myHmUART
IOgrp VCCU:myHmUART
actCycle 001:00
actStatus alive
autoReadReg 4_reqStatus
devStateIcon auf:fts_shutter_10 zu:fts_shutter_100@green .*:fts_shutter_50@yellow
eventMap statusRequest toggleDir on:auf off:zu up:hoch down:runter stop:stop
expert 2_raw
firmware 2.8
group Rolllaeden
model HM-LC-BL1-FM
peerIDs 00000000,
room 10_Erdgeschoss
serialNr OEQ0049638
subType blindActuator
webCmd pct:auf:zu:hoch:runter:stop
Das DOIF wird jedesmal getriggert, wenn PRESENCE ein Event liefert. Du könntest die Events beschränken.
Befehlstrenner im DOIF ist das Komma.
Zitat(set 10_EG_WohnZimmer_Rollladen_Erker_Nord 0;;{Log 1, "cmd1 - 10_EG_WohnZimmer_Rollladen_Erker_Nord zu"})
Hallo Ellert,
deinen Kommentar verstehe ich leider nicht.
Wo sehe ich, wann und wer einen Event wegen PRESENCE liefert?
Das Verhalten, dass das Logfile in kurzen Abständen mit dem gleichen Zustand beschrieben wird, tritt erst dann auf, wenn die DOELSEIF-Bedingung für die TV Verdunkelung hinzugefügt wird.
Wodurch werden dann unnötige Events generiert?
Ich meine das doppelte Semikolon ist für die Befehlsübergabe an Perl erforderlich (geschweifte Klammer), ist auch nur zur besseren Lesbarkeit im Logfile an den Befehl gehängt.
Grüße Joachim
DOIF schreibt keine Events ins Logfile, sondern CUL_HM
Zitat2018.05.20 17:20:24 3: CUL_HM set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;{Log 1, "cmd6 - TV aus"}
Der Logeintrag sieht für mich so aus, dass CUL_HM glaubt dass
10_EG_WohnZimmer_Rollladen_Erker_Nord auf
100;{Log 1, "cmd6 - TV aus"} gesetzt werden soll, statt auf 100, daher meine Vermutung, dass es an den doppelten ; liegt. Das kann auch eine Fehleinschätzung sein, siehe auch https://forum.fhem.de/index.php/topic,87624.msg800549.html#msg800549
Events sieht man im Eventmonitor. Auch der Hinweis auf PRESENCE, TVan wird oft über PRESENCE gelöst, ob das bei Dir so ist, ist eine Vermutung, da bei unwahren Bedingungen und der Verwendung von do always im Zusammenhang mit DOELSE das von Dir beschriebene Verhalten typisch ist, habe ich mir die Definiton nicht im Detail angesehen. DOELSE sollte man nur verwenden, wenn man genau weiss welche sonstigen Fälle auftreten und die Befehlsausführung in diesen Fällen gewünscht ist. Will man DOELSE/do always trotzdem verwenden, muss man die unerwünschten Befehlsausführungen auf andere Weise verhindern, z.B. Events verhindern oder Filter einsetzen.
Weiterführende Links:
https://wiki.fhem.de/wiki/Event
https://wiki.fhem.de/wiki/Event_monitor
https://fhem.de/commandref_DE.html#devspec
https://fhem.de/commandref_DE.html#readingFnAttributes (event-on-...)
https://fhem.de/commandref_DE.html#DOIF_do_always
https://fhem.de/commandref_DE.html#DOIF (Einleitung)
https://wiki.fhem.de/wiki/DOIF/Tools_und_Fehlersuche#Fehler_eingrenzen (ff.)
Zitat von: CottonIJo am 20 Mai 2018, 22:22:21
Ich meine das doppelte Semikolon ist für die Befehlsübergabe an Perl erforderlich (geschweifte Klammer), ist auch nur zur besseren Lesbarkeit im Logfile an den Befehl gehängt.
Ja, aber nur innerhalb der geschweiften Klammer.
Diese ist für DOIF das Signal, ein Perl-Befehl auszuführen. Durch die ;; wird dieser Befehl aber mit dem vorhergehenden verbunden und direkt an FHEM weitergereicht.
Nimm doch einfach mal
do always raus.
@Ellert,
danke für die Erläuterung. Wenn ich das richtig verstehe, dann ist das device für die Log-Einträge im System-Log verantwortlich.
Dem scheint auch so zu sein da zum gleichen Zeitstempel auch im device-Log ein Eintrag erfolgt.
Nur, warum schreibt das device alle 2 Minuten in sein Log-File den Status vom level in das Log-File ohne das eine Änderung am Rollladen erfolgt?
Der Rollladen ist dauerhaft auf und trotzdem steht im device Log-File
018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Erker_Sued level: set_100
2018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Erker_Sued set_100
2018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Erker_Sued level: 100
2018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Erker_Sued auf
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Erker_Sued level: set_100
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Erker_Sued set_100
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Erker_Sued level: 100
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Erker_Sued auf
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Erker_Sued level: set_100
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Erker_Sued set_100
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Erker_Sued level: 100
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Erker_Sued auf
2018-05-22_20:40:37 10_EG_WohnZimmer_Rollladen_Erker_Sued level: set_100
2018-05-22_20:40:37 10_EG_WohnZimmer_Rollladen_Erker_Sued set_100
2018-05-22_20:40:38 10_EG_WohnZimmer_Rollladen_Erker_Sued level: 100
2018-05-22_20:40:38 10_EG_WohnZimmer_Rollladen_Erker_Sued auf
und bei dem anderen Rollladen
2018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Westen level: set_100
2018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Westen set_100
2018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Westen level: 100
2018-05-22_20:37:12 10_EG_WohnZimmer_Rollladen_Westen auf
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Westen level: set_100
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Westen set_100
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Westen level: 100
2018-05-22_20:38:08 10_EG_WohnZimmer_Rollladen_Westen auf
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Westen level: set_100
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Westen set_100
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Westen level: 100
2018-05-22_20:39:14 10_EG_WohnZimmer_Rollladen_Westen auf
2018-05-22_20:40:37 10_EG_WohnZimmer_Rollladen_Westen level: set_100
2018-05-22_20:40:37 10_EG_WohnZimmer_Rollladen_Westen set_100
2018-05-22_20:40:37 10_EG_WohnZimmer_Rollladen_Westen level: 100
2018-05-22_20:40:37 10_EG_WohnZimmer_Rollladen_Westen auf
Danke für die Link Liste, werde mich mal durcharbeiten.
@Per, ok, ohne "do always" probiere ich mal aus aber, funktioniert die Abdunkelung dann noch mehrmals am Tag falls der TV mehr als einmal zu verschiedenen Zeiten ein/aus geschaltet wird?
Grüße Joachim
ZitatNur, warum schreibt das device alle 2 Minuten in sein Log-File den Status vom level in das Log-File ohne das eine Änderung am Rollladen erfolgt?
Das Eine schliesst das Andere nicht aus. Setz mal einen Dummy mehrmals auf den gleichen Wert und schau Dir die Events an.
Die gezeigten Befehle kommen nicht aus dem gezeigten DOIF. Da müsstest Du separat auf Fehlersuche gehen.
Zitat von: CottonIJo am 22 Mai 2018, 21:10:00Nur, warum schreibt das device alle 2 Minuten in sein Log-File den Status vom level in das Log-File ohne das eine Änderung am Rollladen erfolgt?
Weil du ihm etwas angewiesen hast. Und das bestätigt er.
Du sagst: geh auf 100, er geht auf 100 (von 100 auf 100). Halt ein kurzer Weg.
Zitat von: CottonIJo am 22 Mai 2018, 21:10:00
@Per, ok, ohne "do always" probiere ich mal aus aber, funktioniert die Abdunkelung dann noch mehrmals am Tag falls der TV mehr als einmal zu verschiedenen Zeiten ein/aus geschaltet wird?
Wenn dein Rollo zwischendurch einen anderen Level vom DOIF bekommen hat, ja. Wenn nicht, käme eh das
100-zu-100-Thema zum Tragen.
@Per, wenn ich das richtig verstehe, funktioniert DOIF anders als von mir gedacht.
Ich habe angenommen, dass eine Bedingung geprüft wird und wenn wahr, dann ausgeführt wird und der Zustand gespeichert wird.
Bei einer wiederholten Prüfung der Bedingung, weil das zyklisch erfolgt, wird eine wahre Bedingung nicht nochmal ausgeführt, DOIF sollte ja wissen, dass vorher die Bedingung schon einmal wahr war.
Mit der Annahme müßte die DOIF Sequenz
## Sonnenaufgang bis Sonnenuntergang Rollladen auf
DOELSEIF
([({twilight("TC_TWILIGHT","sr","06:00","09:00")}) - ({twilight("TC_TWILIGHT","ss","16:00","22:00")})]) (set 10_EG_WohnZimmer_Rollladen_Erker_Nord 100;;{Log 1, "cmd4 - 10_EG_WohnZimmer_Rollladen_Erker_Nord hoch"})
das Logfile im Rythmus des Aktivierens der DOIF-Abfrage mit dem gleichen Wert beschreiben.
Wenn diese Annahme richtig ist, wäre das der Grund für die Vielzahl der Log-Einträge, denn diese Bedingung ist ja tagsüber ständig gültig
Zitat von: CottonIJo am 23 Mai 2018, 12:22:43wird eine wahre Bedingung nicht nochmal ausgeführt
Schon mal nachgeschaut, wofür
do always da ist? ;)
Ok, ok, danke für den Stupser :) ich glaube, da hatte ich das Attribut falsch im Hinterkopf, die Erläuterung ist ziemlich eindeutig im Wiki, klingt plausibel für mein Problem.
Melde mich wenn ich es ausprobiert habe.
Grüße Joachim
Problem gelöst, do always jetzt verstanden, Danke für die Hilfe