openhab / openhab-google-assistant

openHAB Google Assistant: Actions on Google for openHAB
Eclipse Public License 2.0
173 stars 85 forks source link

OpenHAB 4.1.1, Homematic CCU2 and HM-TC-IT-WM-W-EU Thermostat: Unable to set temperature #568

Closed Flowdalic closed 8 months ago

Flowdalic commented 8 months ago

Cross post from https://community.openhab.org/t/openhab-4-1-1-homematic-ccu2-and-hm-tc-it-wm-w-eu-thermostat-unable-to-set-temperature/154239

I have a Homematic CCU2 with a HM-TC-IT-WM-W-EU thermostat. Using the Google Assistant binding, I configured the thermostat group as follows:

Semantic Class: RadiotorControl
Metadata: Google Assistant:
  Thermostat
  Thermostat modes: on=Auto mode:Manu mode:Holiday mode
  Thermostat temperature range: 17,24
Items:
  Temperature
    Metadata: Google Assistant: thermostatTemperatureAmbient
  Set Temperature
    Semantic Class: Setpoint
    Semantic Property: Temperature
    Metadata
      Google Assistant: thermostatTemperatureSetpoint
  Control Mode
    Semantic Class: Point (should may be "Control"?)
    Metdata:
      Google Assistant: thermostatMode

However, in Google Home only presents the thermostat as read-only, i.e., there is no slider:

Screenshot_20240229-11264

while it should be looking like

Expected

From https://community.openhab.org/t/google-assistant-thermostat-setpoint-not-working/96207/6?u=fschmaus

Note that

michikrug commented 8 months ago

The one thing that seems a bit off is your mode configuration. Currently, you map all the values to the single one called "on". You may can try to add at least the heat mode too, e.g.:

"on=Manu mode,heat=Auto mode,off=Holiday mode"

(just an example)

Btw. are you sure that your mode item actually returns values like "Manu mode"?

You also have to make sure to be in the heat mode to adjust the temperature. In the on, off or eco mode, I believe manual adjustments are not possible. At least it behaves like that in my setup.

Flowdalic commented 8 months ago

Thanks for your reply. That is much appreciated.

"on=Manu mode,heat=Auto mode,off=Holiday mode"

Just to double check, I assume the double quotes are not necessary when entering this into the "Thermostat modes" field?

Btw. are you sure that your mode item actually returns values like "Manu mode"?

That is one String shown in the webinterface of the "Control Mode" item. I guess it comes from

https://github.com/openhab/openhab-addons/blob/3039f1fe9bcdded974431a4b919b58776ad1a353/bundles/org.openhab.binding.homematic/src/main/resources/homematic/generated-descriptions.properties#L586-L589

I am currently trying

heat=Auto mode:Manu mode,off=Holiday mode,on=Boost function

which I think is the correct configuration for Homematic thermostats. Will report back.

Flowdalic commented 8 months ago

After looking more at the homematic binding source, especially discovering that there is also a generated-descriptions_de.properties file, it become obvious that "Manu mode" is just the localized String and that the real mode String is MANU-MODE. Not sure how I should have discovered that without reading the source. In any case, it seems like

heat=AUTO-MODE:MANU-MODE,off=PARTY-MODE,on=BOOST-MODE

did the trick.

Thanks again :)

michikrug commented 8 months ago

Just to double check, I assume the double quotes are not necessary when entering this into the "Thermostat modes" field?

Yes, no quotes when entering this in the field

I am currently trying

heat=Auto mode:Manu mode,off=Holiday mode,on=Boost function

which I think is the correct configuration for Homematic thermostats. Will report back.

when I read the homematic properties right, it should probably be:

heat=AUTO-MODE:MANU-MODE,off=PARTY-MODE,on=BOOST-MODE


Oh, was too late..

Glad you got it working