Integration hm-lc-ja1pbu-fm Jalousiesteuerung

Begonnen von markus25, 25 November 2016, 15:41:43

Vorheriges Thema - Nächstes Thema

markus25

Hallo Zusammen,
hat schon jemand den neuen Funkschaltaktor hm-lc-ja1pbu-fm zur Jalousienstuerung und hat in zum laufen bekommen?
Anlernen lässt sich der Aktor, aber über Funk nicht bedienen.

Hab leider anscheinend den falschen bestellt, laut ELV gibt es den auch erst seit zwei Wochen.
FHEM auf Raspi3 HMLAN und Cuno, Resol per VBus und Jeelink

Otto123

Hallo Markus25,

da wirst Du wohl etwas die Ruhe bewahren müssen, und Dich mit Martin gut stellen :)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

tndx

Mich hat es leider auch erwischt, habe den Jalosienaktor statt des Roulladenaktors bestellt, und das gleich 2x... Lieber Martin, bitte, bitte  :D

ar_wi

Stehe vor der Entscheidung die HM-LC-Ja1PBU-FM zu kaufen oder die HM-LC-Bl1PBU-FM und schließe mich der Frage an.

chipmunk

Was ist eigentlich der genaue Unterschied zwischen Rollladen- und Jalousieaktor, von der Schaltung her sehen sie mir irgendwie ident aus?
Nur die Firmware?
Ich habe diesbezüglich noch nirgends genauere Infos gefunden.

Chipmunk
RasPi3, HM, HUE, div 433MHz Baumarktdosen über Sende- und Empfangsmodule von C*, Ediplug

ar_wi

Kann eigentlich nur Firmware sein. Schätze mal, dass da Variablen dazukommen, wie z.B. die Zeit, die es braucht, die Lamellen zu drehen etc.
Hardware-mäßig wird da auch nur ein Wechler-Relais und ein Schalt-Relais verbaut sein.
Alles natürlich nur Spekulation.

tndx

Die Schaltung mag äquivalent sein, ist aber nicht identisch. Zumindest in der Bausatz-Variante sind die 2 kleineren Elkos nicht mehr einzulöten, die zu nah an anderen Bauteilen lagen und mir als Lötlaien Probleme bereitet haben. Ich hatte mich schon über die neue Hardwarerevision gefreut, bis ich gemerkt hatte, dass es ein anderes, (noch) inkompatibles Produkt ist.

martinp876

so - ein Versuch ist drin.
Einmal anlernen drücken sollte das attr model korrekt setzen.
Beachtet die neuen Kommandos pct, pctSlat, pctLvlSlat.
Auch die Readings zu slat und slatDir sollten gesetzt werden.

testet einmal - hätte mich auf interessiert.... steuert wohl die Lamellenstellung der Jalousien. cool, wenn es endlich funktioniert. Leider habe ich diese nicht.



tndx

Hallo Martin,

vielen Dank für Deine Mühe!

Ich habe nun meine beiden Aktoren eingebaut und nach einigem Hin und Her gepairt (ging nur mit hmPairSerial, die Rolladenaktoren gingen m.W. auch mit hmPairForSec und manuellem Auslösen des Configschalters).

Es werden Readings angezeigt, es stehen auch einge grundlegende Funktionen bereit:


Gets ------
cmdList
param -param-
reg -addr- ... -list- -peer-
regList
regVal -addr- ... -list- -peer-
saveConfig -filename- ...

Sets ------
assignHmKey
clear [readings|rssi|msgEvents|unknownDev]
clear [readings|trigger|register|oldRegs|rssi|msgEvents|attack|all]
deviceRename newName
fwUpdate -filename- -bootTime- ...
getConfig
getRegRaw [List0|List1|List2|List3|List4|List5|List6] ... [-PeerChannel-]
peerBulk -peer1,peer2,...- [set|unset]
raw data ...
regBulk -list-:-peer- -addr1:data1- -addr2:data2- ...
regSet [prep|exec] -regName- -value- ... [-peerChannel-]
reset
sign [on|off]
templateDel tmplt
unpair
virtual -noButtons-


aber leider nicht die wesentlichen wie "up", "down" etc...

martinp876

und wie hast du das geschafft? in meiner simulation gibt es alles, rauf, runter, pct, pctSlat, pctLvlSlat
a) ist HMConfig auf Stand? ggf. update force machen
b) mache ein List des device

tndx

#10
Zitat von: martinp876 am 04 Dezember 2016, 19:55:02
a) ist HMConfig auf Stand? ggf. update force machen
b) mache ein List des device

War aktuell, "update force " hat nichts daran geändert

Zitat von: martinp876 am 04 Dezember 2016, 19:55:02
b) mache ein List des device


Internals:
   DEF        51033C
   IODev      myHmUART
   NAME       HM_51033C
   NOTIFYDEV  global
   NR         156
   NTFY_ORDER 50-HM_51033C
   STATE      RESPONSE TIMEOUT:RegisterRead
   TYPE       CUL_HM
   Readings:
     2016-12-04 10:52:22   CommandAccepted yes
     2016-12-04 10:52:21   D-firmware      2.10
     2016-12-04 10:52:21   D-serialNr      NEQXXXXXXX
     2016-12-04 11:40:21   PairedTo        0xF3A460
     2016-12-04 10:52:25   R-pairCentral   0xF3A460
     2016-12-04 11:40:21   RegL_00.        02:01 0A:F3 0B:A4 0C:60 15:FF 18:00 00:00
     2016-12-04 11:33:48   powerOn         2016-12-04 11:33:48
     2016-12-04 18:31:55   recentStateType info
     2016-12-04 10:51:19   state           RESPONSE TIMEOUT:RegisterRead
   Helper:
     HM_CMDNR   1
     Expert:
       def        1
       det        0
       raw        1
       tpl        0
     Io:
       newChn     +51033C,00,01,00
       rxt        0
       vccu       VCCU
       p:
         51033C
         00
         01
         00
       prefIO:
         myHmUART
     Mrssi:
       mNo
     Prt:
       bErr       0
       sProc      0
     Q:
       qReqConf
       qReqStat
     Role:
       chn        1
       dev        1
Attributes:
   IODev      myHmUART
   IOgrp      VCCU:myHmUART
   autoReadReg 4_reqStatus
   expert     2_raw
   firmware   2.10
   model      unknown
   room       CUL_HM
   serialNr   NEQXXXXXXX


Was mir auffällt ist, dass das subType-Attribut nicht gesetzt ist. Setze ich es manuell auf "blindActuator", kriege ich auch up und down und eine Menge weitere Operationen angeboten, aber nicht die von Dir angesprochenen pctSlat und pctLvlSlat. Ich kann gerade leider nicht testen, ob wenigstens up und down funktionieren.

tndx

Ich habe nun anhand Deiner letzten Änderungen im SVN gesehen, dass es sowohl auf das subType- als auch auf das model-Attribut ankommt. Nachdem ich beide bei beiden Aktoren manuell gesetzt habe, scheint es wohl wie von Dir beabsichtigt zu funktionieren. Up und down konnte ich nun erfolgreich testen, für pctLvlSlat und pctSlat habe ich leider keine Verwendung. Irgendeine Idee, warum das beim Pairing nicht automatisch angelegt wird?

BTW: Bei den Jalousieaktoren sind die Tasten am Aktor anders belegt als bei den Rolladenaktoren: um die Rolladen hoch- bzw. runterfahern zu lassen muss man nun lange auf die entsprechende Taste drücken. Kann man dieses Verhalten ändern, damit es mit einer kurzen Betätigung funktioniert?

Otto123

Zitat von: tndx am 05 Dezember 2016, 14:46:51
BTW: Bei den Jalousieaktoren sind die Tasten am Aktor anders belegt als bei den Rolladenaktoren: um die Rolladen hoch- bzw. runterfahern zu lassen muss man nun lange auf die entsprechende Taste drücken. Kann man dieses Verhalten ändern, damit es mit einer kurzen Betätigung funktioniert?
Hi,

