I have similar problem but with Homekit integration and Tado radiator thermostats. Some times the set_temperature works but most of the times I get an error for timeout. This started after the update to 2021.11.
Error executing service: <ServiceCall climate.set_temperature (c:9c155552be81e2c1688bb2cf0b054a22): temperature=25.0, entity_id=['climate.radiator']>
Traceback (most recent call last):
File "/usr/local/lib/python3.9/asyncio/tasks.py", line 492, in wait_for
fut.result()
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/aiohomekit/controller/ip/connection.py", line 88, in send_bytes
return await asyncio.wait_for(result, 30)
File "/usr/local/lib/python3.9/asyncio/tasks.py", line 494, in wait_for
raise exceptions.TimeoutError() from exc
asyncio.exceptions.TimeoutError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/core.py", line 1511, in catch_exceptions
await coro_or_task
File "/usr/src/homeassistant/homeassistant/core.py", line 1530, in _execute_service
await handler.job.target(service_call)
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 213, in handle_service
await self.hass.helpers.service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 667, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 863, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 704, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", line 586, in async_service_temperature_set
await entity.async_set_temperature(**kwargs)
File "/usr/src/homeassistant/homeassistant/components/homekit_controller/climate.py", line 371, in async_set_temperature
await self.async_put_characteristics(chars)
File "/usr/src/homeassistant/homeassistant/components/homekit_controller/__init__.py", line 110, in async_put_characteristics
return await self._accessory.put_characteristics(payload)
File "/usr/src/homeassistant/homeassistant/components/homekit_controller/connection.py", line 491, in put_characteristics
results = await self.pairing.put_characteristics(characteristics)
File "/usr/local/lib/python3.9/site-packages/aiohomekit/controller/ip/pairing.py", line 274, in put_characteristics
response = await self.connection.put_json("/characteristics", data)
File "/usr/local/lib/python3.9/site-packages/aiohomekit/controller/ip/connection.py", line 334, in put_json
response = await self.put(
File "/usr/local/lib/python3.9/site-packages/aiohomekit/controller/ip/connection.py", line 326, in put
return await self.request(
File "/usr/local/lib/python3.9/site-packages/aiohomekit/controller/ip/connection.py", line 461, in request
resp = await self.protocol.send_bytes(request_bytes)
File "/usr/local/lib/python3.9/site-packages/aiohomekit/controller/ip/connection.py", line 156, in send_bytes
return await super().send_bytes(buffer)
File "/usr/local/lib/python3.9/site-packages/aiohomekit/controller/ip/connection.py", line 92, in send_bytes
raise AccessoryDisconnectedError("Timeout while waiting for response")
aiohomekit.exceptions.AccessoryDisconnectedError: Timeout while waiting for response