HomeAssistant-GreeClimateComponent
HomeAssistant-GreeClimateComponent copied to clipboard
[WIP] Add TemSen to get CurrentTemperature from internal sensor
I think this doesn't really work.
- The first AC gives me "65" (i thought it was fahrenheit, but then it would be 18,3c which isnt the case, its 24,33c in this room).
- The second AC gives me "64" but its 21c
- The third gives me 0.
Another addition: im getting errors as well:
2022-07-15 10:25:38 ERROR (MainThread) [homeassistant.core] Error executing service: <ServiceCall climate.set_hvac_mode (c:01G80FCTGFV8YXSHHD9NPM0WS0): hvac_mode=off, entity_id=['climate.bedroom_ac']>
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/core.py", line 1731, in catch_exceptions
await coro_or_task
File "/usr/src/homeassistant/homeassistant/core.py", line 1750, in _execute_service
await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 204, in handle_service
await service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 680, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 930, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 717, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 472, in async_set_hvac_mode
await self.hass.async_add_executor_job(self.set_hvac_mode, hvac_mode)
File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/gree/climate.py", line 804, in set_hvac_mode
self.SyncState({'Pow': 0})
File "/config/custom_components/gree/climate.py", line 455, in SyncState
self.SendStateToAc(self._timeout)
File "/config/custom_components/gree/climate.py", line 276, in SendStateToAc
data, addr = clientSock.recvfrom(64000)
TimeoutError: timed out
Something seems to be broken.
EDIT: When i revert to the current main
, it starts working again.
I think this doesn't really work.
- The first AC gives me "65" (i thought it was fahrenheit, but then it would be 18,3c which isnt the case, its 24,33c in this room).
- The second AC gives me "64" but its 21c
It works, but it has a 40 degree offset as described here and possibly a 2 degree "autocorrection" mentioned in this comment.
- The third gives me 0.
This indeed doesn't work as the AC doesn't provide a TemSen. A firmware change I mentioned earlier might fix it, but it's probably not worth the trouble.