HmIP-WRC6 Readings tauchen nicht auf

Begonnen von Kaufe, 04 März 2020, 19:06:35

Vorheriges Thema - Nächstes Thema

Kaufe

Hallo zusammen,

vielen Dank erst mals für die unermüdliche Arbeit! Habe FHEM nun seit mehreren Jahren im Einsatz und bin soweit echt Glücklich damit. Hatte vor ein paar wochen noch einen CUL und HomeMatic im einsatz. Da ich aber HomerMatic IP zudem verwenden wollte, bin ich nun auf einen RaspberryMatic (RP3 mit externer Antenne) umgestiegen.

Hier mal die HM_CCU anbindung (RapberryMatic Version 3.51.6.20200229):
defmod HM_CCU HMCCU 172.16.X.Y
attr HM_CCU ccudef-substitute AES_KEY!(0|false):off,(1|true):on;;LOWBAT,LOW_BAT!(0|false):ok,(1|true):low;;UNREACH!(0|false):alive,(1|true):dead;;MOTION!(0|false):noMotion,(1|true):motion;;DIRECTION!0:stop,1:up,2:down,3:undefined;;WORKING!0:false,1:true;;INHIBIT!(0|false):unlocked,(1|true):locked
attr HM_CCU ccuflags procrpc
attr HM_CCU cmdIcon on:general_an off:general_aus
attr HM_CCU event-on-change-reading .*
attr HM_CCU eventMap /rpcserver on:on/rpcserver off:off/
attr HM_CCU group 01 CCU
attr HM_CCU room HM_CCU
attr HM_CCU rpcinterfaces BidCos-RF,HmIP-RF
attr HM_CCU rpcinterval 5
attr HM_CCU rpcport 2001,2010
attr HM_CCU rpcserver on
attr HM_CCU stateFormat rpcstate/state
attr HM_CCU stripnumber 1
attr HM_CCU verbose 3

setstate HM_CCU running/OK
setstate HM_CCU 2020-02-28 08:29:46 batterycount 47
setstate HM_CCU 2020-02-28 08:29:46 batterylist no match
setstate HM_CCU 2020-02-28 08:29:46 batterymatch 0
setstate HM_CCU 2020-02-28 08:29:46 batterystate no
setstate HM_CCU 2020-03-04 17:43:49 count_channels 284
setstate HM_CCU 2020-03-04 17:43:49 count_devices 43
setstate HM_CCU 2020-03-04 17:43:49 count_groups 0
setstate HM_CCU 2020-03-04 17:43:49 count_interfaces 3
setstate HM_CCU 2020-03-04 17:43:49 count_programs 7
setstate HM_CCU 2020-03-04 17:44:02 rpcstate running
setstate HM_CCU 2020-03-04 17:44:02 state OK


die beiden RPC Server laufen auch soweit und ich sehe auch via TCPDump das sich die beiden Maschinen unterhalten. Wobei meistens Port 2010 benutzt wird, von Port 2001 seh ich sogut wie gar keinen traffic.

Die HmIP-WRC6 ist in der CCU erkannt und läuft soweit erfolgreich: HmIP-WRC6-1.png

Ein Programm hatte ich auf der CCU ebenfalls angelegt: HmIP-WRC6-2.png und HmIP-WRC6-3.png soweit sehe ich auch unter Status / bedienung die Variable die sich beim Tastendruck aktualisiert.

das Gerät hatte ich dann mit folgenden Befehl ins FHEM importieren lassen:

get HM_CCU devicelist create ^[HmIP-WRC6].* t=dev f=%n defattr save room=HM_CCU


Anschließend sollte man wohl des öfteren die Tasten drücken, was ich nun auch einige male gemacht habe.

Wenn ich nun get HmIP_WRC6_000BXXXXXXYYYY1 update mache, krieg ich nur ein fenster mit einem OK knopf drinnen.
Aber ändern tut sich leider nichts. Ich habe den Schalter nun schon 5-6 mal angelernt, also alles gelöscht und neu angelernt und ins FHEM übertragen. Doch die Readings für Press habe ich noch nie bekommen, einmal hatte ich schon Readings für Battery bekommen. Aber leider wurden die dann auch nicht aktualisiert.

Nach dem das Problem wohl mehrere Leute schon hatten bin ich natürlich diesen Forenbeiträgen gefolgt, doch leider ohne großen erfolg:
https://forum.fhem.de/index.php/topic,94484.msg872026.html#msg872026
https://forum.fhem.de/index.php/topic,107209.msg1011312.html#msg1011312

defmod HmIP_WRC6_000BXXXXXXYYYY1 HMCCUDEV 000BXXXXXXYYYY1
attr HmIP_WRC6_000BXXXXXXYYYY1 IODev HM_CCU
attr HmIP_WRC6_000BXXXXXXYYYY1 ccureadingfilter PRESS
attr HmIP_WRC6_000BXXXXXXYYYY1 room HM_CCU
attr HmIP_WRC6_000BXXXXXXYYYY1 substitute PRESS_SHORT,PRESS_LONG!(1|true):pressed,(0|false):released[code]

