FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: a_quadrat am 15 Januar 2020, 08:37:14

Titel: HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: a_quadrat am 15 Januar 2020, 08:37:14
Hallo,

ich bin momentan dabei, meine Homematic Geräte über HMCCU in fhem zu integrieren. Dabei bin ich auf das Problem gestoßen, dass ich den Stop Befehl nicht integrieren kann. Meine Geräteeinstellung sieht folgendermaßen aus:



  "Arg":"HMW__ACT_JR_GAL_OB________01",
  "Results": [
  {
    "Name":"HMW__ACT_JR_GAL_OB________01",
    "PossibleSets":"stop:noArg down:noArg up:noArg clear config control datapoint defaults:noArg devstate:up,down up:noArg down:noArg toggle:noArg pct up down",
    "PossibleAttrs":"alias comment:textField-long eventMap:textField-long group room suppressReading userReadings:textField-long verbose:0,1,2,3,4,5 IODev ccucalculate ccuflags:multiple-strict,ackState,nochn0,trace ccureadingfilter ccureadingformat:name,namelc,address,addresslc,datapoint,datapointlc ccureadingname:textField-long ccuSetOnChange ccureadings:0,1 ccuscaleval ccuverify:0,1,2 ccuget:State,Value controldatapoint disable:0,1 hmstatevals:textField-long statedatapoint statevals substitute:textField-long substexcl stripnumber peer:textField-long event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading DbLogExclude DbLogInclude alarmDevice:Actor,Sensor alarmSettings assistantName:textField cmdIcon devStateIcon devStateIcon:textField-long devStateStyle gassistantName genericDeviceType:security,ignore,switch,outlet,light,blind,thermometer,thermostat,contact,garage,window,lock,aircondition,airpurifier,camera,coffeemaker,dishwasher,dryer,fan,kettle,oven,refrigerator,scene,sprinkler,vacuum,washer,airfreshener,fireplace,heater,blinds,awning,boiler,curtain,door,gate,hood,microwave,pregola,securitysystem,shutter,shower,valve,waterheater,ac_unit,bathtub,bed,blender,closet,coffee_maker,cooktop,dehumidifier,dehydrator,drawer,faucet,fryer,grill,humidifier,mop,mower,multicooker,pergola,petfeeder,pressurecooker,radiator,sousvide,standmixer,yogurtmaker ghomeName:textField homebridgeMapping:textField-long icon realRoom:textField sortby webCmd webCmdLabel:textField-long widgetOverride userattr",
    "Internals": {
      "CFGFN": "",
      "DEF": "HMW__ACT_JR_GAL_OB________01",
      "FUUID": "5e1c7655-f33f-a497-a8be-7d4535aacc9c303d",
      "NAME": "HMW__ACT_JR_GAL_OB________01",
      "NR": "2082",
      "STATE": "Initialized",
      "TYPE": "HMCCUCHN",
      "ccuaddr": "OEQ0935336:3",
      "ccudevstate": "active",
      "ccuif": "BidCos-Wired",
      "ccuname": "HMW__ACT_JR_GAL_OB________01",
      "ccutype": "HMW-LC-Bl1-DR",
      "channels": "1",
      "chntype": "BLIND",
      "firmware": "3.06",
      "statevals": "devstate|up|down"
    },
    "Readings": {
      "0.CONFIG_PENDING": { "Value":"false", "Time":"2020-01-13 21:28:33" },
      "0.STICKY_UNREACH": { "Value":"false", "Time":"2020-01-13 21:28:33" },
      "0.UNREACH": { "Value":"false", "Time":"2020-01-13 21:28:33" },
      "3.DIRECTION": { "Value":"0", "Time":"2020-01-15 07:46:03" },
      "3.INHIBIT": { "Value":"false", "Time":"2020-01-13 21:28:33" },
      "3.LEVEL": { "Value":"1.0", "Time":"2020-01-15 07:46:03" },
      "3.WORKING": { "Value":"0", "Time":"2020-01-15 07:46:03" },
      "control": { "Value":"1.0", "Time":"2020-01-15 07:46:03" },
      "hmstate": { "Value":"Initialized", "Time":"2020-01-15 07:46:03" },
      "state": { "Value":"Initialized", "Time":"2020-01-13 14:53:25" }
    },
    "Attributes": {
      "DbLogExclude": ".*",
      "IODev": "d_ccu",
      "controldatapoint": "3.LEVEL",
      "eventMap": "/datapoint 3.STOP 3:stop/datapoint 3.LEVEL 3:down/datapoint 3.LEVEL 0:up/",
      "room": "CCU",
      "statevals": "up:0.0,down:1.0",
      "stripnumber": "1",
      "webCmd": "control:up:stop:down",
      "widgetOverride": "control:slider,0,0.05,1,1"
    }
  }  ],
  "totalResultsReturned":1
}


