piVCCU3 + FHEM + HMIP-DLD (IP "Keymatic")

Begonnen von tkempken, 24 Juni 2021, 20:24:56

Vorheriges Thema - Nächstes Thema

tkempken

Hi,

ich wollte mal etwas Wissen zurückgeben und habe nun einige Zeit benötigt um herauszufinden, wie die neue IP Keymatic angesprochen werden kann. Leider ist sie nach dem Device anlegen noch nicht out-of-the-box funktional.

Folgende Attribute helfen :-)


attr xxx controldatapoint LOCK_TARGET_LEVEL
attr xxx devStateIcon 0:secur_open@orange:unlock 1:secur_locked@lime:unlock 2:secur_open@red:lock
attr xxx stateFormat 1.LOCK_STATE
attr xxx statedatapoint LOCK_TARGET_LEVEL
attr xxx statevals unlock:1,open:2,lock:3
attr xxx webCmd lock:unlock:open


Damit lässt sich die neue Keymatic wie gewohnt mit set ... open / unlock / lock ansprechen.

BTW: Diese Technical Doku hat mir geholfen:

https://www.homematic-ip.com/downloads/download/homematic/hm_web_ui_doku/HmIP_Device_Documentation-1.33.21.pdf

Vielleicht kann ich damit jemanden helfen ;-)

zap

#1
Benutzt Du schon HMCCU 4.4 (Beta) ?
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

tkempken

#2
Hi,

tatsächlich war ich auf 4.3 hatte extra noch ein fhem update all gemacht und die piMatic auf neusten Stand, allerdings die HMCCU nur aus der Standardrepo.
Ich bin jetzt auf 4.4.069 und habe mein DLD gelöscht und wollte diesen über get CCU3 createDev xxx neuanlegen, allerdings kommt dort nur:

Results of create command:
Not detected CCU devices:
  xxx = 002Ayyyyyyyyy [xxx]


Bei get CCU3 deviceInfo xxx kommt folgender Output.
Vielleicht ist das DLD noch nicht eingepflegt im Code?

ZitatDevice detection:
No state datapoint detected
No control datapoint detected

Failed to detect device settings. Device must be configured manually.

Output:


Device channels and datapoints

DEV xxx 002Ayyyyyyy interface=HmIP-RF type=HmIP-DLD
CHN 002Ayyyyyyy:0 xxx:0
   0.CONFIG_PENDING = false {b} [RE]
   0.DUTY_CYCLE = false {b} [RE]
   0.INSTALL_TEST = true {b} [RW]
   0.LOW_BAT = false {b} [RE]
   0.OPERATING_VOLTAGE = 4.500000 {f} [RE]
   0.OPERATING_VOLTAGE_STATUS = 0 {i} [RE]
   0.RSSI_DEVICE = 199 {n} [RE]
   0.RSSI_PEER = 193 {n} [RE]
   0.UNREACH = false {b} [RE]
   0.UPDATE_PENDING = false {b} [RE]
CHN 002Ayyyyyyy:1 Schloss
   1.ACTIVITY_STATE = 3 {i} [RE]
   1.LOCK_STATE = 1 {i} [RE]
   1.LOCK_TARGET_LEVEL =  {i} [W]
   1.PROCESS = 0 {i} [RE]
   1.SECTION = 0 {i} [RE]
   1.SECTION_STATUS = 0 {i} [RE]
   1.WP_OPTIONS = 0 {i} [RWE]
CHN 002Ayyyyyyy:2 HmIP-DLD 002Ayyyyyyy:2
   2.ACCESS_AUTHORIZATION =  {i} [W]
   2.STATE = true {b} [RE]
CHN 002Ayyyyyyy:3 HmIP-DLD 002Ayyyyyyy:3
   3.ACCESS_AUTHORIZATION =  {i} [W]
   3.STATE = true {b} [RE]
CHN 002Ayyyyyyy:4 HmIP-DLD 002Ayyyyyyy:4
   4.ACCESS_AUTHORIZATION =  {i} [W]
   4.STATE = true {b} [RE]
CHN 002Ayyyyyyy:5 HmIP-DLD 002Ayyyyyyy:5
   5.ACCESS_AUTHORIZATION =  {i} [W]
   5.STATE = true {b} [RE]
CHN 002Ayyyyyyy:6 HmIP-DLD 002Ayyyyyyy:6
   6.ACCESS_AUTHORIZATION =  {i} [W]
   6.STATE = true {b} [RE]
CHN 002Ayyyyyyy:7 HmIP-DLD 002Ayyyyyyy:7
   7.ACCESS_AUTHORIZATION =  {i} [W]
   7.STATE = true {b} [RE]
CHN 002Ayyyyyyy:8 HmIP-DLD 002Ayyyyyyy:8
   8.ACCESS_AUTHORIZATION =  {i} [W]
   8.STATE = true {b} [RE]
CHN 002Ayyyyyyy:9 HmIP-DLD 002Ayyyyyyy:9
   9.ACCESS_AUTHORIZATION =  {i} [W]
   9.STATE = true {b} [RE]
CHN 002Ayyyyyyy:10 HmIP-DLD 002Ayyyyyyy:10
   10.COMBINED_PARAMETER =  {s} [W]
   10.WEEK_PROGRAM_CHANNEL_LOCKS = 0 {i} [RE]
   10.WEEK_PROGRAM_TARGET_CHANNEL_LOCK =  {i} [W]
   10.WEEK_PROGRAM_TARGET_CHANNEL_LOCKS =  {i} [W]