das geht prinzipiell über die Register. Du kannst schauen ob Dir im Wiki der Artikel zu hminfo und die Templates helfen.
Da ich die neuen Schalter aber nicht habe, die Register sicher anders sind, kann ich dazu nichts sagen.

Du kannst natürlich auch mit get regList und regTable die Unterschiede in den Aktoren ermitteln und versuchen.
Vorher mit saveConfig die Register zur Sicherheit sichern.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

tndx

Hallo Otto,

danke für Deine Antwort bzgl. Register. Ich habe sie mir zu Herzen genommen und versucht, die Unterschiede in den beiden Aktoren ausfindig zu machen. Folgendes habe ich festgestellt:

RegList HM-LC-Bl1PBU-FM:
list:         register | range              | peer     | description
   0: confBtnTime      |   1 to 255min      |          | 255=permanent special:permanent
   0: intKeyVisib      |     literal        |          | visibility of internal channel options:invisib,visib
   0: localResDis      |     literal        |          | local reset disable options:on,off
   0: pairCentral      |   0 to 16777215    |          | pairing to central
   1: driveDown        |   0 to 6000s       |          | drive time up
   1: driveTurn        | 0.5 to 25.5s       |          | engine uncharge - fhem min = 0.5s for protection. HM min= 0s (use regBulk if necessary)
   1: driveUp          |   0 to 6000s       |          | drive time up
   1: refRunCounter    |   0 to 255         |          | start reference run after n non-end drives
   1: sign             |     literal        |          | signature (AES) options:on,off
   1: statusInfoMinDly |   0 to 15.5s       |          | status message min delay special:unused
   1: statusInfoRandom |   0 to 7s          |          | status message random delay
   1: transmitTryMax   |   1 to 10          |          | max message re-transmit
   3: lgActionType     |     literal        | required |  options:toggleToCntInv,jmpToTarget,toggleToCnt,off
   3: lgBlJtDlyOff     |     literal        | required | Jump from delayOff options:refOff,refOn,rampOn,off,rampOff,on,dlyOff,no,dlyOn
   3: lgBlJtDlyOn      |     literal        | required | Jump from delayOn options:dlyOn,rampOff,off,dlyOff,on,no,rampOn,refOn,refOff
   3: lgBlJtOff        |     literal        | required | Jump from off options:dlyOn,no,dlyOff,on,off,rampOff,refOn,rampOn,refOff
   3: lgBlJtOn         |     literal        | required | Jump from on options:dlyOn,dlyOff,on,no,off,rampOff,rampOn,refOn,refOff
   3: lgBlJtRampOff    |     literal        | required | Jump from rampOff options:rampOn,refOn,refOff,dlyOn,on,dlyOff,no,off,rampOff
   3: lgBlJtRampOn     |     literal        | required | Jump from rampOn options:refOn,rampOn,refOff,dlyOn,no,dlyOff,on,rampOff,off
   3: lgBlJtRefOff     |     literal        | required | Jump from refOff options:refOff,rampOn,refOn,rampOff,off,dlyOff,no,on,dlyOn
   3: lgBlJtRefOn      |     literal        | required | Jump from refOn options:on,dlyOff,no,off,rampOff,dlyOn,refOff,refOn,rampOn
   3: lgCtDlyOff       |     literal        | required | Jmp on condition from delayOff options:ltHi,outside,between,geLo,ltLo,geHi
   3: lgCtDlyOn        |     literal        | required | Jmp on condition from delayOn options:between,geLo,ltLo,ltHi,outside,geHi
   3: lgCtOff          |     literal        | required | Jmp on condition from off options:outside,ltHi,geLo,between,ltLo,geHi
   3: lgCtOn           |     literal        | required | Jmp on condition from on options:geHi,between,geLo,ltLo,outside,ltHi
   3: lgCtRampOff      |     literal        | required | Jmp on condition from rampOff options:geHi,geLo,between,ltLo,outside,ltHi
   3: lgCtRampOn       |     literal        | required | Jmp on condition from rampOn options:ltHi,outside,ltLo,between,geLo,geHi
   3: lgCtRefOff       |     literal        | required | Jmp on condition from refOff options:ltHi,outside,ltLo,between,geLo,geHi
   3: lgCtRefOn        |     literal        | required | Jmp on condition from refOn options:geHi,outside,ltHi,ltLo,between,geLo
   3: lgCtValHi        |   0 to 255         | required | Condition value high for CT table
   3: lgCtValLo        |   0 to 255         | required | Condition value low for CT table
   3: lgDriveMode      |     literal        | required |  options:viaLowerEnd,viaNextEnd,direct,viaUpperEnd
   3: lgMaxTimeF       |   0 to 25.5s       | required | max time first direction. special:unused
   3: lgMultiExec      |     literal        | required | execution per repeat message options:on,off
   3: lgOffDly         |   0 to 111600s     | required | off delay
   3: lgOffLevel       |   0 to 100%        | required | PowerLevel off
   3: lgOffTime        |   0 to 111600s     | required | off time special:unused
   3: lgOffTimeMode    |     literal        | required | off time meant absolut or at least options:absolut,minimal
   3: lgOnDly          |   0 to 111600s     | required | on delay
   3: lgOnLevel        |   0 to 100.5%      | required | PowerLevel on special:oldLevel
   3: lgOnTime         |   0 to 111600s     | required | on time special:unused
   3: lgOnTimeMode     |     literal        | required | on time meant absolut or at least options:minimal,absolut
   3: shActionType     |     literal        | required |  options:toggleToCntInv,jmpToTarget,toggleToCnt,off
   3: shBlJtDlyOff     |     literal        | required | Jump from delayOff options:refOff,refOn,rampOn,off,rampOff,on,dlyOff,no,dlyOn
   3: shBlJtDlyOn      |     literal        | required | Jump from delayOn options:dlyOn,rampOff,off,dlyOff,on,no,rampOn,refOn,refOff
   3: shBlJtOff        |     literal        | required | Jump from off options:dlyOn,no,dlyOff,on,off,rampOff,refOn,rampOn,refOff
   3: shBlJtOn         |     literal        | required | Jump from on options:dlyOn,dlyOff,on,no,off,rampOff,rampOn,refOn,refOff
   3: shBlJtRampOff    |     literal        | required | Jump from rampOff options:rampOn,refOn,refOff,dlyOn,on,dlyOff,no,off,rampOff
   3: shBlJtRampOn     |     literal        | required | Jump from rampOn options:refOn,rampOn,refOff,dlyOn,no,dlyOff,on,rampOff,off
   3: shBlJtRefOff     |     literal        | required | Jump from refOff options:refOff,rampOn,refOn,rampOff,off,dlyOff,no,on,dlyOn
   3: shBlJtRefOn      |     literal        | required | Jump from refOn options:on,dlyOff,no,off,rampOff,dlyOn,refOff,refOn,rampOn
   3: shCtDlyOff       |     literal        | required | Jmp on condition from delayOff options:ltHi,outside,between,geLo,ltLo,geHi
   3: shCtDlyOn        |     literal        | required | Jmp on condition from delayOn options:between,geLo,ltLo,ltHi,outside,geHi
   3: shCtOff          |     literal        | required | Jmp on condition from off options:outside,ltHi,geLo,between,ltLo,geHi
   3: shCtOn           |     literal        | required | Jmp on condition from on options:geHi,between,geLo,ltLo,outside,ltHi
   3: shCtRampOff      |     literal        | required | Jmp on condition from rampOff options:geHi,geLo,between,ltLo,outside,ltHi
   3: shCtRampOn       |     literal        | required | Jmp on condition from rampOn options:ltHi,outside,ltLo,between,geLo,geHi
   3: shCtRefOff       |     literal        | required | Jmp on condition from refOff options:ltHi,outside,ltLo,between,geLo,geHi
   3: shCtRefOn        |     literal        | required | Jmp on condition from refOn options:geHi,outside,ltHi,ltLo,between,geLo
   3: shCtValHi        |   0 to 255         | required | Condition value high for CT table
   3: shCtValLo        |   0 to 255         | required | Condition value low for CT table
   3: shDriveMode      |     literal        | required |  options:viaLowerEnd,viaNextEnd,direct,viaUpperEnd
   3: shMaxTimeF       |   0 to 25.5s       | required | max time first direction. special:unused
   3: shMultiExec      |     literal        | required | reg unused, placeholder only options:off,on
   3: shOffDly         |   0 to 111600s     | required | off delay
   3: shOffLevel       |   0 to 100%        | required | PowerLevel off
   3: shOffTime        |   0 to 111600s     | required | off time special:unused
   3: shOffTimeMode    |     literal        | required | off time meant absolut or at least options:absolut,minimal
   3: shOnDly          |   0 to 111600s     | required | on delay
   3: shOnLevel        |   0 to 100.5%      | required | PowerLevel on special:oldLevel
   3: shOnTime         |   0 to 111600s     | required | on time special:unused
   3: shOnTimeMode     |     literal        | required | on time meant absolut or at least options:minimal,absolut


RegList HM-LC-Ja1PBU-FM:
list:         register | range              | peer     | description
   0: confBtnTime      |   1 to 255min      |          | 255=permanent special:permanent
   0: intKeyVisib      |     literal        |          | visibility of internal channel options:invisib,visib
   0: localResDis      |     literal        |          | local reset disable options:on,off
   0: pairCentral      |   0 to 16777215    |          | pairing to central
   1: driveDown        |   0 to 6000s       |          | drive time up
   1: driveTurn        | 0.5 to 25.5s       |          | engine uncharge - fhem min = 0.5s for protection. HM min= 0s (use regBulk if necessary)
   1: driveUp          |   0 to 6000s       |          | drive time up
   1: posSaveTime      | 0.1 to 25.5s       |          | position save time special:on,off
   1: refRunCounter    |   0 to 255         |          | start reference run after n non-end drives
   1: refRunTimeSlats  |   0 to 10s         |          | reference run time slats special:on,off
   1: sign             |     literal        |          | signature (AES) options:on,off
   1: statusInfoMinDly |   0 to 15.5s       |          | status message min delay special:unused
   1: statusInfoRandom |   0 to 7s          |          | status message random delay
   1: transmitTryMax   |   1 to 10          |          | max message re-transmit
   3: lgActionType     |     literal        | required |  options:toggleToCntInv,jmpToTarget,toggleToCnt,off
   3: lgBlJtDlyOff     |     literal        | required | Jump from delayOff options:refOff,refOn,rampOn,off,rampOff,on,dlyOff,no,dlyOn
   3: lgBlJtDlyOn      |     literal        | required | Jump from delayOn options:dlyOn,rampOff,off,dlyOff,on,no,rampOn,refOn,refOff
   3: lgBlJtOff        |     literal        | required | Jump from off options:dlyOn,no,dlyOff,on,off,rampOff,refOn,rampOn,refOff
   3: lgBlJtOn         |     literal        | required | Jump from on options:dlyOn,dlyOff,on,no,off,rampOff,rampOn,refOn,refOff
   3: lgBlJtRampOff    |     literal        | required | Jump from rampOff options:rampOn,refOn,refOff,dlyOn,on,dlyOff,no,off,rampOff
   3: lgBlJtRampOn     |     literal        | required | Jump from rampOn options:refOn,rampOn,refOff,dlyOn,no,dlyOff,on,rampOff,off
   3: lgBlJtRefOff     |     literal        | required | Jump from refOff options:refOff,rampOn,refOn,rampOff,off,dlyOff,no,on,dlyOn
   3: lgBlJtRefOn      |     literal        | required | Jump from refOn options:on,dlyOff,no,off,rampOff,dlyOn,refOff,refOn,rampOn
   3: lgCtDlyOff       |     literal        | required | Jmp on condition from delayOff options:ltHi,outside,between,geLo,ltLo,geHi
   3: lgCtDlyOn        |     literal        | required | Jmp on condition from delayOn options:between,geLo,ltLo,ltHi,outside,geHi
   3: lgCtOff          |     literal        | required | Jmp on condition from off options:outside,ltHi,geLo,between,ltLo,geHi
   3: lgCtOn           |     literal        | required | Jmp on condition from on options:geHi,between,geLo,ltLo,outside,ltHi
   3: lgCtRampOff      |     literal        | required | Jmp on condition from rampOff options:geHi,geLo,between,ltLo,outside,ltHi
   3: lgCtRampOn       |     literal        | required | Jmp on condition from rampOn options:ltHi,outside,ltLo,between,geLo,geHi
   3: lgCtRefOff       |     literal        | required | Jmp on condition from refOff options:ltHi,outside,ltLo,between,geLo,geHi
   3: lgCtRefOn        |     literal        | required | Jmp on condition from refOn options:geHi,outside,ltHi,ltLo,between,geLo
   3: lgCtValHi        |   0 to 255         | required | Condition value high for CT table
   3: lgCtValLo        |   0 to 255         | required | Condition value low for CT table
   3: lgDriveMode      |     literal        | required |  options:viaLowerEnd,viaNextEnd,direct,viaUpperEnd
   3: lgMaxTimeF       |   0 to 25.5s       | required | max time first direction. special:unused
   3: lgMultiExec      |     literal        | required | execution per repeat message options:on,off
   3: lgOffDly         |   0 to 111600s     | required | off delay
   3: lgOffLevel       |   0 to 100%        | required | PowerLevel off
   3: lgOffTime        |   0 to 111600s     | required | off time special:unused
   3: lgOffTimeMode    |     literal        | required | off time meant absolut or at least options:absolut,minimal
   3: lgOnDly          |   0 to 111600s     | required | on delay
   3: lgOnLevel        |   0 to 100.5%      | required | PowerLevel on special:oldLevel
   3: lgOnTime         |   0 to 111600s     | required | on time special:unused
   3: lgOnTimeMode     |     literal        | required | on time meant absolut or at least options:minimal,absolut
   3: shActionType     |     literal        | required |  options:toggleToCntInv,jmpToTarget,toggleToCnt,off
   3: shBlJtDlyOff     |     literal        | required | Jump from delayOff options:refOff,refOn,rampOn,off,rampOff,on,dlyOff,no,dlyOn
   3: shBlJtDlyOn      |     literal        | required | Jump from delayOn options:dlyOn,rampOff,off,dlyOff,on,no,rampOn,refOn,refOff
   3: shBlJtOff        |     literal        | required | Jump from off options:dlyOn,no,dlyOff,on,off,rampOff,refOn,rampOn,refOff
   3: shBlJtOn         |     literal        | required | Jump from on options:dlyOn,dlyOff,on,no,off,rampOff,rampOn,refOn,refOff
   3: shBlJtRampOff    |     literal        | required | Jump from rampOff options:rampOn,refOn,refOff,dlyOn,on,dlyOff,no,off,rampOff
   3: shBlJtRampOn     |     literal        | required | Jump from rampOn options:refOn,rampOn,refOff,dlyOn,no,dlyOff,on,rampOff,off
   3: shBlJtRefOff     |     literal        | required | Jump from refOff options:refOff,rampOn,refOn,rampOff,off,dlyOff,no,on,dlyOn
   3: shBlJtRefOn      |     literal        | required | Jump from refOn options:on,dlyOff,no,off,rampOff,dlyOn,refOff,refOn,rampOn
   3: shCtDlyOff       |     literal        | required | Jmp on condition from delayOff options:ltHi,outside,between,geLo,ltLo,geHi
   3: shCtDlyOn        |     literal        | required | Jmp on condition from delayOn options:between,geLo,ltLo,ltHi,outside,geHi
   3: shCtOff          |     literal        | required | Jmp on condition from off options:outside,ltHi,geLo,between,ltLo,geHi
   3: shCtOn           |     literal        | required | Jmp on condition from on options:geHi,between,geLo,ltLo,outside,ltHi
   3: shCtRampOff      |     literal        | required | Jmp on condition from rampOff options:geHi,geLo,between,ltLo,outside,ltHi
   3: shCtRampOn       |     literal        | required | Jmp on condition from rampOn options:ltHi,outside,ltLo,between,geLo,geHi
   3: shCtRefOff       |     literal        | required | Jmp on condition from refOff options:ltHi,outside,ltLo,between,geLo,geHi
   3: shCtRefOn        |     literal        | required | Jmp on condition from refOn options:geHi,outside,ltHi,ltLo,between,geLo
   3: shCtValHi        |   0 to 255         | required | Condition value high for CT table
   3: shCtValLo        |   0 to 255         | required | Condition value low for CT table
   3: shDriveMode      |     literal        | required |  options:viaLowerEnd,viaNextEnd,direct,viaUpperEnd
   3: shMaxTimeF       |   0 to 25.5s       | required | max time first direction. special:unused
   3: shMultiExec      |     literal        | required | reg unused, placeholder only options:off,on
   3: shOffDly         |   0 to 111600s     | required | off delay
   3: shOffLevel       |   0 to 100%        | required | PowerLevel off
   3: shOffTime        |   0 to 111600s     | required | off time special:unused
   3: shOffTimeMode    |     literal        | required | off time meant absolut or at least options:absolut,minimal
   3: shOnDly          |   0 to 111600s     | required | on delay
   3: shOnLevel        |   0 to 100.5%      | required | PowerLevel on special:oldLevel
   3: shOnTime         |   0 to 111600s     | required | on time special:unused
   3: shOnTimeMode     |     literal        | required | on time meant absolut or at least options:minimal,absolut