Hat jemand eine Idee woran es liegen kann?

VG Andreas
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: zap am 15 Januar 2020, 16:46:38
Frage: Möchtest Du lieber mit Werten für LEVEL von 0-100 verwenden oder von 0-1 ?

eventMap ist definitiv falsch. Bitte mach mal ein "get deviceinfo"
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: a_quadrat am 15 Januar 2020, 18:56:33
Werte von 0-100 wäre schon schön. Kann ich das über "ccuscaleval" machen?

Anbei die Ausgabe der Datenpunkte:


CHN OEQ0935336:0 Rollladen Gal_oben:0
  DPT {b} BidCos-Wired.OEQ0935336:0.UNREACH = false [RE]
  DPT {b} BidCos-Wired.OEQ0935336:0.STICKY_UNREACH = false [RWE]
  DPT {b} BidCos-Wired.OEQ0935336:0.CONFIG_PENDING = false [RE]
CHN OEQ0935336:1 HMW-LC-Bl1-DR OEQ0935336:1
  DPT {b} BidCos-Wired.OEQ0935336:1.PRESS_SHORT = false [WE]
  DPT {b} BidCos-Wired.OEQ0935336:1.PRESS_LONG =  [WE]
  DPT {b} BidCos-Wired.OEQ0935336:1.INSTALL_TEST =  [E]
CHN OEQ0935336:2 HMW-LC-Bl1-DR OEQ0935336:2
  DPT {b} BidCos-Wired.OEQ0935336:2.PRESS_SHORT = false [WE]
  DPT {b} BidCos-Wired.OEQ0935336:2.PRESS_LONG =  [WE]
  DPT {b} BidCos-Wired.OEQ0935336:2.INSTALL_TEST =  [E]
CHN OEQ0935336:3 HMW__ACT_JR_GAL_OB________01
  DPT {f} BidCos-Wired.OEQ0935336:3.LEVEL = 0.750000 [RWE]
  DPT {b} BidCos-Wired.OEQ0935336:3.STOP =  [W]
  DPT {b} BidCos-Wired.OEQ0935336:3.INHIBIT = false [RWE]
  DPT {i} BidCos-Wired.OEQ0935336:3.DIRECTION = 0 [RE]
  DPT {b} BidCos-Wired.OEQ0935336:3.INSTALL_TEST =  [W]
  DPT {b} BidCos-Wired.OEQ0935336:3.WORKING = false [RE]


Was muss ich bei enentMap eintragen, damit es funktioniert?
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: a_quadrat am 16 Januar 2020, 16:46:49
Hallo,

richtig, eventMap war falsch, jetzt funktioniert es, auch der Stoppbefehl.


