CUxD Taster Invalid Datapoint?

Begonnen von djatebbi, 19 September 2018, 09:21:31

Vorheriges Thema - Nächstes Thema

djatebbi

Hallo zusammen,

ich habe ein Problem mit dem einbinden eines  CUxD Taster in FHEM. Derzeit eine Funk-Fernbedienung mit 19 Tasten die nur kurz und langes drücken können. Davon soll nur ein Kanal aus Fhem angesprochen werden.

Ausgangssituation ist ein aktuelles FHEM sowie CCU2, HMRPC ist auf Version 4.3 und ProcRPC läuft als BidCos-RF sowie CUxD. Es sind schon diverse HM Geräte mit FHEM verbunden aber CUxD mag es nicht.

Nach dem Anlegen des Kanals sind keine Attribute gesetzt, Readings werden aber angezeigt.
Bei fast allen get Befehlen bekomme ich folgendes zurück: Execution of CCU script or command failed
Bei get datapoint dies: get XXX datapoint {datapoint} und get devstate: Invalid datapoint.

Die Reading beinhalten:

0.LOWBAT                 false 2018-09-17 21:15:23
0.STICKY_UNREACH false 2018-09-17 21:15:23
0.UNREACH         false 2018-09-17 21:15:23
3.CMD_RETL         2018-09-17 21:15:23
3.CMD_RETS         2018-09-17 21:15:23
3.CMD_SETL         2018-09-17 21:15:23
3.CMD_SETS         2018-09-17 21:15:23
3.CONTROL         0      2018-09-17 21:15:23
3.INHIBIT                  false 2018-09-17 21:15:23
3.INSTALL_TEST false 2018-09-17 21:15:23
3.LEVEL                 0.000000  2018-09-17 21:15:23
3.RAND                 52672       2018-09-17 21:15:23
3.STATE                 off     2018-09-17 21:15:23
3.WORKING         false 2018-09-17 21:15:23
control                 off    2018-09-17 20:20:20
hmstate                 off    2018-09-19 03:59:01
state


Und als Attribute habe ich derzeit folgendes:

IODev                         HM_CCU2
controldatapoint                 LEVEL
event-on-change-reading .*
statedatapoint                 LEVEL
statevals                         on:true,off:false
substitute                         LEVEL!(true|1):on,(false|0):off
webCmd                         control
widgetOverride                 control:uzsuToggle,off,on


Ich habe schon als Datapoint LEVEL, WORKING, STATE und PRESS_SHORT ausprobiert, aber ohne Erfolg.

Ich hoffe ihr könnt mir weiter helfen.
FHEM auf Raspberry Pi 4B.

zap

Bitte mach mal ein "list" für das Device. Außerdem ein "get deviceinfo"
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

djatebbi

#2
list ergibt "Read 40 devices with 218 channels from CCU"
info ergibt "HMCCUCHN: XXX Execution of CCU script or command failed"

Vielleicht Hilfen die Internals noch weiter:

DEF              CUX2801001:3
IODev          HM_CCU2
NR               427
STATE          Initialized
TYPE             HMCCUCHN
ccuaddr        CUX2801001:3
ccudevstate  active
ccuif            CUxD
ccutype        CUX-HM-RC-19
channels      1
statevals      devstate|press
FHEM auf Raspberry Pi 4B.

zap

Ich meinte "list devicename" in der FHEM Kommandozeile. devicename ersetzt du durch den Namen des CUxD Devices in FHEM, das du definiert hast und den du in deinen bisherigen Beiträgen leider nicht angeben hast. Oder heißt das wirklich XXX?

Wenn get XXX deviceinfo wirklich fehlschlägt, versuche es mit

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

djatebbi

Ja, heißt so, ist ja derzeit zum testen. Habe es ja auch schon mehrfach neu angelegt.
Die List Informationen sind die selben wie ich schon gepostet habe, aber wenn schön macht, hier nochmal:

Internals:
   CHANGED   
   DEF        CUX2801001:3
   IODev      HM_CCU2
   NAME       XXX
   NR         427
   STATE      Initialized
   TYPE       HMCCUCHN
   ccuaddr    CUX2801001:3
   ccudevstate active
   ccuif      CUxD
   ccuname    XXX
   ccutype    CUX-HM-RC-19
   channels   1
   statevals  devstate|press
   READINGS:
     2018-09-19 13:17:26   0.LOWBAT        false
     2018-09-19 13:17:26   0.STICKY_UNREACH false
     2018-09-19 13:17:26   0.UNREACH       false
     2018-09-19 13:17:26   3.CMD_RETL     
     2018-09-19 13:17:26   3.CMD_RETS     
     2018-09-19 13:17:26   3.CMD_SETL     
     2018-09-19 13:17:26   3.CMD_SETS     
     2018-09-19 13:17:26   3.CONTROL       0
     2018-09-19 13:17:26   3.INHIBIT       false
     2018-09-19 13:17:26   3.INSTALL_TEST  false
     2018-09-19 13:17:26   3.LEVEL         0.000000
     2018-09-19 13:17:26   3.RAND          52672
     2018-09-19 13:17:26   3.STATE         false
     2018-09-19 13:17:26   3.WORKING       false
     2018-09-17 20:20:20   control         off
     2018-09-19 13:17:26   hmstate         Initialized
     2018-09-19 12:18:59   state           Initialized
   hmccu:
     devspec    CUX2801001:3
     dp:
       0.LOWBAT:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.STICKY_UNREACH:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       0.UNREACH:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       3.CMD_RETL:
         OSVAL     
         OVAL       
         SVAL       
         VAL       
       3.CMD_RETS:
         OSVAL     
         OVAL       
         SVAL       
         VAL       
       3.CMD_SETL:
         OSVAL     
         OVAL       
         SVAL       
         VAL       
       3.CMD_SETS:
         OSVAL     
         OVAL       
         SVAL       
         VAL       
       3.CONTROL:
         OSVAL      0
         OVAL       0
         SVAL       0
         VAL        0
       3.INHIBIT:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       3.INSTALL_TEST:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       3.LEVEL:
         OSVAL      0.000000
         OVAL       0.000000
         SVAL       0.000000
         VAL        0.000000
       3.RAND:
         OSVAL      52672
         OVAL       52672
         SVAL       52672
         VAL        52672
       3.STATE:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
       3.WORKING:
         OSVAL      false
         OVAL       false
         SVAL       false
         VAL        false
Attributes:
   IODev      HM_CCU2
   controldatapoint datapoint
   event-on-change-reading .*
   group      Fenster
   icon       fts_window_roof_open_1
   room       SmartHome
   statedatapoint control
   statevals  press:true
   substitute 1|true:pressed


Das get liefert über beide Varianten nur das wieder: "HMCCU: HM_CCU2 Execution of CCU script or command failed"
FHEM auf Raspberry Pi 4B.

zap

Wie lauten die Namen von CUX2801001 (Gerät) und CUX2801001:3 (Kanal) in der CCU?
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

djatebbi

Das Gerät lautet CUXD und der Kanal XXX.
FHEM auf Raspberry Pi 4B.

zap

Habe das jetzt bei mir nachgebaut, funktioniert einwandfrei. Mit den gleichen Namen.

Hast Du die Namen CUXD oder XXX:3 nochmal irgendwo in der CCU vergeben (auch für Räume etc.)? Namen müssen immer eindeutig sein.

Ansonsten kannst Du nur das Device nochmal löschen, dann ein get HM_CCU2 devicelist machen und dann das Device neu anlegen. Hilft vielleicht.

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

djatebbi

Also einen kleinen Teilerfolg habe ich jetzt, ich hatte das Gerät in der CCU CUxD genannt,
nach der Umbenennung zu CUXD und neuem einbinden in FHEM, zeigt er mir jetzt wenigstens was bei get datapoint an.
Und get deviceinfo funktioniert jetzt auch.
Aber das schalten funktioniert noch nicht, da bekomme ich immer noch die Meldung Invalid Datapoint.

Hier die Ausgabe von get deviceinfo:
Nicht wundern den Kanal 3 habe ich jetzt Korrekt benannt "Dachfenster Halb", in FHEM "Dachfenster_Halb"

CHN CUX2801001:0 CUXD:0
  DPT {b} CUxD.CUX2801001:0.LOWBAT = false [RE]
  DPT {b} CUxD.CUX2801001:0.UNREACH = false [RE]
  DPT {b} CUxD.CUX2801001:0.STICKY_UNREACH = false [RWE]
CHN CUX2801001:1 Exec
  DPT {f} CUxD.CUX2801001:1.LEVEL = 0.000000 [RWE]
  DPT {b} CUxD.CUX2801001:1.OLD_LEVEL =  [W]
  DPT {b} CUxD.CUX2801001:1.STOP =  [WE]
  DPT {b} CUxD.CUX2801001:1.STATE = false [RWE]
  DPT {b} CUxD.CUX2801001:1.PRESS_SHORT =  [WE]
  DPT {b} CUxD.CUX2801001:1.PRESS_LONG =  [WE]
  DPT {b} CUxD.CUX2801001:1.CMD_RUNS =  [W]
  DPT {b} CUxD.CUX2801001:1.CMD_RUNL =  [W]
  DPT {s} CUxD.CUX2801001:1.CMD_KILL =  [W]
  DPT {s} CUxD.CUX2801001:1.CMD_EXEC =  [W]
  DPT {s} CUxD.CUX2801001:1.LOGIT =  [W]
  DPT {s} CUxD.CUX2801001:1.POSTIT =  [W]
  DPT {s} CUxD.CUX2801001:1.SYSLOG =  [W]
  DPT {s} CUxD.CUX2801001:1.CMD_SETS = wget -q -O - 'http://api.wunderground.com/api/31bf00179e379d40/forecast/lang:DL/q/pws:IILMENAU2.xml' [RWE]
  DPT {s} CUxD.CUX2801001:1.CMD_SETL =  [RWE]
  DPT {s} CUxD.CUX2801001:1.CMD_RETS =  []
CHN 
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
  DPT {}  =  []
CHN RE
  DPT {}  =  []
CHN CUX2801001:1 Exec
  DPT {s} CUxD.CUX2801001:1.CMD_RETL =  [RE]
  DPT {b} CUxD.CUX2801001:1.CMD_QUERY_RET =  [W]
  DPT {b} CUxD.CUX2801001:1.WORKING = false [RE]
  DPT {n} CUxD.CUX2801001:1.CONTROL = 0 [R]
  DPT {f} CUxD.CUX2801001:1.SET_STATE =  [W]
  DPT {s} CUxD.CUX2801001:1.RAND = 8212 [RW]
  DPT {b} CUxD.CUX2801001:1.INHIBIT = false [RW]
  DPT {b} CUxD.CUX2801001:1.INSTALL_TEST = false [RW]
  DPT {s} CUxD.CUX2801001:1.WRITE_FILE =  [W]
CHN CUX2801001:2 Roomba
  DPT {f} CUxD.CUX2801001:2.LEVEL = 0.000000 [RWE]
  DPT {b} CUxD.CUX2801001:2.OLD_LEVEL =  [W]
  DPT {b} CUxD.CUX2801001:2.STOP =  [WE]
  DPT {b} CUxD.CUX2801001:2.STATE = false [RWE]
  DPT {b} CUxD.CUX2801001:2.PRESS_SHORT =  [WE]
  DPT {b} CUxD.CUX2801001:2.PRESS_LONG =  [WE]
  DPT {b} CUxD.CUX2801001:2.CMD_RUNS =  [W]
  DPT {b} CUxD.CUX2801001:2.CMD_RUNL =  [W]
  DPT {s} CUxD.CUX2801001:2.CMD_KILL =  [W]
  DPT {s} CUxD.CUX2801001:2.CMD_EXEC =  [W]
  DPT {s} CUxD.CUX2801001:2.LOGIT =  [W]
  DPT {s} CUxD.CUX2801001:2.POSTIT =  [W]
  DPT {s} CUxD.CUX2801001:2.SYSLOG =  [W]
  DPT {s} CUxD.CUX2801001:2.CMD_SETS = wget -q -O /dev/null 'http://192.168.100.114/command.json?command=clean' [RWE]
  DPT {s} CUxD.CUX2801001:2.CMD_SETL = wget -q -O /dev/null 'http://192.168.100.114/command.json?command=poweroff' [RWE]
  DPT {s} CUxD.CUX2801001:2.CMD_RETS =  [RE]
  DPT {s} CUxD.CUX2801001:2.CMD_RETL =  [RE]
  DPT {b} CUxD.CUX2801001:2.CMD_QUERY_RET =  [W]
  DPT {b} CUxD.CUX2801001:2.WORKING = false [RE]
  DPT {n} CUxD.CUX2801001:2.CONTROL = 0 [R]
  DPT {f} CUxD.CUX2801001:2.SET_STATE =  [W]
  DPT {s} CUxD.CUX2801001:2.RAND = 28374 [RW]
  DPT {b} CUxD.CUX2801001:2.INHIBIT = false [RW]
  DPT {b} CUxD.CUX2801001:2.INSTALL_TEST = false [RW]
  DPT {s} CUxD.CUX2801001:2.WRITE_FILE =  [W]
CHN CUX2801001:3 Dachfenster Halb
  DPT {b} CUxD.CUX2801001:3.INSTALL_TEST = false [RW]
  DPT {f} CUxD.CUX2801001:3.LEVEL = 0.000000 [RWE]
  DPT {b} CUxD.CUX2801001:3.OLD_LEVEL =  [W]
  DPT {b} CUxD.CUX2801001:3.STOP =  [WE]
  DPT {b} CUxD.CUX2801001:3.STATE = false [RWE]
  DPT {b} CUxD.CUX2801001:3.PRESS_SHORT =  [WE]
  DPT {b} CUxD.CUX2801001:3.PRESS_LONG =  [WE]
  DPT {b} CUxD.CUX2801001:3.CMD_RUNS =  [W]
  DPT {b} CUxD.CUX2801001:3.CMD_RUNL =  [W]
  DPT {s} CUxD.CUX2801001:3.CMD_KILL =  [W]
  DPT {s} CUxD.CUX2801001:3.CMD_EXEC =  [W]
  DPT {s} CUxD.CUX2801001:3.LOGIT =  [W]
  DPT {s} CUxD.CUX2801001:3.POSTIT =  [W]
  DPT {s} CUxD.CUX2801001:3.SYSLOG =  [W]
  DPT {s} CUxD.CUX2801001:3.CMD_SETS =  [RWE]
  DPT {s} CUxD.CUX2801001:3.CMD_SETL =  [RWE]
  DPT {s} CUxD.CUX2801001:3.CMD_RETS =  [RE]
  DPT {s} CUxD.CUX2801001:3.CMD_RETL =  [RE]
  DPT {b} CUxD.CUX2801001:3.CMD_QUERY_RET =  [W]
  DPT {b} CUxD.CUX2801001:3.WORKING = false [RE]
  DPT {n} CUxD.CUX2801001:3.CONTROL = 0 [R]
  DPT {f} CUxD.CUX2801001:3.SET_STATE =  [W]
  DPT {s} CUxD.CUX2801001:3.RAND = 52672 [RW]
  DPT {b} CUxD.CUX2801001:3.INHIBIT = false [RW]
  DPT {s} CUxD.CUX2801001:3.WRITE_FILE =  [W]
CHN CUX2801001:4 CUxD:4
  DPT {b} CUxD.CUX2801001:4.INSTALL_TEST = false [RW]
CHN CUX2801001:5 CUxD:5
  DPT {b} CUxD.CUX2801001:5.INSTALL_TEST = false [RW]
CHN CUX2801001:6 CUxD:6
  DPT {b} CUxD.CUX2801001:6.INSTALL_TEST = false [RW]
CHN CUX2801001:7 CUxD:7
  DPT {b} CUxD.CUX2801001:7.INSTALL_TEST = false [RW]
CHN CUX2801001:8 CUxD:8
  DPT {b} CUxD.CUX2801001:8.INSTALL_TEST = false [RW]
CHN CUX2801001:9 CUxD:9
  DPT {b} CUxD.CUX2801001:9.INSTALL_TEST = false [RW]
CHN CUX2801001:10 CUxD:10
  DPT {b} CUxD.CUX2801001:10.INSTALL_TEST = false [RW]
CHN CUX2801001:11 CUxD:11
  DPT {b} CUxD.CUX2801001:11.INSTALL_TEST = false [RW]
CHN CUX2801001:12 CUxD:12
  DPT {b} CUxD.CUX2801001:12.INSTALL_TEST = false [RW]
CHN CUX2801001:13 CUxD:13
  DPT {b} CUxD.CUX2801001:13.INSTALL_TEST = false [RW]
CHN CUX2801001:14 CUxD:14
  DPT {b} CUxD.CUX2801001:14.INSTALL_TEST = false [RW]
CHN CUX2801001:15 CUxD:15
  DPT {b} CUxD.CUX2801001:15.INSTALL_TEST = false [RW]
CHN CUX2801001:16 CUxD:16
  DPT {b} CUxD.CUX2801001:16.INSTALL_TEST = false [RW]
FHEM auf Raspberry Pi 4B.

zap

Die Ausgabe von get deviceinfo sieht seltsam aus, mit den vielen leeren Einträgen. Wie schaltest Du denn? ZB so:

set datapoint PRESS_SHORT true

oder

set datapoint STATE false

??

Ein Problem ist auch, dass Du das Attribut statedatapoint auf control gesetzt hast. Das ist kein gültiger Datenpunkt, s.a. Ausgabe von get deviceinfo.
Dann solltest Du ccureadingfilter mal auf .* setzen und wenn Du PRESS events haben möchtest, event-on-update-reading auf .*
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

djatebbi

