Pairing von Rauchmelder HM-SEC-SD-2

Begonnen von snowsquirrel, 13 Oktober 2021, 11:02:03

Vorheriges Thema - Nächstes Thema

snowsquirrel

Hallo liebes Forum,

ich versuche nun schon geraume Zeit Rauchmelder HM-SEC-SD-2 in FHEM zum Laufen zu bekommen. Leider komme ich absolut nicht weiter und ich habe überhaupt keine Ahnung, woran es noch liegen könnte.

Das - soweit ich es verstehe - Hauptproblem ist, dass der Rauchmelder nicht richtig gepaired wird, jedenfalls bekomme ich
PairedTo set_123ABC

Ich vermute, dass ich ein Problem mit der AES Encryption habe, aber eigentlich sieht es für mich ok aus, jedenfalls kann ich keinen Fehler entdecken. Kann mir bitte jemand weiterhelfen, bzw. mir einen Tip geben, wonach ich suchen muss?

Ich über eine VCCU, hier der List, wobei in "hmKey 01:XXXX" etwas (hoffentlich) sinnvolles steht, jedenfalls wurde es über "attr VCCU hmKey geheimerSchluessel" generiert, wie in https://wiki.fhem.de/wiki/AES_Encryption beschrieben :

Internals:
   DEF        123ABC
   FUUID      5d849e47-f33f-4a82-74b6-dea48d5e18cf8c63
   HMLAN1_MSGCNT 175
   HMLAN1_RAWMSG E123ABC,0000,6C6245D6,FF,FFC3,A9B001123ABC6F338D00050000000000
   HMLAN1_RSSI -61
   HMLAN1_TIME 2021-10-13 09:53:08
   IODev      CUNX1
   LASTInputDev meinLGW
   MSGCNT     1176
   NAME       VCCU
   NR         44
   NTFY_ORDER 50-VCCU
   STATE      CUNX1:ok,HMLAN1:disconnected,meinLGW:ok
   TYPE       CUL_HM
   assignedIOs CUNX1,HMLAN1,meinLGW
   channel_01 VCCU_Btn1
   disableNotifyFn 1
   lastMsg    No:A9 - t:01 s:123ABC d:6F338D 00050000000000
   meinLGW_MSGCNT 1001
   meinLGW_RAWMSG 050000248086106F339400000006010000
   meinLGW_RSSI -36
   meinLGW_TIME 2021-10-13 10:09:34
   protLastRcv 2021-10-13 09:52:59
   protRcv    1152 last_at:2021-10-13 09:52:59
   protRcvB   3 last_at:2021-10-13 07:44:51
   rssi_at_HMLAN1 cnt:169 min:-72 max:-60 avg:-64.58 lst:-61
   rssi_at_meinLGW cnt:993 min:-84 max:-60 avg:-63.17 lst:-62
   READINGS:
     2021-10-13 09:51:09   CommandAccepted yes
     2021-10-12 19:15:47   IODev           HMLAN1
     2021-10-13 10:10:15   IOopen          2
     2019-10-27 08:15:16   aesReqTo        HM_6F34D6
     2021-10-11 12:09:05   cfgState        ok
     2021-10-13 10:32:48   hmPair          name:HM_6F3394 SN:QEQ1338390 model:HM-SEC-SD-2
     2021-10-13 10:10:15   state           CUNX1:ok,HMLAN1:disconnected,meinLGW:ok
     2021-10-13 09:52:36   unknown_6F338D  received
     2021-10-13 10:09:34   unknown_6F3394  received
   helper:
     HM_CMDNR   169
     PONtest    1
     lastMsgTm  1634111579.74173
     mId        FFF0
     peerFriend -
     peerOpt    -:virtual
     regLst     
     rxType     1
     supp_Pair_Rep 0
     ack:
     cmds:
       TmplKey    :no:1634058947.49827
       TmplTs     1634058947.49827
       cmdKey     0:1:1::VCCU:FFF0:00:
       cmdLst:
         assignIO   -IO- [({set}|unset)]
         clear      [(readings|rssi|msgEvents|attack|{msgErrors}|unknownDev)]
         defIgnUnknown noArg
         hmPairForSec [-sec-]
         hmPairSerial -serial-
         update     noArg
         virtual    [(1..50;1|{1})]
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         list       [({normal}|full)]
         listDevice noArg
         param      -param-
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       nextSend   1634111588.26026
       vccu       VCCU
       ioList:
         CUNX1
         HMLAN1
         meinLGW
       prefIO:
     mRssi:
       mNo        A9
       io:
         HMLAN1:
           -61
           -61
         meinLGW:
     peerIDsH:
     prt:
       bErr       0
       sProc      0
       rspWait:
     q:
       qReqConf   
       qReqStat   
     role:
       dev        1
       vrt        1
     rssi:
       at_HMLAN1:
         avg        -64.5857988165681
         cnt        169
         lst        -61
         max        -60
         min        -72
       at_meinLGW:
         avg        -63.1732124874118
         cnt        993
         lst        -62
         max        -60
         min        -84
     tmpl:
Attributes:
   IOList     CUNX1,HMLAN1,meinLGW
   IOgrp      VCCU
   expert     defReg,rawReg
   hmKey      01:XXXX
   model      CCU-FHEM
   room       Adapter
   subType    virtual
   webCmd     virtual:update


Ich habe ein TeamDev angelegt, in dem ich in der IOgrp ein "VCCU:meinLGW" eingetragen haben:

Internals:
   DEF        111111
   FUUID      615c03e9-f33f-4a82-ace2-ab3d8dac4b096b13
   IODev      meinLGW
   NAME       Rauchmelder_TeamDev
   NR         498
   NTFY_ORDER 50-Rauchmelder_TeamDev
   STATE      ???
   TYPE       CUL_HM
   channel_01 Rauchmelder_Team
   disableNotifyFn 1
   READINGS:
     2021-10-13 08:22:07   IODev           meinLGW
     2021-10-11 12:09:05   cfgState        ok
   helper:
     HM_CMDNR   161
     mId        FFF1
     peerFriend -
     peerOpt    -:virtual
     regLst     0
     rxType     1
     cmds:
       TmplKey    :no:1634058947.4927
       TmplTs     1634058947.4927
       cmdKey     0:1:1::Rauchmelder_TeamDev:FFF1:00:
       cmdLst:
         assignHmKey noArg
         clear      [(readings|rssi|msgEvents|attack|{msgErrors}|unknownDev)]
         deviceRename -newName-
         fwUpdate   -filename- [-bootTime-]
         getDevInfo noArg
         raw        -data- [...]
         reset      noArg
         unpair     noArg
         virtual    [(1..50;1|{1})]
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         list       [({normal}|full)]
         param      -param-
     expert:
       def        1
       det        0
       raw        0
       tpl        0
     io:
       vccu       VCCU
       prefIO:
         meinLGW
     mRssi:
       mNo       
     peerIDsH:
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   
       qReqStat   
     role:
       dev        1
       vrt        1
     tmpl:
Attributes:
   IOgrp      VCCU:meinLGW
   model      VIRTUAL
   room       Rauchmelder
   subType    virtual
   webCmd     virtual


Und last but not least habe ich versucht, zwei Rauchmelder zu pairen:

Internals:
   CFGFN     
   DEF        6F338D
   FUUID      61669052-f33f-4a82-ac3b-da84aae34922a367
   HMLAN1_MSGCNT 6
   HMLAN1_RAWMSG E6F338D,0000,6C622800,FF,FFBB,A9A0026F338D123ABC048B497746123700
   HMLAN1_RSSI -69
   HMLAN1_TIME 2021-10-13 09:53:00
   IODev      meinLGW
   LASTInputDev meinLGW
   MSGCNT     21
   NAME       HM_6F338D
   NR         731
   NTFY_ORDER 50-HM_6F338D
   STATE      MISSING ACK
   TYPE       CUL_HM
   chanNo     01
   disableNotifyFn 1
   lastMsg    No:D4 - t:10 s:6F338D d:123ABC 0202000A000B000C0016001F000000
   meinLGW_MSGCNT 15
   meinLGW_RAWMSG 05000028D4A0106F338D123ABC0202000A000B000C0016001F000000
   meinLGW_RSSI -40
   meinLGW_TIME 2021-10-13 10:06:41
   protCmdDel 11
   protLastRcv 2021-10-13 10:06:40
   protRcv    12 last_at:2021-10-13 10:06:40
   protResnd  7 last_at:2021-10-13 10:08:16
   protResndFail 6 last_at:2021-10-13 10:08:21
   protSnd    16 last_at:2021-10-13 10:08:11
   protSndB   11 last_at:2021-10-13 10:08:16
   protState  CMDs_done_Errors:1
   rssi_at_HMLAN1 cnt:6 min:-70 max:-69 avg:-69.5 lst:-69
   rssi_at_meinLGW cnt:16 min:-43 max:-36 avg:-38.06 lst:-40
   READINGS:
     2021-10-13 10:06:39   D-firmware      1.0
     2021-10-13 10:06:39   D-serialNr      QEQ1338399
     2021-10-13 10:08:11   IODev           meinLGW
     2021-10-13 10:06:40   PairedTo        set_0x123ABC
     2021-10-13 10:06:40   RegL_00.         00:00 02:00 0A:00 0B:00 0C:00 16:00 1F:00
     2021-10-13 09:54:36   aesKeyNbr       00
     2021-10-13 10:07:40   cfgState        PairMism,PeerIncom
     2021-10-13 10:08:21   commState       CMDs_done_Errors:1
     2021-10-13 10:06:40   sdRepeat        off
     2021-10-13 10:08:21   state           MISSING ACK
   helper:
     HM_CMDNR   229
     cSnd       01123ABC6F338D00040000000000,01123ABC6F338D0103
     cfgStateUpdt 0
     getCfgListNo
     lastMsgTm  1634112400.52486
     mId        00AA
     peerFriend peerSD
     peerOpt    p:smokeDetector
     regLst     0
     rxType     6
     supp_Pair_Rep 0
     cfgChk:
       idPc02     paired:0x000000 IO attr: 123ABC.
       idPz00     fail
     cmds:
       TmplKey    :no:1634111680.41199
       TmplTs     1634111680.41199
       cmdKey     1:1:0::HM_6F338D:00AA: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-]
         peerBulk   -peer1,peer2,...- [({set}|unset)]
         peerChan   -btnNumber- -actChn- [({single})] [({set}|unset)] [({actor})]
         peerSmart  -peerOpt-
         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  Smoke Alarm,no alarm,tone off
         peer       
         peerOpt    Rauchmelder_Team,VCCU_Btn1
         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        0
       det        0
       raw        1
       tpl        0
     io:
       flgs       0
       newChn     +6F338D,00,01,00
       nextSend   1634112401.31556
       rxt        0
       vccu       VCCU
       p:
         6F338D
         00
         01
         00
       prefIO:
     mRssi:
       mNo        D4
       io:
         CUNX1:
         HMLAN1:
         meinLGW:
           -32
           -32
     peerIDsH:
     prt:
       bErr       0
       sProc      0
       tryMsg:
     q:
       qReqConf   
       qReqStat   00
     regCollect:
     role:
       chn        1
       dev        1
     rpt:
       IO         meinLGW
       flg        A
       ts         1634112401.01972
       ack:
         HASH(0x5655315483e0)
         D48002123ABC6F338D00
     rssi:
       at_HMLAN1:
         avg        -69.5
         cnt        6
         lst        -69
         max        -69
         min        -70
       at_meinLGW:
         avg        -38.0625
         cnt        16
         lst        -40
         max        -36
         min        -43
     shadowReg:
     tmpl:
Attributes:
   IOgrp      VCCU:meinLGW
   aesKey     1
   autoReadReg 4_reqStatus
   expert     rawReg
   firmware   1.0
   model      HM-SEC-SD-2
   msgRepeat  1
   peerIDs    peerUnread
   serialNr   QEQ1338399
   subType    smokeDetector
   webCmd     statusRequest


Und der andere

Internals:
   CFGFN     
   DEF        6F3394
   FUUID      61669458-f33f-4a82-ff27-271cd9e2f9373e2b
   IODev      meinLGW
   LASTInputDev meinLGW
   MSGCNT     131
   NAME       HM_6F3394
   NR         768
   NTFY_ORDER 50-HM_6F3394
   STATE      RESPONSE TIMEOUT:PeerList
   TYPE       CUL_HM
   chanNo     01
   disableNotifyFn 1
   lastMsg    No:DE - t:10 s:6F3394 d:123ABC 0202000A000B000C0016001F000000
   meinLGW_MSGCNT 131
   meinLGW_RAWMSG 0500002EDEA0106F3394123ABC0202000A000B000C0016001F000000
   meinLGW_RSSI -46
   meinLGW_TIME 2021-10-13 10:33:36
   protCmdDel 11
   protLastRcv 2021-10-13 10:33:34
   protRcv    61 last_at:2021-10-13 10:33:34
   protResnd  10 last_at:2021-10-13 10:33:39
   protResndFail 6 last_at:2021-10-13 10:33:43
   protSnd    50 last_at:2021-10-13 10:33:36
   protSndB   14 last_at:2021-10-13 10:33:39
   protState  CMDs_done_Errors:1
   rssi_at_meinLGW cnt:132 min:-74 max:-39 avg:-46.32 lst:-46
   rssi_meinLGW cnt:6 min:-42 max:-35 avg:-37.5 lst:-35
   READINGS:
     2021-10-13 10:33:27   D-firmware      1.0
     2021-10-13 10:33:27   D-serialNr      QEQ1338390
     2021-10-13 10:33:27   IODev           meinLGW
     2021-10-13 10:33:34   PairedTo        set_0x123ABC
     2021-10-13 10:33:34   RegL_00.         00:00 02:00 0A:00 0B:00 0C:00 16:00 1F:00
     2021-10-13 10:32:49   aesKeyNbr       00
     2021-10-13 10:33:33   alarmTest       ok
     2021-10-13 10:33:33   battery         ok
     2021-10-13 10:34:34   cfgState        PairMism,PeerIncom
     2021-10-13 10:33:43   commState       CMDs_done_Errors:1
     2021-10-13 10:33:33   level           0
     2021-10-13 10:33:33   recentStateType info
     2021-10-13 10:33:34   sdRepeat        off
     2021-10-13 10:33:33   smokeChamber    ok
     2021-10-13 10:33:43   state           RESPONSE TIMEOUT:PeerList
   helper:
     HM_CMDNR   238
     cSnd       01123ABC6F339400040000000000,01123ABC6F33940103
     cfgStateUpdt 0
     getCfgListNo
     lastMsgTm  1634114014.23668
     mId        00AA
     peerFriend peerSD
     peerIDsState peerUnread
     peerOpt    p:smokeDetector
     regLst     0
     rxType     6
     supp_Pair_Rep 0
     cfgChk:
       idPc02     paired:0x000000 IO attr: 123ABC.
       idPz00     fail
     cmds:
       TmplKey    :no:1634113973.48173
       TmplTs     1634113973.48173
       cmdKey     1:1:0::HM_6F3394:00AA: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-]
         peerBulk   -peer1,peer2,...- [({set}|unset)]
         peerChan   -btnNumber- -actChn- [({single})] [({set}|unset)] [({actor})]
         peerSmart  -peerOpt-
         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  Smoke Alarm,no alarm,tone off
         peer       
         peerOpt    HM_6F338D,Rauchmelder_Team,VCCU_Btn1
         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        0
       det        0
       raw        1
       tpl        0
     io:
       flgs       0
       newChn     +6F3394,00,01,00
       nextSend   1634114016.59716
       rxt        0
       vccu       VCCU
       p:
         6F3394
         00
         01
         00
       prefIO:
     mRssi:
       mNo        DE
       io:
         CUNX1:
         meinLGW:
           -38
           -38
     peerIDsH:
     prt:
       bErr       0
       sProc      0
       tryMsg:
     q:
       qReqConf   
       qReqStat   
     regCollect:
     role:
       chn        1
       dev        1
     rpt:
       IO         meinLGW
       flg        A
       ts         1634114016.30165
       ack:
         HASH(0x565531386d18)
         DE8002123ABC6F339400
     rssi:
       at_meinLGW:
         avg        -46.3257575757576
         cnt        132
         lst        -46
         max        -39
         min        -74
       meinLGW:
         avg        -37.5
         cnt        6
         lst        -35
         max        -35
         min        -42
     shadowReg:
     tmpl:
