Thermostat Units Celsius to Fahrenheit Conversion #2887
Replies: 7 comments 3 replies
-
|
@User873902 is the Google bug documented anywhere you can link to? From a matter.js perspective I'm not sure if makes sense to keep this as an open issue. We could potentially do some type of f->c conversion in matter.js but right now as a controller we just expose devices "as is". Workarounds for device bugs like this would be a new facility. An interesting idea though if we could make it general purpose. |
Beta Was this translation helpful? Give feedback.
-
|
Absolutely. Here’s a link to one such discussion. Somewhere in the stack should be some conversion layer that capture an obvious mal-intent and correctly interprets it for desired application. Error correction would be great. Thermostats themselves cap the temperature target to a range, however this prevents end-users from capturing the intended target and converting it to the proper unit. In my above example, the thermostat maxes out at 100F instead of 158F (which is 70C). All I can see is the thermostat is heating to 100F, so I can’t translate it to figure out the users desired temperature. I don’t know if the user wanted to set the temperature to 70F, 65F, or 60F. I can only see that the error was made. If error correction was made at the matter.js level, it could make a better experience for everyone, since individual manufacturers may be too burdened to fix their bugs with one of many communication protocols. In this case, the Cloud API handles units correctly and, most likely, has the majority of the market implementation, making the manufacturer motivation low. |
Beta Was this translation helpful? Give feedback.
-
|
Here is a proposed solution. The main failure cases would be boilers and saunas... which may justify a separate Matter device type.
|
Beta Was this translation helpful? Give feedback.
-
|
Ah, so this is relevant for matter.js as a device, where we are taking receipt of the errant values. Correcting those is a little more in our wheelhouse |
Beta Was this translation helpful? Give feedback.
-
|
Hm. I will convert this into a discussion because it is no bug/issue. Matter devices can be of different functionality and such it is hard to impossible in my eyes to add such a correction logic directly in matter.js. Especially when it only affects som controllers out there. To be more exact: the thermostat cluster basically allows to set min and max ranges, also limiting them more for a user perspective. There should be no cause outside of these ranges. It might be that implementations today based on matter.js 0.15 did not checked these limits correctly (unless it was implemented especially). Starting with the next-to-come matter.js 0.16 we have added a full spec compliant thermostat implementation where it should not happen that values can be set outside of the defined ranges. So je is to set that right then. With this I would assume that all possible is already done because deciding if a value inside the range more valid than another is hard to impossible. Additionally to this please report this to Google in general. The more that do this the more it has a chance to be fixed. |
Beta Was this translation helpful? Give feedback.
-
|
@User873902 Do you use the Gemini version of the google assistant or the "old" one? (aka "is the light on your device purple or rainbow colored"?) |
Beta Was this translation helpful? Give feedback.
-
|
If any future reader is experiencing this bug, considering adding your voice/+1 to the original 2023 Google Issue Tracker here and a new Issue Tracker here. Let's get this bug fixed. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
There appears to be a longstanding bug (first reported in 2023) in Google Nest/Home's implementation of Matter that results in GA/Gemini being stuck in Celsius. The result is if you want to set the temperature to 70 F, but do not specify units as F, it will set the temperature to 70 C instead of a more appropriate 21 C.
I first noted this issue when moving my thermostat from the cloud API to MatterBridge for communicating with Home Assistant. This issue doesn't appear to be with MatterBridge, however it may be worthwhile to mention this bug in documentation.
One solution could be to write HA code that corrects abnormal thermostat settings to their Celsius equivalent.
Alternatively, HomeBridge could consider optional corrective settings that cap heating to user specified limits (i.e. heating to 90 F and cooling to 50 F).
[Edit] If any reader is experiencing this bug, considering adding your voice/+1 to the original 2023 Google Issue Tracker here and a new Issue Tracker here. Let's get this bug fixed.
Beta Was this translation helpful? Give feedback.
All reactions