Welche informationen benötigt ihr noch, damit wir das Problem lösen können?

FHEM 6.0 Raspberry PI-3B-Bullseye| HauptFHEM Server (Graphana,MariaDB)
FHEM 6.0 Raspberry PI-3B-Bullseye| FHEM2FHEM, 1-Wire (Ds9490R  + 50 DS18B20)
FHEM 6.0 Raspberry PI-3B-Bullseye| FHEM2FHEM, 1-Wire (Ds9490R  + 5 DS18B20)
RaspberrMatic 3.61.7.20211218 (ca 65 HM Devices)

Kaufe

ein kleiner schritt weiter:

sobald ich in FHEM nun

attr HmIP_WRC6_000BXXXXXXYYYY1 ccureadingfilter .*


mache und danach ein

attr HmIP_WRC6_000BXXXXXXYYYY1 update


sehe ich schon ein paar readings mehr, aber leider auch nicht die gewünschten PRESS Readings.

defmod HmIP_WRC6_000BXXXXXXYYYY1 HMCCUDEV 000BXXXXXXYYYY1
attr HmIP_WRC6_000BXXXXXXYYYY1 IODev HM_CCU
attr HmIP_WRC6_000BXXXXXXYYYY1 ccureadingfilter .*
attr HmIP_WRC6_000BXXXXXXYYYY1  71 room HM_CCU
attr HmIP_WRC6_000BXXXXXXYYYY1  substitute PRESS_SHORT,PRESS_LONG!(1|true):pressed,(0|false):released

setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.CONFIG_PENDING false
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.DUTY_CYCLE false
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.INSTALL_TEST true
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.LOW_BAT ok
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.OPERATING_VOLTAGE 3.000000
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.OPERATING_VOLTAGE_STATUS 0
setstate HmIP_WRC6_000BXXXXXXYYYY1  2020-03-04 22:10:09 0.RSSI_DEVICE 179
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.RSSI_PEER 0
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.UNREACH alive
setstate HmIP_WRC6_000BXXXXXXYYYY1 2020-03-04 22:10:09 0.UPDATE_PENDING false


ein

get HmIP_WRC6_000BXXXXXXYYYY1 deviceinfo

ergibt:

CHN 000BXXXXXXYYYY1:0 HmIP-WRC6 000BXXXXXXYYYY1:0
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:0.CONFIG_PENDING = false [RE]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:0.DUTY_CYCLE = false [RE]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:0.INSTALL_TEST = true [RW]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:0.LOW_BAT = false [RE]
  DPT {f} HmIP-RF.000BXXXXXXYYYY1:0.OPERATING_VOLTAGE = 3.000000 [RE]
  DPT {i} HmIP-RF.000BXXXXXXYYYY1:0.OPERATING_VOLTAGE_STATUS = 0 [RE]
  DPT {n} HmIP-RF.000BXXXXXXYYYY1:0.RSSI_DEVICE = 178 [RE]
  DPT {n} HmIP-RF.000BXXXXXXYYYY1:0.RSSI_PEER = 0 [RE]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:0.UNREACH = false [RE]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:0.UPDATE_PENDING = false [RE]
CHN 000BXXXXXXYYYY1:1 HmIP-WRC6 000BXXXXXXYYYY1:1
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:1.PRESS_LONG = false [E]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:1.PRESS_SHORT = false [E]
CHN 000BXXXXXXYYYY1:2 HmIP-WRC6 000BXXXXXXYYYY1:2
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:2.PRESS_LONG = false [E]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:2.PRESS_SHORT = false [E]
CHN 000BXXXXXXYYYY1:3 HmIP-WRC6 000BXXXXXXYYYY1:3
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:3.PRESS_LONG = false [E]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:3.PRESS_SHORT = false [E]
CHN 000BXXXXXXYYYY1:4 HmIP-WRC6 000BXXXXXXYYYY1:4
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:4.PRESS_LONG = false [E]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:4.PRESS_SHORT = false [E]
CHN 000BXXXXXXYYYY1:5 HmIP-WRC6 000BXXXXXXYYYY1:5
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:5.PRESS_LONG = false [E]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:5.PRESS_SHORT = false [E]
CHN 000BXXXXXXYYYY1:6 HmIP-WRC6 000BXXXXXXYYYY1:6
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:6.PRESS_LONG = false [E]
  DPT {b} HmIP-RF.000BXXXXXXYYYY1:6.PRESS_SHORT = false [E]


in einem anderen Thread wurde erwähnt das man alle Channels auf der CCU gleich umbenennen sollte. Dieses hatte ich auch schon mehrfach versucht, doch leider ohne Erfolg.

FHEM 6.0 Raspberry PI-3B-Bullseye| HauptFHEM Server (Graphana,MariaDB)
FHEM 6.0 Raspberry PI-3B-Bullseye| FHEM2FHEM, 1-Wire (Ds9490R  + 50 DS18B20)
FHEM 6.0 Raspberry PI-3B-Bullseye| FHEM2FHEM, 1-Wire (Ds9490R  + 5 DS18B20)
RaspberrMatic 3.61.7.20211218 (ca 65 HM Devices)

thomas.z

Moin,
für die Press-Kanäle steht
ZitatDPT {b} HmIP-RF.000BXXXXXXYYYY1:1.PRESS_LONG = false [E]
[E] reicht nicht zum Lesen, es müsste dort [RE]  stehen.

Gruß
Thomas
Gruß
Thomas
--
tinkerboard s, RPI-RF-MOD, debmatic 3.61.7.90, fhem 5.9.21052, HMIP-WTH-x, HMIP-eTRV-x, HMIP-BSM, Delock 11826, RPI 3b mit ebus Adapter 2.2 RPI, SMA-EM, Compleo eBox-Smart

Kaufe

Hi @Thomas.z,

danke dir vielmals, das ist richtig. Wenn ich anderen Foreneinträge ansehe dann haben die Entweder EW oder ER ....
Aber leider konnte ich auch mit der neuen erkenntniss nichts rausfinden, bzw etwas ändern. Gibts hier evtl eine Doku wie ich das ändern könnte?


Das Problem warum ich das eigentlich haben wollte, ich wollte den 6fach schalter eine normale Homematic schalten lassen(will ja nicht alle alten Homematic ersetzen). Solche Sachen hatte ich bis Dato immer über FHEM gelöst, da hier alles zentral zusammenläuft. Damit die Frau auch wieder Glücklich ist, habe ich es gerade mit einen Programm in der CCU gelöst, schade.

Wenn ihr noch weitere Ideen habt, oder gar andere Foreneinträge die ich nicht gefunden habe, nur her damit.

FHEM 6.0 Raspberry PI-3B-Bullseye| HauptFHEM Server (Graphana,MariaDB)
FHEM 6.0 Raspberry PI-3B-Bullseye| FHEM2FHEM, 1-Wire (Ds9490R  + 50 DS18B20)
FHEM 6.0 Raspberry PI-3B-Bullseye| FHEM2FHEM, 1-Wire (Ds9490R  + 5 DS18B20)
RaspberrMatic 3.61.7.20211218 (ca 65 HM Devices)

thomas.z

Moin Kaufe,

eine fertige Lösung habe ich leider nicht, da ich Neuling bin und mich gerade erst mit den Untiefen von virtuellen HmIP-Geräten und deren Behandlung durch HMCCUxxx beschäftigt habe. Einen "Schalter" habe ich aber doch, einen HmIP-BSM. Dieser hat sich glücklicherweise selber in FHEM konfiguriert, da zap dafür schon defaults hinterlegt hatte.

Der Begriff Schalter für dies Ding ist jedoch höchst irreführend. De facto ist es eine Kombination aus 2-fach Taster und Schalt-/Messaktor. also eigentlich 2 Geräten, die intern schon die richtigen Kanalverknüpfungen haben, damit man draufdrücken kann, und das Licht geht an und aus.

Dein WRC6 ist halt ein 6-fach Taster. Und wie das bei Tastern so üblich ist, sind die halt die meiste Zeit "offen". Deshalb sind die PRESS-datapoints auch nur mit [E] wie Event gekennzeichnet.

Nach meinem Verständnis müssen die Readings für die PRESS-Events sehr wohl definiert werden, damit man dann per notify Definition dahinter, also auf das zugehörige Reading, den passenden Code packen kann z. B. if "off" then "on" else "off".  (Diese Programmiersprache ist noch nicht erfunden ...).

Hier die vollständige Definition meines BSM aus der fhem.cfg:

define wz_schalter HMCCUDEV Schalter-Gartenlicht
setuuid wz_schalter 5e36f60f-f33f-f867-eece-57ddfbfe47750a56
attr wz_schalter IODev d_ccu
attr wz_schalter ccureadingfilter (STATE|PRESS|CURRENT|POWER)
attr wz_schalter controldatapoint 4.STATE
attr wz_schalter room Wohnzimmer
attr wz_schalter statedatapoint 4.STATE
attr wz_schalter statevals on:true,off:false
attr wz_schalter substitute STATE!(true|1):on,(false|0):off
attr wz_schalter webCmd control
attr wz_schalter widgetOverride control:uzsuToggle,off,on


Ich hoffe, es hilft ein wenig weiter.
Gruß
Thomas
Gruß
Thomas
--
tinkerboard s, RPI-RF-MOD, debmatic 3.61.7.90, fhem 5.9.21052, HMIP-WTH-x, HMIP-eTRV-x, HMIP-BSM, Delock 11826, RPI 3b mit ebus Adapter 2.2 RPI, SMA-EM, Compleo eBox-Smart