Attributes:
   IOgrp      VCCU:meinLGW
   autoReadReg 4_reqStatus
   expert     rawReg
   firmware   1.0
   model      HM-SEC-SD-2
   msgRepeat  1
   peerIDs    peerUnread
   serialNr   QEQ1338390
   subType    smokeDetector
   webCmd     statusRequest


(Ich habe zwei zu pairen versucht, weil ich schon dachte, einer sei möglicherweise kaputt.)

Habt Ihr vielleicht eine Idee, woran es liegen könnte? Ich komme nicht mehr weiter.

Vielen Dank!

frank

1. fhem update?
2. poste ein "list meinLGW"
3. auf einen sd konzentrieren, also HM_6F338D
4. erneut drüber pairen
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

snowsquirrel

Ich werd verrückt: ein update mit anschließendem "shutdown restart" und es funktioniert - dabei war mein letztes update gerade mal eine Woche her... Vielen Dank, frank, ich jetzt sind beide SDs gepaired.

Das List des SD sieht jetzt so aus:

Internals:
   DEF        6F3394
   FUUID      61669458-f33f-4a82-ff27-271cd9e2f9373e2b
   IODev      meinLGW
   LASTInputDev meinLGW
   MSGCNT     10
   NAME       EG_FL_Rauch
   NR         507
   NTFY_ORDER 48-EG_FL_Rauch
   STATE      off
   TYPE       CUL_HM
   chanNo     01
   disableNotifyFn 1
   lastMsg    No:11 - t:10 s:6F3394 d:123ABC 011111110100000000
   meinLGW_MSGCNT 10
   meinLGW_RAWMSG 0501002311A0106F3394123ABC011111110100000000
   meinLGW_RSSI -35
   meinLGW_TIME 2021-10-13 13:36:43
   peerList   Rauchmelder_Team
   protEvt_AESCom-ok 2 last_at:2021-10-13 13:36:38
   protLastRcv 2021-10-13 13:36:43
   protRcv    6 last_at:2021-10-13 13:36:43
   protResnd  2 last_at:2021-10-13 13:36:42
   protSnd    8 last_at:2021-10-13 13:36:43
   protSndB   4 last_at:2021-10-13 13:36:42
   protState  CMDs_done
   rssi_at_meinLGW cnt:8 min:-37 max:-33 avg:-35.25 lst:-35
   rssi_meinLGW cnt:1 min:-30 max:-30 avg:-30 lst:-30
   CL:
     Authenticated 0
     BUF       
     FD         102
     FW_ID      627
     LASTACCESS 1634127615
     NAME       WEB_192.168.0.124_56450
     NR         628
     PEER       192.168.0.124
     PORT       56450
     SNAME      WEB
     SSL       
     STATE      Connected
     TEMPORARY  1
     TYPE       FHEMWEB
     canAsyncOutput 1
     READINGS:
       2021-10-13 14:20:05   state           Connected
   READINGS:
     2021-10-13 13:36:38   CommandAccepted yes
     2021-10-13 13:36:37   D-firmware      1.0
     2021-10-13 13:36:37   D-serialNr      QEQ1338390
     2021-10-13 13:36:32   IODev           meinLGW
     2021-10-13 13:36:43   PairedTo        0x123ABC
     2021-10-13 10:11:29   R-devRepeatCntMax 0
     2021-10-13 12:55:08   R-pairCentral   0x123ABC
     2021-10-13 13:36:43   RegL_00.         00:00 02:01 0A:12 0B:3A 0C:BC 16:00 1F:00
     2021-10-13 13:36:38   aesCommToDev    ok
     2021-10-13 13:36:38   aesKeyNbr       00
     2021-10-13 13:36:42   alarmTest       ok
     2021-10-13 13:36:42   battery         ok
     2021-10-13 13:37:43   cfgState        updating
     2021-10-13 13:36:43   commState       CMDs_done
     2021-10-13 13:36:42   level           0
     2021-10-13 13:36:43   peerList        Rauchmelder_Team
     2021-10-13 13:36:42   powerOn         2021-10-13 13:36:42
     2021-10-13 13:36:42   recentStateType info
     2021-10-13 13:36:43   sdRepeat        off
     2021-10-13 13:36:42   smokeChamber    ok
     2021-10-13 13:48:48   smoke_detect    none
     2021-10-13 13:48:48   state           off
   helper:
     HM_CMDNR   17
     PONtest    0
     cSnd       01123ABC6F339400040000000000,01123ABC6F33940103
     cfgStateUpdt 0
     lastMsgTm  1634125003.60768
     mId        00AA
     peerFriend peerSD
     peerIDsRaw ,11111101,00000000
     peerIDsState complete
     peerOpt    p:smokeDetector
     regLst     0
     rxType     6
     supp_Pair_Rep 0
     cmds:
       TmplKey    Rauchmelder_Team:no:1634124669.10342
       TmplTs     1634124669.10342
       cmdKey     1:1:0::EG_FL_Rauch:00AA:01:Rauchmelder_Team
       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-]
         peerBulk   -peer1,peer2,...- [({set}|unset)]
         peerChan   -btnNumber- -actChn- [({single})] [({set}|unset)] [({actor})]
         peerSmart  -peerOpt-
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- [-addr2:data2-]...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         statusRequest noArg
         tplDel     -tplDel-
         tplSet_0   -tplChan-
         tplSet_Rauchmelder_Team -tplPeer-
         unpair     noArg
       lst:
         condition  Smoke Alarm,no alarm,tone off
         peer       Rauchmelder_Team
         peerOpt    EG_SZ_Rauch,Rauchmelder_Team,VCCU_Btn1
         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:
       flgs       0
       newChn     +6F3394,00,01,00
       nextSend   1634125003.90347
       rxt        0
       vccu       VCCU
       p:
         6F3394
         00
         01
         00
       prefIO:
         meinLGW
     mRssi:
       mNo        11
       io:
         meinLGW:
           -27
           -27
     peerIDsH:
       00000000   broadcast
       11111101   Rauchmelder_Team
     prt:
       bErr       0
       sProc      0
       rspWait:
       tryMsg:
     q:
       qReqConf   00
       qReqStat   00
     regCollect:
     role:
       chn        1
       dev        1
     rpt:
       IO         meinLGW
       flg        A
       ts         1634125003.60768
       ack:
         HASH(0x5558e4a166b0)
         118002123ABC6F339400
     rssi:
       at_meinLGW:
         avg        -35.25
         cnt        8
         lst        -35
         max        -33
         min        -37
       meinLGW:
         avg        -30
         cnt        1
         lst        -30
         max        -30
         min        -30
     shadowReg:
     tmpl:
Attributes:
   IOgrp      VCCU:meinLGW
   autoReadReg 4_reqStatus
   expert     allReg,rawReg
   firmware   1.0
   icon       secur_smoke_detector
   model      HM-SEC-SD-2
   msgRepeat  1
   peerIDs    00000000,11111101
   room       EG_Flur,Rauchmelder
   serialNr   QEQ1338390
   subType    smokeDetector
   webCmd     statusRequest


Allerdings habe ich jetzt noch das Problem, dass ein
set Rauchmelder_Team alarmOn
keinen Effekt hat - ich würde doch erwarten, dass dann beide SDs lospiepen.

Durch ein alarmOn wird der STATE beider Rauchmelder auf "smoke-Alarm_XX" gesetzt (wobei XX eine Zahl ist, die immer hochzählt).

Ein Fehler, den ich erkennen kann, ist, dass im "Rauchmelder_Team" das IODev "CUNX1" angegeben ist, der aber in der Garage ist und den die SDs gar nicht hören können. Im "Rauchmelder_TeamDev" habe ich eigentlich ein "IOgrp VCCU:meinLGW" angegeben, somit steht das IODev von "Rauchmelder_TeamDev" auch korrekt auf meinLGW. Warum unterscheiden sich die beiden? Wie kann ich Rauchmelder_Team auf das richtige IODev umstellen? Ein "attr IOgrp Rauchmelder_Team VCCU:meinLGW" funktioniert nicht, da RauchmelderTeam dieses Attribut nicht kennt.

Hier das List von Rauchmelder_Team:

Internals:
   DEF        11111101
   FUUID      615c042d-f33f-4a82-fac5-3486decac1abadc4
   IODev      CUNX1
   NAME       Rauchmelder_Team
   NR         499
   NTFY_ORDER 48-Rauchmelder_Team
   STATE      off
   TESTNR     7
   TYPE       CUL_HM
   chanNo     01
   device     Rauchmelder_TeamDev
   disableNotifyFn 1
   peerList   EG_FL_Rauch,EG_SZ_Rauch
   sdTeam     sdLead
   CL:
     Authenticated 0
     BUF       
     FD         88
     FW_ID      648
     LASTACCESS 1634128294
     NAME       WEB_192.168.0.124_56612
     NR         650
     PEER       192.168.0.124
     PORT       56612
     SNAME      WEB
     SSL       
     STATE      Connected
     TEMPORARY  1
     TYPE       FHEMWEB
     canAsyncOutput 1
     READINGS:
       2021-10-13 14:31:31   state           Connected
   READINGS:
     2021-10-13 13:26:15   IODev           CUNX1
     2021-10-13 14:25:53   aesCBCCounter   0000B9
     2021-10-13 13:35:41   cfgState        PeerVerf
     2021-10-13 14:25:54   commState       CMDs_done
     2021-10-13 14:26:12   eventNo         07
     2021-10-13 14:26:12   level           0
     2021-10-13 13:36:32   peerList        EG_FL_Rauch,EG_SZ_Rauch
     2021-10-13 13:17:24   press_broadcast short cnt: 2
     2021-10-13 14:26:12   smoke_detect    none
     2021-10-13 14:26:12   state           off
   helper:
     fkt        sdLead2
     peerFriend peerSD,peerSens,peerAct
     peerIDsState incomplete
     peerOpt    -:virtual
     regLst     
     cfgChk:
       idPz02     p:EG_FL_Rauch
     cmds:
       TmplKey    EG_FL_Rauch,EG_SZ_Rauch:no:1634124376.25801
       TmplTs     1634124376.25801
       cmdKey     1:0:1:sdLead2:Rauchmelder_TeamDev:FFF1:01:EG_FL_Rauch,EG_SZ_Rauch
       cmdLst:
         alarmOff   noArg
         alarmOn    noArg
         peerChan   -btnNumber- -actChn- [({single}|dual|reverse)] [({set}|unset)] [(actor|remote|{both})]
         peerSmart  -peerOpt-
         postEvent  -condition-
         press      [(long|{short})] [(-peer-|{all})] [(noBurst|{Burst})] [(-repCount-|{0})] [(-repDelay-|{0.25})]
         pressL     [(-peer-|{all})]
         pressS     [(-peer-|{all})]
         teamCall   [(1..255;1)]
         tplSet_0   -tplChan-
         tplSet_EG_FL_Rauch -tplPeer-
         tplSet_EG_SZ_Rauch -tplPeer-
       lst:
         condition  slider,0,1,255
         peer       EG_FL_Rauch,EG_SZ_Rauch
         peerOpt    EG_AZ_Fenster_links,EG_AZ_Fenster_rechts,EG_AZ_Heizung_WindowRec,EG_AZ_Heizung_remote,EG_BD_Fenster,EG_BD_Heizung_WindowRec,EG_BD_Heizung_remote,EG_FL_Rauch,EG_KU_Fenster,EG_KU_Heizung_WindowRec,EG_KU_Heizung_remote,EG_SZ_Fenster_links,EG_SZ_Fenster_rechts,EG_SZ_Heizung_WindowRec,EG_SZ_Heizung_remote,EG_SZ_Rauch,EG_WO_Fenster_vorne_mitte,EG_WO_Fenster_vorne_rechts,EG_WO_Heizung_hinten_WindowRec,EG_WO_Heizung_hinten_remote,EG_WO_Heizung_vorn_WindowRec,EG_WO_Heizung_vorn_remote,Fuellstand_Zisterne,KG_Hobby_Heizung_WindowRec,KG_Hobby_Heizung_remote,KG_Hobby_WandTherm_WindowRec,KG_Hobby_WandTherm_remote,OG_BD_Heizung_WindowRec,OG_BD_Heizung_remote,OG_FL_Fenster_links,OG_FL_Fenster_rechts,OG_FL_Heizung_WindowRec,OG_FL_Heizung_remote,OG_FL_WandTherm_WindowRec,OG_FL_WandTherm_remote,OG_KI_Fenster_links,OG_KI_Fenster_rechts,OG_KI_Heizung_links_WindowRec,OG_KI_Heizung_links_remote,OG_KI_Heizung_rechts_WindowRec,OG_KI_Heizung_rechts_remote,OG_LO_Fenster_links,OG_LO_Fenster_rechts,OG_LO_Heizung_WindowRec,OG_LO_Heizung_remote,OUT_Bewaesserung_Gartenwasser,OUT_Bewaesserung_Gewaechshaus,OUT_Bewaesserung_Schalter_03,OUT_Bewaesseung_Beregner_hinten,OUT_Bewegungsmelder_Garage,OUT_Bewegungsmelder_Haustuer,OUT_Garagentor_Sensor_02,OUT_Garagentor_Sensor_03,OUT_Garagentor_Sensor_Tor,OUT_Gewaechshaus_Heizung_SenF,OUT_Gewaechshaus_Heizung_SenI,OUT_Gewaechshaus_Heizung_SenPwr,OUT_Gewaechshaus_Heizung_SenU,OUT_Gewaechshaus_Heizung_Sw,OUT_Lampe_Garage,OUT_Lampe_Haus_vorne,VCCU_Btn1
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         list       [({normal}|full)]
         param      -param-
     expert:
       def        1
       det        0
       raw        0
       tpl        0
     peerIDsH:
       6F338D01   EG_SZ_Rauch_chn-01
       6F339401   EG_FL_Rauch_chn-01
     role:
       chn        1
       vrt        1
     tmpl:
Attributes:
   model      VIRTUAL
   peerIDs    6F338D01,6F339401
   room       Rauchmelder
   webCmd     press short:press long


Und hier das List von Rauchmelder_TeamDev:
Internals:
   DEF        111111
   FUUID      615c03e9-f33f-4a82-ace2-ab3d8dac4b096b13
   IODev      meinLGW
   NAME       Rauchmelder_TeamDev
   NR         498
   NTFY_ORDER 48-Rauchmelder_TeamDev
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 Rauchmelder_Team
   disableNotifyFn 1
   protSnd    36 last_at:2021-10-13 14:25:54
   protSndB   36 last_at:2021-10-13 14:25:54
   protState  CMDs_done
   CL:
     Authenticated 0
     BUF       
     FD         99
     FW_ID      651
     LASTACCESS 1634128388
     NAME       WEB_192.168.0.124_56635
     NR         653
     PEER       192.168.0.124
     PORT       56635
     SNAME      WEB
     SSL       
     STATE      Connected
     TEMPORARY  1
     TYPE       FHEMWEB
     canAsyncOutput 1
     READINGS:
       2021-10-13 14:33:07   state           Connected
   READINGS:
     2021-10-13 14:25:53   IODev           meinLGW
     2021-10-13 13:35:41   cfgState        ok
     2021-10-13 14:25:54   commState       CMDs_done
     2021-10-13 14:25:54   state           CMDs_done
   helper:
     HM_CMDNR   185
     alarmNo    07
     mId        FFF1
     peerFriend -
     peerOpt    -:virtual
     regLst     0
     rxType     1
     cmds:
       TmplKey    :no:1634124376.25802
       TmplTs     1634124376.25802
       cmdKey     0:1:1::Rauchmelder_TeamDev:FFF1:00:
       cmdLst:
         assignHmKey noArg
         clear      [(readings|rssi|msgEvents|attack|{msgErrors}|unknownDev)]
         deviceRename -newName-
         fwUpdate   -filename- [-bootTime-]
         getDevInfo noArg
         raw        -data- [...]
         reset      noArg
         unpair     noArg
         virtual    [(1..50;1|{1})]
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplChan   
         tplDel     
         tplPeer   
       rtrvLst:
         cmdList    [({short}|long)]
         deviceInfo [({short}|long)]
         list       [({normal}|full)]
         param      -param-
     expert:
       def        1
       det        0
       raw        0
       tpl        0
     io:
       vccu       VCCU
       prefIO:
         meinLGW
     mRssi:
       mNo       
     peerIDsH:
     prt:
       bErr       0
       sProc      0
       rspWait:
     q:
       qReqConf   
       qReqStat   
     role:
       dev        1
       vrt        1
     tmpl:
Attributes:
   IOgrp      VCCU:meinLGW
   model      VIRTUAL
   room       Rauchmelder
   subType    virtual
   webCmd     virtual

frank

ich sehe kein cunx1 in den lists.

um ausschliesslich prefered io zu nutzen, must du:
1. im attr IOgrp zusätzlich die option "none" nutzen und
2. auf ein update warten, damit es auch richtig erkannt wird.
wird gerade im nachbar thread gefixt.

set alarmOn/Off könnte bei den sd2 auch grundsätzlich ein problem sein. selber habe ich nur sd1.
teamCall sollte jedenfalls funktionieren.

wenn die 2 melder sich nicht direkt gegenseitig erreichen können, wird es bei echtem alarm auch keine alarmweiterleitung geben.
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

snowsquirrel

#4
Ich bin mir nicht sicher, ob mein Problem hier mit dem Nachbarthread zusammenhängt, obwohl natürlich schon eine gewisse Ähnlichkeit besteht.

Im List von "Rauchmelder_Team" steht in Zeile 4 ein "IODev CUNX1" und auch weiter unten in den Readings.

Im List von "Rauchmelder_TeamDev" steht aber das "IODev meinLGW", die IOgrp von Rauchmelder_TeamDev habe ich jetzt ergänzt zu "VCCU:meinLGW,none".

Ich habe vielleicht noch nicht deutlich gesagt: Rauchmelder_Team ist der Btn1 von Rauchmelder_TeamDev, selbe Logik wie in https://wiki.fhem.de/wiki/HM-SEC-SD_Rauchmelder

Man kann die Attribute IOgrp (und auch IODev) nur im Device selber, also Rauchmelder_TeamDev setzen. Im button (Rauchmelder_Team) gibt es diese Attribute nicht. Ich hätte jetzt eigentlich erwartet, dass der Button die Einstellung vom "Mutterdevice" übernimmt, tut er anscheinend aber nicht.

Im übrigen: wenn ich bei IOgrp die Präferenz weglasse, also nur VCCU nehme, setzt er das IODev auch beim Rauchmelder_TeamDev einfach auf CUNX1.

Ein Teamcall geht auch nicht. Meiner Meinung nach liegt es an dem falschen IODev im Rauchmelder_Team. Wenn er diese Anfragen auf CUNX1 rausschickt, kann keiner der SDs etwas hören...

Vielleicht noch eine Verständnisfrage: Du sagst
Zitatwenn die 2 melder sich nicht direkt gegenseitig erreichen können, wird es bei echtem alarm auch keine alarmweiterleitung geben.
Reden die SDs direkt miteinander? Wenn ich das peering richtig verstanden habe, sind doch alle SDs ausschließlich mit dem virtuellen TeamLead gepeert  - d.h. jegliche events werden an den virtuellen TeamLead geschickt, der es dann an alle anderen SDs weitergibt. Richtig? Also keine direkte Kommunikation, nur über den virtuellen TeamLead, also FHEM. 

frank

in allen separaten channel devices haben io infos nichts zu suchen, immer nur im hauptdevice.
also ein ganz neuer bug, der aber eventuell nur *kosmetischer" natur ist.
sind die io infos im channel nach fhem restart weg?

ZitatReden die SDs direkt miteinander?
fast.
sie lauschen auf alarm messages, die an den peer gesendet werden. alle mit dem teamdevice gepeerten melder senden diese msg.
das virtuelle teamdevice leitet keine messages weiter soweit ich weiss. habe ich noch nie getestet.
wenn fhem beim alarm nicht funktioniert, wäre das problem auf jeden fall gegeben.
am besten: jeder melder kann alle anderen melder der gruppe hören, damit bei alarm auch immer alle piepen.
sd2 hat deswegen extra eine repeater option.
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

um funkmessages zu "sehen" am besten sniffen wie im wiki beschrieben.
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

snowsquirrel

Es funktioniert! Vielen Dank, frank, für Deine Zeit und Mühen.

Das Problem war mein Unwissen und meine Unerfahrenheit im Umgang mit verschlüsselten Verbindungen. Nach einem
set <SD> assignHmKey
antworten nun alle SDs auf einen TeamCall - sowohl wenn ich ihn vom TeamLead als auch von jedem einzelnen Device aus auslöse. Erschwerend kam hinzu, dass offensichtlich ein Rauchmelder tatsächlich defekt ist, ich vermute, ich habe ihn mir bei meinen Versuchen mit der Verschlüsselung zerschossen, d.h. dass ich bereits einmal einen alten Schlüssel hochgeladen habe, den ich aber jetzt nicht mehr kenne...

Was mir noch nicht ganz klar ist: mein bisheriger Kontakt mit verschlüsselten HM Geräten waren die neuen Fenster-Öffnungs-Sensoren (HM-Sec-SCo) mit aktiviertem AES. Hier reichte es (?) Crypt::Rijndael zu installieren. Danach klappte Pairing und sie funktionieren, ich musste kein assignHmKey ausführen. Bei den SDs muss das assignHmKey offensichtlich passieren. Warum? Was ist der Unterschied? Und wie hätte ich am List erkennen können, dass die Verschlüsselung das Problem ist?

Zitatsind die io infos im channel nach fhem restart weg?
Nein, das IODev ist bei mir nach wie vor im Rauchemelder_Team, also im Button1. Ein restart hat daran nichts geändert.

frank

aes erfahrung habe ich eigentlich nur bei seltenen tests, dann aber nur mit dem default key. dazu braucht es aber kein set assignHmKey, da alle beteiligten diesen key grundsätzlich kennen.
nach meinem verständnis sollte es auch ohne assignHmKey beim sd2 funktionieren, da immer der empfänger eines befehls entscheidet, ob und welchen key er verlangt. ohne assignHmKey wird ein device immer den default key nutzen.
zb im reading aeskeynbr sichtbar, 00 => default key. genaueres erfährt man auch hier immer durch sniffen der rawmessages.

in allen lists kann ich kein aes problem erkennen.
ausserdem zeigen beide den gebrauch des default key, weshalb die theorie mit dem alten schlüssel eigentlich auch nicht passt. jedes device, welchem noch kein eigener key zugewiesen wurde, kann über die in der bedienungsanleitung beschriene prozedur resettet werden. hat das device einen eigenen key, bleibt der reset versuch erfolglos, was durch entsrechendes blinken der led erkennbar ist.
angeblich kann es probleme mit sonderzeichen im key geben.


ZitatEin restart hat daran nichts geändert.
seltsam. vielleicht vor dem restart erst noch das reading IODev löschen und speichern.
irgendwie habe ich den verdacht, dass du eventuell auch die fhem.cfg editierst.
wie kommt es eigentlich beim HM_6F338D zum attribut aesKey=1?
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

snowsquirrel

Das mit dem default key macht tatsächlich Sinn, ich habe mich schon gewundert, warum ich in den meisten devices ein aesKeyNbr 00 sehe. Heißt das aber, dass man in der VCCU gar kein "attr VCCU hmKey" braucht, wenn man nur den default key verwenden möchte?

In jedem Fall kann ich sagen, dass es bei mir einen klaren Zusammenhang gab: unmittelbar nachdem ich assignHmKey auf jeden einzelnen SD gemacht hatte, funktionierte der TeamCall - davor nicht.

Zum Rauchmelder_Team: das "IODev CUNX1" taucht sowohl bei den Internals als auch bei den Readings auf. Wie kann ich die Löschen? Oder meinst Du, ich soll das Attribut IOgrp beim Mutterdevice (Rauchmelder_TeamDev) löschen?

Ich habe alle Konfigurationen, die mit den SDs zusammenhängen (VCCU, AES, virtuelles TeamLead, ...) per FHEM gemacht, kein direktes editieren der FHEM.cfg...