-
-
Notifications
You must be signed in to change notification settings - Fork 31.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Incorrect Thermostat Setpoint in HA (Gets converted/rounded? Why?!?) #103384
Comments
This other issue appears to be similar except that it is a Nest thermostat and it appears that the Nest API is sending a weird possibly converted setpoint which therefore needs some rounding... and the issue there lies with different rounding rules/preferences. In my case, I would not expect ANY rounding given the setpoint should be pulled in as set in ecobee thus not needing any conversion/rounding. |
Hey there @marthoc, @marcolivierarsenault, mind taking a look at this issue as it has been labeled with an integration ( Code owner commandsCode owners of
(message by CodeOwnersMention) ecobee documentation |
I faced the same issue with libdyson-wg/ha-dyson. This is actually a |
no particular treatment done to the value, this is the way the platform works |
@home-assistant close |
Huh. So it is expected that the value is displayed incorrectly? As I said before this also impacts Dyson users. It’s not an Ecobee issue. Example here - libdyson-wg/ha-dyson#39 Can we reopen this and reassign to the core maintainers? |
It's rounded. (or I understood your problem wrong) |
Ecobee app/api is very average. It is possible to set value via the api that the official app cannot reproduce. I suggest setting it up with HA instead. |
This makes no sense at all. A setpoint (target temperature) is set in 0.5C increments (on ecobee) so 20.0 - 20.5 - 21.0, etc. The value should not be changed in any way by HA and HA should therefore show the exact setpoint value as shown on the thermostat. Instead, when the program sets the value, it is always off as if it was converted (not rounded). For example, my setpoint on the upstairs thermostat is currently 21.0C but in HA it shows 20.9C. There is absolutely no plausible reason for the two numbers to differ other than some bug (unnecessary math). Please elaborate on why this is considered normal so I can understand where the confusion lies. |
What I am explaining you is the API of Ecobee is giving back these numbers. Example, here is a screenshot of my ecobee app. Now here is a screenshot of the raw content of Ecobee API (not through Home Assistant) just getting the raw data from their API for my device. Desired heat is the value we use in the ecobee-homeassitant integration You can see it's 697. If you convert back to celcius you get I do not understand Why Ecobee as set that value to 697 when I ask it to be 21c but this is what we have to deal with. |
@marcolivierarsenault I just had a chat with ecobee support and they found that my comfort settings were set to those non 0.5C increment numbers that I was seeing within HA. Their website, the thermostats and their app was showing my heating setting was 21C however in the backend they had 20.8C which is what HA was receiving. Tech support told me that there was a "decimal point enabled on the ecobee side" which he disabled and said it should fix the issue. I asked for clarification but he just said it was a glitch on the ecobee backend side. He also mentioned it is a per thermostat setting, not per account. He said the fix is permanent so I should no longer have the issue. Below is a report of my data on their end that shows that 20.8C which was supposed to be 21.0C. I will look at what HA shows me for the next few schedule changes (if I set it manually it is correct) to see if it is correct. I also found the ecobee developer documentation and will try to figure out how to make the API call so I can see what ecobee sends me... I find it strange that they would send temperature in F degrees (referring to your screenshot) if everything is set to C, especially when ecobee is a Canadian company and most of the world uses C... as a Metric person stuck in a "Imperial / Standard (lol)" country, I have to deal with these issues a lot :( Even in my car Acura thought it would be a bright idea to disable the C setting for the thermometer to discourage gray exports to Canada :( |
Yeah. Honestly the overall backend/api of exobee is very bad IMO There are a lot of issue with it. |
I am hoping that with Matter, things might improve and it might even be possible to make the thermostats local... we'll see. Thanks for the information/help that led me to finding the issue! It has been torturing me for a long time! |
The problem
I submitted an issue on frontend and was told to submit one here.
home-assistant/frontend#17880
There appears to be some conversion or rounding happening on the setpoint which causes the value in HA to differ from the value shown in the ecobee app. Nest thermostats appear to have the same issue.
In the example above, we see that both thermostats have a setpoint of 21C, however HA shows 21.0C for one and 20.8C for the other. I've had some argue with me that the issue is due to differences in how HA and ecobee/Nest perform their rounding but I want to stress the point that there should be no need to round/convert a setpoint given it is a fixed target value that on ecobee thermostats can only be picked at 0.5C increments.
I manually changed the setpoint to 20C (from 21C of the program) and HA now shows 20.2C ?!?
I have 12 additional ecobee temperature room sensors and while I see rounded values on the ecobee system, I see non rounded values in HA, and I LOVE THIS! This makes sense as HA is preserving accuracy of the data... but whatever it is doing to the setpoint does not.
I've seen this reported from people in Europe too I believe so this may not have anything to do with the issue but I will mention it. I am in the USA, but have my systems set to metric as I am European. I've always wondered whether some assumption (I am in the US so I would be using F) was made somewhere that leads to an unnecessary conversion being done.
What version of Home Assistant Core has the issue?
core-2023.11.0
What was the last working version of Home Assistant Core?
core-2023.11.0
What type of installation are you running?
Home Assistant OS
Integration causing the issue
climate
Link to integration documentation on our website
No response
Diagnostics information
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
No response
Additional information
Adding ecobee diagnostic log recorded while I was on a manual setpoint of 20C and turned that off to go back to the programmed setting of 21C that HA shows as 20.8C:
home-assistant_ecobee_2023-11-04T15-42-21.118Z.log
ecobee related lines:
PLEASE EDIT/REMOVE ANYTHING THAT SHOULD NOT BE SHARED
The text was updated successfully, but these errors were encountered: