Hallo zusammen,
ich habe mir über die Zeit, auch durch die kompetente Hilfe hier im Forum eine Hausautomation aufgebaut. Angefangen habe ich mit EnOcean und bin dann bei MQTT2 mit Sonoffs gelandet. Verschiedenste Sonoffs habe ich auch tadellos laufen. Nun bin ich gerade dabei, mir eine Steuerung der Zirkulationspumpe einzurichten mit Sonoff TH10 und Sensor DS18B20. Seit Tagen suche und lese ich nach der Lösung, bin aber jetzt ratlos.
Situation ist ein MQTT2 device und ein DOIF.
Ich möchte, nur zu bestimmten Zeiten, wenn die Temp. z.B. unter 27 Grad liegt, das device einschalten. Andersherum...wenn zu bestimmten Zeiten die Temp. z.B. unter 30 Grad lieg, soll das device wieder ausgeschaltet werden. Tasmota loggt alle 300 Sekunden. Normale Zirkulationssteuerung also.
Im device wird mir der Sensor bei den readings mit der richtigen Temperatur angezeigt. Bei den internals steht aber ein anderer Wert. Der wird nur aktualisiert, wenn ich das manuell mache.
Das DOIF reagiert auch nicht. Der Schalter ist off, obwohl er lt. Temperatur und Bedingungen on sein sollte.
Das list vom device:
Internals:
CID SonoffIP102
DEF SonoffIP102
DEVICETOPIC MQTT2_SonoffIP102
FUUID 60112844-f33f-c791-dc4a-c2dfc4fe5f2dc44f
IODev myBroker
LASTInputDev myBroker
MSGCNT 23
NAME MQTT2_SonoffIP102
NR 82
STATE 21.90 °C
TYPE MQTT2_DEVICE
myBroker_MSGCNT 23
myBroker_TIME 2021-01-27 13:08:16
JSONMAP:
Channel_0 0
Channel_1 0
Channel_2 0
Channel_3 0
Channel_4 0
Color 0
Dimmer 0
HSBColor 0
POWER1 0
POWER2 0
POWER3 0
POWER4 0
READINGS:
2021-01-27 13:08:16 DS18B20_Id 01192C7E71B7
2021-01-27 13:08:16 DS18B20_Temperature 21.9
2021-01-27 13:08:16 Heap 25
2021-01-27 11:37:12 Hostname SonoffIP102-2322
2021-01-27 11:37:12 IPAddress 192.168.178.102
2021-01-27 12:34:37 LWT Online
2021-01-27 13:08:16 LoadAvg 19
2021-01-27 13:08:16 MqttCount 2
2021-01-27 13:08:16 POWER OFF
2021-01-27 11:37:12 RestartReason Software/System restart
2021-01-27 13:08:16 Sleep 50
2021-01-27 13:08:16 SleepMode Dynamic
2021-01-27 13:08:16 TempUnit C
2021-01-27 13:08:16 Time 2021-01-27T13:08:16
2021-01-27 13:08:16 Uptime 0T01:31:11
2021-01-27 13:08:16 UptimeSec 5471
2021-01-27 11:37:12 WebServerMode Admin
2021-01-27 13:08:16 Wifi_AP 1
2021-01-27 13:08:16 Wifi_BSSId 5C:49:79:21:55:2F
2021-01-27 13:08:16 Wifi_Channel 8
2021-01-27 13:08:16 Wifi_Downtime 0T00:00:05
2021-01-27 13:08:16 Wifi_LinkCount 1
2021-01-27 13:08:16 Wifi_RSSI 88
2021-01-27 13:08:16 Wifi_SSId FritzDualband2.4
2021-01-27 13:08:16 Wifi_Signal -56
2021-01-27 09:46:21 attrTemplateVersion 20200522 or prior
2021-01-27 11:38:14 state set_off
Attributes:
IODev myBroker
alexaName Warmwasser
alias Warmwasser
autocreate 0
comment NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/SonoffIP102/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
devStateIcon ON:ios-on-green:off OFF:ios-off:on
genericDeviceType switch
icon sani_water_hot
jsonMap POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 HSBColor:0 Color:0
model tasmota_basic_state_power1
readingList tele/SonoffIP102/LWT:.* LWT
tele/SonoffIP102/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/SonoffIP102/POWER1:.* state
stat/SonoffIP102/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
room Zirkulation,MQTT2_DEVICE
setList off:noArg cmnd/SonoffIP102/POWER1 0
on:noArg cmnd/SonoffIP102/POWER1 1
toggle:noArg cmnd/SonoffIP102/POWER1 2
setOtaUrl:textField cmnd/SonoffIP102/OtaUrl $EVTPART1
upgrade:noArg cmnd/SonoffIP102/upgrade 1
setStateList on off toggle
stateFormat {sprintf "%.2f °C", ReadingsVal($name, "DS18B20_Temperature", 0)}
Und das list vom DOIF:
Internals:
DEF ([MQTT2_SonoffIP102:DS18B20_Temperature] < 27 and [06:30-09:00|8] and [12:00-14:00|8] and [19:00-22:00|8] or [09:00-12:00|7] and [19:00-22:00|7]) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 30) (set MQTT2_SonoffIP102 off)
FUUID 601145e4-f33f-c791-ad2e-7246bce3e8109200
MODEL FHEM
NAME Zirkulationsleitung
NOTIFYDEV global,MQTT2_SonoffIP102
NR 83
NTFY_ORDER 50-Zirkulationsleitung
STATE cmd_2
TYPE DOIF
VERSION 22428 2020-07-18 20:32:08
READINGS:
2021-01-27 13:08:16 Device MQTT2_SonoffIP102
2021-01-27 12:53:16 cmd 2
2021-01-27 12:53:16 cmd_event MQTT2_SonoffIP102
2021-01-27 12:53:16 cmd_nr 2
2021-01-27 13:08:16 e_MQTT2_SonoffIP102_DS18B20_Temperature 21.9
2021-01-27 12:38:14 mode enabled
2021-01-27 12:53:16 state cmd_2
2021-01-27 12:38:15 timer_01_c01 28.01.2021 06:30:00|8
2021-01-27 12:38:15 timer_02_c01 28.01.2021 09:00:00|8
2021-01-27 12:38:15 timer_03_c01 28.01.2021 12:00:00|8
2021-01-27 12:38:15 timer_04_c01 27.01.2021 14:00:00|8
2021-01-27 12:38:15 timer_05_c01 27.01.2021 19:00:00|8
2021-01-27 12:38:15 timer_06_c01 27.01.2021 22:00:00|8
2021-01-27 12:38:15 timer_07_c01 28.01.2021 09:00:00|7
2021-01-27 12:38:15 timer_08_c01 28.01.2021 12:00:00|7
2021-01-27 12:38:15 timer_09_c01 27.01.2021 19:00:00|7
2021-01-27 12:38:15 timer_10_c01 27.01.2021 22:00:00|7
Regex:
accu:
cond:
MQTT2_SonoffIP102:
0:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
1:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') < 27 and ::DOIF_time($hash,0,1,$wday,$hms,"8") and ::DOIF_time($hash,2,3,$wday,$hms,"8") and ::DOIF_time($hash,4,5,$wday,$hms,"8") or ::DOIF_time($hash,6,7,$wday,$hms,"7") and ::DOIF_time($hash,8,9,$wday,$hms,"7")
1 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') > 30
days:
0 8
1 8
2 8
3 8
4 8
5 8
6 7
7 7
8 7
9 7
do:
0:
0 set MQTT2_SonoffIP102 on
1:
0 set MQTT2_SonoffIP102 off
2:
helper:
DEVFILTER ^global$|^MQTT2_SonoffIP102$
NOTIFYDEV global|MQTT2_SonoffIP102
event DS18B20_Temperature: 21.9,Time: 2021-01-27T13:08:16,TempUnit: C,DS18B20_Id: 01192C7E71B7
globalinit 1
last_timer 10
sleeptimer -1
timerdev MQTT2_SonoffIP102
timerevent DS18B20_Id: 01192C7E71B7,TempUnit: C,DS18B20_Temperature: 33.4,Time: 2021-01-27T12:53:16
triggerDev MQTT2_SonoffIP102
timerevents:
DS18B20_Id: 01192C7E71B7
TempUnit: C
DS18B20_Temperature: 33.4
Time: 2021-01-27T12:53:16
timereventsState:
DS18B20_Id: 01192C7E71B7
TempUnit: C
DS18B20_Temperature: 33.4
Time: 2021-01-27T12:53:16
triggerEvents:
DS18B20_Temperature: 21.9
Time: 2021-01-27T13:08:16
TempUnit: C
DS18B20_Id: 01192C7E71B7
triggerEventsState:
DS18B20_Temperature: 21.9
Time: 2021-01-27T13:08:16
TempUnit: C
DS18B20_Id: 01192C7E71B7
internals:
interval:
0 -1
1 0
2 -1
3 2
4 -1
5 4
6 -1
7 6
8 -1
9 8
intervalfunc:
localtime:
0 1611811800
1 1611820800
2 1611831600
3 1611752400
4 1611770400
5 1611781200
6 1611820800
7 1611831600
8 1611770400
9 1611781200
readings:
all MQTT2_SonoffIP102:DS18B20_Temperature
realtime:
0 06:30:00
1 09:00:00
2 12:00:00
3 14:00:00
4 19:00:00
5 22:00:00
6 09:00:00
7 12:00:00
8 19:00:00
9 22:00:00
time:
0 06:30:00
1 09:00:00
2 12:00:00
3 14:00:00
4 19:00:00
5 22:00:00
6 09:00:00
7 12:00:00
8 19:00:00
9 22:00:00
timeCond:
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
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 2 3 4 5 6 7 8 9
trigger:
triggertime:
1611752400:
localtime 1611752400
hash:
1611770400:
localtime 1611770400
hash:
1611781200:
localtime 1611781200
hash:
1611811800:
localtime 1611811800
hash:
1611820800:
localtime 1611820800
hash:
1611831600:
localtime 1611831600
hash:
uiState:
uiTable:
Attributes:
devStateIcon ON:ios-on-green:off OFF:ios-off:on
room Zirkulation
Wäre jemand bitte so nett, mich auf den richtigen Weg zu schubsen? Was mache ich falsch?
Gruß
Mikoom
Zitat[06:30-09:00|8] and [12:00-14:00|8]
Das könnte ein Problem werden, denn es ist selten gleichzeitig zwischen zwischen Halb sieben und 9 als auch zwischen 12 und 2.
Vielleicht hilft das schon.
Grüße,
Stephan
ja, Du hast recht. Habe ich geändert. Das war's aber nicht.
Ich muss immer noch das device und das DOIF händisch updaten, damit sich die readings ändern.
Muss irgendetwas anderes sein!?
Device: STATE bei den internals wird nur nach manuellem update übernommen
DOIF: Temperatur vom Senor bei den readings wird nur nach manuellen update übernommen
device:
Internals:
CID SonoffIP102
DEF SonoffIP102
DEVICETOPIC MQTT2_SonoffIP102
FUUID 60112844-f33f-c791-dc4a-c2dfc4fe5f2dc44f
IODev myBroker
LASTInputDev myBroker
MSGCNT 84
NAME MQTT2_SonoffIP102
NR 82
STATE 24.00 °C
TYPE MQTT2_DEVICE
myBroker_MSGCNT 84
myBroker_TIME 2021-01-27 14:46:45
JSONMAP:
Channel_0 0
Channel_1 0
Channel_2 0
Channel_3 0
Channel_4 0
Color 0
Dimmer 0
HSBColor 0
POWER1 0
POWER2 0
POWER3 0
POWER4 0
READINGS:
2021-01-27 14:46:45 DS18B20_Id 01192C7E71B7
2021-01-27 14:46:45 DS18B20_Temperature 24.0
2021-01-27 14:46:45 Heap 25
2021-01-27 11:37:12 Hostname SonoffIP102-2322
2021-01-27 11:37:12 IPAddress 192.168.178.102
2021-01-27 12:34:37 LWT Online
2021-01-27 14:46:45 LoadAvg 25
2021-01-27 14:46:45 MqttCount 2
2021-01-27 14:46:45 POWER ON
2021-01-27 11:37:12 RestartReason Software/System restart
2021-01-27 14:46:45 Sleep 50
2021-01-27 14:46:45 SleepMode Dynamic
2021-01-27 14:46:45 TempUnit C
2021-01-27 14:46:45 Time 2021-01-27T14:46:45
2021-01-27 14:46:45 Uptime 0T03:09:40
2021-01-27 14:46:45 UptimeSec 11380
2021-01-27 11:37:12 WebServerMode Admin
2021-01-27 14:46:45 Wifi_AP 1
2021-01-27 14:46:45 Wifi_BSSId 5C:49:79:21:55:2F
2021-01-27 14:46:45 Wifi_Channel 8
2021-01-27 14:46:45 Wifi_Downtime 0T00:00:05
2021-01-27 14:46:45 Wifi_LinkCount 1
2021-01-27 14:46:45 Wifi_RSSI 90
2021-01-27 14:46:45 Wifi_SSId FritzDualband2.4
2021-01-27 14:46:45 Wifi_Signal -55
2021-01-27 09:46:21 attrTemplateVersion 20200522 or prior
2021-01-27 11:38:14 state set_off
Attributes:
IODev myBroker
alexaName Warmwasser
alias Warmwasser
autocreate 0
comment NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/SonoffIP102/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
devStateIcon ON:ios-on-green:off OFF:ios-off:on
genericDeviceType switch
icon sani_water_hot
jsonMap POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 HSBColor:0 Color:0
model tasmota_basic_state_power1
readingList tele/SonoffIP102/LWT:.* LWT
tele/SonoffIP102/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/SonoffIP102/POWER1:.* state
stat/SonoffIP102/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
room Zirkulation,MQTT2_DEVICE
setList off:noArg cmnd/SonoffIP102/POWER1 0
on:noArg cmnd/SonoffIP102/POWER1 1
toggle:noArg cmnd/SonoffIP102/POWER1 2
setOtaUrl:textField cmnd/SonoffIP102/OtaUrl $EVTPART1
upgrade:noArg cmnd/SonoffIP102/upgrade 1
setStateList on off toggle
stateFormat {sprintf "%.2f °C", ReadingsVal($name, "DS18B20_Temperature", 0)}
DOIF:
Internals:
DEF ([MQTT2_SonoffIP102:DS18B20_Temperature] < 27 and [06:30-09:00|8] or [12:00-17:00|8] or [19:00-22:00|8] or [09:00-12:00|7] or [19:00-22:00|7]) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 30) (set MQTT2_SonoffIP102 off)
FUUID 601145e4-f33f-c791-ad2e-7246bce3e8109200
MODEL FHEM
NAME Zirkulationsleitung
NOTIFYDEV global,MQTT2_SonoffIP102
NR 83
NTFY_ORDER 50-Zirkulationsleitung
STATE cmd_1
TYPE DOIF
VERSION 22428 2020-07-18 20:32:08
READINGS:
2021-01-27 14:46:45 Device MQTT2_SonoffIP102
2021-01-27 14:38:16 cmd 1
2021-01-27 14:38:16 cmd_event MQTT2_SonoffIP102
2021-01-27 14:38:16 cmd_nr 1
2021-01-27 14:46:45 e_MQTT2_SonoffIP102_DS18B20_Temperature 24.0
2021-01-27 14:37:29 mode enabled
2021-01-27 14:38:16 state cmd_1
2021-01-27 14:37:29 timer_01_c01 28.01.2021 06:30:00|8
2021-01-27 14:37:29 timer_02_c01 28.01.2021 09:00:00|8
2021-01-27 14:37:29 timer_03_c01 28.01.2021 12:00:00|8
2021-01-27 14:37:29 timer_04_c01 27.01.2021 17:00:00|8
2021-01-27 14:37:29 timer_05_c01 27.01.2021 19:00:00|8
2021-01-27 14:37:29 timer_06_c01 27.01.2021 22:00:00|8
2021-01-27 14:37:29 timer_07_c01 28.01.2021 09:00:00|7
2021-01-27 14:37:29 timer_08_c01 28.01.2021 12:00:00|7
2021-01-27 14:37:29 timer_09_c01 27.01.2021 19:00:00|7
2021-01-27 14:37:29 timer_10_c01 27.01.2021 22:00:00|7
Regex:
accu:
cond:
MQTT2_SonoffIP102:
0:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
1:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') < 27 and ::DOIF_time($hash,0,1,$wday,$hms,"8") or ::DOIF_time($hash,2,3,$wday,$hms,"8") or ::DOIF_time($hash,4,5,$wday,$hms,"8") or ::DOIF_time($hash,6,7,$wday,$hms,"7") or ::DOIF_time($hash,8,9,$wday,$hms,"7")
1 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') > 30
days:
0 8
1 8
2 8
3 8
4 8
5 8
6 7
7 7
8 7
9 7
do:
0:
0 set MQTT2_SonoffIP102 on
1:
0 set MQTT2_SonoffIP102 off
2:
helper:
DEVFILTER ^global$|^MQTT2_SonoffIP102$
NOTIFYDEV global|MQTT2_SonoffIP102
event DS18B20_Temperature: 24.0,Time: 2021-01-27T14:46:45,TempUnit: C,DS18B20_Id: 01192C7E71B7
globalinit 1
last_timer 10
sleeptimer -1
timerdev MQTT2_SonoffIP102
timerevent DS18B20_Temperature: 24.0,Time: 2021-01-27T14:46:45,TempUnit: C,DS18B20_Id: 01192C7E71B7
triggerDev MQTT2_SonoffIP102
timerevents:
DS18B20_Temperature: 24.0
Time: 2021-01-27T14:46:45
TempUnit: C
DS18B20_Id: 01192C7E71B7
timereventsState:
DS18B20_Temperature: 24.0
Time: 2021-01-27T14:46:45
TempUnit: C
DS18B20_Id: 01192C7E71B7
triggerEvents:
DS18B20_Temperature: 24.0
Time: 2021-01-27T14:46:45
TempUnit: C
DS18B20_Id: 01192C7E71B7
triggerEventsState:
DS18B20_Temperature: 24.0
Time: 2021-01-27T14:46:45
TempUnit: C
DS18B20_Id: 01192C7E71B7
internals:
interval:
0 -1
1 0
2 -1
3 2
4 -1
5 4
6 -1
7 6
8 -1
9 8
intervalfunc:
localtime:
0 1611811800
1 1611820800
2 1611831600
3 1611763200
4 1611770400
5 1611781200
6 1611820800
7 1611831600
8 1611770400
9 1611781200
readings:
all MQTT2_SonoffIP102:DS18B20_Temperature
realtime:
0 06:30:00
1 09:00:00
2 12:00:00
3 17:00:00
4 19:00:00
5 22:00:00
6 09:00:00
7 12:00:00
8 19:00:00
9 22:00:00
time:
0 06:30:00
1 09:00:00
2 12:00:00
3 17:00:00
4 19:00:00
5 22:00:00
6 09:00:00
7 12:00:00
8 19:00:00
9 22:00:00
timeCond:
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
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 2 3 4 5 6 7 8 9
trigger:
triggertime:
1611763200:
localtime 1611763200
hash:
1611770400:
localtime 1611770400
hash:
1611781200:
localtime 1611781200
hash:
1611811800:
localtime 1611811800
hash:
1611820800:
localtime 1611820800
hash:
1611831600:
localtime 1611831600
hash:
uiState:
uiTable:
Attributes:
devStateIcon ON:ios-on-green:off OFF:ios-off:on
room Zirkulation
Zitat[MQTT2_SonoffIP102:DS18B20_Temperature] < 27 and [06:30-09:00|8]
Danke für das Update der DEF:)
Ich glaube, du musst da aber nochmal ran:
if (Temperatur < 27 UND [06:30-09:00|8]) oder ([12:00-17:00|8])
ist möglicherweise nicht das, was du willst.
Ich könnte mir vorstellen, dass du folgendes willst (achte auf die Klammern):
if (Temperatur < 27 UND ( [06:30-09:00|8] oder [12:00-17:00|8] ... ))
Ansonsten seh ich da grade kein Problem...
Danke, ich habe das DOIF jetzt mal nach commandref umgestellt.
Das ist aber wahrscheinlich nicht das Problem. Es liegt anscheinend am device. Der Sensor misst die Temperatur richtig und schreibt sie alle 60 Sekunden in die readings. Habe das reading Intervall mal verkürzt.
Der Temperaturwert aus dem reading kommt aber bei den internals nicht als STATE an. Da mache ich also wohl was falsch.
Ich bin noch nicht so sicher in FHEM. Kann das an der readinglist und der setlist liegen?
Internals:
CID SonoffIP102
DEF SonoffIP102
DEVICETOPIC MQTT2_SonoffIP102
FUUID 60112844-f33f-c791-dc4a-c2dfc4fe5f2dc44f
IODev myBroker
LASTInputDev myBroker
MSGCNT 153
NAME MQTT2_SonoffIP102
NR 82
STATE 25.40 °C
TYPE MQTT2_DEVICE
myBroker_MSGCNT 153
myBroker_TIME 2021-01-27 16:00:59
JSONMAP:
Channel_0 0
Channel_1 0
Channel_2 0
Channel_3 0
Channel_4 0
Color 0
Dimmer 0
HSBColor 0
POWER1 0
POWER2 0
POWER3 0
POWER4 0
READINGS:
2021-01-27 16:00:59 DS18B20_Id 01192C7E71B7
2021-01-27 16:00:59 DS18B20_Temperature 25.4
2021-01-27 16:00:59 Heap 25
2021-01-27 11:37:12 Hostname SonoffIP102-2322
2021-01-27 11:37:12 IPAddress 192.168.178.102
2021-01-27 12:34:37 LWT Online
2021-01-27 16:00:59 LoadAvg 19
2021-01-27 16:00:59 MqttCount 2
2021-01-27 16:00:59 POWER ON
2021-01-27 11:37:12 RestartReason Software/System restart
2021-01-27 16:00:59 Sleep 50
2021-01-27 16:00:59 SleepMode Dynamic
2021-01-27 16:00:59 TempUnit C
2021-01-27 16:00:59 Time 2021-01-27T16:00:58
2021-01-27 16:00:59 Uptime 0T04:23:53
2021-01-27 16:00:59 UptimeSec 15833
2021-01-27 11:37:12 WebServerMode Admin
2021-01-27 16:00:59 Wifi_AP 1
2021-01-27 16:00:59 Wifi_BSSId 5C:49:79:21:55:2F
2021-01-27 16:00:59 Wifi_Channel 8
2021-01-27 16:00:59 Wifi_Downtime 0T00:00:05
2021-01-27 16:00:59 Wifi_LinkCount 1
2021-01-27 16:00:59 Wifi_RSSI 100
2021-01-27 16:00:59 Wifi_SSId FritzDualband2.4
2021-01-27 16:00:59 Wifi_Signal -49
2021-01-27 09:46:21 attrTemplateVersion 20200522 or prior
2021-01-27 11:38:14 state set_off
Attributes:
IODev myBroker
alexaName Warmwasser
alias Warmwasser
autocreate 0
comment NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/SonoffIP102/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
devStateIcon ON:ios-on-green:off OFF:ios-off:on
genericDeviceType switch
icon sani_water_hot
jsonMap POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 HSBColor:0 Color:0
model tasmota_basic_state_power1
readingList tele/SonoffIP102/LWT:.* LWT
tele/SonoffIP102/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/SonoffIP102/POWER1:.* state
stat/SonoffIP102/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
room Zirkulation,MQTT2_DEVICE
setList off:noArg cmnd/SonoffIP102/POWER1 0
on:noArg cmnd/SonoffIP102/POWER1 1
toggle:noArg cmnd/SonoffIP102/POWER1 2
setOtaUrl:textField cmnd/SonoffIP102/OtaUrl $EVTPART1
upgrade:noArg cmnd/SonoffIP102/upgrade 1
setStateList on off toggle
stateFormat {sprintf "%.2f °C", ReadingsVal($name, "DS18B20_Temperature", 0)}
Gruß
Mikoom
Hi,
Zitat2021-01-27 16:00:59 DS18B20_Temperature 25.4
STATE 25.40 °C
Das passt doch.
ZitatDer Sensor misst die Temperatur richtig und schreibt sie alle 60 Sekunden in die readings.Der Temperaturwert aus dem reading kommt aber bei den internals nicht als STATE an.
Warum möchtest du denn den Temperaturwert in den Internals haben? Eigentlich sind die in den meisten Fällen uninteressant. Für dein DOIF brauchst du nur die Readings.
Wenn du im Event-Monitor das Reading DS18B20_Temperature mit einem Temperaturwert siehst (alternativ kann man es auch daran erkennen, dass sich das Reading im Device rot färbt), gab es ein Event. Das ist die Voraussetzung für das DOIF, damit es darauf reagieren kann.
Wenn es das Event nicht gab --> Sonoff-Problem
Wenn es das Event gab --> DOIF-Problem.
Kannst du mal einen Auszug aus dem Event-Monitor posten, wo man ein Event sieht, bei dem die Temperatur aktualisiert wurde?
Dass die Temperatur da mal gleich ist, ist Zufall. Das war ein list gleich nach dem manuellen updaten der readings, sowohl beim device als auch beim DOIF.
Aktueller Stand ist:
device: vom Tasmota übermittelte, aktuelle 21,6 °C - weiter oben in den internals steht bei STATE 22,3 °C. Das ist ein Wert, der auch schon Stunden alt sein kann und er wird nur auf den aktuellen Wert verändert wenn man das device manuell updated
DOIF: 22,3 °C. Das ist der Wert, den er sich anscheinend vom internal STATE holt.....und das nur durch manuelles update. Kann also auch, wie oben, Stunden alt sein.
Auszug aus dem Event-Monitor:
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_LinkCount: 1
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Uptime: 0T05:42:54
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Time: 2021-01-27T17:19:59
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_Channel: 8
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Sleep: 50
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_BSSId: 5C:49:79:21:55:2F
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 POWER: OFF
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_AP: 1
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Heap: 25
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_RSSI: 98
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_Signal: -51
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 SleepMode: Dynamic
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 UptimeSec: 20574
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 LoadAvg: 19
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_SSId: FritzDualband2.4
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 MqttCount: 3
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_Downtime: 0T00:00:05
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 TempUnit: C
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Id: 01192C7E71B7
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 Time: 2021-01-27T17:19:59
2021-01-27 17:19:59 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 21.6
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_Signal: -86
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 UptimeSec: 790698
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 SleepMode: Dynamic
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_RSSI: 28
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_Downtime: 0T00:15:14
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 LoadAvg: 19
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_SSId: FritzDualband2.4
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 MqttCount: 43
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Time: 2021-01-27T17:20:30
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Uptime: 9T03:38:18
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_LinkCount: 56
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_AP: 1
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Heap: 26
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_Channel: 8
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Wifi_BSSId: 34:81:C4:26:BC:B0
2021-01-27 17:20:30 MQTT2_DEVICE MQTT2_SonoffIP98 Sleep: 50
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_LinkCount: 1
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Uptime: 0T05:43:54
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Time: 2021-01-27T17:20:59
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Sleep: 50
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_BSSId: 5C:49:79:21:55:2F
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_Channel: 8
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Heap: 25
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 POWER: OFF
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_AP: 1
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_RSSI: 94
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 SleepMode: Dynamic
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 UptimeSec: 20634
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_Signal: -53
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 MqttCount: 3
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_SSId: FritzDualband2.4
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 LoadAvg: 19
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Wifi_Downtime: 0T00:00:05
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 Time: 2021-01-27T17:20:59
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 21.6
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Id: 01192C7E71B7
2021-01-27 17:20:59 MQTT2_DEVICE MQTT2_SonoffIP102 TempUnit: C
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Uptime: 9T03:39:09
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_LinkCount: 16
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Time: 2021-01-27T17:21:31
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_BSSId: 34:81:C4:26:BC:B0
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Sleep: 50
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_Channel: 8
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Heap: 26
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 POWER: OFF
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_AP: 1
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_RSSI: 38
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 UptimeSec: 790749
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 SleepMode: Dynamic
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_Signal: -81
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 MqttCount: 42
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_SSId: FritzDualband2.4
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 LoadAvg: 19
2021-01-27 17:21:32 MQTT2_DEVICE MQTT2_SonoffIP99 Wifi_Downtime: 0T00:13:11
Stehe echt auf dem Schlauch
Gruß
Mikoom
Aus deinem DOIF-Auszug:
Zitat2021-01-27 14:46:45 e_MQTT2_SonoffIP102_DS18B20_Temperature 24.0
Es bedeutet, dass zu diesem Zeitpunkt bei 24 Grad DOIF zuletzt geschaltet hat.
Solange die Temperatur unter 27 Grad bleibt, wird dein DOIF nichts tun.
ich habe die Temperatur mal auf 35 Grad erhöht, dann wieder auf unter 25 Grad abkühlen lassen.
Im DOIF ist state cmd_2 geblieben. Hat also nicht geschaltet, egal bei welcher Temperatur.
Wenn ich DOIF manuell update, dann ändert sich auch jedesmal der Wert von
e_MQTT2_SonoffIP102_DS18B20_Temperature 24.0
Der Sonoff bekommt aber keinen Schaltbefehl. Ich kann ihn aber wohl über die buttons in der DeviceOverview schalten.
Gruß
Mikoom
Dann poste deine aktuelle DOIF-Definition.
Hi,
Auszug aus der fhem.cfg:
define Zirkulationsleitung DOIF ([06:30-09:00|8] or [12:00-17:00|8] or [19:00-22:00|8] or [09:00-12:00|7] or [19:00-22:00|7] and [MQTT2_SonoffIP102:DS18B20_Temperature] < 27) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 30) (set MQTT2_SonoffIP102 off)
setuuid Zirkulationsleitung 601145e4-f33f-c791-ad2e-7246bce3e8109200
attr Zirkulationsleitung devStateIcon on:on:off off:off:on
attr Zirkulationsleitung room Zirkulation
Gruß
Mikoom
Zitat von: Mikoom am 27 Januar 2021, 19:48:25
Hi,
Auszug aus der fhem.cfg:
define Zirkulationsleitung DOIF ([06:30-09:00|8] or [12:00-17:00|8] or [19:00-22:00|8] or [09:00-12:00|7] or [19:00-22:00|7] and [MQTT2_SonoffIP102:DS18B20_Temperature] < 27) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 30) (set MQTT2_SonoffIP102 off)
setuuid Zirkulationsleitung 601145e4-f33f-c791-ad2e-7246bce3e8109200
attr Zirkulationsleitung devStateIcon on:on:off off:off:on
attr Zirkulationsleitung room Zirkulation
Gruß
Mikoom
Das habe ich befürchtet - das kann auch nicht funktionieren.
Du hast die Empfehlung im Post #5 nicht umgesetzt ;)
....je länger ich draufschaue, desto blinder werde ich ::)
muss das so???
[MQTT2_SonoffIP102:DS18B20_Temperature] < 27 and ([06:30-09:00|8] or [12:00-17:00|8] or [19:00-22:00|8] or [09:00-12:00|7] or [19:00-22:00|7]) (set MQTT2_SonoffIP102 on) DOELSEIF [MQTT2_SonoffIP102:DS18B20_Temperature] > 30 (set MQTT2_SonoffIP102 off)
Gruß
Mikoom?
Zitat von: Mikoom am 27 Januar 2021, 20:42:28
....je länger ich draufschaue, desto blinder werde ich ::)
muss das so???
[MQTT2_SonoffIP102:DS18B20_Temperature] < 27 and ([06:30-09:00|8] or [12:00-17:00|8] or [19:00-22:00|8] or [09:00-12:00|7] or [19:00-22:00|7]) (set MQTT2_SonoffIP102 on) DOELSEIF [MQTT2_SonoffIP102:DS18B20_Temperature] > 30 (set MQTT2_SonoffIP102 off)
Gruß
Mikoom?
Nicht ganz, eher:
([MQTT2_SonoffIP102:DS18B20_Temperature] < 27 and ([06:30-09:00|8] or [12:00-17:00|8] or [19:00-22:00|8] or [09:00-12:00|7] or [19:00-22:00|7]))...
habe jetzt geändert auf
([MQTT2_SonoffIP102:DS18B20_Temperature] < 24 and ([06:30-09:00|8] or [12:00-17:00|8] or [20:00-23:00|8] or [09:00-12:00|7] or [20:00-23:00|7])) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 26) (set MQTT2_SonoffIP102 off)
der Sonoff hat 1x ausgeschaltet bei überschreiten der Bedingung (Temperatur). Bei erneutem Unterschreiten hat er aber nicht wieder eingeschaltet. Stattdessen habe ich im reading des Doif die folgende Fehlermeldung:
condition c02: syntax error, line 1, near "26 ("
Zitat von: Mikoom am 27 Januar 2021, 22:30:32
habe jetzt geändert auf
([MQTT2_SonoffIP102:DS18B20_Temperature] < 24 and ([06:30-09:00|8] or [12:00-17:00|8] or [20:00-23:00|8] or [09:00-12:00|7] or [20:00-23:00|7])) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 26) (set MQTT2_SonoffIP102 off)
der Sonoff hat 1x ausgeschaltet bei überschreiten der Bedingung (Temperatur). Bei erneutem Unterschreiten hat er aber nicht wieder eingeschaltet. Stattdessen habe ich im reading des Doif die folgende Fehlermeldung:
condition c02: syntax error, line 1, near "26 ("
Du musst hier immer list einer Definition posten und nicht Bruchstücke der Definition, denn so kann man das Problem nicht sinnvoll nachvollziehen.
sorry, vergessen
Internals:
DEF ([MQTT2_SonoffIP102:DS18B20_Temperature] < 24 and ([06:30-09:00|8] or [12:00-17:00|8] or [20:00-23:00|8] or [09:00-12:00|7] or [20:00-23:00|7])) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 26) (set MQTT2_SonoffIP102 off)
FUUID 601145e4-f33f-c791-ad2e-7246bce3e8109200
MODEL FHEM
NAME Zirkulationsleitung
NOTIFYDEV MQTT2_SonoffIP102,global
NR 83
NTFY_ORDER 50-Zirkulationsleitung
STATE cmd_1
TYPE DOIF
VERSION 22428 2020-07-18 20:32:08
READINGS:
2021-01-27 23:01:39 Device MQTT2_SonoffIP102
2021-01-27 22:18:20 cmd 1
2021-01-27 22:18:20 cmd_event MQTT2_SonoffIP102
2021-01-27 22:18:20 cmd_nr 1
2021-01-27 23:01:39 e_MQTT2_SonoffIP102_DS18B20_Temperature 22.5
2021-01-27 22:11:04 mode enabled
2021-01-27 22:18:20 state cmd_1
2021-01-27 22:51:23 timer_01_c01 28.01.2021 06:30:00|8
2021-01-27 22:51:23 timer_02_c01 28.01.2021 09:00:00|8
2021-01-27 22:51:23 timer_03_c01 28.01.2021 12:00:00|8
2021-01-27 22:51:23 timer_04_c01 28.01.2021 17:00:00|8
2021-01-27 23:00:00 timer_05_c01 28.01.2021 20:00:00|8
2021-01-27 23:00:00 timer_06_c01 28.01.2021 23:00:00|8
2021-01-27 22:51:23 timer_07_c01 28.01.2021 09:00:00|7
2021-01-27 22:51:23 timer_08_c01 28.01.2021 12:00:00|7
2021-01-27 23:00:00 timer_09_c01 28.01.2021 20:00:00|7
2021-01-27 23:00:00 timer_10_c01 28.01.2021 23:00:00|7
Regex:
accu:
cond:
MQTT2_SonoffIP102:
0:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
1:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
attr:
waitdel:
condition:
0 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') < 24 and (::DOIF_time($hash,0,1,$wday,$hms,"8") or ::DOIF_time($hash,2,3,$wday,$hms,"8") or ::DOIF_time($hash,4,5,$wday,$hms,"8") or ::DOIF_time($hash,6,7,$wday,$hms,"7") or ::DOIF_time($hash,8,9,$wday,$hms,"7"))
1 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') > 26
days:
0 8
1 8
2 8
3 8
4 8
5 8
6 7
7 7
8 7
9 7
do:
0:
0 set MQTT2_SonoffIP102 on
1:
0 set MQTT2_SonoffIP102 off
2:
helper:
DEVFILTER ^global$|^MQTT2_SonoffIP102$
NOTIFYDEV global|MQTT2_SonoffIP102
event TempUnit: C,DS18B20_Temperature: 22.5,Time: 2021-01-27T23:01:39,DS18B20_Id: 01192C7E71B7
globalinit 1
last_timer 10
sleeptimer -1
timerdev MQTT2_SonoffIP102
timerevent DS18B20_Temperature: 22.5,TempUnit: C,Time: 2021-01-27T22:59:39,DS18B20_Id: 01192C7E71B7
triggerDev MQTT2_SonoffIP102
timerevents:
DS18B20_Temperature: 22.5
TempUnit: C
Time: 2021-01-27T22:59:39
DS18B20_Id: 01192C7E71B7
timereventsState:
DS18B20_Temperature: 22.5
TempUnit: C
Time: 2021-01-27T22:59:39
DS18B20_Id: 01192C7E71B7
triggerEvents:
TempUnit: C
DS18B20_Temperature: 22.5
Time: 2021-01-27T23:01:39
DS18B20_Id: 01192C7E71B7
triggerEventsState:
TempUnit: C
DS18B20_Temperature: 22.5
Time: 2021-01-27T23:01:39
DS18B20_Id: 01192C7E71B7
internals:
interval:
0 -1
1 0
2 -1
3 2
4 -1
5 4
6 -1
7 6
8 -1
9 8
intervalfunc:
localtime:
0 1611811800
1 1611820800
2 1611831600
3 1611849600
4 1611860400
5 1611871200
6 1611820800
7 1611831600
8 1611860400
9 1611871200
perlblock:
readings:
all MQTT2_SonoffIP102:DS18B20_Temperature
realtime:
0 06:30:00
1 09:00:00
2 12:00:00
3 17:00:00
4 20:00:00
5 23:00:00
6 09:00:00
7 12:00:00
8 20:00:00
9 23:00:00
time:
0 06:30:00
1 09:00:00
2 12:00:00
3 17:00:00
4 20:00:00
5 23:00:00
6 09:00:00
7 12:00:00
8 20:00:00
9 23:00:00
timeCond:
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
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 2 3 4 5 6 7 8 9
trigger:
triggertime:
1611811800:
localtime 1611811800
hash:
1611820800:
localtime 1611820800
hash:
1611831600:
localtime 1611831600
hash:
1611849600:
localtime 1611849600
hash:
1611860400:
localtime 1611860400
hash:
1611871200:
localtime 1611871200
hash:
uiTable:
Attributes:
devStateIcon on:on:off off:off:on
room Zirkulation
Der syntax error ist wieder aus dem reading verschwunden. Steht aber immer noch auf cmd1, egal welche Temperatur.
Vielen Dank übrigens für die Unterstützung.
Gruß
Mikoom
ich glaube ja immer noch, dass einen Fehler beim device habe.
Reading vom Sensor und STATE bei den internals vom device zeigen 2 unterschiedliche Temperaturen.
Nur.....immer dann, wenn ich ein list vom device aufrufe, um es hier einzustellen, aktualisiert das das device und die Temperaturen
sind dann im list gleich.
Internals:
CID SonoffIP102
DEF SonoffIP102
DEVICETOPIC MQTT2_SonoffIP102
FUUID 60112844-f33f-c791-dc4a-c2dfc4fe5f2dc44f
IODev myBroker
LASTInputDev myBroker
MSGCNT 91
NAME MQTT2_SonoffIP102
NR 82
STATE 23.40 °C
TYPE MQTT2_DEVICE
myBroker_MSGCNT 91
myBroker_TIME 2021-01-27 23:30:39
JSONMAP:
Channel_0 0
Channel_1 0
Channel_2 0
Channel_3 0
Channel_4 0
Color 0
Dimmer 0
HSBColor 0
POWER1 0
POWER2 0
POWER3 0
POWER4 0
READINGS:
2021-01-27 23:30:39 DS18B20_Id 01192C7E71B7
2021-01-27 23:30:39 DS18B20_Temperature 23.4
2021-01-27 23:30:39 Heap 26
2021-01-27 22:51:35 Hostname SonoffIP102-2322
2021-01-27 22:51:35 IPAddress 192.168.178.102
2021-01-27 22:51:35 LWT Online
2021-01-27 23:30:39 LoadAvg 19
2021-01-27 23:30:39 MqttCount 1
2021-01-27 23:30:39 POWER OFF
2021-01-27 22:51:35 RestartReason Power On
2021-01-27 23:30:39 Sleep 50
2021-01-27 23:30:39 SleepMode Dynamic
2021-01-27 23:30:39 TempUnit C
2021-01-27 23:30:39 Time 2021-01-27T23:30:39
2021-01-27 23:30:39 Uptime 0T00:39:11
2021-01-27 23:30:39 UptimeSec 2351
2021-01-27 22:51:35 WebServerMode Admin
2021-01-27 23:30:39 Wifi_AP 1
2021-01-27 23:30:39 Wifi_BSSId 5C:49:79:21:55:2F
2021-01-27 23:30:39 Wifi_Channel 8
2021-01-27 23:30:39 Wifi_Downtime 0T00:00:05
2021-01-27 23:30:39 Wifi_LinkCount 1
2021-01-27 23:30:39 Wifi_RSSI 68
2021-01-27 23:30:39 Wifi_SSId FritzDualband2.4
2021-01-27 23:30:39 Wifi_Signal -66
2021-01-27 09:46:21 attrTemplateVersion 20200522 or prior
2021-01-27 11:38:14 state set_off
2021-01-27 22:52:22 subscriptions cmnd/SonoffIP102/# cmnd/SonoffIP102_fb/# cmnd/tasmotas/#
Attributes:
IODev myBroker
alexaName Warmwasser
alias Warmwasser
autocreate 0
comment NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/SonoffIP102/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
devStateIcon on:on:off off:off:on
genericDeviceType switch
icon sani_water_hot
jsonMap POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 HSBColor:0 Color:0
model tasmota_basic_state_power1
readingList tele/SonoffIP102/LWT:.* LWT
tele/SonoffIP102/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/SonoffIP102/POWER1:.* state
stat/SonoffIP102/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
room Zirkulation,MQTT2_DEVICE
setList off:noArg cmnd/SonoffIP102/POWER1 0
on:noArg cmnd/SonoffIP102/POWER1 1
toggle:noArg cmnd/SonoffIP102/POWER1 2
setOtaUrl:textField cmnd/SonoffIP102/OtaUrl $EVTPART1
upgrade:noArg cmnd/SonoffIP102/upgrade 1
setStateList on off toggle
stateFormat {sprintf "%.2f °C", ReadingsVal($name, "DS18B20_Temperature", 0)}
Die letzte DOIF-Definition sieht syntaktisch korrekt aus. Sie befindet sich im Zustand cmd1, weil die Temperatur unter 24 Grad ist. Wenn es nicht funktioniert, dann liegt es vermutlich an fehlenden Events des Temperatursensors. Den anderen Zustand kann ich nicht beurteilen, weil ich davon keinen list-Ausdruck gesehen habe.
Vielen Dank
Ich poste später nochmal das list vom Schaltzustands des DOIF und vom device, wenn die andere Bedingung > 26 erreicht ist.
Die Konfiguration des Sonoff TH10 schaue ich mir auch nochmal genau an.
Gruß
Mikoom
Hallo Mikoom,
die letzte Version deines DOIF scheint funktionsfähig zu sein. Ich würde Dir folgendes empfehlen, um den/die Fehler zu finden, und generell:
1. den Sensor ein wenig in seiner Gesprächigkeit einbremsen.
Wenn Du einen neuen Sensor definiert hast und Daten ankommen (readings werden rot in der Detailansicht), dann lässt Du den Eventmonitor eine Weile laufen (Devicenamen dort eintragen) und schaust Dir das lustige Treiben an, sprich welche Werte werden wie oft vom Sensor geliefert. Tasmotas sind furchtbar gesprächig, auch Dein Temperatursensor. Dann überlegst du dir, welche Werte denn in Deiner Steuerung etwas auslösen sollen. In diesem Fall wäre es vermutlich (erst mal) nur temperature. Alle andern Werte sind quasi nur interessant, wenn Du die Detailansicht aufrufst, in diesem Moment werden sie ja dort aktualisiert. Dann fügst Du das Attribut "event-on-change-reading temperature" ein. Das bewirkt, daß nur noch der Wert temperature einen event auslöst und im Eventmonitor (immer schön mitlaufen lassen...) angezeigt wird. Und auch nur, wenn er sich ändert! Das ist wichtig für die weitere Verwendung, später mehr dazu.
2. Dann überlegst Du Dir, was Du damit erreichen willst: bei Temp < 24 was einschalten, bei Temp > 26 das wieder ausschalten. Dann schreibst Du erst mal damit Dein DOIF und schaust nach: kommen die temperature-Events an, und schaltet das DOIF wie gewünscht. Wenn das funktioniert, dann kannst Du deine zeitlichen Einschränkungen dazubasteln. Auch hier würde ich einen Zeitraum wählen, der von "jetzt+1Minute" bis "jetzt+4oder5 minuten" reicht und dann wiederum dem Eventmonitor zuschauen. Dazu entweder im Eventmonitor per Regex den TempSensor und das DOIF eintragen (meinDOIF|meinSensor).* oder eben 2 Seiten mit Eventmonitor aufmachen. Der Zeitraum beginnt, dein Sensor liefert Daten, dein DOIF sollte schalten. Wenn die Werte zu weit weg sind von den Schaltpunkten dann halt die Werte erst mal im DOIF ändern und was auch immer der Sensor misst versuchen zu beeinflussen, dass sich die Werte ändern, um das DOIF schalten zu lassen. Wenn das klappt, dann einen weiteren Schaltzeitraum dazuschreiben. Klappt auch das, dann scheint die Syntax richtig zu sein und Du kannst dann dazu übergehen, die Zeiträume und Schaltpunkte (Temperaturen) so einzutragen, wie Du Dir das ganz am Anfang mal überlegt hast.
zum event-on-change-Reading: diese Attribut lässt events vom Sensor nur durch, wenn sie sich ändern. Das ist bei Temperatursensoren oft ausreichend, wenn sie z.B. aussen sind und sich die Temperatur regelmäßig ändert. Im Innenbereich ist es ja deutlich seltener, weshalb man hier, je nach Anforderung, anders vorgehen kann. Entwerder man nimmt dann event-on-update-Reading, dann wird immer ein event kommen, wenn der Sensor sendet, oder man erweitert event-on-change-Reading mit event-min-interval (sekunden). Beispiel Lichtsensor draussen: der liefert jede Minute einen Wert der Helligkeit, der Tagsüber auch regelmäßig schwankt und damit Events erzeugt. Nachts kämen allerdings keine Events mehr, da sich die Helligkeit nicht ändert. Ein z.B. event-min-interval 900 würde dafür sorgen, dass trotzdem jede Viertelstunde ein Event (hier wohl immer Wert 0 für Dunkel) erzeugt wird (könnte man z.B. dafür nehmen den Sensor zu überwachen, ob er regelmäßig sendet).
Dann solltest Du immer noch ein Terminal offen haben und dort z.B. mit "tail -f -n800 /opt/fhem/log/fhem-2021-xx.log" deinem log zuschauen. Wenn Du nämlich beim DOIF-schreiben oder so einen Fehler machst wird Dir das dort meist gleich angezeigt.
Diese ganze event-on-....Geschichte mag vielleicht etwas undurchsichtig sein, lohnt sich aber da dran zu bleiben. Zu viele Events von zu vielen Devices lassen irgendwann Dein fhem in die Knie gehen, und dann macht die Fehlersuche keinen Spaß mehr.....
Aber mit event-monitor, einem Testsensor der viele Daten liefert und der command-ref zu event-on-... mal eine Zeit lang t´rumspielen dann erschliesst sich die Funktionsweise ganz von alleine.
Viel Erfolg!
.... und nun: aktuelles list von DOIF, Tempsensor und etwas Event-Monitor posten.
P.S. viel Text, nur meine Meinung/Vorgehensweise. Kann man bestimmt anders/besser machen.
Hallo,
ich glaube, ich hab's jetzt. Danke an Damian und Sany. Lösung brachte einmal ein anderes template auf dem Sonoff, das event-on-change-reading und das Herantasten beim DOIF. Habe erst nur die Temperatur als Bedingung gesetzt. Dann einen Zeitraum am Wochenende hinzugefügt. Dann einen zweiten Zeitraum am Wochenende. Ausgestiegen ist das DOIF dann, als ich es um die Zeiträume unter der Woche erweitern wollte. Ich habe mich deshalb entschieden auf 2 DOIF´s, also Woche und Wochenende aufzuteilen.
list vom Sonoff device:
Internals:
CID SonoffIP102
DEF SonoffIP102
DEVICETOPIC MQTT2_SonoffIP102
FUUID 60112844-f33f-c791-dc4a-c2dfc4fe5f2dc44f
IODev myBroker
LASTInputDev myBroker
MSGCNT 538
NAME MQTT2_SonoffIP102
NR 82
STATE 22.30 °C
TYPE MQTT2_DEVICE
myBroker_MSGCNT 538
myBroker_TIME 2021-01-30 09:44:20
JSONMAP:
Channel_0 0
Channel_1 0
Channel_2 0
Channel_3 0
Channel_4 0
Color 0
Dimmer 0
HSBColor 0
POWER1 0
POWER2 0
POWER3 0
POWER4 0
READINGS:
2021-01-30 09:44:20 DS18B20_Id 01192C7E71B7
2021-01-30 09:44:20 DS18B20_Temperature 22.3
2021-01-30 09:44:20 Heap 25
2021-01-30 08:16:31 Hostname SonoffIP102-2322
2021-01-30 08:16:31 IPAddress 192.168.178.102
2021-01-30 08:16:31 LWT Online
2021-01-30 09:44:20 LoadAvg 19
2021-01-30 09:44:20 MqttCount 1
2021-01-30 09:44:20 POWER ON
2021-01-30 08:16:31 RestartReason Software/System restart
2021-01-30 09:44:20 Sleep 50
2021-01-30 09:44:20 SleepMode Dynamic
2021-01-30 09:44:20 TempUnit C
2021-01-30 08:16:14 Template Invalid JSON
2021-01-30 09:44:20 Time 2021-01-30T09:44:20
2021-01-30 09:44:20 Uptime 0T01:28:04
2021-01-30 09:44:20 UptimeSec 5284
2021-01-30 08:16:31 WebServerMode Admin
2021-01-30 09:44:20 Wifi_AP 1
2021-01-30 09:44:20 Wifi_BSSId 5C:49:79:21:55:2F
2021-01-30 09:44:20 Wifi_Channel 8
2021-01-30 09:44:20 Wifi_Downtime 0T00:00:03
2021-01-30 09:44:20 Wifi_LinkCount 1
2021-01-30 09:44:20 Wifi_RSSI 82
2021-01-30 09:44:20 Wifi_SSId FritzDualband2.4
2021-01-30 09:44:20 Wifi_Signal -59
2021-01-27 09:46:21 attrTemplateVersion 20200522 or prior
2021-01-27 11:38:14 state set_off
2021-01-27 22:52:22 subscriptions cmnd/SonoffIP102/# cmnd/SonoffIP102_fb/# cmnd/tasmotas/#
Attributes:
IODev myBroker
alexaName Warmwasser
alias Warmwasser
autocreate 0
comment NOTE: For on-for-timer SetExtensions are used. You may add on-for-timer option running on the device. The following is limited to 1h max duration, but will not affect future simple "on" commands:<br>on-for-timer {my $duration = $EVTPART1*10; 'cmnd/SonoffIP102/Backlog POWER1 1; delay '.$duration.'; POWER1 0'}<br>See the "Praxisbeispiele" in the wiki for "pulseTime1" alternative option and it's restrictions.
devStateIcon on:on:off off:off:on
event-on-change-reading DS18B20_Temperature
genericDeviceType switch
icon sani_water_hot
jsonMap POWER1:0 POWER2:0 POWER3:0 POWER4:0 Dimmer:0 Channel_0:0 Channel_1:0 Channel_2:0 Channel_3:0 Channel_4:0 HSBColor:0 Color:0
model tasmota_basic_state_power1
readingList tele/SonoffIP102/LWT:.* LWT
tele/SonoffIP102/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/SonoffIP102/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/SonoffIP102/POWER1:.* state
stat/SonoffIP102/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
room Zirkulation,MQTT2_DEVICE
setList off:noArg cmnd/SonoffIP102/POWER1 0
on:noArg cmnd/SonoffIP102/POWER1 1
toggle:noArg cmnd/SonoffIP102/POWER1 2
setOtaUrl:textField cmnd/SonoffIP102/OtaUrl $EVTPART1
upgrade:noArg cmnd/SonoffIP102/upgrade 1
setStateList on off toggle
stateFormat {sprintf "%.2f °C", ReadingsVal($name, "DS18B20_Temperature", 0)}
list vom DOIF Woche:
Internals:
CFGFN
DEF ([MQTT2_SonoffIP102:DS18B20_Temperature] < 25 and ([06:30-09:30|8] or [18:00-23:00|8])) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 26) (set MQTT2_SonoffIP102 off)
FUUID 60151938-f33f-c791-09ef-4b6274570d65ecec
MODEL FHEM
NAME Zirkulationsleitung_Woche
NOTIFYDEV global,MQTT2_SonoffIP102
NR 278
NTFY_ORDER 50-Zirkulationsleitung_Woche
STATE cmd_2
TYPE DOIF
VERSION 22428 2020-07-18 20:32:08
READINGS:
2021-01-30 09:46:05 Device MQTT2_SonoffIP102
2021-01-30 09:33:36 cmd 2
2021-01-30 09:33:36 cmd_event MQTT2_SonoffIP102
2021-01-30 09:33:36 cmd_nr 2
2021-01-30 09:46:05 e_MQTT2_SonoffIP102_DS18B20_Temperature 22.3
2021-01-30 09:30:48 mode enabled
2021-01-30 09:33:36 state cmd_2
2021-01-30 09:30:48 timer_01_c01 31.01.2021 06:30:00|8
2021-01-30 09:30:48 timer_02_c01 31.01.2021 09:30:00|8
2021-01-30 09:30:48 timer_03_c01 30.01.2021 18:00:00|8
2021-01-30 09:30:48 timer_04_c01 30.01.2021 23:00:00|8
Regex:
accu:
cond:
MQTT2_SonoffIP102:
0:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
1:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') < 25 and (::DOIF_time($hash,0,1,$wday,$hms,"8") or ::DOIF_time($hash,2,3,$wday,$hms,"8"))
1 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') > 26
days:
0 8
1 8
2 8
3 8
do:
0:
0 set MQTT2_SonoffIP102 on
1:
0 set MQTT2_SonoffIP102 off
2:
helper:
DEVFILTER ^global$|^MQTT2_SonoffIP102$
NOTIFYDEV global|MQTT2_SonoffIP102
event DS18B20_Temperature: 22.3
globalinit 1
last_timer 4
sleeptimer -1
timerdev MQTT2_SonoffIP102
timerevent DS18B20_Temperature: 26.5
triggerDev MQTT2_SonoffIP102
timerevents:
DS18B20_Temperature: 26.5
timereventsState:
DS18B20_Temperature: 26.5
triggerEvents:
DS18B20_Temperature: 22.3
triggerEventsState:
DS18B20_Temperature: 22.3
internals:
interval:
0 -1
1 0
2 -1
3 2
intervalfunc:
localtime:
0 1612071000
1 1612081800
2 1612026000
3 1612044000
readings:
all MQTT2_SonoffIP102:DS18B20_Temperature
realtime:
0 06:30:00
1 09:30:00
2 18:00:00
3 23:00:00
time:
0 06:30:00
1 09:30:00
2 18:00:00
3 23:00:00
timeCond:
0 0
1 0
2 0
3 0
timer:
0 0
1 0
2 0
3 0
timers:
0 0 1 2 3
trigger:
triggertime:
1612026000:
localtime 1612026000
hash:
1612044000:
localtime 1612044000
hash:
1612071000:
localtime 1612071000
hash:
1612081800:
localtime 1612081800
hash:
uiState:
uiTable:
Attributes:
devStateIcon on:on:off off:off:on
room DOIF,Zirkulation
list vom DOIF Wochenende:
Internals:
DEF ([MQTT2_SonoffIP102:DS18B20_Temperature] < 25 and ([08:00-12:00|7] or [19:30-23:00|7])) (set MQTT2_SonoffIP102 on) DOELSEIF ([MQTT2_SonoffIP102:DS18B20_Temperature] > 26) (set MQTT2_SonoffIP102 off)
FUUID 601145e4-f33f-c791-ad2e-7246bce3e8109200
MODEL FHEM
NAME Zirkulationsleitung_Wochenende
NOTIFYDEV global,MQTT2_SonoffIP102
NR 83
NTFY_ORDER 50-Zirkulationsleitung
STATE cmd_1
TYPE DOIF
VERSION 22428 2020-07-18 20:32:08
READINGS:
2021-01-30 09:46:35 Device MQTT2_SonoffIP102
2021-01-30 09:34:36 cmd 1
2021-01-30 09:34:36 cmd_event MQTT2_SonoffIP102
2021-01-30 09:34:36 cmd_nr 1
2021-01-30 09:46:35 e_MQTT2_SonoffIP102_DS18B20_Temperature 22.3
2021-01-30 09:23:48 mode enabled
2021-01-30 09:34:36 state cmd_1
2021-01-30 09:23:48 timer_01_c01 31.01.2021 08:00:00|7
2021-01-30 09:23:48 timer_02_c01 30.01.2021 12:00:00|7
2021-01-30 09:23:48 timer_03_c01 30.01.2021 19:30:00|7
2021-01-30 09:23:48 timer_04_c01 30.01.2021 23:00:00|7
Regex:
accu:
cond:
MQTT2_SonoffIP102:
0:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
1:
DS18B20_Temperature ^MQTT2_SonoffIP102$:^DS18B20_Temperature:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') < 25 and (::DOIF_time($hash,0,1,$wday,$hms,"7") or ::DOIF_time($hash,2,3,$wday,$hms,"7"))
1 ::ReadingValDoIf($hash,'MQTT2_SonoffIP102','DS18B20_Temperature') > 26
days:
0 7
1 7
2 7
3 7
do:
0:
0 set MQTT2_SonoffIP102 on
1:
0 set MQTT2_SonoffIP102 off
2:
helper:
DEVFILTER ^global$|^MQTT2_SonoffIP102$
NOTIFYDEV global|MQTT2_SonoffIP102
event DS18B20_Temperature: 22.3
globalinit 1
last_timer 4
sleeptimer -1
timerdev MQTT2_SonoffIP102
timerevent DS18B20_Temperature: 22.3
triggerDev MQTT2_SonoffIP102
timerevents:
DS18B20_Temperature: 22.3
timereventsState:
DS18B20_Temperature: 22.3
triggerEvents:
DS18B20_Temperature: 22.3
triggerEventsState:
DS18B20_Temperature: 22.3
internals:
interval:
0 -1
1 0
2 -1
3 2
intervalfunc:
localtime:
0 1612076400
1 1612004400
2 1612031400
3 1612044000
readings:
all MQTT2_SonoffIP102:DS18B20_Temperature
realtime:
0 08:00:00
1 12:00:00
2 19:30:00
3 23:00:00
time:
0 08:00:00
1 12:00:00
2 19:30:00
3 23:00:00
timeCond:
0 0
1 0
2 0
3 0
timer:
0 0
1 0
2 0
3 0
timers:
0 0 1 2 3
trigger:
triggertime:
1612004400:
localtime 1612004400
hash:
1612031400:
localtime 1612031400
hash:
1612044000:
localtime 1612044000
hash:
1612076400:
localtime 1612076400
hash:
uiState:
uiTable:
Attributes:
devStateIcon on:on:off off:off:on
room DOIF,Zirkulation
...und ein kurzer Auszug aus dem Eventmonitor:
2021-01-30 09:37:36 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 23.1
2021-01-30 09:38:05 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.9
2021-01-30 09:38:50 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.8
2021-01-30 09:39:20 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.7
2021-01-30 09:40:05 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.6
2021-01-30 09:40:50 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.5
2021-01-30 09:41:20 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.4
2021-01-30 09:43:05 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.3
2021-01-30 09:45:50 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.4
2021-01-30 09:46:05 MQTT2_DEVICE MQTT2_SonoffIP102 DS18B20_Temperature: 22.3
Vielen Dank nochmal an alle.
LG
Mikoom