Der Unterschied besteht also in 2 zusätzlichen Registern beim HM-LC-Ja1PBU-FM, und zwar posSaveTime und refRunTimeSlats, das erkennt man auch, wenn man sich die "reg all" bei beiden Aktoren ansieht.

reg all HM-LC-Bl1PBU-FM
GWC_Rollo type:blindActuator -
list:peer register         :value
   0:      confBtnTime      :permanent
   0:      intKeyVisib      :invisib
   0:      localResDis      :off
   0:      pairCentral      :0xF3A460
   1:      driveDown        :21 s
   1:      driveTurn        :0.5 s
   1:      driveUp          :21 s
   1:      refRunCounter    :0
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6


reg all HM-LC-Ja1PBU-FM
KiZD_Rollo_links type:blindActuator -
list:peer register         :value
   0:      confBtnTime      :permanent
   0:      intKeyVisib      :invisib
   0:      localResDis      :off
   0:      pairCentral      :0xF3A460
   1:      driveDown        :18 s
   1:      driveTurn        :0.5 s
   1:      driveUp          :18 s
   1:      posSaveTime      :2 s
   1:      refRunCounter    :0
   1:      refRunTimeSlats  :2 s
   1:      sign             :off
   1:      statusInfoMinDly :2 s
   1:      statusInfoRandom :1 s
   1:      transmitTryMax   :6


Ich habe abe leider auf Anhieb keine Register identifizieren können, in denen das Verhalten der Taster abgelegt sein könnte, und die müsste ich doch angleichen, oder? Vielleicht hat jemand noch einen Tipp für mich...

Otto123

Hallo tndx,

ein regTable wäre noch interessant. regList liefert ja die Erklärung, regTable die tatsächlich gesetzten Register.
Vor allem, sorry hatte ich nicht erwähnt:
Du musst die internen Peers sichtbar machen:
set <device> regSet intKeyVisib visib
attr <device> expert 1_allReg

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz