HM-OU-LED16 Statusanzeige incomplete register list und autoReadReg 0_off

Begonnen von uge, 13 März 2021, 15:31:00

Vorheriges Thema - Nächstes Thema

uge

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
FHEM 6.2 auf Raspberry Pi3b (Buster), 2x HMLAN, JeeLink v3c, RaspBee II (deCONZ)

frank

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.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

frank

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.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

uge

@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
FHEM 6.2 auf Raspberry Pi3b (Buster), 2x HMLAN, JeeLink v3c, RaspBee II (deCONZ)

uge

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)
FHEM 6.2 auf Raspberry Pi3b (Buster), 2x HMLAN, JeeLink v3c, RaspBee II (deCONZ)

frank

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.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

uge

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



FHEM 6.2 auf Raspberry Pi3b (Buster), 2x HMLAN, JeeLink v3c, RaspBee II (deCONZ)

frank

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.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

uge

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


FHEM 6.2 auf Raspberry Pi3b (Buster), 2x HMLAN, JeeLink v3c, RaspBee II (deCONZ)

frank

genau, identisch.
ich denke freezemon hat probleme, wenn forks im spiel sind.

oder hast du ein problem mit blockierendem fhem bemerkt?
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

uge

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.

FHEM 6.2 auf Raspberry Pi3b (Buster), 2x HMLAN, JeeLink v3c, RaspBee II (deCONZ)

frank

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.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

frank

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 :)
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

uge

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
FHEM 6.2 auf Raspberry Pi3b (Buster), 2x HMLAN, JeeLink v3c, RaspBee II (deCONZ)

frank

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.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html