[SOLVED] Configure Google Home with Homatic Thermostat

Hi,
I’ve already got some homematic devices running on openhab2 and can also control them via Google Assistant. But I do not get the heating thermostat connected to Google.
Can someone help me there?
How do I have to make ITEM Configuration?

I use OH2.3.

Regards
Hermann

Please show your item definitions

Here is my item configuration:

Group g_HK_Basement_TSTAT “Stube Thermostat” [ “Thermostat”, “Celsius” ]

Number Stube_Heizung_Seite_SetTemperature “Heizung Stube” (g_HK_Basement_TSTAT) [ “Thermostat” ] {channel=“homematic:HG-HM-CC-RT-DN:B7AE0307-9C50-FE15-28D2-7418380C2D35:NEQ1410643:4#SET_TEMPERATURE”}

Number Stube_Heizung_Seite_SetTemperature1 “Heizung Stuben” (g_HK_Basement_TSTAT) [ “CurrentTemperature” ] {channel=“homematic:HG-HM-CC-RT-DN:B7AE0307-9C50-FE15-28D2-7418380C2D35:NEQ1410643:4#SET_TEMPERATURE”}

Thx.
Hermann

Ok, the thermostat tag goes to a group:

Group g_HK_Basement_TSTAT "Stube Thermostat" [ "Thermostat" ] //ONLY ONE TAG!!

The thermostat group can contain two items with two tags [ “TargetTemperature” ] and [ “CurrentTemperature” ]

Add these tags to the relevant 2 items, but ONLY these tags, it won’t work with other tags.

Hello i have a similar setup and i just do not get it to work. As soon as i add the [ “Thermostat” ] Tag GHome can not sync Openhab anymore. With just the three other tags it works fine.

My items:

Group						gHeatingthermostats			"Alle Heizungsthermostate"
Group:Number					gHeatingSetTemp
Group:String					gHeatingControlMode
Group:Number					gHeatingthermostatValveState

Group 		gHeatingthermostat_Lr		(gHeatingthermostats) [ "Thermostat" ]
String		St_Ht_Controlmode_Lr		(gHeatingthermostat_Lr, gHeatingControlMode, gPersist_MapDB_Restore) [ "homekit:HeatingCoolingMode" ]
Number 		Nu_Ht_ActTemp_Lr		"T_Ist Wohnzimmer Thermostat [%.1f °C]"	<temperature> (gHeatingthermostat_Lr) [ "CurrentTemperature" ]			{ channel="homematic:HG-HM-CC-RT-DN:homegear:NEQ0871180:4#ACTUAL_TEMPERATURE" }
Number 		Nu_Ht_SetTemp_Lr 		"T_Soll Wohnzimmer [%.1f °C]" <temperature> (gHeatingthermostat_Lr, gHeatingSetTemp) [ "TargetTemperature" ]		{ channel="homematic:HG-HM-CC-RT-DN:homegear:NEQ0871180:4#SET_TEMPERATURE" }
Switch 		Sw_Ht_Lowbatt_Lr 		"Battwarnung Thermostat Wohnzimmer [MAP(my.map):%s]" <batterywarning> (gBatterywarning)					{ channel="homematic:HG-HM-CC-RT-DN:homegear:NEQ0871180:0#LOWBAT" }
Number 		Nu_Ht_ValveState_Lr 		"Heizungsventilstellung Wohnzimmer [%d %%]"	<heating> (gHeatingthermostatValveState)				{ channel="homematic:HG-HM-CC-RT-DN:homegear:NEQ0871180:4#VALVE_STATE" }

I configured the homekit.cfg like this, although i don’t know if it is really necessary (it doesn’t work without homekit as well):

# org.openhab.homekit:port=9123
org.openhab.homekit:pin=031-45-154
org.openhab.homekit:useFahrenheitTemperature=false
org.openhab.homekit:thermostatCoolMode=cool
org.openhab.homekit:thermostatHeatMode=heat
org.openhab.homekit:thermostatAutoMode=auto
org.openhab.homekit:thermostatOffMode=off

And my St_Ht_Controlmode_Lr item has the state “auto” but i also tried “off” and several others…

I am on Openhab Snapshot M4 and i hope somebody can help.
Thanks in advance :slight_smile:

1 Like

This one of my rooms

Group                MasterBedroom_Thermostat              "Master Bedroom Thermostat"                                  (MasterBedroom, Thermostats)                                          [ "Thermostat" ]
String               MasterBedroom_ThermostatMode          "Master Bedroom Thermostat Mode"                             (MasterBedroom, MasterBedroom_Thermostat)                             [ "homekit:HeatingCoolingMode" ]
Number:Temperature   MasterBedroom_ThermostatTarget        "Master Bedroom Target Temp [%.1f %unit%]"     <temperature> (MasterBedroom, MasterBedroom_Thermostat, Targets)                    [ "TargetTemperature" ]          { mqtt="<[mybroker:House/MasterBedroom/Thermostat/Target:state:default]" }
Number:Temperature   MasterBedroom_ThermostatAmbientTemp   "Master Bedroom Ambient Temp. [%.1f %unit%]"   <temperature> (MasterBedroom, MasterBedroom_Thermostat, Temperatures, AmbientTemps) [ "CurrentTemperature" ]         { mqtt="<[mybroker:House/MasterBedroom/Thermostat/AmbientTemp:state:default]" }   //{ channel="mysensors:temperature:gateway:temperature_23_1:temp"} 

Did you try addind the UoM :Temperature to the two Number items?

1 Like

Just tried, unfortunately without success :frowning:
Is there a way to access a logfile that might show the error?

Oh god, solved it. My thermostat group and controlmode items didn’t have labels.
I added them and now it works :slight_smile:

I know this is already solved but the topic just fits fine.

Problem:
I can ask for the current temperature and set a new temperature but Google always tells me that my thermostat is turned off. Also I can’t ask for the currently set temperature.

My configuration:
I have a group to use as thermostat via Google.

Group gThermostatSZ "Thermostat Schlafzimmer" <heating> [ "Thermostat" ]

To the group i added three items. Two are defined in Paper UI
Paper UI: HeizungSchlafzimmer_4_ActualTemperature

 "state": "20.20 °C",
  "stateDescription": {
    "minimum": -10,
    "maximum": 56,
    "step": 0.1,
    "pattern": "%.2f %unit%",
    "readOnly": true,
    "options": []
  },
  "editable": true,
  "type": "Number:Temperature",
  "name": "HeizungSchlafzimmer_4_ActualTemperature",
  "label": "Heizung Schlafzimmer IST Temperatur",
  "category": "Temperature",
  "tags": [
    "CurrentTemperature"
  ],
  "groupNames": [
    "gTemperatures",
    "gTemperatures_IST",
    "gThermostatSZ"
  ]

Paper UI: HeizungSchlafzimmer_4_SetTemperature

 "state": "18.00 °C",
  "stateDescription": {
    "minimum": 4.5,
    "maximum": 30.5,
    "step": 0.1,
    "pattern": "%.2f %unit%",
    "readOnly": false,
    "options": []
  },
  "editable": true,
  "type": "Number:Temperature",
  "name": "HeizungSchlafzimmer_4_SetTemperature",
  "label": "Heizung Schlafzimmer SOLL Temperatur",
  "category": "Temperature",
  "tags": [
    "TargetTemperature"
  ],
  "groupNames": [
    "gTemperatures",
    "gThermostatSZ"
  ]

For the third item needed in the group i defined this item:

String HeizungSchlafzimmer_Google_ControlMode "Heizung Schlafzimmer Google Mode" <settings> (gThermostatSZ) [ "homekit:HeatingCoolingMode" ]

And set the state to ON.

  "state": "ON",
  "editable": false,
  "type": "String",
  "name": "HeizungSchlafzimmer_Google_ControlMode",
  "label": "Heizung Schlafzimmer Google Mode",
  "category": "settings",
  "tags": [
    "homekit:HeatingCoolingMode"
  ],
  "groupNames": [
    "gThermostatSZ"
  ]

With this configuration the thermostat is still considered offline. I find out that i am able to set the item to on, off, cool and heat via voice commands.

Solution:
While writing this post i got a “solution” (more like a workaround) by testing. Google seems to consider the thermostat offline when the mode is on or off.
I can set the mode to cool or heat without trigger any other change to the thermostat but if the mode it set to on of those it is considered on by google. On this modes i can then ask for the set temperatur as well.
I think i will set the mode permanently to heat and don’t use the mode in any way. But i can also think about using rules to translate the heat and cool modes to modes my Homematic thermostat understands an set them accordingly.