[gelöst] Fehler 'Unknown argument displayWM' beim Homematic Display HM-Dis-WM55

Begonnen von huntsman, 05 Oktober 2021, 20:14:48

Vorheriges Thema - Nächstes Thema

huntsman

Mit dem Upgrade auf einen Raspi4 und dabei auf die neuste FHEM 6.0 Version tritt bei mir beim Homematic Display HM-Dis-WM55 bem Aufruf von 'set HM_6D72EC_Dis_01 displayWM short  line1 e:{myLineA(1,0)}'  folgender Fehler auf:

Unknown argument displayWM, choose one of regBulk regSet peerBulk getRegRaw getConfig:noArg clear:msgErrors,noArg,readings,trigger,register,oldRegs,rssi,msgEvents,attack,all

Dies scheint früher schon mal aufgetreten zu sein https://forum.fhem.de/index.php/topic,99579.msg1176645.html#msg1176645

Infos zum Device:
list Display:
Internals:
   DEF        6D72EC
   FUUID      615c76ec-f33f-9964-992b-1348e15b6fc7e915
   IODev      CUL_0
   NAME       Display
   NR         220
   NTFY_ORDER 48-Display
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 HM_6D72EC_Dis_01
   channel_02 HM_6D72EC_Dis_02
   channel_03 HM_6D72EC_Dis_03
   channel_04 HM_6D72EC_Dis_04
   channel_05 HM_6D72EC_Dis_05
   channel_06 HM_6D72EC_Dis_06
   channel_07 HM_6D72EC_Dis_07
   channel_08 HM_6D72EC_Dis_08
   channel_09 HM_6D72EC_Dis_09
   channel_0A HM_6D72EC_Dis_10
   disableNotifyFn 1
   READINGS:
     2021-10-03 21:40:52   CommandAccepted yes
     2021-09-21 15:42:38   D-firmware      1.0
     2021-09-21 15:42:38   D-serialNr      QEQ0294715
     2021-10-05 18:01:48   IODev           CUL_0
     2021-10-03 21:40:52   battery         ok
     2021-10-03 21:40:52   commState       CMDs_done
     2021-10-03 21:40:52   state           CMDs_done
   helper:
     HM_CMDNR   155
     mId        00D3
     peerFriend -
     peerOpt    -:display
     regLst     0
     rxType     4
     cmds:
       TmplKey    :no:1633449713.18416
       TmplTs     1633449713.18416
       cmdKey     0:1:0::Display:00D3: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-]
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- [-addr2:data2-]...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         tplDel     -tplDel-
         unpair     noArg
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplDel     
       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        0
       raw        1
       tpl        0
     io:
       flgs       0
       newChn     +6D72EC,00,00,00
       rxt        0
       vccu       
       p:
         6D72EC
         00
         00
         00
       prefIO:
     mRssi:
       mNo       
     peerIDsH:
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   00
       qReqStat   
     role:
       dev        1
     tmpl:
Attributes:
   IODev      CUL_0
   IOgrp      vccu:CUL_0
   autoReadReg 4_reqStatus
   expert     defReg,rawReg
   firmware   1.0
   model      HM-Dis-WM55
   msgRepeat  3
   room       CUL_HM
   serialNr   QEQ0294715
   subType    display
   webCmd     getConfig:clear msgEvents

list -r Display:
define Display CUL_HM 6D72EC
attr Display IODev CUL_0
attr Display IOgrp vccu:CUL_0
attr Display autoReadReg 4_reqStatus
attr Display expert defReg,rawReg
attr Display firmware 1.0
attr Display model HM-Dis-WM55
attr Display msgRepeat 3
attr Display room CUL_HM
attr Display serialNr QEQ0294715
attr Display subType display
attr Display webCmd getConfig:clear msgEvents

setstate Display CMDs_done
setstate Display 2021-10-05 18:01:53 .associatedWith Display,HM_6D72EC_Dis_01,HM_6D72EC_Dis_02,HM_6D72EC_Dis_03,HM_6D72EC_Dis_04,HM_6D72EC_Dis_05,HM_6D72EC_Dis_06,HM_6D72EC_Dis_07,HM_6D72EC_Dis_08,HM_6D72EC_Dis_09,HM_6D72EC_Dis_10,Display
setstate Display 2021-10-03 21:40:52 .protLastRcv 20211003214052
setstate Display 2021-10-03 21:40:52 CommandAccepted yes
setstate Display 2021-09-21 15:42:38 D-firmware 1.0
setstate Display 2021-09-21 15:42:38 D-serialNr QEQ0294715
setstate Display 2021-10-05 18:01:48 IODev CUL_0
setstate Display 2021-10-03 21:40:52 battery ok
setstate Display 2021-10-03 21:40:52 commState CMDs_done
setstate Display 2021-10-03 21:40:52 state CMDs_done

Vielen Dank für Eure Hilfe dazu

frank

du musst schon ein aktuelles fhem nutzen, sonst kann dir wahrscheinlich keiner helfen.

solange in deinen cul_hm devices attr IODev existiert, bist du nicht aktuell.

du hast scheinbar noch kein update cmd in deinem fhem ausgeführt.
anschliessend trotzdem noch die aktuellen dateien von beta-user einspielen.
danach das list posten, möglichst noch mit code tags formatieren.
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

hast du überhaupt ein vccu definiert?
das list sieht komisch aus.
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

huntsman

Meine FHEM version ist die vom nightly, zugegeben von vor einer Woche oder so. Die eingespielte config ist allerdings die von meiner vorherigen FHEM version, daher vielleicht das IODev? Bis jetzt hat das Übernehmen der Konfig auf eine neue FHEM Version immer ohne Probleme funktioniert. Oder muß ich dann alle Geräte nochmal neu einrichten?
Jedenfall keine Änderung mit update über apt-get auf die aktuellste nighly fhem_6.0.25047 und danach Austausch der 10_CUL_HM.pm und 98_HMinfo.pm vom Oktober Patch von heute.
VCCU habe ich definiert:
define vccu CUL_HM AFFE98
attr vccu IODev CUL_0
attr vccu IOList CUL_0
attr vccu model CCU-FHEM
attr vccu subType virtual
attr vccu webCmd virtual:update



list Display:
Internals:
   CUL_0_MSGCNT 2
   CUL_0_RAWMSG A0A0980026D72ECAFFE9800::-53:CUL_0
   CUL_0_RSSI -53
   CUL_0_TIME 2021-10-05 21:04:56
   DEF        6D72EC
   FUUID      615ca1b9-f33f-9964-da50-fa10e321c8e6b33d
   IODev      CUL_0
   LASTInputDev CUL_0
   MSGCNT     2
   NAME       Display
   NR         220
   NTFY_ORDER 48-Display
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 HM_6D72EC_Dis_01
   channel_02 HM_6D72EC_Dis_02
   channel_03 HM_6D72EC_Dis_03
   channel_04 HM_6D72EC_Dis_04
   channel_05 HM_6D72EC_Dis_05
   channel_06 HM_6D72EC_Dis_06
   channel_07 HM_6D72EC_Dis_07
   channel_08 HM_6D72EC_Dis_08
   channel_09 HM_6D72EC_Dis_09
   channel_0A HM_6D72EC_Dis_10
   disableNotifyFn 1
   lastMsg    No:09 - t:02 s:6D72EC d:AFFE98 00
   protLastRcv 2021-10-05 21:04:56
   protRcv    2 last_at:2021-10-05 21:04:56
   protSnd    2 last_at:2021-10-05 21:04:56
   protState  CMDs_done
   rssi_at_CUL_0 cnt:2 min:-53 max:-51.5 avg:-52.25 lst:-53
   READINGS:
     2021-10-05 21:04:56   CommandAccepted yes
     2021-09-21 15:42:38   D-firmware      1.0
     2021-09-21 15:42:38   D-serialNr      QEQ0294715
     2021-10-05 21:04:56   IODev           CUL_0
     2021-10-05 21:04:56   battery         ok
     2021-10-05 21:04:56   commState       CMDs_done
     2021-10-05 21:04:56   state           CMDs_done
   helper:
     HM_CMDNR   9
     cSnd       ,11AFFE986D72EC80010203
     lastMsgTm  1633460696.59442
     mId        00D3
     peerFriend -
     peerOpt    -:display
     regLst     0
     rxType     4
     supp_Pair_Rep 0
     ack:
       vccu       HM_6D72EC_Dis_01:08
     cmds:
       TmplKey    :no:1633460670.58908
       TmplTs     1633460670.58908
       cmdKey     0:1:0::Display:00D3: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-]
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- [-addr2:data2-]...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         tplDel     -tplDel-
         unpair     noArg
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplDel     
       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        0
       raw        1
       tpl        0
     io:
       flgs       0
       newChn     +6D72EC,00,00,00
       nextSend   1633460696.6403
       rxt        0
       vccu       
       p:
         6D72EC
         00
         00
         00
       prefIO:
     mRssi:
       mNo        09
       io:
         CUL_0:
           -47
           -47
     peerIDsH:
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   00
       qReqStat   
     role:
       dev        1
     rssi:
       at_CUL_0:
         avg        -52.25
         cnt        2
         lst        -53
         max        -51.5
         min        -53
     tmpl:
Attributes:
   IODev      CUL_0
   IOgrp      vccu:CUL_0
   autoReadReg 4_reqStatus
   expert     defReg,rawReg
   firmware   1.0
   model      HM-Dis-WM55
   msgRepeat  3
   room       CUL_HM
   serialNr   QEQ0294715
   subType    display
   webCmd     getConfig:clear msgEvents


list -r Display
define Display CUL_HM 6D72EC
attr Display IODev CUL_0
attr Display IOgrp vccu:CUL_0
attr Display autoReadReg 4_reqStatus
attr Display expert defReg,rawReg
attr Display firmware 1.0
attr Display model HM-Dis-WM55
attr Display msgRepeat 3
attr Display room CUL_HM
attr Display serialNr QEQ0294715
attr Display subType display
attr Display webCmd getConfig:clear msgEvents

setstate Display CMDs_done
setstate Display 2021-10-05 21:04:30 .associatedWith Display,HM_6D72EC_Dis_01,HM_6D72EC_Dis_02,HM_6D72EC_Dis_03,HM_6D72EC_Dis_04,HM_6D72EC_Dis_05,HM_6D72EC_Dis_06,HM_6D72EC_Dis_07,HM_6D72EC_Dis_08,HM_6D72EC_Dis_09,HM_6D72EC_Dis_10,Display
setstate Display 2021-10-05 21:04:56 .protLastRcv 20211005210456
setstate Display 2021-10-05 21:04:56 CommandAccepted yes
setstate Display 2021-09-21 15:42:38 D-firmware 1.0
setstate Display 2021-09-21 15:42:38 D-serialNr QEQ0294715
setstate Display 2021-10-05 21:04:56 IODev CUL_0
setstate Display 2021-10-05 21:04:56 battery ok
setstate Display 2021-10-05 21:04:56 commState CMDs_done
setstate Display 2021-10-05 21:04:56 state CMDs_done


Beta-User

Kannst du mal "model" auf Großschreibung umstellen (falls das in der Auswahlliste ist).

PS: betr. update in FHEM müssen wir nochmal gesondert diskutieren...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

frank

das device hat nie einen attr check durchlaufen, sage ich.

was zeigt fhem, wenn du "version" in die eingabezeile tippst?
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

Beta-User

Seltsam. Jedenfalls auf meinem Testsystem ist mit diesem RAW das Attribut ".mId" nach dem Start vorhanden, selbst, wenn es nicht in der cfg steht. Das unabhängig davon, ob HMinfo und/oder eine VCCU vorhanden sind.

Ergo wäre meine Schlussfolgerung, dass HMConfig kaputt ist oder die aktualisierten Module nicht geladen werden.

=> Bitte franks Frage beantworten (v.a. im Hinblick auf fhem.pl, DevIo.pm und die drei mit CUL_HM zusammenhängenden Module. Ggf. mal die aktuelle HMConfig aus dem svn holen und vergleichen.

@huntsman: vom diesem Attribut hängt die korrekte Zuweisung der möglichen Befehle ab, ich gehe daher davon aus, dass die (bzw. displayWM) auch lange nach dem Start bei dir nicht in den Kanal-Devices vorhanden/zulässig sind.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Beta-User

@frank: Bist du auch über das hier gestolpert?
Zitat von: martinp876 am 26 Juni 2020, 13:14:22
Das file löst auch Kommandos aus welche ich zu startup machen will. So wird das zeilendisplay initialisiert..

Martin wollte anscheinend recht ultimativ aus performance-Gründen (?) nicht die ganze Initialisierung in der NotifyFn haben... Damit wäre mein Ansatz "falsch" bzw. genau gegenläufig... Unschön. Und nun?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

huntsman

Zitat von: frank am 05 Oktober 2021, 21:25:14
das device hat nie einen attr check durchlaufen, sage ich.

was zeigt fhem, wenn du "version" in die eingabezeile tippst?

Das hier:
Latest Revision: 25046

File                Rev   Last Change

fhem.pl             25039 2021-10-01 16:21:46Z rudolfkoenig
96_allowed.pm       24751 2021-07-15 12:46:01Z rudolfkoenig
90_at.pm            24129 2021-04-02 16:56:29Z rudolfkoenig
98_autocreate.pm    23727 2021-02-12 20:31:37Z rudolfkoenig
00_CUL.pm           24815 2021-08-01 16:14:02Z rudolfkoenig
# $Id: 10_CUL_HM.pm 24961 2021-10-05 + various Beta-User-Patches + sort II + new initialisation + allow more set commands in startup phase + start before HMinfo  $
98_dummy.pm         20665 2019-12-06 11:05:35Z rudolfkoenig
01_FHEMWEB.pm       25000 2021-09-21 08:58:47Z rudolfkoenig
92_FileLog.pm       24967 2021-09-13 16:09:40Z rudolfkoenig
98_IF.pm            12944 2017-01-03 12:56:17Z Damian
10_IT.pm            20839 2019-12-28 09:41:47Z bjoernh
91_notify.pm        24129 2021-04-02 16:56:29Z rudolfkoenig
33_readingsGroup.pm 23844 2021-02-27 19:43:24Z justme1968
99_SUNRISE_EL.pm    24249 2021-04-14 05:45:49Z rudolfkoenig
98_update.pm        24983 2021-09-16 17:15:44Z rudolfkoenig
99_Utils.pm         24128 2021-04-02 16:29:11Z rudolfkoenig
98_version.pm       15140 2017-09-26 09:20:09Z markusbloch

AttrTemplate.pm     22985 2020-10-18 09:04:19Z rudolfkoenig
Blocking.pm         23268 2020-12-01 11:48:48Z rudolfkoenig
Color.pm            20813 2019-12-22 18:42:10Z justme1968
DevIo.pm            24800 2021-07-26 11:42:33Z rudolfkoenig
HMConfig.pm         24773 2021-07-18 18:18:13Z martinp876
HttpUtils.pm        24750 2021-07-15 06:22:47Z rudolfkoenig
myUtilsTemplate.pm   7570 2015-01-14 18:31:44Z rudolfkoenig
RTypes.pm           10476 2016-01-12 21:03:33Z borisneubert
SetExtensions.pm    23300 2020-12-06 11:36:24Z rudolfkoenig
TcpServerUtils.pm   23472 2021-01-04 19:56:38Z rudolfkoenig

fhemweb.js                 25022 2021-09-27 07:11:18Z rudolfkoenig
fhemweb_readingsGroup.js   15189 2017-10-03 17:53:27Z justme1968


huntsman

Zitat von: Beta-User am 05 Oktober 2021, 21:18:00
Kannst du mal "model" auf Großschreibung umstellen (falls das in der Auswahlliste ist).

PS: betr. update in FHEM müssen wir nochmal gesondert diskutieren...

Konnte nur das Attribut modelForce auf Großschreibung setzen, sieht jetzt so aus:
list -r Display

define Display CUL_HM 6D72EC
attr Display .mId 00D3
attr Display IODev CUL_0
attr Display IOgrp vccu:CUL_0
attr Display autoReadReg 4_reqStatus
attr Display expert defReg,rawReg
attr Display firmware 1.0
attr Display model HM-DIS-WM55
attr Display modelForce HM-DIS-WM55
attr Display msgRepeat 3
attr Display room CUL_HM
attr Display serialNr QEQ0294715
attr Display subType display
attr Display webCmd getConfig:clear msgEvents

setstate Display CMDs_done
setstate Display 2021-10-06 17:01:24 .associatedWith Display,HM_6D72EC_Dis_01,HM_6D72EC_Dis_02,HM_6D72EC_Dis_03,HM_6D72EC_Dis_04,HM_6D72EC_Dis_05,HM_6D72EC_Dis_06,HM_6D72EC_Dis_07,HM_6D72EC_Dis_08,HM_6D72EC_Dis_09,HM_6D72EC_Dis_10,Display
setstate Display 2021-10-06 17:01:53 .protLastRcv 20211006170153
setstate Display 2021-10-06 17:01:53 CommandAccepted yes
setstate Display 2021-09-21 15:42:38 D-firmware 1.0
setstate Display 2021-09-21 15:42:38 D-serialNr QEQ0294715
setstate Display 2021-10-06 17:01:51 IODev CUL_0
setstate Display 2021-10-06 17:01:51 battery ok
setstate Display 2021-10-06 17:01:53 commState CMDs_done
setstate Display 2021-10-06 17:01:53 state CMDs_done


Aber damit geht es jetzt tatsächlich  :) :)
War es dann etwa nur die Großschreibung von "DIS" ?

