HMCCU - Homebridge Samples (Thermostat, Fensterkontakte, ...)

Begonnen von gloob, 31 März 2020, 17:51:28

Vorheriges Thema - Nächstes Thema

gloob

Hallo,

Hat jemand vielleicht Samples für die Integration von HMCCU Komponenten? Aktuell geht es mir darum die Thermostate in HomeKit einzubinden.

Das Device sieht so aus: Internals:
   CFGFN     
   DEF        MEQ0056181
   FUUID      5e835ed5-f33f-4cd4-fedb-869d709bf493aa27
   IODev      d_ccu
   NAME       HM_HM_CC_RT_DN_MEQ0056181
   NR         4183
   STATE      23.0
   TYPE       HMCCUDEV
   ccuaddr    MEQ0056181
   ccudevstate active
   ccuif      BidCos-RF
   ccuname    HM-CC-RT-DN MEQ0056181
   ccutype    HM-CC-RT-DN
   channels   7
   firmware   1.5
   statevals  devstate
   READINGS:
     2020-03-31 17:48:31   4.ACTUAL_TEMPERATURE 25.2
     2020-03-31 17:48:31   4.BATTERY_STATE 2.7
     2020-03-31 17:48:31   4.CONTROL_MODE  AUTO
     2020-03-31 17:48:31   4.PARTY_TEMPERATURE 5.0
     2020-03-31 17:48:31   4.SET_TEMPERATURE 23.0
     2020-03-31 17:48:31   4.VALVE_STATE   8
     2020-03-31 17:34:04   activity        alive
     2020-03-31 17:16:54   battery         ok
     2020-03-31 17:48:31   control         23.0
     2020-03-31 17:48:31   hmstate         23.0
     2020-03-31 17:48:31   state           23.0
   hmccu:
     devspec    MEQ0056181
     dp:
       0.AES_KEY:
         OVAL       0
         VAL        0
       0.CONFIG_PENDING:
         OVAL       1
         VAL        0
       0.DEVICE_IN_BOOTLOADER:
         OVAL       1
         VAL        0
       0.INHIBIT:
         OVAL       false
         VAL        false
       0.LOWBAT:
         OSVAL      ok
         OVAL       false
         SVAL       ok
         VAL        false
       0.RSSI_DEVICE:
         OVAL       1
         VAL        1
       0.RSSI_PEER:
         OVAL       214
         VAL        214
       0.STICKY_UNREACH:
         OVAL       1
         VAL        1
       0.UNREACH:
         OSVAL      dead
         OVAL       1
         SVAL       alive
         VAL        0
       0.UPDATE_PENDING:
         OVAL       false
         VAL        false
       4.ACTUAL_TEMPERATURE:
         OSVAL      25.3
         OVAL       25.300000
         SVAL       25.2
         VAL        25.200000
       4.BATTERY_STATE:
         OSVAL      2.7
         OVAL       2.700000
         SVAL       2.7
         VAL        2.700000
       4.BOOST_STATE:
         OVAL       0
         VAL        0
       4.CONTROL_MODE:
         OSVAL      AUTO
         OVAL       0
         SVAL       AUTO
         VAL        0
       4.FAULT_REPORTING:
         OVAL       0
         VAL        0
       4.PARTY_START_DAY:
         OVAL       1
         VAL        1
       4.PARTY_START_MONTH:
         OVAL       1
         VAL        1
       4.PARTY_START_TIME:
         OVAL       0
         VAL        0
       4.PARTY_START_YEAR:
         OVAL       0
         VAL        0
       4.PARTY_STOP_DAY:
         OVAL       1
         VAL        1
       4.PARTY_STOP_MONTH:
         OVAL       1
         VAL        1
       4.PARTY_STOP_TIME:
         OVAL       0
         VAL        0
       4.PARTY_STOP_YEAR:
         OVAL       0
         VAL        0
       4.PARTY_TEMPERATURE:
         OSVAL      5.0
         OVAL       5.000000
         SVAL       5.0
         VAL        5.000000
       4.SET_TEMPERATURE:
         OSVAL      23.0
         OVAL       23.000000
         SVAL       23.0
         VAL        23.000000
       4.VALVE_STATE:
         OSVAL      8
         OVAL       8
         SVAL       8
         VAL        8
Attributes:
   IODev      d_ccu
   alias      Heizung Wohnzimmer
   ccureadingfilter (TEMPERATURE|VALVE_STATE|CONTROL|BATTERY_STATE)
   cmdIcon    Auto:sani_heating_automatic Manu:sani_heating_manual Boost:sani_heating_boost on:general_an off:general_aus
   controldatapoint 4.SET_TEMPERATURE
   eventMap   /datapoint 4.MANU_MODE 20.0:Manu/datapoint 4.AUTO_MODE 1:Auto/datapoint 4.BOOST_MODE 1:Boost/datapoint 4.MANU_MODE 4.5:off/datapoint 4.MANU_MODE 30.5:on/
   genericDeviceType thermostat
   hmstatevals FAULT_REPORTING!1:valve_tight,2:range_too_large,3:range_too_small,4:communication_error,5:other_error,6:battery_low,7:valve_error_pos
   room       Alexa,Homekit,Homematic,Wohnzimmer
   statedatapoint 4.SET_TEMPERATURE
   stripnumber 1
   substexcl  control
   substitute CONTROL_MODE!0:AUTO,1:MANU,2:PARTY,3:BOOST;SET_TEMPERATURE!#0-4.5:off,#30.5-40:on;FAULT_REPORTING!0:no,1:valve_tight,2:range_too_large,3:range_too_small,4:communication_error,5:other_error,6:battery_low,7:valve:error_pos
   webCmd     control:Auto:Manu:Boost:on:off
   widgetOverride control:slider,4.5,0.5,30.5,1
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

gloob

Okay die aktuelle Temperatur und den Modus habe ich jetzt zum laufen bekommen:

attr HM_HM_CC_RT_DN_MEQ0056181 homebridgeMapping TargetTemperature=4.SET_TEMPERATURE::4.SET_TEMPERATURE,minValue=5,maxValue=35,minStep=0.5,nocache=1
CurrentTemperature=4.ACTUAL_TEMPERATURE,nocache=1
TargetHeatingCoolingState=heatingState,values=OFF:0;;HEAT:1;;COOL:2;;AUTO:3,cmds=OFF:controlManu+off;;HEAT:controlMode+boost;;AUTO:controlMode+auto;;COOL:controlMode+night
CurrentHeatingCoolingState=heatingState,values=OFF:0;;HEAT:1;;COOL:2;;AUTO:0


attr HM_HM_CC_RT_DN_MEQ0056181 userReadings heatingState {(ReadingsVal($NAME,"4.VALVE_STATE",0) > 0 || ReadingsVal($NAME,"4.SET_TEMPERATURE","-") eq "on") ? "HEAT" : ReadingsVal($NAME,"4.SET_TEMPERATURE","-") eq "off" ? "OFF" : ReadingsVal($NAME,"4.CONTROL_MODE","AUTO") eq "AUTO" ? "AUTO" : (ReadingsVal($NAME,"4.ACTUAL_TEMPERATURE",20) > ReadingsVal($NAME,"4.SET_TEMPERATURE",20)) ? "COOL" : "AUTO"}



Fehlt nur noch das setzen der Temperatur
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

gloob

Okay Problem gelöst.

Hier die Daten für ein HM-CC-RT-DN über HMCCU

attr TYPE=HMCCUDEV:FILTER=ccutype=HM-CC-RT-DN userReadings heatingState {(ReadingsVal($NAME,"4.VALVE_STATE",0) > 0 || ReadingsVal($NAME,"4.SET_TEMPERATURE","-") eq "on") ? "HEAT" : ReadingsVal($NAME,"4.SET_TEMPERATURE","-") eq "off" ? "OFF" : ReadingsVal($NAME,"4.CONTROL_MODE","AUTO") eq "AUTO" ? "AUTO" : (ReadingsVal($NAME,"4.ACTUAL_TEMPERATURE",20) > ReadingsVal($NAME,"4.SET_TEMPERATURE",20)) ? "COOL" : "AUTO"}

attr TYPE=HMCCUDEV:FILTER=ccutype=HM-CC-RT-DN homebridgeMapping TargetTemperature=4.SET_TEMPERATURE::4.SET_TEMPERATURE,,minValue=15,maxValue=30,minStep=0.5,cmd=control,nocache=true CurrentTemperature=4.ACTUAL_TEMPERATURE TargetHeatingCoolingState=heatingState,values=OFF:0;;HEAT:1;;COOL:2;;AUTO:3,cmds=OFF:controlManu+off;;HEAT:controlMode+boost;;AUTO:controlMode+auto;;COOL:controlMode+night CurrentHeatingCoolingState=heatingState,values=OFF:0;;HEAT:1;;COOL:2;;AUTO:0
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway