keine Rückmeldung über den Batteriestatus

Begonnen von CottonIJo, 04 September 2020, 17:30:46

Vorheriges Thema - Nächstes Thema

CottonIJo

Hallo,
von meinen homematic devices gibt es Module, die trotz gesetztem Register cyclicInfoMsg=on  keinen Status der Batterie senden. Typen sind HM-SEC-RHS und manchmal HM-SEC-SCO.
Betroffen sind auch HM-RC-4-3, HM-MOD-EM-8 (kein Register cyclicInfoMsg). Effekt ist dann, dass der letzte ermittelte Batteriestatus z. Bsp. "ok" solange im Reading "battery" stehen bleibt, bis eine mechanische Aktivierung erfolgt. Das Problem ist dabei, sollte die Batterie zwischen der letzten Aktivierung und der aktuellen Betätigung leer geworden sein, bekomme ich das erst mit, wenn ich das device betätige und die Status-Led oder das battery Reading beachte. Nur, Fenstergriffe und Fernbedienungen betätigen auch andere, ist halt blöd wenn der Rollladen nicht mehr runter geht. (Achtung, WAF Alarm  ;) )

Ich habe mir damit beholfen, dass ich für jedes Modul das sich so verhält den Zeitstempel der letzten Batterieprüfung erfasse und über ein AT ihn von der aktuellen Zeit subtrahiere, ist die Differenz > 1,5 Tage erscheint eine Meldung im FTUI.
Da ich das für jedes device individuell machen muss, heißt das, den gleichen Code mehrfach ablegen, nicht unbedingt elegant.
Jetzt wäre die Frage, gibt es andere Lösungen (die ich nicht kenne) die ein Gerät zwingend auffordern den Batteriestatus zu melden, unabhängig ob das device auf cyclicInfoMsg reagiert oder nicht?
Die Lösung dürfte sich sowieso nicht auf cyclicInfoMsg stützen, da wie beschrieben nicht mal alle devices dieses Register haben.

Grüße Joachim

Beispiele
list 00_UG_HzgKeller_Hzg_Umwaelzpumpe (HM-MOD-EM-8)

Internals:
   CFGFN      ./FHEM/include/fhem_untergeschoss.cfg
   DEF        667A04
   FUUID      5c587ad3-f33f-8c2a-8fb7-c69bbc6de57a0559
   IODev      myHmUART
   NAME       00_UG_HzgKeller_Hzg_Umwaelzpumpe
   NOTIFYDEV  global
   NR         354
   NTFY_ORDER 50-00_UG_HzgKeller_Hzg_Umwaelzpumpe
   STATE      00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_02 Long
   TYPE       CUL_HM
   channel_01 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_01
   channel_02 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_02
   channel_03 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_03
   channel_04 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_04
   channel_05 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_05
   channel_06 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_06
   channel_07 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_07
   channel_08 00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_08
   READINGS:
     2020-09-04 15:18:22   Batt_timestamp_HzgKeller_Hzg_Umwaelzpumpe 2020-07-28 14:16:19
     2018-10-13 20:17:07   CommandAccepted yes
     2018-10-13 20:17:06   D-firmware      1.1
     2018-10-13 20:17:06   D-serialNr      PEQ0105622
     2019-01-13 20:57:17   Ende_Umwaelzpumpe_aktiv
     2018-10-13 20:16:52   PairedTo        0x4C3DF4
     2018-10-13 19:12:20   R-pairCentral   0x4C3DF4
     2018-10-13 20:16:52   RegL_00.        02:01 05:00 0A:4C 0B:3D 0C:F4 12:00 14:03 18:00  00:00
     2020-09-04 15:18:22   Time_Umlaufpumpe_aktiv
     2020-05-20 14:24:53   alive           yes
     2020-07-28 14:16:19   battery         ok
     2020-09-04 15:18:22   cfgState        ok
     2020-05-20 14:24:53   powerOn         2020-05-20 14:24:53
     2020-05-20 14:24:53   recentStateType info
     2020-07-28 14:16:19   state           00_UG_HzgKeller_Hzg_Umwaelzpumpe_Btn_02 Long
     2019-02-06 13:47:47   trigger         Long_210
     2019-02-06 13:47:47   trigger_cnt     210
   helper:
     HM_CMDNR   229
     cfgChkResult No regs found for:-ret--ret-00_UG_HzgKeller_Hzg_Umwaelzpumpe type:remote - -ret-list:peer register         :value-ret-   0:      ledMode          :off-ret-   0:      localResDis      :off-ret-   0:      lowBatLimitBA2   :0 V-ret-   0:      pairCentral      :0x4C3DF4-ret-   0:      transmDevTryMax  :3-ret-                       -ret-                       -ret-
     mId        00D9
     peerFriend
     peerOpt    -:remote
     regLst     0
     rxType     16
     cmds:
       TmplKey    :no:1599214653.86064
       TmplTs     1599214653.86064
       cmdKey     0:1:0::00_UG_HzgKeller_Hzg_Umwaelzpumpe:00D9: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) [-peerChn-]
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- -addr2:data2-...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         tplDel     -tplDel-
         tplSet_0   -tplChan-
         unpair     noArg
       lst:
         condition  closed,open
         peer       
         peerOpt   
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         param      -param-
         reg        -addr- -list- [-peerChn-]
         regList    noArg
         regTable   noArg
         regVal     -addr- -list- [-peerChn-]
         saveConfig [-filename-]
         tplInfo    noArg
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       newChn     +667A04,00,00,00
       rxt        2
       vccu       VCCU
       p:
         667A04
         00
         00
         00
       prefIO:
         myHmUART
     mRssi:
       mNo       
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   
       qReqStat   
     role:
       dev        1
     rssi:
     shadowReg:
     tmpl:
   nb:
     cnt        1
Attributes:
   IODev      myHmUART
   IOgrp      VCCU:myHmUART
   autoReadReg 3_onChange
   event-on-update-reading .*
   expert     defReg,rawReg
   firmware   1.1
   icon       sani_pump
   model      HM-MOD-EM-8
   room       Hzg-Keller
   serialNr   PEQ0105622
   subType    remote
   userReadings Time_Umlaufpumpe_aktiv {ReadingsTimestamp("00_UG_HzgKeller_Hzg_Umwaelzpumpe","myHmUART_TIME","")},
Batt_timestamp_HzgKeller_Hzg_Umwaelzpumpe {ReadingsTimestamp("00_UG_HzgKeller_Hzg_Umwaelzpumpe","battery","")}
   webCmd     getConfig:clear msgEvents


list 50_Aussen_Remote_Control1_Main (HM-RC-4-3)

Internals:
   DEF        6C746F
   FUUID      5ead9aef-f33f-8c2a-56ce-1e5a6c1e6e0e3e72
   IODev      myHmUART
   NAME       50_Aussen_Remote_Control1_Main
   NOTIFYDEV  global
   NR         2200
   NTFY_ORDER 50-50_Aussen_Remote_Control1_Main
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 50_Aussen_Remote_Control1_Main_Btn_01
   channel_02 50_Aussen_Remote_Control1_Main_Btn_02
   channel_03 50_Aussen_Remote_Control1_Main_Btn_03
   channel_04 50_Aussen_Remote_Control1_Main_Btn_04
   READINGS:
     2020-09-04 14:25:45   Activity        dead
     2020-09-04 15:18:24   Batt_timestamp_50_Aussen_Remote_Control1_Main 2020-08-23 10:23:48
     2020-09-03 17:43:03   CommandAccepted yes
     2020-09-03 17:43:01   D-firmware      1.1
     2020-09-03 17:43:01   D-serialNr      QEQ0215000
     2020-09-03 17:43:01   R-pairCentral   set_0x4C3DF4
     2020-08-23 10:23:48   battery         ok
     2020-09-04 15:18:24   cfgState        updating
     2020-09-03 17:43:03   commState       CMDs_done
     2020-09-03 17:43:03   state           CMDs_done
   helper:
     HM_CMDNR   106
     mId        00D4
     peerFriend
     peerOpt    -:remote
     regLst     0
     rxType     28
     cfgChk:
       idRc01     RegL_00.
     cmds:
       TmplKey    :no:1599214664.44626
       TmplTs     1599214664.44626
       cmdKey     0:1:0::50_Aussen_Remote_Control1_Main:00D4: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) [-peerChn-]
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- -addr2:data2-...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      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)]
         param      -param-
         reg        -addr- -list- [-peerChn-]
         regList    noArg
         regTable   noArg
         regVal     -addr- -list- [-peerChn-]
         saveConfig [-filename-]
         tplInfo    noArg
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       newChn     +6C746F,00,00,00
       rxt        2
       vccu       VCCU
       p:
         6C746F
         00
         00
         00
       prefIO:
         myHmUART
     mRssi:
       mNo       
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   00
       qReqStat   
     role:
       dev        1
     rssi:
     shadowReg:
     tmpl:
Attributes:
   IODev      myHmUART
   IOgrp      VCCU:myHmUART
   actCycle   002:00
   actStatus  dead
   autoReadReg 4_reqStatus
   expert     defReg,rawReg
   firmware   1.1
   icon       it_remote
   model      HM-RC-4-3
   room       50_Aussenbereich
   serialNr   QEQ0215000
   subType    remote
   userReadings Batt_timestamp_50_Aussen_Remote_Control1_Main {ReadingsTimestamp("50_Aussen_Remote_Control1_Main","battery","")}
   webCmd     getConfig:clear msgEvents


list 00_UG_Technikraum_FensterGriff (HM-SEC-RHS)

Internals:
   CFGFN      ./FHEM/include/fhem_untergeschoss.cfg
   DEF        5D3E0A
   FUUID      5c587ad2-f33f-8c2a-66c3-5cf08626ae78a7e5
   IODev      myHmUART
   NAME       00_UG_Technikraum_FensterGriff
   NOTIFYDEV  global
   NR         279
   NTFY_ORDER 50-00_UG_Technikraum_FensterGriff
   STATE      closed
   TYPE       CUL_HM
   chanNo     01
   READINGS:
     2020-09-04 14:15:42   Activity        dead
     2020-09-04 15:18:22   Batt_timestamp_Technikraum_FensterGriff 2020-09-02 19:47:11
     2019-11-03 14:52:29   CommandAccepted yes
     2019-10-15 21:09:27   D-firmware      2.4
     2019-10-15 21:09:27   D-serialNr      OEQ0965637
     2020-09-04 15:18:22   Differenz       0
     2020-03-30 17:28:43   PairedTo        0x4C3DF4
     2020-03-30 17:28:43   R-cyclicInfoMsg on
     2020-03-31 17:20:12   R-eventDlyTime  2 s
     2020-03-30 17:28:43   R-pairCentral   0x4C3DF4
     2020-03-31 17:20:12   R-sign          off
     2020-03-30 17:28:43   RegL_00.        00:00 02:01 09:01 0A:4C 0B:3D 0C:F4 10:01 14:06
     2020-03-31 17:20:12   RegL_01.        00:00 08:00 20:6C 21:02 22:64 30:06
     2020-09-04 15:18:22   Zeit1           1599225502
     2020-09-04 15:18:22   Zeit2           1599225502
     2020-09-02 19:47:11   alive           yes
     2020-09-02 19:47:11   battery         ok
     2020-09-04 15:18:22   cfgState        ok
     2020-09-02 19:47:11   commState       CMDs_done
     2020-09-02 19:47:11   contact         closed (to VCCU)
     2020-09-02 19:47:11   recentStateType info
     2020-09-02 19:47:11   sabotageError   off
     2020-09-02 19:47:11   state           closed
     2020-08-19 21:56:05   trigger_cnt     153
   helper:
     HM_CMDNR   207
     mId        0030
     peerFriend peerAct,peerVirt
     peerOpt    4:threeStateSensor
     regLst     0,1,4p
     rxType     20
     cmds:
       TmplKey    :no:1599214655.20156
       TmplTs     1599214655.20156
       cmdKey     1:1:0::00_UG_Technikraum_FensterGriff:0030: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) [-peerChn-]
         peerBulk   -peer1,peer2,...- [({set}|unset)]
         peerChan   -btnNumber- -actChn- [({single})] [({set}|unset)] [actor|remote|both]
         peerSmart  -peerOpt-
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- -addr2:data2-...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         sign       [(on|{off})]
         tplDel     -tplDel-
         tplSet_0   -tplChan-
         unpair     noArg
       lst:
         condition  closed,open,tilted
         peer       
         peerOpt    00_UG_Freizeitraum_Rollladen,00_UG_Technikraum_Rollladen,10_EG_Esszimmer_HzgThermostat_WindowRec,10_EG_Esszimmer_HzgThermostat_remote,10_EG_Esszimmer_Rollladen,10_EG_Esszimmer_Stehlampe_Sw,10_EG_Esszimmer_Wand_HzgThermostat_WindowRec,10_EG_Esszimmer_Wand_HzgThermostat_remote,10_EG_Flur_HzgThermostat_WindowRec,10_EG_Flur_HzgThermostat_remote,10_EG_Flur_Stehlampe_Sw,10_EG_Kueche_HzgThermostat_WindowRec,10_EG_Kueche_HzgThermostat_remote,10_EG_Kueche_Rollladen_Norden,10_EG_Kueche_Rollladen_Westen,10_EG_Toilette_HzgThermostat_WindowRec,10_EG_Toilette_HzgThermostat_remote,10_EG_Vorratsraum_HzgThermostat_WindowRec,10_EG_Vorratsraum_HzgThermostat_remote,10_EG_WohnZimmer_Rollladen_Erker_Nord,10_EG_WohnZimmer_Rollladen_Erker_Sued,10_EG_WohnZimmer_Rollladen_Westen,10_EG_Wohnzimmer_HzgThermostat_Erker_Nord_WindowRec,10_EG_Wohnzimmer_HzgThermostat_Erker_Nord_remote,10_EG_Wohnzimmer_HzgThermostat_Erker_Sued_WindowRec,10_EG_Wohnzimmer_HzgThermostat_Erker_Sued_remote,10_EG_Wohnzimmer_HzgThermostat_Westen_WindowRec,10_EG_Wohnzimmer_HzgThermostat_Westen_remote,10_EG_Wohnzimmer_Temp_Regler_WindowRec,10_EG_Wohnzimmer_Temp_Regler_remote,20_DG_AZ_Dad_HzgThermostat_Erker_WindowRec,20_DG_AZ_Dad_HzgThermostat_Erker_remote,20_DG_AZ_Dad_HzgThermostat_Westen_WindowRec,20_DG_AZ_Dad_HzgThermostat_Westen_remote,20_DG_AZ_Dad_Temp_Regler_WindowRec,20_DG_AZ_Dad_Temp_Regler_remote,20_DG_AZ_Mam_HzgThermostat_WindowRec,20_DG_AZ_Mam_HzgThermostat_remote,20_DG_Badezimmer_Handtuch_HzgThermostat_WindowRec,20_DG_Badezimmer_Handtuch_HzgThermostat_remote,20_DG_Badezimmer_HzgThermostat_WindowRec,20_DG_Badezimmer_HzgThermostat_remote,20_DG_Balkonzimmer_HzgThermostat_WindowRec,20_DG_Balkonzimmer_HzgThermostat_remote,20_DG_Flur_Sirene_Arm,20_DG_Flur_Sirene_Panic,20_DG_Flur_Sirene_Sen_01,20_DG_Flur_Sirene_Sen_02,20_DG_Flur_Stehlampe_Sw,20_OG_Schlafzimmer_Rollladen,50_Aussen_Licht_Eingang,50_Aussen_Schaltmodul01_NordSeite_Sw_01,50_Aussen_Schaltmodul01_NordSeite_Sw_02,50_Aussen_Schaltmodul01_Wasserhahn_Sw_01,50_Aussen_Schaltmodul01_Wasserhahn_Sw_02,50_Aussen_Schaltmodul01_Wasserhahn_Sw_03,50_Aussen_Schaltmodul01_Wasserhahn_Sw_04,VCCU_Btn1
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         param      -param-
         reg        -addr- -list- [-peerChn-]
         regList    noArg
         regTable   noArg
         regVal     -addr- -list- [-peerChn-]
         saveConfig [-filename-]
         tplInfo    noArg
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       newChn     +5D3E0A,00,00,00
       rxt        2
       vccu       VCCU
       p:
         5D3E0A
         00
         00
         00
       prefIO:
         myHmUART
     mRssi:
       mNo       
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   
       qReqStat   
     role:
       chn        1
       dev        1
     rssi:
     shadowReg:
     tmpl:
Attributes:
   IODev      myHmUART
   IOgrp      VCCU:myHmUART
   actCycle   001:05
   actStatus  dead
   autoReadReg 4_reqStatus
   devStateIcon tilted:fts_window_1w_tilt@red open:fts_window_1w_open_left_anchor@red closed:fts_window_1w_closed_left_anchor@green
   expert     defReg,rawReg
   firmware   2.4
   icon       fts_window_1w_closed_left_anchor
   model      HM-SEC-RHS
   peerIDs    00000000,
   room       00_Untergeschoss->Technikraum
   serialNr   OEQ0965637
   subType    threeStateSensor
   userReadings Batt_timestamp_Technikraum_FensterGriff {ReadingsTimestamp("00_UG_Technikraum_FensterGriff","battery","")},
Zeit1 {int(time())},
Zeit2 {time_str2num(ReadingsTimestamp("00_UG_Technikraum_FensterGriff","Batt_timestamp_Technikraum_FensterGriff",""))},
Differenz {ReadingsVal("00_UG_Technikraum_FensterGriff","Zeit1",0) - ReadingsVal("00_UG_Technikraum_FensterGriff","Zeit2",0)}


martinp876

Bei diesen typen gibt es keine möglichkeiten, das device anzusprechen. Man kann nur reagieren aus sicht der zentrale.

Man kann bei den devices manuell actcycle setzen.  Actiondetector meldet das device dann dead, wenn im geforderten Zeitrahmen keine msg des device kommt.
Ich setze bei allen devices das attribut. Typisch auf 2 tage, manchmal 5.

Das ist ein schwacher Ersatz. Aber mehr ist mir nicht eingefallen. Und kaputt geht nichts, da ja nichts blockiert wird.

frank

bei deinem rhs muss ein problem existieren, da das battery reading zu alt ist.
wenn das register cyclicInfoMsg=on gesetzt ist, sendet der rhs ziehmlich genau alle 24 std eine info message mit bat status.

65 min für attr actCycle macht hier überhaupt keinen sinn.
default sind 28 std.
den actiondetector hast du scheinbar nicht verstanden.

mögliche probleme:

1. entweder dein fhem oder die ios haben "aussetzer", wodurch nicht alle messages vom device empfangen werden.

2. der funk ist zu schlecht.

3. die register anzeige in fhem ist nicht aktuell.
die reale eistellung ist "off", zb durch ein reset am gerät.

zeig mal je ein list aller io's und der vccu.
lösch mal die fhem daten vom device (set clear all) und lese sie erneut ein (set getConfig plus set statusRequest).
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

die fernbedienung rc-4-3 kann angeblich "wakeup".
insofern sollte da eigentlich mehr möglich sein, denke ich.
hast du mal einen channel mit der vccu gepeert?

ich würde die fb mal sniffen, ob sie irgend welche messages regelmässig sendet.

hast du sie schon mal an einer ccu angelernt?
welche einstellungen werden dort angeboten/angezeigt?
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

zum em8 würde mir noch folgendes einfallen:
falls noch ein eingang frei ist, könnte man diesen über eine zeitschaltuhr (zb alle 24 std) extern schalten/triggern.
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

CottonIJo

Tja, was soll ich sagen, es gibt viele Dinge auf dieser Welt die ich nicht verstehe, mag sein, dass der actiondetector auch dazu gehört.
Nur er hilft mir bei meinem Problem nicht weiter, die Tatsache, dass zu einem bestimmten Zeitpunkt ein Gerät alive oder dead ist und mir in einer readings group angezeigt wird, sagt noch nichts über den Batteriestatus aus.
Und er hilft mir auch nicht weiter wenn der actCycle bei dem einen device automatisch beim pairen angelegt wird und bei dem nächsten Gerät dann manuell angelegt werden muss. Aber das ist ja nicht die einzige Unzulänglichkeit und Inkonsistenz von eQ3 Modulen.
Ich habe momentan Geräte (HM-RC-4-3, HM-MOD-EM-8 oder HM-SEC-RHS) die interessiert ein eingestellter actCycle gar nicht (und cyclicInfoMsg kann auch nicht jedes device), sie melden sich nicht und sie aktualisieren den Zeitstempel der Batterieprüfung auch nicht. Da hilft mir der actiondetector als passiver Sammler leider nicht weiter, dead heißt ja nicht unbedingt "Batterie leer"

Vielen Dank für die Vorschläge, die werde ich einmal abarbeiten, Sonderwege je nach Gerät möchte ich nicht gehen, irgendwann verzettelt man sich, ich werde dann meine Routine zur Ermittlung der Zeitstempel der letzten Abfrage zum Batteriestatus verwenden.
Grüße Joachim