Device detection:
No state datapoint detected
No control datapoint detected

Failed to detect device settings. Device must be configured manually.

Current state datapoint = .

Current control datapoint = .

Device description

Device 002Ayyyyyyy xxx [HmIP-DLD]
  AES_ACTIVE: 1
  AVAILABLE_FIRMWARE: 0.0.0
  CHILDREN: 002Ayyyyyyy:0,002Ayyyyyyy:1,002Ayyyyyyy:2,002Ayyyyyyy:3,002Ayyyyyyy:4,002Ayyyyyyy:5,002Ayyyyyyy:6,002Ayyyyyyy:7,002Ayyyyyyy:8,002Ayyyyyyy:9,002Ayyyyyyy:10
  DIRECTION: NONE
  FIRMWARE: 1.2.0
  FIRMWARE_UPDATE_STATE: UP_TO_DATE
  FLAGS: Visible
  PARAMSETS: MASTER,SERVICE
  RF_ADDRESS: 4146858
  ROAMING: 0
  RX_MODE: ALWAYS,LAZY_CONFIG,BURST
  SUBTYPE: DLD
  UPDATABLE: 1
Channel 002Ayyyyyyy:0 xxx:0 [MAINTENANCE]
  AES_ACTIVE: 1
  DIRECTION: NONE
  FLAGS: Visible
  PARAMSETS: MASTER,VALUES,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:1 Schloss [DOOR_LOCK_STATE_TRANSMITTER]
  AES_ACTIVE: 1
  DIRECTION: NONE
  FLAGS: Visible
  PARAMSETS: MASTER,VALUES,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:2 HmIP-DLD 002Ayyyyyyy:2 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:3 HmIP-DLD 002Ayyyyyyy:3 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:4 HmIP-DLD 002Ayyyyyyy:4 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:5 HmIP-DLD 002Ayyyyyyy:5 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:6 HmIP-DLD 002Ayyyyyyy:6 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:7 HmIP-DLD 002Ayyyyyyy:7 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:8 HmIP-DLD 002Ayyyyyyy:8 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:9 HmIP-DLD 002Ayyyyyyy:9 [ACCESS_RECEIVER]
  AES_ACTIVE: 1
  DIRECTION: RECEIVER
  FLAGS: Visible
  LINK_TARGET_ROLES: LEVEL,SWITCH,CONDITIONAL_SWITCH,REMOTE_CONTROL
  PARAMSETS: MASTER,VALUES,LINK,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1
Channel 002Ayyyyyyy:10 HmIP-DLD 002Ayyyyyyy:10 [SWITCH_WEEK_PROFILE]
  AES_ACTIVE: 1
  DIRECTION: NONE
  FLAGS: Visible
  PARAMSETS: MASTER,VALUES,SERVICE
  PARENT: 002Ayyyyyyy
  PARENT_TYPE: HmIP-DLD
  RF_ADDRESS: 0
  ROAMING: 0
  RX_MODE:
  UPDATABLE: 1


tkempken

#3
Update:
Nachdem ich zu meinem obigen Workaround zurück bin funktioniert dieser nicht mehr mit HMCCU 4.4.069:

Ich bekomme das Attr statedatapoint nicht mehr auf LOCK_TARGET_LEVEL gesetzt:

ZitatInvalid value 1.LOCK_TARGET_LEVEL

So ich bin nun etwas weiter mit meinen Erkenntnissen...
Ich hatte mir deine Repo geforked und wollte die HMCCUConf.pm erweitern für die DLD. Allerdings haben meine Einträge nie gematched. Ich vermute das liegt entweder an der piVCCU3 oder an der CCU3 selbst, da beim anlernen das Gerät korrekt erkannt wird als HmIP-DLD. Allerdings nach dem hinzufügen wird der Device Type nur noch als "DEVICE" genannt. (siehe Anlage)


zap

#4
Zitat von: tkempken am 26 Juni 2021, 08:44:39
Update:
Nachdem ich zu meinem obigen Workaround zurück bin funktioniert dieser nicht mehr mit HMCCU 4.4.069:

Ich bekomme das Attr statedatapoint nicht mehr auf LOCK_TARGET_LEVEL gesetzt:

So ich bin nun etwas weiter mit meinen Erkenntnissen...
Ich hatte mir deine Repo geforked und wollte die HMCCUConf.pm erweitern für die DLD. Allerdings haben meine Einträge nie gematched. Ich vermute das liegt entweder an der piVCCU3 oder an der CCU3 selbst, da beim anlernen das Gerät korrekt erkannt wird als HmIP-DLD. Allerdings nach dem hinzufügen wird der Device Type nur noch als "DEVICE" genannt. (siehe Anlage)

Kann nicht funktionieren, da LOCK_TARGET_LEVEL write only ist. In 4.4 werden state- und controldatapoint auf Zulässigkeit geprüft. controldatapoint muss beschreibbar sein, statedatapoint muss lesbar sein oder Events liefern => LOCK_STATE wäre hier richtig.

Bist Du sicher, dass das stimmt: unlock:1,open:2,lock:3 ?
m.E. müsste es eher so aussehen: unlock:1,open:2,lock:0

Schick mal bitte die Ausgabe von get paramDesc.

Die CCU kennt das Gerät nicht. Bist Du auf der aktuellen CCU Firmware?


2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)