nbogojevic / midea-beautiful-air

Python client for accessing Midea air conditioners and dehumidifiers (Midea, Comfee, Inventor EVO) via local network
MIT License
109 stars 18 forks source link

Humidity & Temperature decimals are lost and temperature seems lower than reality by 2 to 3 Celcius #2

Closed frangigu closed 2 years ago

frangigu commented 2 years ago

I noticed into my Home Assistant that temperature was lower than before even if my environment temperature did not change and is controlled by smart thermostats

It also looks like decimals were lost. I looked at commits from https://github.com/nbogojevic/homeassistant-midea-dehumidifier-lan but didn't find anything relevant except that it is using the midea-beautiful-dehumidifier.

Searching into commits led me to a calculation change for humidity and temperature in "class DehumidifierResponse:" https://github.com/nbogojevic/midea-beautiful-dehumidifier/commit/5bf009809bfb4b7018d5d981b35e725574ed8866

I don't know much about python and data received, but perhaps it may help you resolve the issue.

Thanks for the hard work and making this available

nbogojevic commented 2 years ago

Hi @frangigu new calculation should be more correct than previous one, which was approximation. On my side, the sensors on two dehumidifiers show about 1 degree less than other sensors in same areas. If this is systemic, I may update the formula to take that 1 degree into account.

frangigu commented 2 years ago

Thanks for the reply @nbogojevic , I just tested with an hygrometer sitting beside the bucket of my cube dehumidifier (about 8-10 inches from floor), I had 21.6 while dehumidifier in HA was toggling between 20 and 21, so I probably has about 20.5 degree / the one degree difference correction would make sense on my side I believe. Do you think you will be able to get decimals back on humidity & temperature ? before upgrading to v0.4.0+ in home assistant I did have half degrees on temperature, at least.

frangigu commented 2 years ago

Coming back on that 1 degree difference, I took the reading while it was working in dry mode and producing some minimal heat due to compressor work.

Right now it is off and shows 18 Degree Celsius while a close hygrometer in the same room shows 20.63 Celcius. It is not close to an outside wall, it is centered into a room and not close to any heat or cold source, same thing for the hygrometer.

nbogojevic commented 2 years ago

Actually it may be that the sensor is close to the cooling pipes and that's why it shows lower temperature - which actually makes sense from security point of view, as one would like to switch off compressor if cooling pipes get too close to freezing point.

For the time being I'll keep calculation as it is - it is the same one used in Midea SDK for airconidtioners. Midea is not supporting temperature sensor officially.

frangigu commented 2 years ago

I see, but then they should document it properly, and if it was me, I would either adjust it by calculations or just not make it available since it is just not accurate. A temperature sensor should give the temperature, not an adjusted value for "internal use". But thanks for the explanation.

nbogojevic commented 2 years ago

I have updated README.md in https://github.com/nbogojevic/homeassistant-midea-dehumidifier-lan to explain the issue.