{
  "Arg":"HMW__ACT_JR_GAL_OB________01",
  "Results": [
  {
    "Name":"HMW__ACT_JR_GAL_OB________01",
    "PossibleSets":"stop:noArg down:noArg up:noArg clear config control datapoint defaults:noArg devstate:up,down up:noArg down:noArg toggle:noArg pct up down",
    "PossibleAttrs":"alias comment:textField-long eventMap:textField-long group room suppressReading userReadings:textField-long verbose:0,1,2,3,4,5 IODev ccucalculate ccuflags:multiple-strict,ackState,nochn0,trace ccureadingfilter ccureadingformat:name,namelc,address,addresslc,datapoint,datapointlc ccureadingname:textField-long ccuSetOnChange ccureadings:0,1 ccuscaleval ccuverify:0,1,2 ccuget:State,Value controldatapoint disable:0,1 hmstatevals:textField-long statedatapoint statevals substitute:textField-long substexcl stripnumber peer:textField-long event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading DbLogExclude DbLogInclude alarmDevice:Actor,Sensor alarmSettings cmdIcon devStateIcon devStateIcon:textField-long devStateStyle gassistantName genericDeviceType:security,ignore,switch,outlet,light,blind,thermometer,thermostat,contact,garage,window,lock,aircondition,airpurifier,camera,coffeemaker,dishwasher,dryer,fan,kettle,oven,refrigerator,scene,sprinkler,vacuum,washer,airfreshener,fireplace,heater,blinds,awning,boiler,curtain,door,gate,hood,microwave,pregola,securitysystem,shutter,shower,valve,waterheater,ac_unit,bathtub,bed,blender,closet,coffee_maker,cooktop,dehumidifier,dehydrator,drawer,faucet,fryer,grill,humidifier,mop,mower,multicooker,pergola,petfeeder,pressurecooker,radiator,sousvide,standmixer,yogurtmaker homebridgeMapping:textField-long icon realRoom:textField sortby webCmd webCmdLabel:textField-long widgetOverride userattr",
    "Internals": {
      "CFGFN": "",
      "DEF": "HMW__ACT_JR_GAL_OB________01",
      "FUUID": "5e1c7655-f33f-a497-a8be-7d4535aacc9c303d",
      "NAME": "HMW__ACT_JR_GAL_OB________01",
      "NR": "2082",
      "STATE": "open",
      "TYPE": "HMCCUCHN",
      "ccuaddr": "OEQ0935336:3",
      "ccudevstate": "active",
      "ccuif": "BidCos-Wired",
      "ccuname": "HMW__ACT_JR_GAL_OB________01",
      "ccutype": "HMW-LC-Bl1-DR",
      "channels": "1",
      "chntype": "BLIND",
      "firmware": "3.06",
      "statevals": "devstate|up|down"
    },
    "Readings": {
      "0.CONFIG_PENDING": { "Value":"false", "Time":"2020-01-16 10:02:46" },
      "0.STICKY_UNREACH": { "Value":"false", "Time":"2020-01-16 10:02:46" },
      "0.UNREACH": { "Value":"false", "Time":"2020-01-16 10:02:46" },
      "3.DIRECTION": { "Value":"0", "Time":"2020-01-16 16:35:30" },
      "3.INHIBIT": { "Value":"false", "Time":"2020-01-16 10:02:46" },
      "3.LEVEL": { "Value":"open", "Time":"2020-01-16 16:35:30" },
      "3.WORKING": { "Value":"0", "Time":"2020-01-16 16:35:30" },
      "control": { "Value":"100", "Time":"2020-01-16 16:35:30" },
      "hmstate": { "Value":"open", "Time":"2020-01-16 16:35:30" },
      "state": { "Value":"open", "Time":"2020-01-16 16:35:30" }
    },
    "Attributes": {
      "DbLogExclude": ".*",
      "IODev": "d_ccu",
      "ccuscaleval": "LEVEL:0:1:0:100",
      "controldatapoint": "LEVEL",
      "eventMap": "/datapoint STOP 1:stop/datapoint LEVEL 0:down/datapoint LEVEL 100:up/",
      "room": "CCU",
      "statedatapoint": "LEVEL",
      "statevals": "up:0.0,down:1.0",
      "stripnumber": "1",
      "substexcl": "control|pct",
      "substitute": "LEVEL#0-0:closed,#100-100:open",
      "webCmd": "up:down:stop"
    }
  }  ],
  "totalResultsReturned":1


Gibt es eine Möglichkeit "pct" durch "level" zu ersetzen? Das war der ursprüngliche Befehl von diesem Modul in fhem und würde mir eine Menge Änderungen in den Programmen ersparen.

VG Andreas
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: zap am 16 Januar 2020, 17:51:31
klar, das geht:

eventMap /datapoint STOP 1:stop/datapoint LEVEL 0:down/datapoint LEVEL 100:up/datapoint LEVEL:level/
widgetOverride level:textField


Statt textField gehen natürlich auch andere Widgets
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: a_quadrat am 16 Januar 2020, 19:31:42
super, danke, es funktioniert. :)
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: a_quadrat am 17 Januar 2020, 11:50:44
Hallo,

wie ich schon geschrieben hatte, rüste ich gerade auf HMCCU um. Dabei ist mir aufgefallen, dass die Latenzzeit zwischen Ereignis und Registrierung in fhem relativ groß ist - bei mir ca. 2-3 Sekunden. Ist das normal?
Ich habe festgestellt, dass es identisch ist mit der Darstellung in der webui, aber wird ein Programm auf der CCU ausgeführt, reagiert es sofort.
Für einige Sensoren ist es nicht weiter tragisch, aber für z.B. Bewegungsmelder, ist es nicht komfortabel. Gibt es dafür eine Lösung, oder liegt es an meinem System?

VG Andreas
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: zap am 17 Januar 2020, 13:40:02
Wie sieht das Attribut ccuflags im IO Device aus?
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: a_quadrat am 17 Januar 2020, 17:54:19
Das ist noch leer, soll ich dort eine Funktion eintragen?
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: zap am 17 Januar 2020, 21:18:13
Ja, ccuflags muss auf procrpc gesetzt werden. Sonst wird der alte, interne RPC Server verwendet. Der ist lahm. Steht aber alles im Wiki
Titel: Antw:HMCCU mit Modul HMW-LC-Bl1-DR
Beitrag von: a_quadrat am 18 Januar 2020, 19:08:26
Danke für die Info, hatte ich überlesen, aber jetzt läuft es gut.