t0bst4r / home-assistant-matter-hub

Publish your Home-Assistant Instance using Matter.
Apache License 2.0
146 stars 8 forks source link

Thermostat jumps temp up and down when connected to Google Home #170

Open radurambet opened 3 days ago

radurambet commented 3 days ago

I am using some thermostats , actually they are TRVs for heating .

I have them connected trough Zigbee MQTT ( I tried tuya integration also same result). There are 2 bugs that makes this integration impossible to use:

1) When connected directly to the thermostat (climate) entity they are detected cooling _heating entity . That are not detected bay any other integration or thermostat 2) When using BetterThermostat iuntegration that creates a virtual entity it is indeed detected as heating (dont know why exactly) but that le's say solves the first problem .

The biggest problem is that in both cases when connected to Google home immediatley after some adjustments are done in gooogle interface the matter-hub addon starts to move temperature up and down by 2-3 degrees every second . This stops if I shut down the addon or restart it.

I think this should be investigated as I could replicate this behaviour with any thermostat (TRV) that I have wether is connected trough Zigbee MQTT or Tuya integration .

I have attached logfiles with both thermostats (virtual) and actual connected one. LOG-Matter2-491eb00d_hamh_2024-11-18T17-59-34.168Z.log LOG-Matter-491eb00d_hamh_2024-11-18T17-38-22.249Z.log

Capture

This should not be seen as climate: heat_cool entity but just as a heat entity.

Untitled

t0bst4r commented 21 hours ago

The first problem is related to auto-mode. Matter's definition of "auto" mode has some overlap with home assistant's definition of "auto" mode, but they are not the same. If i activate auto mode for matter, i am forced to enable cooling, too. I am still not sure, what would be the correct way to solve this.

The second problem looks really strange. The screenshot from home assistant looks like you have it setup HA to use Celsius. Do you have Google Home configured to use Fahrenheit?

radurambet commented 4 hours ago

Regarding the first question the answer is very simple .

Google Home Auto mode doesn't let you do anything with it . Auto is auto you are not allowed to change temperature you are not allowed to do anything. So the usefulness of this feature is almost zero.

Most of the thermostats and TRVs ( if not all ) those that are not matter anyway, have the option to change temperature in Auto as auto means that the internal scheduling is enabled and while that is active you may change the temperature until next event occurs . So it very very useful feature that doesn't work for Google .

That is the reason why various Plug ins ( Better Thermostat for example ) has a feature to switch Auto with Heating . Așa Auto means Heating . Same is also valid for Aircon .

So since most users are using Google Home the setting should be Heat ( in matter ) equals Auto in HA. Or to be able to switch Heat or Cool ( for Aircon units ) with auto. Otherwise it is unusable in Google Home. .

Now regarding Auto forcing to enable. heat and cool it is also a problem for Google Home as this means that you have 2 knobs on your screen one for heat one for cool and they work separately but you don't know what you are adjusting . So again this is no go .

The only option is Heat ( matter ) = Auto and Cool ( matter ) = Auto ( HA) .

There is also another issue that some TRV or Thermostat consider Heat = 100% always open that is again not good .

As I said a mess . So based on my testing only reasonable way is Auto= Heat / Cool ( matter)

Regarding second issue with up and down values I have both on Celsius , don't know why it makes so . Might be related to Auto. Screenshot_20241122_113313_Home Screenshot_20241122_113259_Home

The above pictures taken from Google Home . As you can see Audio is grates out temp cannot be adjusted