frank

und wenn du nun einen restart machst, wie sieht dann ein list aus?
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

Beta-User

Zitat von: huntsman am 06 Oktober 2021, 17:05:43
War es dann etwa nur die Großschreibung von "DIS" ?
Jein. "Eigentlich" wird intern sowieso mit "uc" gearbeitet. Von daher würde ich schlussfolgern, dass da noch irgendwas verstecktes im Namen schlummert. (Sowas zu finden ist schwer und einer der vielen Gründe, warum von direkten cfg-Edits abzuraten ist!)

Zitat von: huntsman am 06 Oktober 2021, 17:05:43
Konnte nur das Attribut modelForce auf Großschreibung setzen, sieht jetzt so aus
Du solltest das modelForce dann auch wieder löschen können.

Grundsätzlich ist die Kette so, dass aus model (überschreibbar durch modelForce) die .mId abgeleitet wird, die dann für alles weitere der Bezugspunkt ist. Fehlt der, geht es halt nicht weiter. qed.



@frank:
U.a. wegen dieses Threads bin ich jetzt nochmal durch den Code und habe weiter keine wirklichen Lücken gefunden. Allerdings ist mir dabei nochmal deutlich geworden, dass CUL_HM_updateConfig() bei der Initialisierung zwar einmal über alle Devices drüberlauft (CUL_HM_updtDeviceModel(), aufgerufen über die Schleife ab #239)  und die Attribute etc. einsammelt. Bei den VIRTUALs wird das aber nur rudimentär gemacht, indem schlicht "model" für alle Kanäle gesetzt wird.
An diese Stelle gehört aber m.E. der Schleifendurchlauf für "welches Schweinderl bin ich denn?" hin (ehemals rund um "test1"-Log) , denn dann können wir auch die Befehle über virtuelle Kanäle ohne Timer weiter hinten direkt in CUL_HM_updateConfig() abfeuern. Wobei das uU. gar keine so gute Idee ist, weil die IO's uU. dazu noch gar nicht bereit sind? Hmm, dann lass ich das mal in den Timern drin, und gefeuert wird erst etwas später, damit die IO's erst fertig sind => "time+10" ?

Melde mich nach dem Testen nochmal, aber abgesehen von eventuellen Performance-Themen finde ich den Ablauf jetzt einigermaßen klar strukturiert...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

frank

@beta-user
warum sind hier beide attribute vorhanden?

attr Display IODev CUL_0
attr Display IOgrp vccu:CUL_0
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

huntsman

Zitat(Sowas zu finden ist schwer und einer der vielen Gründe, warum von direkten cfg-Edits abzuraten ist!)
Kann ich verstehen. Die Geräte habe ich natürlich initial mit autocreate erzeugen lassen nur die ganze Logik zur Steuerung habe ich manuell dazugefügt. An den Attributen der Devices habe ich eigentlich nicht manuell rumgespielt, außer z.B die Zuordnung zu Räumen...

huntsman

Zitat
und wenn du nun einen restart machst, wie sieht dann ein list aus?

list -r Display
define Display CUL_HM 6D72EC
attr Display .mId 00D3
attr Display IODev CUL_0
attr Display IOgrp vccu:CUL_0
attr Display autoReadReg 4_reqStatus
attr Display expert defReg,rawReg
attr Display firmware 1.0
attr Display model HM-DIS-WM55
attr Display modelForce HM-DIS-WM55
attr Display msgRepeat 3
attr Display room CUL_HM
attr Display serialNr QEQ0294715
attr Display subType display
attr Display webCmd getConfig:clear msgEvents

setstate Display CMDs_done
setstate Display 2021-10-06 18:07:01 .associatedWith Display,HM_6D72EC_Dis_01,HM_6D72EC_Dis_02,HM_6D72EC_Dis_03,HM_6D72EC_Dis_04,HM_6D72EC_Dis_05,HM_6D72EC_Dis_06,HM_6D72EC_Dis_07,HM_6D72EC_Dis_08,HM_6D72EC_Dis_09,HM_6D72EC_Dis_10,Display
setstate Display 2021-10-06 17:41:45 .protLastRcv 20211006174145
setstate Display 2021-10-06 17:41:45 CommandAccepted yes
setstate Display 2021-09-21 15:42:38 D-firmware 1.0
setstate Display 2021-09-21 15:42:38 D-serialNr QEQ0294715
setstate Display 2021-10-06 18:07:01 IODev CUL_0
setstate Display 2021-10-06 17:41:43 battery ok
setstate Display 2021-10-06 17:41:45 commState CMDs_done
setstate Display 2021-10-06 17:41:45 state CMDs_done


list Display
Internals:
   DEF        6D72EC
   FUUID      615ca1b9-f33f-9964-da50-fa10e321c8e6b33d
   IODev      CUL_0
   NAME       Display
   NR         220
   NTFY_ORDER 48-Display
   STATE      CMDs_done
   TYPE       CUL_HM
   channel_01 HM_6D72EC_Dis_01
   channel_02 HM_6D72EC_Dis_02
   channel_03 HM_6D72EC_Dis_03
   channel_04 HM_6D72EC_Dis_04
   channel_05 HM_6D72EC_Dis_05
   channel_06 HM_6D72EC_Dis_06
   channel_07 HM_6D72EC_Dis_07
   channel_08 HM_6D72EC_Dis_08
   channel_09 HM_6D72EC_Dis_09
   channel_0A HM_6D72EC_Dis_10
   disableNotifyFn 1
   READINGS:
     2021-10-06 17:41:45   CommandAccepted yes
     2021-09-21 15:42:38   D-firmware      1.0
     2021-09-21 15:42:38   D-serialNr      QEQ0294715
     2021-10-06 18:07:01   IODev           CUL_0
     2021-10-06 17:41:43   battery         ok
     2021-10-06 17:41:45   commState       CMDs_done
     2021-10-06 17:41:45   state           CMDs_done
   helper:
     HM_CMDNR   153
     mId        00D3
     peerFriend -
     peerOpt    -:display
     regLst     0
     rxType     4
     cmds:
       TmplKey    :no:noAssTs
       TmplTs     1633536421.4518
       cmdKey     0:1:0::Display:00D3: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-]
         raw        -data- [...]
         regBulk    -list-.-peerChn- -addr1:data1- [-addr2:data2-]...
         regSet     [(prep|{exec})] -regName- -value- [-peerChn-]
         reset      noArg
         tplDel     -tplDel-
         unpair     noArg
       lst:
         condition  slider,0,1,255
         peer       
         peerOpt   
         tplDel     
       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
     dispi:
       l:
         l1:
           d          1
         l2:
           d          1
         l3:
           d          1
         l4:
           d          1
         l5:
           d          1
         l6:
           d          1
       s:
         l1:
           d          1
         l2:
           d          1
         l3:
           d          1
         l4:
           d          1
         l5:
           d          1
         l6:
           d          1
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       flgs       0
       newChn     +6D72EC,00,00,00
       rxt        0
       vccu       
       p:
         6D72EC
         00
         00
         00
       prefIO:
     mRssi:
       mNo       
     peerIDsH:
     prt:
       bErr       0
       sProc      0
     q:
       qReqConf   00
       qReqStat   
     role:
       dev        1
     tmpl:
Attributes:
   IODev      CUL_0
   IOgrp      vccu:CUL_0
   autoReadReg 4_reqStatus
   expert     defReg,rawReg
   firmware   1.0
   model      HM-DIS-WM55
   modelForce HM-DIS-WM55
   msgRepeat  3
   room       CUL_HM
   serialNr   QEQ0294715
   subType    display
   webCmd     getConfig:clear msgEvents


Im log sehe ich übrigens noch ein paar Perl warnings:


2021.10.06 18:07:01 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_CUL_HM.pm line 4965.
2021.10.06 18:07:01 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/10_CUL_HM.pm line 4976.
2021.10.06 18:07:01 1: PERL WARNING: Use of uninitialized value in hash element at fhem.pl line 4521.
2021.10.06 18:07:01 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/10_CUL_HM.pm line 5050.
...
2021.10.06 18:07:01 1: PERL WARNING: Can't exec "lsusb": No such file or directory at ./FHEM/98_autocreate.pm line 587.
..