Habe dies jetzt so umgesetzt:
Attributes:
   IODev      HM_CCU2
   ccureadingfilter .*
   controldatapoint datapoint
   devStateIcon 1:remotecontrol/black_btn_STOP 0:remotecontrol/black_btn_STOP
   event-on-update-reading .*
   group      Fenster
   icon       fts_window_roof_open_1
   room       SmartHome
   statedatapoint STATE
   statevals  on:true,off:false
   substitute STATE!(true|1):on,(false|0):off
   webCmd     control
   widgetOverride control:uzsuToggle,off,on


Leider beim Tastendruck immer noch der gleiche Fehler, über den set datapoint Befehl geht es schon mal.
FHEM auf Raspberry Pi 4B.

zap

#11
Du solltest controldatapoint auf PRESS_SHORT setzen. Ggf. auch statedatapoint, sofern CUxD den Datenpunkt auch aktualisiert. Habe die Erfahrung gemacht, dass die Deviceinfo von CUxD nicht immer korrekt ist. Dann steht da zwar ein E für Event, er liefert aber nichts.

Hier meine Config für die Verwendung von PRESS_SHORT (von der CCU oder von FHEM aus). Mit set toggle wird die Taste gedrückt. Dafür kannst Du auch ein Icon mit webCmd in FHEM anlegen.


Internals:
   CFGFN     
   CHANGED   
   DEF        Remote:1
   IODev      d_ccu
   NAME       HM_Remote
   NR         18388
   STATE      pressed
   TYPE       HMCCUCHN
   ccuaddr    CUX4000003:1
   ccudevstate active
   ccuif      CUxD
   ccuname    Remote:1
   ccutype    CUX-HM-RC-19
   channels   1
   statevals  devstate|toggle
   READINGS:
     2018-09-20 21:12:10   1.PRESS_SHORT   pressed
     2018-09-20 21:12:10   control         pressed
     2018-09-20 21:13:28   hmstate         pressed
     2018-09-20 21:12:10   state           pressed
Attributes:
   IODev      d_ccu
   ccureadingfilter (PRESS_SHORT)
   event-on-update-reading PRESS
   room       Test
   statedatapoint PRESS_SHORT
   statevals  toggle:1
   substitute PRESS_SHORT,PRESS_LONG!(1|true):pressed


Das gleiche mit STATE und on/off: Stellt Befehle set on/off zu Verfügung:


Internals:
   CFGFN     
   CHANGED   
   DEF        Remote:1
   IODev      d_ccu
   NAME       HM_Remote
   NR         18388
   STATE      off
   TYPE       HMCCUCHN
   ccuaddr    CUX4000003:1
   ccudevstate active
   ccuif      CUxD
   ccuname    Remote:1
   ccutype    CUX-HM-RC-19
   channels   1
   statevals  devstate|on|off
   READINGS:
     2018-09-20 21:19:57   1.STATE         off
     2018-09-20 21:19:57   control         off
     2018-09-20 21:19:57   hmstate         off
     2018-09-20 21:19:57   state           off
Attributes:
   IODev      d_ccu
   ccureadingfilter (STATE|PRESS)
   event-on-update-reading STATE
   room       Test
   statedatapoint STATE
   statevals  on:1,off:0
   substitute PRESS_SHORT,PRESS_LONG!(1|true):pressed;STATE!(0|false):off,(1|true):on
2xCCU3 mit ca. 100 Aktoren, Sensoren
Entwicklung: FHEM auf Proxmox Debian VM
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: HMCCU, (Fully, AndroidDB)

djatebbi

Hallo, vielen danke für deine Hilfe, jetzt funktioniert es wie gewollt.
FHEM auf Raspberry Pi 4B.

djatebbi

Ein Problem ist mir jetzt doch noch aufgefallen.
Ich kann das devStateIcon nicht anklicken um den Befehl zu senden.
So ist es jetzt eingebunden:

Attributes:
   IODev      HM_CCU2
   ccureadingfilter PRESS_SHORT
   controldatapoint PRESS_SHORT
   devStateIcon off:remotecontrol/black_btn_STOP on:remotecontrol/black_btn_STOP
   event-on-change-reading .*
   fp_Dachgeschoss 430,969,0,
   group      Fenster
   icon       fts_window_roof_open_1
   room       SmartHome
   statedatapoint PRESS_SHORT
   statevals  toggle:1
   substitute PRESS_SHORT,PRESS_LONG!(1|true):off
   webCmd     control
   widgetOverride control:uzsuToggle,off,on

Hast du dafür noch eine Idee?
FHEM auf Raspberry Pi 4B.