Closed seantibor closed 3 years ago
gree documentation gree source (message by IssueLinks)
Hey there @cmroche, mind taking a look at this issue as its been labeled with an integration (gree
) you are listed as a codeowner for? Thanks!
(message by CodeOwnersMention)
Hey @seantibor thanks for the detailed info. It looks like Gree devices might be weirdly mixing use of F and C in the data, could I get you to capture a few more logs to help me understand this a bit better.
With debug logging enabled, could you change the temperature on the device (from within Home Assistant) then wait 5 minutes so I can see the result of polling state, and then send attach those logs please.
Thanks for your help.
Sounds good -- do you want debug logging on just the gree component or the whole platform?
I need debug info for components.gree
and greeclimate
please.
let me know if this works. To me, it looks like it is always sending over C values regardless of the temperature units setting.
Looking at the log, what I see is sending that the temperature was sent in celsius
021-04-27 11:06:36 DEBUG (MainThread) [greeclimate.device] Sending remote state update SetTem -> 24
2021-04-27 11:06:36 DEBUG (MainThread) [greeclimate.network] Sending packet:
{"cid": "app", "i": 0, "t": "pack", "uid": 0, "tcid": "502cc62cc6ea", "pack": {"opt": ["SetTem"], "p": [24], "t": "cmd"}}
2021-04-27 11:06:36 DEBUG (MainThread) [greeclimate.network] Received packet:
{"t": "pack", "i": 0, "uid": 0, "cid": "502cc62cc6ea", "tcid": "", "pack": {"t": "res", "mac": "502cc62cc6ea", "r": 200, "opt": ["SetTem"], "p": [24], "val": [24]}}
A couple of questions
What I am unsure of is if TemSen in fact should be in F, or it remains in C and TemUn is just there to let us know which unit the user has on the display (and is otherwise non-impacting on the integration side).
here's what I know:
My sense is that TemUn is just letting us know what unit the user has on the display and at least for this firmware it's always reporting the TemSen in C regardless of the TemUn value.
@seantibor This is great info! I need you to catch and report all my bugs :)
There is one other option, maybe the unit it being smart and falling back to C for TemSen because I didn't actually send TemUn when sending the new value, and fixing this would allow you to send 1 F increments to the unit as well. I'll investigate this... it's probably a better fix if true.
Would you be willing to help me test this once ready, I have a script here to install as a custom component easily and test more up to date features/bug fixes: https://github.com/cmroche/HA-GreeComponentInstaller
I could probably get something in place by the weekend.
I'd be happy to test. I'm playing around with greeclimate in a local virtualenv to see if I can force TemUn to be added to the dirty list when the target temperature is set. Will let you know what I find...
@seantibor No worries, I've already solved that problem locally to be honest and am trying to work out the correct formula for conversions from the reported temperatures in C from the device, so that I can report them correctly in F, such that setting something like 77F then returns a state update with 77F (and not 76F).
Largely I'm just time constrained, but this should be resolved by the weekend and I'll prep a version bump to test.
@seantibor I pushed the fixes to the test repo, if you follow the instructions above. Please let me know how it goes.
I tried the instructions in the repo and installed into my custom_components directory. I restarted the docker container for HASS and tried removing the existing gree installation config and re-adding. I'm now getting an error saying the config flow can't be loaded.
@seantibor Ok, lets follow up over on the MR here: https://github.com/cmroche/greeclimate/pull/31 would you be able to post the error you are seeing.
The problem
My new Gree Vireo+ is passing through the current temperature setting in C, even if the temperature units are set to F. Here is the output of the device info and properties. I believe the model number is VIR12HP115V1B.
If I set the units on the AC to celsius, it will pass through the temperature and convert it to the HA's system units of fairenheit.
What is version of Home Assistant Core has the issue?
core-2021.4.6
What was the last working version of Home Assistant Core?
No response
What type of installation are you running?
Home Assistant Container
Integration causing the issue
gree
Link to integration documentation on our website
https://www.home-assistant.io/integrations/gree/
Example YAML snippet
No response
Anything in the logs that might be useful for us?
Additional information
No response