Official Google Assistant Integration for openHAB

I followed the instructions here in the forum

Hi @MARZIMA,
I still can’t get the thermostats to work correctly. Was this one of the fixes?
Regards.

Mine doesn’t work anymore as well. Whenever I try to accessit, I get an error from google saying openhab is unavailable. My lights don’t have any issues.

I use IFTTT for roller shutters.
Google Assistant >> IFTTT >> Openhab

I just discovered I have problems with thermostat as well. However, it´s a odd problem.

My thermostats works fine in Google Home app, as well as voice command through Google Home mini´s. Only exception is, I can no longer get an respond when asking about the humidity.

However…
I bought a Google Home (nest) Hub the other day. My thermostats do NOT work in the Google nest Hub. I dont get an temperature state/value, and Google nest hub tells me the mode is not supported.

This is my items for one thermostat which had both temperature sensor as well as humdity sensor.

Group g_Stortbad_TSTAT               "Stort Bad Thermostat"                                                                                                                     [ "Thermostat" ]
Number stort_bad_Temperature         "Stort Bad Temperatur [%.1f °C]"                                          <cu_heating> 	(g_Stortbad_TSTAT,Temperatur,gTvaer,gSugeTemp) 	[ "CurrentTemperature" ]   { channel="ihc:controller:elko:stortbad_temperatur_fb" }
Number stort_bad_Tempsetpunkt        "Stort Bad Temperature setpunkt [%.1f °C]"                                <temperature>	(g_Stortbad_TSTAT)                              [ "TargetTemperature" ]	   { channel="ihc:controller:elko:stortbad_temperaturSet_fb", autoupdate="false" }
Switch telestat1_stort_bad           "Stort Bad Telestat [%s]"                                                 <cu_switch>  	(g_Stortbad_TSTAT,gTelestat)                                               { channel="ihc:controller:elko:stortbad_telestat" }
Number    stort_bad_fugt             "Stort Bad Fugtighed [%.0f %%]"                                           <Humidity>       (g_Stortbad_TSTAT,Fugtighed,gHumidityBathRoom) 	[ "CurrentHumidity" ]      { channel="ihc:controller:elko:stortbad_fugtighed" }

I have no idea who to set this up (which mode) to be able to get it to work with Google nest Hub. But I find it rather strange it works fine using the Google Home app, and voice control on a Google Home mini.

EDIT.
Just did a small test, as my settings didn´t have the [ “homekit:HeatingCoolingMode” ] tag. When I insert this an link it to my telestat, (which I believe is the one which should report wether it´s colling or heating (or on/off). Google Home app does no longer work with my thermostat I have inserted this tag to… Google Home app says, the thermostat doesnt respond.

This s my items for the testing: My telestat resports on/off, so I first tried with String. It didn´t work. Then I tried with Number, which didn´t work either, ofcouse… How come there isn´t a switch mode available?.

Group     g_Stortbad_TSTAT           "Stort Bad Thermostat"                                                                                                                     [ "Thermostat" ]
Number    stort_bad_Temperature      "Stort Bad Temperatur [%.1f °C]"                                          <cu_heating> 	(g_Stortbad_TSTAT,Temperatur,gTvaer,gSugeTemp) 	[ "CurrentTemperature" ]   { channel="ihc:controller:elko:stortbad_temperatur_fb" }
Number    stort_bad_Tempsetpunkt     "Stort Bad Temperature setpunkt [%.1f °C]"                                <temperature>	(g_Stortbad_TSTAT)                              [ "TargetTemperature" ]	   { channel="ihc:controller:elko:stortbad_temperaturSet_fb", autoupdate="false" }
Switch    telestat1_stort_bad        "Stort Bad Telestat [%s]"                                                 <cu_switch> 	(g_Stortbad_TSTAT,gTelestat)                                               { channel="ihc:controller:elko:stortbad_telestat" }
DateTime  telestat1_stort_badStamp   "StortBad Telestat ON [%1$tH:%1$tM:%1$tS %1$td.%1$tm.%1$tY]"              <time>           (gTelestatStamp)
Number    stort_bad_fugt             "Stort Bad Fugtighed [%.0f %%]"                                           <Humidity>       (g_Stortbad_TSTAT,Fugtighed,gHumidityBathRoom) 	[ "CurrentHumidity" ]      { channel="ihc:controller:elko:stortbad_fugtighed" }

String    stort_bad_Mode             "Stort Bad Heating/Cooling Mode"                                                           (g_Stortbad_TSTAT)                       [ "homekit:HeatingCoolingMode" ]  { channel="ihc:controller:elko:stortbad_telestat" }  

According to thermostat and reading temperature and humidity I have a question: Is this possible to develop universal tag for sensor, i.e:

  • temperature
  • humidity
  • power
  • pressure
  • any other value.

Similar like this:

Number GF_FamilyRoom_Outdoor_Humidity_Sensor "Outdoor humidity [%.1f%%]" <humidity> (gSensorTemperature, gPersistenceSensor) ["Sensor"]
Number GF_FamilyRoom_Pressure_Sensor "Outdoor pressure [%.1fhPa]" <pressure> (gSensorTemperature, gPersistenceSensor) ["Sensor"]
- OK Google, what is the <label>?
- Current value of <label> is now <value>.

(I was asked about that in Read openhab sensor value using Google Home and OpenHAB Cloud Connector some time ago).

You can, but you cant use it for thermostats then, and Google home wont recognize it either. Hmm, so the answer is probably, you cant :slight_smile:

Wait :slight_smile:
I understand, that using thermostat to read humidity and temperature (in my case from dht sensor) is a workaround.

I won’t set any thermostat values. This is rather the question for enhancement in OpenHAB integration plugin to support this. I won’t use any additional services (I read that IFTTT can manage that).

There are many values accessible in various types of sensors/metrics. The question is how to read them using OpenHAB.

Update:
I’ve checked IFTTT integration with OpenHAB. It can only send command, not return any value to Google Home (IF Google Assistant THEN OpenHAB). If I understand it well, there is no possibility to get any value from OpenHAB this way and native support is required or changes in IFTTT binding.

As far as I know, nothing is possible to send to Google Home. Google Home devices, as its a receive device only, unless you use casting. But this kind of “send command” is not really usefull for what you are seaching for, I guess.

Just a comment.
I changed the “homekit:HeatingCoolingMode” to “homekit:TargetHeatingCoolingMode” as per the HomeKit Add-on page, and my thermostats (heating control only, on radiators) works as normal with google home after this.

1 Like

you mean that you can change mode to off and on again ?

The Danfoss Thermostats do not support different modes (they are always in heating mode), so I cannot tell if that works.

Is this a new convention that has to be used in future versions, e.g. in upcoming milestone builds?

Just asking because of an annoying bug here that might be related: Thermostat works well in Google Home, but not with Alexa

I tried. If I change the setting on google home, nothing happens in openhab. Looks like this is not a fix. In effect you are just removing the mode item from the thermostat

Hi,

Thanks for this great work!

I was wondering is there an option to capture voice data that is not assigned to an item. For example, right now I have been using voice into node red commands, then searching the sentence for key words (e.g., “heating” & “timer” & “20” & “minutes” etc). Basically bridging the gap until GA becomes increasingly supported in openhab. I also use it for scenes, such as “bedroom + off” and via mqtt configuring numerous devices, rather than saying this light off etc.

Really, all I need as a way to call an item some key phrase (its actual name eg “control”) and then the words after this become the string assigned to that item, which I can then parse as a rule. Is there anything like this?

from the google assisstant ifttt triggers page

Thanks, I had already figured it out. Once I realised I could do this to an item of string type is was simple. :slight_smile:

Same here. If I add the thermostat correctly (with “homekit:HeatingCoolingMode” tag), the thermostat is always offline.
I tried with “homekit:TargetHeatingCoolingMode” tag, without tag and without mode, always with the same result: thermostat online but mode offers “heating” and “off”. It seems that the three are the same as removing the mode.
@MARZIMA, any chance you could look into it, please?
Thanks!

I believe something has to be changed around the thermostat, beside what you mention, there are other problems as well…
Using Google Home app my thermostats works just fine. But on my Google Nest Hub, it reports that the current mode isn´t supported. I have no idea if this is a Google issue og a mix of Google and openhab. It´s pretty strange it works fine using the Google Home app, but not the Google Nest Hub.

Also Humidity seems to have vanished somehow.

Ok guys, just saw the thermostat issue.
I will dedicate time on weekend and check to fix it.

Sorry for my absenence…

BR Mehmet

4 Likes