Hallo,
bei der Funk-Statusanzeige LED16 habe ich das Problem, dass nach jedem Verändern der Anzeigehelligkeit (set Statusanzeige2 ilum 1 0) ein getConfig durch hminfo ausgelöst wird.
Dies passiert auch oft, aber nicht immer, nach dem Ansteuern der LEDs (set Statusanzeige2_Led_01 red).
Bei den vielen Kanälen des Devices verusacht ein getConfig jedesmal ein fhem-Blocking von über 2 Sekunden.
Wenn ich manuell ein geConfig über WebUI auslöse, sind alle Registerwerte vorhanden, aber nur bis zur nächsten Ansteuerung des Devices.
hminfo zeigt dann:
RegIncom: incomplete register list
incomplete register list
Statusanzeige2: .RegL_00.
Das Reading R-brightness bleibt auf set_1 (nach set Statusanzeige2 ilum 1 0) obwohl die Statusanzeige mit der Helligkeit 1 leuchtet.
Da ich bisher nicht herausbekommen habe, warum nicht alle Registerwerte geliefert werden wollte ich mit dem Attribut autoReadReg 0_off die ständigen getConfig durch hminfo vermeiden.
Es scheint aber, das diese Einstellung von der aktuellen hminfo-Version nicht mehr berücksichtigt wird, da auch weiterhin die hminfo-Meldungen im Log auftauchen:
2021.03.13 14:21:50 3: CUL_HM set Statusanzeige2 ilum 1 0
2021.03.13 14:22:20 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.13 14:22:27 1: Perfmon: possible freeze starting at 14:22:25, delay is 2.192
Hier ein List der Funk-Statusanzeige:
Internals:
CFGFN
DEF 20F83F
FUUID 604b5e18-f33f-f7b5-0825-878bb1e110b84676
HMLAN1_MSGCNT 1077
HMLAN1_RAWMSG R2BE3A5AF,0001,018B9E9E,FF,FFD0,13800220F83F125B7F010B020049AAAAAAAA
HMLAN1_RSSI -48
HMLAN1_TIME 2021-03-13 15:00:42
HMLAN2_MSGCNT 663
HMLAN2_RAWMSG E20F83F,0000,018A6D17,FF,FFCF,13800220F83F125B7F010B020049AAAAAAAA
HMLAN2_RSSI -49
HMLAN2_TIME 2021-03-13 15:00:42
IODev HMLAN1
LASTInputDev HMLAN2
MSGCNT 1740
NAME Statusanzeige2
NOTIFYDEV global
NR 4468
STATE CMDs_done
TYPE CUL_HM
chanNo 01
channel_01 Statusanzeige2_Led_01
channel_02 Statusanzeige2_Led_02
channel_03 Statusanzeige2_Led_03
channel_04 Statusanzeige2_Led_04
channel_05 Statusanzeige2_Led_05
channel_06 Statusanzeige2_Led_06
channel_07 Statusanzeige2_Led_07
channel_08 Statusanzeige2_Led_08
channel_09 Statusanzeige2_Led_09
channel_0A Statusanzeige2_Led_10
channel_0B Statusanzeige2_Led_11
channel_0C Statusanzeige2_Led_12
channel_0D Statusanzeige2_Led_13
channel_0E Statusanzeige2_Led_14
channel_0F Statusanzeige2_Led_15
channel_10 Statusanzeige2_Led_16
lastMsg No:13 - t:02 s:20F83F d:125B7F 010B020049AAAAAAAA
protCmdDel 3
protIOdly 1 last_at:2021-03-13 07:48:30
protIOerr 1 last_at:2021-03-13 07:49:31
protLastRcv 2021-03-13 15:00:42
protRcv 206 last_at:2021-03-13 15:00:42
protResnd 5 last_at:2021-03-13 11:43:49
protSnd 273 last_at:2021-03-13 15:00:42
protState CMDs_done
rssi_HMLAN1 cnt:149 min:-77 max:-72 avg:-73.5 lst:-73
rssi_at_HMLAN1 cnt:893 min:-53 max:-46 avg:-47.53 lst:-48
rssi_at_HMLAN2 cnt:563 min:-54 max:-48 avg:-49.81 lst:-49
READINGS:
2021-03-12 13:58:14 Activity alive
2021-03-13 14:21:51 CommandAccepted yes
2021-03-12 13:55:48 D-firmware 1.1
2021-03-12 13:55:48 D-serialNr KEQ0123748
2021-03-13 11:26:13 PairedTo 0x125B7F
2021-03-13 14:21:50 R-brightness set_1
2021-03-12 13:35:35 R-energyOpt permanent
2021-03-12 13:35:35 R-intKeyVisib invisib
2021-03-12 13:35:35 R-localResDis off
2021-03-12 13:35:35 R-pairCentral 0x125B7F
2021-03-13 11:26:13 RegL_00. 02:01 04:08 08:00 0A:12 0B:5B 0C:7F 18:00
2021-03-13 14:22:20 cfgState RegIncom
2021-03-13 15:00:42 color AAAAAAAA
2021-03-13 15:00:42 commState CMDs_done
2021-03-12 13:32:29 powerOn 2021-03-12 13:32:29
2021-03-13 15:00:42 state CMDs_done
helper:
HM_CMDNR 19
PONtest 0
cSnd 11125B7F20F83F801002,11125B7F20F83F800B02
mId 006D
peerFriend
peerOpt -:outputUnit
regLst 0,1
rxType 1
supp_Pair_Rep 0
ack:
cfgChk:
idRc02 RegL_00.
cmds:
TmplKey :1615383599.5051:1615570186.59878
TmplTs 1615570186.59878
cmdKey 0:1:0::Statusanzeige2:006D:00:
cmdLst:
assignHmKey noArg
clear [(readings|trigger|register|oldRegs|rssi|msgEvents|{msgErrors}|attack|all)]
deviceRename -newName-
fwUpdate -filename- [-bootTime-]
getConfig noArg
getDevInfo noArg
getRegRaw (List0|List1|List2|List3|List4|List5|List6|List7) [-peerChn-]
ilum (0..15;1) (0..127;1)
led (off|red|green|orange)
raw -data- [...]
regBulk -list-.-peerChn- -addr1:data1- -addr2:data2-...
regSet [(prep|{exec})] -regName- -value- [-peerChn-]
reset noArg
sign [(on|{off})]
statusRequest noArg
tplDel -tplDel-
tplSet_0 -tplChan-
unpair noArg
lst:
condition slider,0,1,255
peer
peerOpt
tplChan
tplDel
tplPeer
rtrvLst:
cmdList [({short}|long)]
deviceInfo [({short}|long)]
list [({normal}|full)]
param -param-
reg -addr- -list- [-peerChn-]
regList noArg
regTable noArg
regVal -addr- -list- [-peerChn-]
saveConfig [-filename-]
tplInfo noArg
expert:
def 1
det 1
raw 1
tpl 0
io:
newChn +20F83F,00,01,00
nextSend 1615644042.55905
prefIO
rxt 0
vccu
p:
20F83F
00
01
00
mRssi:
mNo 13
io:
HMLAN1:
-40
-40
HMLAN2:
-49
-49
peerIDsH:
prt:
bErr 0
sProc 0
q:
qReqConf
qReqStat
regCollect:
role:
dev 1
rssi:
HMLAN1:
avg -73.503355704698
cnt 149
lst -73
max -72
min -77
at_HMLAN1:
avg -47.5386338185891
cnt 893
lst -48
max -46
min -53
at_HMLAN2:
avg -49.8117229129663
cnt 563
lst -49
max -48
min -54
shadowReg:
RegL_00. 00:00 02:01 04:01 08:00 0A:12 0B:5B 0C:7F 18:00
tmpl:
Attributes:
IODev HMLAN1
IOgrp vCCU:HMLAN1
actCycle 024:10
actStatus alive
autoReadReg 0_off
event-on-change-reading state,cfgState,powerOn,R-brightness
expert allReg,rawReg
firmware 1.1
icon hm-dis-wm55
model HM-OU-LED16
room Flur
serialNr KEQ0123748
subType outputUnit
webCmd ilum 0 0:ilum 8 0:ilum 15 0
Ein Werksreset des Devices, ein Delete und neues Pairing in fhem brachten keine Änderung.
Ich würde mich über einen Tipp bezüglich der zickigen Statusanzeige freuen.
Vielleicht kann auch jemand nachvollziehen, ob das Ignorieren von autoReadReg 0_off auch noch woanders als in meiner Installation auftritt.
Grüße
du verwechselst grundsätzlich 2 dinge:
1. get hminfo configCheck (analysiert fhem daten) => 98_hminfo
2. set device getConfig (holt device daten) => 10_cul_hm
mit attr autoReadReg=0 verhinderst du direkt "nur" automatische "set getConfig".
dadurch bleiben dann aber einträge der form "set_...." erhalten.
seit gestern war schon viel kommunikation.
unnötiges setzen des devices solltest du verhindern.
für ständiges wechseln vieler channel ist das device eventuell ungeeignet. habe ich nicht.
protoIOErr lässt mich vermuten, dass es eventuell sogar overload gab.
noch zu freezes:
der gezeigte freeze hat nichts direkt mit homematic zu tun, denke ich.
1. der freeze beginnt 5 sec nach hminfo configcheck
2. configcheck blockiert nicht
3. martin legt sehr viel wert auf ein nicht blockierendes system
4. ich habe noch nie homematic als blockierer beobachtet.
wahrscheinlich hast du weitere automatismen, die diese freezes verursachen.
starte mal apptime oder freezemon mit option log.
@frank
Danke für die schnellen Antworten.
Mit apptime oder freezemon werde ich mich befassen.
Ich habe gestern und heute viel rumprobiert, daher die viele Kommunikation.
Normalerweise werden am Tag nur wenige Kommandos an das Device geschickt, wenn Fenster auf und zu gemacht werden (z.Bsp. set Statusanzeige2_Led_01 red).
Außerdem wird ab und zu die Anzeigehelligkeit in 3 Stufen, abhängig von der Außenhelligkeit gesteuert.
Die Readings der Statusanzeige würde trotzdem gerne in Ordnung bringen.
Nach einem ausgeführten Kommando (z.Bsp. set Statusanzeige2 ilum 8 0) zeigt hm.js das rote Zahnradsymbol (RegIncom: incomplete register list) mit folgendem Reading:
RegL_00. 02:01 04:02 08:00 0A:12 0B:5B 0C:7F 18:00 2021-03-12 17:32:55
Nach einem getConfig aus WebUI ändert sich das Reading in
RegL_00. 00:00 02:01 04:08 08:00 0A:12 0B:5B 0C:7F 18:00 2021-03-13 11:26:13
Wird durch diese Differenz configCheck ausgelöst?
Kann ich vielleicht irgendetwas mit regSet im Device beheben?
Grüße
freezemon zeigt im Log folgendes nach einem ausgeführten Kommando set Statusanzeige2 ilum 1 0
2021.03.13 17:01:00 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.919935 seconds
2021.03.13 17:01:13 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.13 17:01:16 1: [Freezemon] Freezemon: possible freeze starting at 17:01:14, delay is 2.132 possibly caused by: tmr-CUL_HM_cfgStateUpdate(Statusanzeige2) tmr-perfmon_ProcessTimer(N/A)
Zitat von: uge am 13 März 2021, 17:14:20
freezemon zeigt im Log folgendes nach einem ausgeführten Kommando set Statusanzeige2 ilum 1 0
2021.03.13 17:01:00 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.919935 seconds
2021.03.13 17:01:13 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.13 17:01:16 1: [Freezemon] Freezemon: possible freeze starting at 17:01:14, delay is 2.132 possibly caused by: tmr-CUL_HM_cfgStateUpdate(Statusanzeige2) tmr-perfmon_ProcessTimer(N/A)
1. du solltest die log option verwenden: also attr fm_logFile setzen und anschliessend den file inhalt zeigen (natürlich nur vom passenden freeze).
enscheidend sind die aktionen vor der zeile "--- log skips".
2. "perfmon_ProcessTimer" lässt vermuten, dass perfmon noch läuft: => löschen und fhem restart
3. was ist mit apptime? vor der aktion "apptime clear", nach dem freeze "apptime max" ausführen.
"set ilum" verändert scheinbar das register brightness.
jedes register setzen benötigt anschliessend getconfig, um das ändern zu verifizieren. egal, ob automatisch oder manuell. bis dahin wird "set_..." gezeigt.
das real nicht existierende register "00:00" zeigt scheinbar an, dass die verifikation erfolgreich war. wenn es fehlt wirft hminfo wohl den fehler.
ZitatAußerdem wird ab und zu die Anzeigehelligkeit in 3 Stufen, abhängig von der Außenhelligkeit gesteuert.
ein getconfig im hauptdevice ist allerdings relativ "teuer", da es auch
alle channel abfragt.
eventuell solltest du hier etwas einsparen.
ausserdem hast du scheinbar mindestens 2 anzeigen => nicht gleichzeitig setzen.
Es gibt nur eine LED16-Statusanzeige. (Statusanzeige1 ist bei mir ein Funk-Anzeigeaktor mit Wechselanzeige HM-Dis-TD-T)
Ich habe jetzt perfmon entfernt und fhem neu gestartet.
Die Ansteuerung der Helligkeit erfolgt durch das DOIF fl_brightness_stat2.
Hier die Logs (das ilum-Kommando wurde 14:40:22 Uhr abgesetzt):
fhem Log:
2021.03.14 14:40:22 3: CUL_HM set Statusanzeige2 ilum 1 0
2021.03.14 14:40:22 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.14 14:40:24 1: [Freezemon] Freezemon: Long running Command detected set Statusanzeige2 ilum 1 0:N/A - 2.052847 seconds
2021.03.14 14:40:24 1: [Freezemon] Freezemon: possible freeze starting at 14:40:23, delay is 1.949 possibly caused by: cmd-set Statusanzeige2 ilum 1 0(N/A) tmr-DOIF_SleepTrigger(fl_brightness_stat2)
apptime:
name function max count total average maxDly avgDly TS Max call param Max call
deCONZ HUEBridge_Read 2326 15 4718.72 314.58 0.00 0.00 14.03. 14:41:12 HASH(deCONZ)
tmr-DOIF_SleepTrigger HASH(0x2c50108) 2280 2 2651.18 1325.59 1.49 1.24 14.03. 14:40:24 HASH(fl_brightness_stat2)
Statusanzeige2 CUL_HM_Set 2051 5 2205.25 441.05 0.00 0.00 14.03. 14:40:24 HASH(Statusanzeige2); Statusanzeige2; ilum; 1; 0
HMLAN1 HMLAN_Read 1332 37 8102.14 218.98 0.00 0.00 14.03. 14:41:06 HASH(HMLAN1)
HMLAN2 HMLAN_Read 956 35 4119.98 117.71 0.00 0.00 14.03. 14:40:50 HASH(HMLAN2)
WEB_192.168.178.27_55670 FW_Read 925 4 962.52 240.63 0.00 0.00 14.03. 14:41:08 HASH(WEB_192.168.178.27_55670)
JeeLink1 JeeLink_Read 630 111 3254.79 29.32 0.00 0.00 14.03. 14:40:45 HASH(JeeLink1)
tmr-CUL_HM_motionCheck Bewegungsmelder4 532 2 922.05 461.02 1987.98 1155.40 14.03. 14:40:39 Bewegungsmelder4:motionCheck
ke_PV_pwr_web DOIF_Notify 352 4 1381.35 345.34 0.00 0.00 14.03. 14:40:39 HASH(ke_PV_pwr_web); HASH(LaCrosse_Dach)
fl_Helligkeit4_web DOIF_Notify 321 7 1754.25 250.61 0.00 0.00 14.03. 14:40:39 HASH(fl_Helligkeit4_web); HASH(Bewegungsmelder4)
te_Helligkeit2_web DOIF_Notify 253 1 253.13 253.13 0.00 0.00 14.03. 14:41:06 HASH(te_Helligkeit2_web);
Freezemon:
2021.03.14 14:39:48.471 5: [Freezemon] Freezemon: ----------- Starting Freeze handling at 2021.03.14 14:39:48.471 ---------------------
[Freezemon] Freezemon: possible freeze starting at 14:39:47, delay is 1.471 possibly caused by: no bad guy found :-(
=========================================================
[Freezemon] Freezemon: possible freeze starting at 14:40:23, delay is 1.949 possibly caused by: cmd-set Statusanzeige2 ilum 1 0(N/A) tmr-DOIF_SleepTrigger(fl_brightness_stat2)
2021.03.14 14:40:22.037 5: deCONZ: websocket data: $VAR1 = {
'r' => 'sensors',
't' => 'event',
'id' => '8',
'uniqueid' => '00:15:8d:00:03:47:98:14-01-0b04',
'e' => 'changed',
'state' => {
'current' => 0,
'lastupdated' => '2021-03-14T13:40:22.030',
'power' => 0,
'voltage' => 232
}
};
2021.03.14 14:40:22.037 4: parse status message for Funksteckdose13_hue_Pwr
2021.03.14 14:40:22.038 4: Funksteckdose13_hue_Pwr: use offsetUTC 3600 from bridge
2021.03.14 14:40:22.038 4: Funksteckdose13_hue_Pwr: lastupdated: 2021-03-14 13:40:22, hash->{lastupdated}: 2021-03-14 13:36:19, lastupdated_local: 2021-03-14 14:40:22, offsetUTC: 3600
2021.03.14 14:40:22.205 5: JeeLink/RAW: /OK 9 61 1 4 70 106
2021.03.14 14:40:22.753 5: End notify loop for fl_brightness_stat2
2021.03.14 14:40:22.754 5: Cmd: >set Statusanzeige2 ilum 1 0<
2021.03.14 14:40:22.755 3: CUL_HM set Statusanzeige2 ilum 1 0
2021.03.14 14:40:22.818 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.14 14:40:22.855 4: CUL_HM get Statusanzeige2_Led_01 regList
2021.03.14 14:40:22.857 4: CUL_HM get Statusanzeige2_Led_02 regList
2021.03.14 14:40:22.859 4: CUL_HM get Statusanzeige2_Led_03 regList
2021.03.14 14:40:22.860 4: CUL_HM get Statusanzeige2_Led_04 regList
2021.03.14 14:40:22.862 4: CUL_HM get Statusanzeige2_Led_05 regList
2021.03.14 14:40:22.864 4: CUL_HM get Statusanzeige2_Led_06 regList
2021.03.14 14:40:22.866 4: CUL_HM get Statusanzeige2_Led_07 regList
2021.03.14 14:40:22.868 4: CUL_HM get Statusanzeige2_Led_08 regList
2021.03.14 14:40:22.870 4: CUL_HM get Statusanzeige2_Led_09 regList
2021.03.14 14:40:22.872 4: CUL_HM get Statusanzeige2_Led_10 regList
2021.03.14 14:40:22.874 4: CUL_HM get Statusanzeige2_Led_11 regList
2021.03.14 14:40:22.875 4: CUL_HM get Statusanzeige2_Led_12 regList
2021.03.14 14:40:22.877 4: CUL_HM get Statusanzeige2_Led_13 regList
2021.03.14 14:40:22.879 4: CUL_HM get Statusanzeige2_Led_14 regList
2021.03.14 14:40:22.881 4: CUL_HM get Statusanzeige2_Led_15 regList
2021.03.14 14:40:22.882 4: CUL_HM get Statusanzeige2_Led_16 regList
2021.03.14 14:40:23.030 5: HMinfo hminfo finish blocking
2021.03.14 14:40:23.144 5: CUL_HM set Statusanzeige2 ?
2021.03.14 14:40:23.146 5: End notify loop for Statusanzeige2
2021.03.14 14:40:23.248 5: End notify loop for Statusanzeige2_Led_01
2021.03.14 14:40:23.350 5: End notify loop for Statusanzeige2_Led_02
2021.03.14 14:40:23.454 5: End notify loop for Statusanzeige2_Led_03
2021.03.14 14:40:23.556 5: End notify loop for Statusanzeige2_Led_04
2021.03.14 14:40:23.659 5: End notify loop for Statusanzeige2_Led_05
2021.03.14 14:40:23.761 5: End notify loop for Statusanzeige2_Led_06
2021.03.14 14:40:23.863 5: End notify loop for Statusanzeige2_Led_07
2021.03.14 14:40:23.979 5: End notify loop for Statusanzeige2_Led_08
2021.03.14 14:40:24.090 5: End notify loop for Statusanzeige2_Led_09
2021.03.14 14:40:24.191 5: End notify loop for Statusanzeige2_Led_10
2021.03.14 14:40:24.293 5: End notify loop for Statusanzeige2_Led_11
2021.03.14 14:40:24.395 5: End notify loop for Statusanzeige2_Led_12
2021.03.14 14:40:24.497 5: End notify loop for Statusanzeige2_Led_13
2021.03.14 14:40:24.599 5: End notify loop for Statusanzeige2_Led_14
2021.03.14 14:40:24.701 5: End notify loop for Statusanzeige2_Led_15
2021.03.14 14:40:24.804 5: End notify loop for Statusanzeige2_Led_16
2021.03.14 14:40:24.807 1: [Freezemon] Freezemon: Long running Command detected set Statusanzeige2 ilum 1 0:N/A - 2.052847 seconds
2021.03.14 14:40:24.923 5: End notify loop for fl_brightness_stat2
im freezelog kann ich keinen freeze erkennen.
vielleicht ein "fake" freeze?
wo kommen die ganzen "get regList" her?
wie sehen die logs aus, wenn du set ilum ohne doif ausführst?
zeig mal list vom doif.
Um 17:03 Uhr aus WebUI set Statusanzeige2 ilum 8 0 ausgeführt.
Ich sehe in den Log-Einträgen keinen Unterschied zur Ausführung aus dem DOIF...
fhem Log:
2021.03.14 17:03:00 3: CUL_HM set Statusanzeige2 ilum 8 0
2021.03.14 17:03:29 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.978726 seconds
2021.03.14 17:03:31 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.14 17:03:33 1: [Freezemon] Freezemon: possible freeze starting at 17:03:31, delay is 2.203 possibly caused by: tmr-CUL_HM_cfgStateUpdate(Statusanzeige2)
2021.03.14 17:03:44 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.988744 seconds
2021.03.14 17:03:46 3: [Freezemon] Freezemon: Long function call detected ReadFn:WEB_192.168.178.27_56390 - 0.915538 seconds
2021.03.14 17:03:52 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 2.124939 seconds
2021.03.14 17:03:52 1: [Freezemon] Freezemon: possible freeze starting at 17:03:51, delay is 1.788 possibly caused by: fn-ReadFn(HMLAN1)
2021.03.14 17:03:56 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.963973 seconds
2021.03.14 17:03:57 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.995148 seconds
2021.03.14 17:04:19 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.51376 seconds
2021.03.14 17:04:27 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN1 - 0.599412 seconds
2021.03.14 17:04:53 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN2 - 0.518254 seconds
2021.03.14 17:04:56 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN2 - 0.547592 seconds
Freezemon:
[Freezemon] Freezemon: possible freeze starting at 17:02:42, delay is 1.658 possibly caused by: fn-ReadFn(HMLAN2)
2021.03.14 17:02:41.309 5: JeeLink/RAW: /OK 9 8 1 4 37 106
2021.03.14 17:02:41.439 5: HMLAN/RAW: /E70690E,0000,008A4FFC,FF,FFCC,B9861070690E0000000A94C10C0000
2021.03.14 17:02:41.440 5: HMLAN_Parse: HMLAN2 R:E70690E stat:0000 t:008A4FFC d:FF r:FFCC m:B9 8610 70690E 000000 0A94C10C0000
2021.03.14 17:02:41.473 5: createNotifyHash
--- log skips 2.180 secs.
2021.03.14 17:02:43.653 5: End notify loop for wc_Thermostat_Weather
2021.03.14 17:02:43.653 3: [Freezemon] Freezemon: Long function call detected ReadFn:HMLAN2 - 2.214483 seconds
2021.03.14 17:02:43.658 5: [Freezemon] Freezemon: ----------- Starting Freeze handling at 2021.03.14 17:02:43.658 ---------------------
[Freezemon] Freezemon: possible freeze starting at 17:02:42, delay is 1.658 possibly caused by: fn-ReadFn(HMLAN2)
=========================================================
[Freezemon] Freezemon: possible freeze starting at 17:03:31, delay is 2.203 possibly caused by: tmr-CUL_HM_cfgStateUpdate(Statusanzeige2)
2021.03.14 17:03:30.543 5: HMLAN/RAW: /E4B44C7,0000,00462322,FF,FFBB,AD86534B44C7000000004100DA4200DC43FFFE440002
2021.03.14 17:03:30.544 5: HMLAN_Parse: HMLAN1 R:E4B44C7 stat:0000 t:00462322 d:FF r:FFBB m:AD 8653 4B44C7 000000 004100DA4200DC43FFFE440002
2021.03.14 17:03:30.709 5: End notify loop for HM_4B44C7_T1
2021.03.14 17:03:30.826 5: End notify loop for HM_4B44C7_T1_T2
2021.03.14 17:03:30.958 5: End notify loop for HM_4B44C7_T2_T1
2021.03.14 17:03:31.008 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.14 17:03:31.035 4: CUL_HM get Statusanzeige2_Led_01 regList
2021.03.14 17:03:31.036 4: CUL_HM get Statusanzeige2_Led_02 regList
2021.03.14 17:03:31.037 4: CUL_HM get Statusanzeige2_Led_03 regList
2021.03.14 17:03:31.038 4: CUL_HM get Statusanzeige2_Led_04 regList
2021.03.14 17:03:31.039 4: CUL_HM get Statusanzeige2_Led_05 regList
2021.03.14 17:03:31.040 4: CUL_HM get Statusanzeige2_Led_06 regList
2021.03.14 17:03:31.040 4: CUL_HM get Statusanzeige2_Led_07 regList
2021.03.14 17:03:31.041 4: CUL_HM get Statusanzeige2_Led_08 regList
2021.03.14 17:03:31.042 4: CUL_HM get Statusanzeige2_Led_09 regList
2021.03.14 17:03:31.043 4: CUL_HM get Statusanzeige2_Led_10 regList
2021.03.14 17:03:31.044 4: CUL_HM get Statusanzeige2_Led_11 regList
2021.03.14 17:03:31.045 4: CUL_HM get Statusanzeige2_Led_12 regList
2021.03.14 17:03:31.046 4: CUL_HM get Statusanzeige2_Led_13 regList
2021.03.14 17:03:31.046 4: CUL_HM get Statusanzeige2_Led_14 regList
2021.03.14 17:03:31.047 4: CUL_HM get Statusanzeige2_Led_15 regList
2021.03.14 17:03:31.048 4: CUL_HM get Statusanzeige2_Led_16 regList
2021.03.14 17:03:31.182 5: HMinfo hminfo finish blocking
2021.03.14 17:03:31.301 5: CUL_HM set Statusanzeige2 ?
2021.03.14 17:03:31.304 5: End notify loop for Statusanzeige2
2021.03.14 17:03:31.414 5: End notify loop for Statusanzeige2_Led_01
2021.03.14 17:03:31.525 5: End notify loop for Statusanzeige2_Led_02
2021.03.14 17:03:31.636 5: End notify loop for Statusanzeige2_Led_03
2021.03.14 17:03:31.747 5: End notify loop for Statusanzeige2_Led_04
2021.03.14 17:03:31.858 5: End notify loop for Statusanzeige2_Led_05
2021.03.14 17:03:31.994 5: End notify loop for Statusanzeige2_Led_06
2021.03.14 17:03:32.104 5: End notify loop for Statusanzeige2_Led_07
2021.03.14 17:03:32.216 5: End notify loop for Statusanzeige2_Led_08
2021.03.14 17:03:32.327 5: End notify loop for Statusanzeige2_Led_09
2021.03.14 17:03:32.438 5: End notify loop for Statusanzeige2_Led_10
2021.03.14 17:03:32.549 5: End notify loop for Statusanzeige2_Led_11
2021.03.14 17:03:32.660 5: End notify loop for Statusanzeige2_Led_12
2021.03.14 17:03:32.771 5: End notify loop for Statusanzeige2_Led_13
2021.03.14 17:03:32.883 5: End notify loop for Statusanzeige2_Led_14
2021.03.14 17:03:32.996 5: End notify loop for Statusanzeige2_Led_15
2021.03.14 17:03:33.129 5: End notify loop for Statusanzeige2_Led_16
2021.03.14 17:03:33.132 5: HMLAN/RAW: /E68740E,0000,00462398,FF,FFC9,EF865A68740E00000098B73F
2021.03.14 17:03:33.132 5: HMLAN_Parse: HMLAN1 R:E68740E stat:0000 t:00462398 d:FF r:FFC9 m:EF 865A 68740E 000000 98B73F
2021.03.14 17:03:33.151 5: HMLAN/RAW: /E4B44C7,0000,008B0FD3,FF,FFB8,AD86534B44C7000000004100DA4200DC43FFFE440002
E68740E,0000,008B1047,FF,FFB7,EF865A68740E00000098B73F
2021.03.14 17:03:33.152 5: HMLAN_Parse: HMLAN2 R:E4B44C7 stat:0000 t:008B0FD3 d:FF r:FFB8 m:AD 8653 4B44C7 000000 004100DA4200DC43FFFE440002
2021.03.14 17:03:33.154 4: CUL_HM DiffTempSensor2 dupe: dont process
2021.03.14 17:03:33.159 5: HMLAN_Parse: HMLAN2 R:E68740E stat:0000 t:008B1047 d:FF r:FFB7 m:EF 865A 68740E 000000 98B73F
2021.03.14 17:03:33.161 4: CUL_HM bd_Wandthermostat dupe: dont process
DOIF fl_brightness_stat2: (# Helligkeit der LED16-Statusanzeige tagsüber in 4 Stufen anpassen und Nachts reduzieren.)
defmod fl_brightness_stat2 DOIF ([?05:00-22:27] and [Bewegungsmelder4:state] eq "motion" and [Bewegungsmelder4:brightness] < 70) (set Statusanzeige2 ilum 1 0) DOELSEIF ([?05:00-22:27] and [Bewegungsmelder4:state] eq "motion" and [Bewegungsmelder4:brightness] < 140) (set Statusanzeige2 ilum 3 0) DOELSEIF ([?05:00-22:27] and [Bewegungsmelder4:state] eq "motion" and [Bewegungsmelder4:brightness] < 210) (set Statusanzeige2 ilum 5 0) DOELSEIF ([?05:00-22:27] and [Bewegungsmelder4:state] eq "motion" and [Bewegungsmelder4:brightness] < 280) (set Statusanzeige2 ilum 7 0) DOELSEIF ([22:30]) (set Statusanzeige2 ilum 0 0)
attr fl_brightness_stat2 icon day_night
attr fl_brightness_stat2 room Flur
attr fl_brightness_stat2 wait 1:1:1:1:10
setstate fl_brightness_stat2 cmd_1
setstate fl_brightness_stat2 2021-03-14 17:12:35 Device Bewegungsmelder4
setstate fl_brightness_stat2 2021-03-14 15:14:47 cmd 1
setstate fl_brightness_stat2 2021-03-14 15:14:47 cmd_event Bewegungsmelder4
setstate fl_brightness_stat2 2021-03-14 15:14:47 cmd_nr 1
setstate fl_brightness_stat2 2021-03-14 17:12:35 e_Bewegungsmelder4_brightness 37
setstate fl_brightness_stat2 2021-03-14 15:19:35 e_Bewegungsmelder4_state noMotion
setstate fl_brightness_stat2 2021-03-14 15:13:55 mode enabled
setstate fl_brightness_stat2 2021-03-14 15:14:47 state cmd_1
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_01_c01 15.03.2021 05:00:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_02_c01 14.03.2021 22:27:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_03_c02 15.03.2021 05:00:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_04_c02 14.03.2021 22:27:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_05_c03 15.03.2021 05:00:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_06_c03 14.03.2021 22:27:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_07_c04 15.03.2021 05:00:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_08_c04 14.03.2021 22:27:00
setstate fl_brightness_stat2 2021-03-14 15:49:29 timer_09_c05 14.03.2021 22:30:00
genau, identisch.
ich denke freezemon hat probleme, wenn forks im spiel sind.
oder hast du ein problem mit blockierendem fhem bemerkt?
Nein, mir ist keine Blockierung aufgefallen.
Ich sehe halt immer die Freezes, wenn perfmon aktiv ist. Da sind es dann immer 2 bis 3 Sekunden.
Ist es eigentlich normal, das die Readings im Device mit R- beginnen?
In anderen Devices, z.B. Bewegungsmelder, werden die Readings ohne R- dargestellt.
PairedTo 0x125B7F 2021-03-14 17:30:14
R-brightness set_0 2021-03-14 22:30:00
R-energyOpt permanent 2021-03-14 15:49:31
R-intKeyVisib invisib 2021-03-14 15:49:31
R-localResDis off 2021-03-14 15:49:31
R-pairCentral 0x125B7F 2021-03-14 15:49:31
RegL_00. 02:01 04:02 08:00 0A:12 0B:5B 0C:7F 18:00 2021-03-14 17:30:14
Vielleicht ein Hinweis auf fehlerhafte Register?
Leider hat sich noch keiner gemeldet, der auch Probleme mit dem HM-OU-LED16 hat.
Interessant wäre ein List des Devices zum Vergleich.
ZitatIst es eigentlich normal, das die Readings im Device mit R- beginnen?
ja, überall in cul_hm.
übrigens:
10 x register ändern am tag => ca 3500 im jahr.
10 jahre => 35000.
das eeprom ist hoffentlich für 100000 schreibvorgänge geeignet.
den finde ich auch nicht schlecht. ;)
Zitat von: rudolfkoenig am 07 Januar 2020, 16:23:08
Hast du Probleme beobachtet, oder laeuft Freezemon nur aus Vorsicht mit?
Falls Letzteres, dann wuerde ich es abschalten, und sowohl Dir, als auch FHEM Kopfschmerzen erpsaren :)
Ok, vielleicht sollte ich das mit der Helligkeitsanpassung lassen.
Ich dachte bisher, Register könnte ich nur mit regSet ändern.
Die Statusanzeige LED16 läuft schon seit 2014. Vielleicht ist der eeprom ja schon verschlissen.
nochmals Danke für deine Hilfe
ZitatVielleicht ist der eeprom ja schon verschlissen.
ich denke du hast gar kein wirkliches problem.
ich vermute jetzt mal, du meinst, dass das "rote" zahnrad (incomplete registerlist) in hm.js ein problem sei.
1. ein "reibungsloser" ablauf wäre: ilum => getconfig => configcheck => ok.
2. ohne getconfig sieht es so aus: ilum => configcheck => PeerIncom.
ich habe mal ein paar versuche mit regSet (vergleichbar zu ilum) bei einem aktor gestartet:
a) autoreadreg=0_off:
set ilum scheduled automatisch einen configcheck, ca 30 s später.
das zahnrad, zunächst grün wird nach 30 s immer rot, da die registeränderung nicht verifiziert wurde. also alles gut und normal.
ein manuelles getconfig ändert das zahnrad sofort auf gelb (cfgState updating) und nach erfolgreicher kommunikation umgehend auf grün (cfgState ok). hier gibt es also keinen 30 s timer.
b) autoreadreg=5_missing
set ilum startet nach kurzer zeit automatisch ein getconfig, welches wiederum bereits den configcheck in die "queue" gibt (cfgState updating). anschliessend wird umgehend der configcheck ausgeführt und das zahnrad wird grün (ok).
der ganze vorgang dauert knapp 10 sek, das getconfig wird etwa 2-4 sek nach dem set ilum ausgelöst.
unklar bleibt, wie der ablauf ist, wenn das automatische getconfig scheitert oder verschoben werden muss, weil zb das zugeordnete io momentan zu wenig credits hat. standardmässig werden bei etwa 40% load automatische getconfig/statusrequest verschoben. im ungünstigsten fall kommen sie also gar nicht.
bei batteriesensoren, die manuell geweckt werden müssen, bleibt das zahnrad dauerhaft auf gelb (cfgState updating) bis das device endlich geweckt wird.
ich würde an deiner stelle erst einmal autoreadreg=5 setzen
und auch die events des readings commState anschalten. ohne commState events kannst du das "led-icon" in hm.js gar nicht "flackern" sehen, wodurch die kommunikation mit dem device sichtbar wird.
wenn überhaupt ist dein problem wahrscheinlich eher, eine zeitnahe ausführung der automatischen getconfig.
vermutlich ist dir vor der einführung von cfgState/hm.js gar nicht aufgefallen, dass das register länger auf "set_..."
stand.
zeig mal ein "get hminfo protoEvents", wenn die automatischen getconfig nicht umgehend kommen.
Ein Problem würde ich es auch nicht nennen. Es macht halt fhem etwas langsamer und damit auch die Reaktionsgeschwindigkeit auf andere Kommandos.
Ein getConfig bei diesem Device dauert ca. 30 Sekunden, weshalb ich autoReadReg=0_off eingestellt hatte.
Dabei hatte ich jedoch auch getConfig mit configcheck verwechselt.
Nachdem ich jetzt autoReadReg=5_readMissing und commState ins event-on-change-reading hineingenommen habe, ändert sich nichts am Verhalten.
30 Sek. nach dem Kommando wird configCheck ausgelöst, das Reading R-brightness bleibt auf set_3 und cfgState bleibt auf RegIncom.
Es wird kein getConfig ausgelöst.
Ein später ausgelöstes, manuelles getConfig (siehe List ganz unten) dauert dann 26 Sekunden, danach kommt configCheck und danach ist das Zahnrad grün.
fhem Log:
2021.03.15 11:30:28 3: CUL_HM set Statusanzeige2 ilum 3 0
2021.03.15 11:30:58 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.15 11:31:18 2: HMinfo hminfo get:protoEvents :
protoEvents:
protoEvents send to devices done:
name :State |CmdPend |Snd |SndB |Rcv |RcvB |Resnd #CmdDel |ResndFail |Nack |IOerr
Bewegungsmelder1 : done | - | 23 | - | 23 | - | - # - | - | - | -
Bewegungsmelder2 : done | - | 235 | - | 229 | - | - # - | - | - | -
Bewegungsmelder3 : done | - | 545 | - | 765 | - | - # - | - | - | -
Bewegungsmelder4 : done | - | 236 | - | 374 | - | - # - | - | - | -
Bewegungsmelder5 : done | - | 234 | - | 273 | - | - # - | - | - | -
Bewegungsmelder7 : done | - | 211 | - | 209 | - | - # - | - | - | -
Bewegungsmelder8 : done | - | 239 | - | 265 | - | - # - | - | - | -
DiffTempSensor1 : - | - | - | - | 456 | - | - # - | - | - | -
DiffTempSensor2 : - | - | - | - | 459 | - | - # - | - | - | -
DiffTempSensor3 : - | - | - | - | 457 | - | - # - | - | - | -
DiffTempSensor4 : - | - | - | - | 461 | - | - # - | - | - | -
Displaytaster1 : - | - | - | - | - | - | - # - | - | - | -
Displaytaster2 : - | - | - | - | - | - | - # - | - | - | -
Doorbellsensor1 : - | - | - | - | - | - | - # - | - | - | -
Doorbellsensor2 : - | - | - | - | - | - | - # - | - | - | -
Doorbellsensor3 : - | - | - | - | - | - | - # - | - | - | -
Fernbedienung1 : - | - | - | - | - | - | - # - | - | - | -
Funksteckdose1 : done | - | 6 | - | 466 | - | - # - | - | - | -
Funksteckdose10 : done | - | 6 | - | 468 | - | - # - | - | - | -
Funksteckdose11 : - | - | - | - | - | - | - # - | - | - | -
Funksteckdose2 : done | - | 266 | - | 728 | - | - # - | - | - | -
Funksteckdose3 : - | - | - | - | 459 | - | - # - | - | - | -
Funksteckdose4 : done | - | 634 | - | 1094 | - | - # - | - | - | -
Funksteckdose5 : - | - | - | - | 460 | - | - # - | - | - | -
Funksteckdose6 : done | - | 3 | - | 3 | - | - # - | - | - | -
Funksteckdose7 : done | - | 17 | - | 17 | - | - # - | - | - | -
Funksteckdose8 : - | - | - | - | - | - | - # - | - | - | -
Funksteckdose9 : - | - | - | - | - | - | - # - | - | - | -
Garagentor : - | - | - | - | - | - | - # - | - | - | -
HM_573CAB : - | - | - | - | - | - | - # - | - | - | -
Handsender_Leoni_1 : - | - | - | - | - | - | - # - | - | - | -
Handsender_Leoni_2 : - | - | - | - | - | - | - # - | - | - | -
Handsender_Leoni_3 : - | - | - | - | 4 | 2 | - # - | - | - | -
Handsender_Manu_2 : - | - | - | - | - | - | - # - | - | - | -
Handsender_Uli_1 : - | - | - | - | - | - | - # - | - | - | -
Handsender_Uli_3 : - | - | - | - | 2 | 1 | - # - | - | - | -
Rauchmelder.BueroManu : - | - | - | - | - | - | - # - | - | - | -
Rauchmelder.BueroUli : - | - | - | - | - | - | - # - | - | - | -
Rauchmelder.Heizungsraum : - | - | - | - | - | - | - # - | - | - | -
Rauchmelder.Hobbyraum : - | - | - | - | - | - | - # - | - | - | -
Rauchmelder.Kellertreppe : - | - | - | - | - | - | - # - | - | - | -
Rauchmelder.Kinderzimmer : - | - | - | - | - | - | - # - | - | - | -
Rauchmelder.Kueche : - | - | - | - | - | - | - # - | - | - | -
Rauchmelder.Schlafzimmer : done | - | 1 | - | 1 | - | - # - | - | - | -
Rauchmelder.Wohnzimmer : - | - | - | - | - | - | - # - | - | - | -
Statusanzeige1 : done | - | 7 | 6 | 5 | - | 1 # 1 | 1 | - | -
Statusanzeige2 : done | - | 202 | - | 168 | - | 11 # - | - | - | -
Statusanzeige3 : - | - | - | - | - | - | - # - | - | - | -
Statusanzeige4 : done | - | 6 | 5 | 6 | - | - # - | - | - | -
bd_Kippfenster : done | - | 3 | - | 10 | - | - # - | - | - | -
bd_Thermostat : done | - | 21 | 4 | 67 | - | 1 # - | - | - | -
bd_Wandthermostat : pending | 1 pending| 19 | 10 | 1018 | - | 2 # - | - | - | -
bm_Fensterkontakt1 : done | - | 3 | - | 6 | 3 | - # - | - | - | -
bm_Rollladen : done | - | 10 | - | 9 | - | - # - | - | - | -
bm_Thermostat : done | - | 1 | - | 47 | - | - # - | - | - | -
bu_BueroDeckenleuchte : done | - | 2 | - | 5 | - | - # - | - | - | -
bu_DualWhiteLED1 : - | - | - | - | - | - | - # - | - | - | -
bu_Fensterkontakt : - | - | - | - | - | - | - # - | - | - | -
bu_Rollladen : done | - | 8 | - | 7 | - | - # - | - | - | -
bu_Thermostat : done | - | 7 | 2 | 51 | - | - # - | - | - | -
bu_WOFI1 : - | - | - | - | - | - | - # - | - | - | -
bu_hmlcsw1pcb : - | - | - | - | - | - | - # - | - | - | -
du_Kippfenster : done | - | 9 | - | 24 | - | - # - | - | - | -
du_Thermostat : done | - | 46 | 10 | 94 | - | 1 # - | - | - | -
du_Wandthermostat : pending | 1 pending| 43 | 24 | 1039 | - | 4 # - | - | - | -
eg_Briefkasten1 : done | - | 61 | - | 61 | - | - # - | - | - | -
eg_Eingangstoerchen : done | - | 3 | - | 6 | - | - # - | - | - | -
fa_Fensterkontakt : done | - | 1 | - | 1 | - | - # - | - | - | -
ga_Deckenleuchte : done | - | 16 | - | 16 | - | - # - | - | - | -
ga_Fensterkontakt : done | - | 41 | - | 41 | - | - # - | - | - | -
ga_Thermostat : done | - | 5 | 2 | 49 | - | - # - | - | - | -
ga_Tuerschloss : done | - | 6 | 2 | 13 | - | - # - | - | - | -
garage_torkontakt : done | - | 1 | - | 1 | - | - # - | - | - | -
ke_EgTor_KtSchloss_HtKlingel : done | - | 10 | - | 10 | - | - # - | - | - | -
ke_Fensterkontakt1 : done | - | 1 | - | 1 | - | - # - | - | - | -
ke_Fensterkontakt2 : done | - | 1 | - | 1 | - | - # - | - | - | -
ke_Fensterkontakt3 : done | - | 1 | - | 1 | - | - # - | - | - | -
ke_Fensterkontakt4 : done | - | 1 | - | 1 | - | - # - | - | - | -
ke_Wassermelder1 : done | - | 1 | - | 1 | - | - # - | - | - | -
ke_powerMeter1 : done | - | 239 | - | 695 | - | - # - | - | - | -
kz_Deckenleuchte : done | - | 20 | - | 20 | - | - # - | - | - | -
kz_Fensterkontakt : done | - | 8 | - | 18 | 10 | - # - | - | - | -
kz_Rollladen : done | - | 5 | - | 5 | - | - # - | - | - | -
kz_Thermostat : done | - | 5 | 2 | 57 | - | - # - | - | - | -
kz_Wandtaster3 : done | - | 5 | - | 7 | - | - # - | - | - | -
sz_Deckenleuchte : done | - | 5 | - | 5 | - | - # - | - | - | -
sz_Deckenleuchte_Schalter : - | - | - | - | - | - | - # - | - | - | -
sz_Fensterkontakt : done | - | 14 | - | 28 | 14 | - # - | - | - | -
sz_Rollladen : done | - | 10 | - | 10 | - | - # - | - | - | -
sz_Thermostat : done | - | 1 | - | 53 | - | - # - | - | - | -
te_Fensterkontakt : done | - | 22 | - | 22 | - | - # - | - | - | -
te_LEDStrahler1 : - | - | - | - | - | - | - # - | - | - | -
te_Markise : - | - | - | - | - | - | - # - | - | - | -
te_Schildkroetenhaus : done | - | 53 | - | 54 | - | - # - | - | - | -
te_Signalgeber_Akustisch : - | - | - | - | - | - | - # - | - | - | -
te_Signalgeber_Optisch : - | - | - | - | - | - | - # - | - | - | -
te_Steckdose1 : done | - | 1 | - | 2 | - | - # - | - | - | -
te_Wandtaster5 : - | - | - | - | - | - | - # - | - | - | -
vCCU : - | - | - | - | 5535 | 77 | - # - | - | - | -
wc_Kippfenster : done | - | 3 | - | 10 | - | - # - | - | - | -
wc_Thermostat : done | - | 9 | 4 | 470 | - | - # - | - | - | -
wz_EsszDeckenleuchte : done | - | 3 | - | 6 | - | - # - | - | - | -
wz_EsszSchr_KuecheDe_Serientaster : - | - | - | - | - | - | - # - | - | - | -
wz_Fensterkontakt1 : done | - | 8 | - | 8 | - | - # - | - | - | -
wz_Fensterkontakt2 : done | - | 14 | - | 14 | - | - # - | - | - | -
wz_Fensterkontakt3 : done | - | 1 | - | 1 | - | - # - | - | - | -
wz_Fensterkontakt4 : done | - | 25 | - | 25 | - | - # - | - | - | -
wz_Fensterkontakt5 : done | - | 21 | - | 21 | - | - # - | - | - | -
wz_KuecheDeckenleuchte : done | - | 15 | - | 29 | - | - # - | - | - | -
wz_Rollladen1 : done | - | 4 | - | 4 | - | - # - | - | - | -
wz_Rollladen2 : done | - | 6 | - | 5 | - | - # - | - | - | -
wz_Rollladen3 : done | - | 4 | - | 4 | - | - # - | - | - | -
wz_Rollladen4 : done | - | 1 | 1 | 2 | - | - # - | - | - | -
wz_Rollladen_Serientaster : - | - | - | - | - | - | - # - | - | - | -
wz_SpotsSofaTV : done | - | 9 | - | 9 | - | - # - | - | - | -
wz_SpotsTerrTuerKamin : done | - | 12 | - | 12 | - | - # - | - | - | -
wz_Thermostat1 : done | - | 9 | - | 57 | - | - # - | - | - | -
wz_Thermostat2 : done | - | 9 | 4 | 53 | - | - # - | - | - | -
wz_Thermostat3 : pending | 1 pending| 9 | - | 58 | - | 1 # - | - | - | -
wz_Wandtaster1 : - | - | - | - | 14 | - | - # - | - | - | -
wz_Wandtaster2 : done | - | 7 | - | 9 | - | - # - | - | - | -
wz_Wandtaster4 : - | - | - | - | - | - | - # - | - | - | -
wz_Wassermelder1 : done | - | 1 | - | 1 | - | - # - | - | - | -
wz_WohnzDeckenleuchte : done | - | 2 | - | 2 | - | - # - | - | - | -
=================================================================================================================================================================
sum 0 |3 |3752 |76 |17757 |107 |21 #1 |1 |0 |0
CUL_HM queue length:0
requests pending
----------------
autoReadReg :
recent : none
status request :
autoReadReg wakeup :
status request wakeup:
autoReadTest :
IODevs:HMLAN1:opened pending=0 condition:ok
msgLoadCurrent: 5
HMLAN2:opened pending=0 condition:ok
msgLoadCurrent: 25
fhem Log:
2021.03.15 11:38:00 3: CUL_HM set Statusanzeige2 getConfig noArg
2021.03.15 11:38:26 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
ok, das ist natürlich ziehmlich lange.
dann versuch mal folgendes:
1. attr autoReadReg 0_off
2. set ilum ...
3. etwas warten
4. set getRegRaw List0
mit 4. wird nur die liste der geänderten register aus dem hauptdevice gelesen.
Nach set Statusanzeige2 getRegRaw List0 wird das Zahnrad sofort grün und das Reading R-brightness wechselt von set_4 auf 4.
2021.03.15 14:23:00 3: CUL_HM set Statusanzeige2 ilum 4 0
2021.03.15 14:23:30 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.15 14:23:59 3: CUL_HM set Statusanzeige2 getRegRaw List0
2021.03.15 14:24:00 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
Seltsam, dass get:configCheck danach trotzdem die gleiche Fehlermeldung macht...
prima, genau wie mein testgerät.
das getregraw könntest du jetzt in dein doif einbauen, so dass es zb immer 15 sek nach illum gesendet wird.
dann könnte ilum ggf bei problemen wiederholt werden, bevor getregraw gesendet wird. wenn getregraw ebenfalls erfolgreich war, bevor der automatische configcheck startet, sollte erst gar kein rotes zahnrad auftauchen.
eventuell noch ein notify auf das reading cfgState, falls es doch mal PeerIncom anzeigt, um ein extra getregraw zu senden.
edit:
ZitatSeltsam, dass get:configCheck danach trotzdem die gleiche Fehlermeldung macht...
wonach?
Nach dem erfolgreichen getRegRaw List0 um 2021.03.15 14:23:59
Zitat von: uge am 15 März 2021, 14:49:46
Nach dem erfolgreichen getRegRaw List0 um 2021.03.15 14:23:59
du verwirrst mich jetzt!
du sagtest doch:
ZitatNach set Statusanzeige2 getRegRaw List0 wird das Zahnrad sofort grün und das Reading R-brightness wechselt von set_4 auf 4.
und dann danach wieder rot?
also rot -> grün -> rot?
wenn ja dann zeig noch mal ein aktuelles list und ein "get deviceInfo".
Nein, es bleibt auf grün.
Nach dem getRegRaw List0 um 14:23:59 wird das Zahnrad sofort grün.
Danach, um 14:24:00 wird trotzdem ein configCheck abgesetzt. Eigentlich wäre doch bei grünem Zahnrad kein configCheck mehr erforderlich.
Ich habe es mal so ins DOIF eingebaut. (getRegRaw 15 sek. nach ilum)
Das Zahnrad ist zwar grün, aber ich habe natürlich jetzt zwei mal get:configCheck mit jeweils 2 Sekunden Bearbeitungszeit.
2021.03.15 14:55:08 3: CUL_HM set Statusanzeige2 ilum 3 0
2021.03.15 14:55:08 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
2021.03.15 14:55:25 3: CUL_HM set Statusanzeige2 getRegRaw List0
2021.03.15 14:55:25 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
Nur eine Idee:
Kann es denn noch sein, dass das ilum-Kommando aus CUL_HM fälschlicherweise ein Register ändert?
Die anderen Kommandos, z.B. "set Statusanzeige2_Led_01 LED green" führen ja nur normale Funktionen aus.
aktuelles list Statusanzeige2:
Internals:
DEF 20F83F
FUUID 604b5e18-f33f-f7b5-0825-878bb1e110b84676
HMLAN1_MSGCNT 348
HMLAN1_RAWMSG E20F83F,0000,045765E6,FF,FFD2,02840020F83F00000011006D4B45513031323337343812100000
HMLAN1_RSSI -46
HMLAN1_TIME 2021-03-15 15:06:32
HMLAN2_MSGCNT 518
HMLAN2_RAWMSG E20F83F,0000,05466E93,FF,FFD0,02840020F83F00000011006D4B45513031323337343812100000
HMLAN2_RSSI -48
HMLAN2_TIME 2021-03-15 15:06:31
IODev HMLAN2
LASTInputDev HMLAN1
MSGCNT 866
NAME Statusanzeige2
NOTIFYDEV global
NR 1252
NTFY_ORDER 50-Statusanzeige2
STATE CMDs_done
TYPE CUL_HM
channel_01 Statusanzeige2_Led_01
channel_02 Statusanzeige2_Led_02
channel_03 Statusanzeige2_Led_03
channel_04 Statusanzeige2_Led_04
channel_05 Statusanzeige2_Led_05
channel_06 Statusanzeige2_Led_06
channel_07 Statusanzeige2_Led_07
channel_08 Statusanzeige2_Led_08
channel_09 Statusanzeige2_Led_09
channel_0A Statusanzeige2_Led_10
channel_0B Statusanzeige2_Led_11
channel_0C Statusanzeige2_Led_12
channel_0D Statusanzeige2_Led_13
channel_0E Statusanzeige2_Led_14
channel_0F Statusanzeige2_Led_15
channel_10 Statusanzeige2_Led_16
lastMsg No:02 - t:00 s:20F83F d:000000 11006D4B45513031323337343812100000
protLastRcv 2021-03-15 15:06:31
protRcv 61 last_at:2021-03-15 15:06:31
protSnd 103 last_at:2021-03-15 15:06:28
protState CMDs_done
rssi_HMLAN2 cnt:119 min:-74 max:-69 avg:-72.05 lst:-72
rssi_at_HMLAN1 cnt:348 min:-48 max:-46 avg:-47.34 lst:-46
rssi_at_HMLAN2 cnt:518 min:-50 max:-47 avg:-48.49 lst:-48
READINGS:
2021-03-14 15:57:36 Activity alive
2021-03-15 14:31:27 CommandAccepted yes
1900-01-01 00:00:01 D-firmware 1.1
1900-01-01 00:00:01 D-serialNr KEQ0123748
2021-03-15 14:55:26 PairedTo 0x125B7F
2021-03-15 14:34:30 R-brightness 3
2021-03-14 15:49:31 R-energyOpt permanent
2021-03-14 15:49:31 R-intKeyVisib invisib
2021-03-14 15:49:31 R-localResDis off
2021-03-14 15:49:31 R-pairCentral 0x125B7F
2021-03-15 14:55:25 RegL_00. 00:00 02:01 04:03 08:00 0A:12 0B:5B 0C:7F 18:00
2021-03-15 14:55:26 cfgState ok
2021-03-15 14:44:59 color AAAAAAAA
2021-03-15 15:06:28 commState CMDs_done
2021-03-13 17:31:47 powerOn 2021-03-13 17:31:47
2021-03-13 18:17:02 recentStateType ack
2021-03-13 18:17:02 rssi_HMLAN1 -72
2021-03-13 18:25:21 rssi_at_HMLAN1 -46
2021-03-13 18:25:22 rssi_at_HMLAN2 -49
2021-03-15 15:06:28 state CMDs_done
2021-03-13 18:17:02 trigLast fhem:81
helper:
HM_CMDNR 41
PONtest 1
cSnd 11125B7F20F83F800A02,01125B7F20F83F00040000000000
mId 006D
peerFriend
peerOpt -:outputUnit
regLst 0
rxType 1
supp_Pair_Rep 1
tmplChg 0
ack:
cmds:
TmplKey :1615733370.59545:1615816915.83955
TmplTs 1615816915.83955
cmdKey 0:1:0::Statusanzeige2:006D:01:
cmdLst:
assignHmKey noArg
clear [(readings|trigger|register|oldRegs|rssi|msgEvents|{msgErrors}|attack|all)]
deviceRename -newName-
fwUpdate -filename- [-bootTime-]
getConfig noArg
getDevInfo noArg
getRegRaw (List0|List1|List2|List3|List4|List5|List6|List7) [-peerChn-]
ilum (0..15;1) (0..127;1)
led (off|red|green|orange)
raw -data- [...]
regBulk -list-.-peerChn- -addr1:data1- -addr2:data2-...
regSet [(prep|{exec})] -regName- -value- [-peerChn-]
reset noArg
statusRequest noArg
tplDel -tplDel-
tplSet_0 -tplChan-
unpair noArg
lst:
condition slider,0,1,255
peer
peerOpt
tplChan
tplDel
tplPeer
rtrvLst:
cmdList [({short}|long)]
deviceInfo [({short}|long)]
list [({normal}|full)]
param -param-
reg -addr- -list- [-peerChn-]
regList noArg
regTable noArg
regVal -addr- -list- [-peerChn-]
saveConfig [-filename-]
tplInfo noArg
expert:
def 1
det 1
raw 1
tpl 0
io:
newChn +20F83F,00,01,00
nextSend 1615816525.92019
rxt 0
vccu vCCU
p:
20F83F
00
01
00
prefIO:
HMLAN2
mRssi:
mNo 02
io:
HMLAN1:
-46
-46
HMLAN2:
-40
-40
peerIDsH:
prt:
bErr 0
sProc 0
rspWait:
q:
qReqConf
qReqStat
regCollect:
role:
dev 1
rssi:
HMLAN2:
avg -72.0588235294118
cnt 119
lst -72
max -69
min -74
at_HMLAN1:
avg -47.3448275862069
cnt 348
lst -46
max -46
min -48
at_HMLAN2:
avg -48.4980694980695
cnt 518
lst -48
max -47
min -50
shadowReg:
tmpl:
Attributes:
IODev HMLAN2
IOgrp vCCU:HMLAN2
actCycle 024:10
actStatus alive
autoReadReg 0_off
event-on-change-reading rssi_.*,state,cfgState,powerOn,commState,R-brightness
expert defReg,allReg,rawReg
firmware 1.1
icon hm-dis-wm55
model HM-OU-LED16
room Flur
serialNr KEQ0123748
subType outputUnit
webCmd ilum 0 0:ilum 8 0:ilum 15 0
get Statusanzeige2 deviceInfo:
Device name:Statusanzeige2
mId :006D Model=HM-OU-LED16
mode :normal - activity:alive
protState : CMDs_done pending: none
configuration check: ok
"set ilum 3 0" setzt 2 register: brightness und energyOpt
ZitatRegL_00. 00:00 02:01 04:03 08:00 0A:12 0B:5B 0C:7F 18:00
mein aktor macht mit autoreadreg=0 und regset folgendes:
2021.03.15 15:38:34.208 3 : CUL_HM set SwitchES01 regSet exec localResDis off
2021.03.15 15:38:53.522 3 : CUL_HM set SwitchES01 getRegRaw List0
2021.03.15 15:38:53.777 2 : HMinfo hminfo get:configCheck :-f,^(SwitchES01|SwitchES01_Pwr|SwitchES01_SenF|SwitchES01_SenI|SwitchES01_SenPwr|SwitchES01_SenU|SwitchES01_Sw|SwitchES01)$
das sieht doch perfekt aus. vorher grün, nachher grün, immer grün. 8)
deine blink-orgie mit 2 configchecks verstehe ich nicht.
schmeiss doch mal dein ilum raus und sende dafür ein regset mit brightness.
Zitatdeine blink-orgie mit 2 configchecks verstehe ich nicht.
ist dein fhem eventuell nicht up-to-date?
Also wird bei dir nach dem set SwitchES01 getRegRaw List0 auch der configCheck ausgelöst, obwohl vorher schon grün war.
fhem ist aktuell vom 14.03.
Die blink-orgie ist keine:
1. Kommando: set Statusanzeige2 ilum -> Zahnrad rot -> get:configCheck -> Zahnrad rot
2. Kommando: set Statusanzeige2 getRegRaw List0 -> Zahnrad grün -> get:configCheck -> Zahnrad grün
set Statusanzeige2 regSet brightness 4 funktioniert auch. Ohne anschließendes getRegRaw bleibt's aber auch rot.
2021.03.15 15:51:46 3: CUL_HM set Statusanzeige2 regSet exec brightness 4
2021.03.15 15:52:16 2: HMinfo hminfo get:configCheck :-f,^(Statusanzeige2|Statusanzeige2_Led_01|Statusanzeige2_Led_02|Statusanzeige2_Led_03|Statusanzeige2_Led_04|Statusanzeige2_Led_05|Statusanzeige2_Led_06|Statusanzeige2_Led_07|Statusanzeige2_Led_08|Statusanzeige2_Led_09|Statusanzeige2_Led_10|Statusanzeige2_Led_11|Statusanzeige2_Led_12|Statusanzeige2_Led_13|Statusanzeige2_Led_14|Statusanzeige2_Led_15|Statusanzeige2_Led_16|Statusanzeige2)$
Dank deiner Idee mit getRegRaw braucht es kein getConfig um grün zu werden. Das spart 30 Sekunden Verzögerung.
Also ändere ich mein DOIF in ein set regSet brightness mit anschließendem getRegRaw, habe dadurch zwei mal den configCheck aber alles ist grün. :)
Besser geht's halt nicht. Danke nochmal.
ZitatAlso wird bei dir nach dem set SwitchES01 getRegRaw List0 auch der configCheck ausgelöst, obwohl vorher schon grün war.
mir scheint du hast immer noch verständnisprobleme.
das "zahnrad-icon" symbolisiert den inhalt des readings
cfgState.
cfgState wird nur durch
hminfo configCheck verändert und zeigt fehler des checks für die entsprechende entity an. somit wird immer das ergebnis des
letzten configchecks angezeigt.
eine ausnahme ist cfgState=updating, was erst auf einen kommenden configCheck hindeutet, ihn aber noch nicht startet. die erfahrung zeigt, dass ein ewig andauerndes "updating" auf ein fehlendes getConfig wartet.
damit cfgState (status des letzten configCheck) immer den aktuellen status anzeigt, muss natürlich auch automatisch ein configCheck gestartet werden, wenn eine aktion einfluss auf den status hat. da ein configCheck das system belastet, wird er
so oft wie nötig, aber so wenig wie möglich eingesetzt.
das ist sicherlich nicht so ganz einfach umzusetzen und bedarf eventuell noch etwas fine tuning an einigen stellen.
jeder zugriff auf die register, egal ob lesend oder schreibend, triggert grundsätzlich einen configCheck.
nun liegt es scheinbar an den umständen, ob bei einer kombination von regSet und anschliessendem getConfig/getRegRaw ein configCheck eingespart wird. und natürlich höchstens den ersten vom regSet, damit cfgState auch weiterhin die realität wiederspiegelt.
das funktioniert bei mir auch vorzüglich und reproduzierbar, wenn das lesen rechtzeitig (innerhalb 30 sek) nach dem regSet erfolgt. auch unabhängig davon, ob das lesen automatisch oder manuell erfolgt.
2021.03.16 14:31:37.636 3 : CUL_HM set SwitchES01 regSet exec localResDis on
2021.03.16 14:31:41.710 3 : CUL_HM set SwitchES01 getConfig noArg
2021.03.16 14:32:02.705 2 : HMinfo hminfo get:configCheck :-f,^(SwitchES01|SwitchES01_Pwr|SwitchES01_SenF|SwitchES01_SenI|SwitchES01_SenPwr|SwitchES01_SenU|SwitchES01_Sw|SwitchES01)$
eventuell war gestern in deinem versuch noch ein configCheck in der pipeline, wodurch dann 2 ausgelöst wurden.
ZitatDank deiner Idee mit getRegRaw braucht es kein getConfig um grün zu werden. Das spart 30 Sekunden Verzögerung.
vor allem wird auch eine menge unnötigen traffics eingespart, was sich positiv auf die credits auswirkt.
vielleicht ist sogar der "fake" freeze geschichte?
Also hab' ich Ursache und Wirkung verwechselt.
Den "fake"-freeze :) , der bei mir 2 Sekunden Rechenzeit kostet, spare ich zwar nicht, aber gegenüber den 30 Sekunden eines getConfig + duty cycle credits ist das kein Problem.
Bei dem gestrigen configCheck-Versuch lagen mehr als 30 Sekunden zwischen den Kommandos ilum und getRegRaw.
In meinem DOIF habe ich die Kommandos jetzt in der Form (set Statusanzeige2 regSet brightness 1 , set Statusanzeige2 getRegRaw List0) direkt hintereinandergesetzt.
Damit kommt der configCheck auch bei mir nur einmal.
Grüße