core: Fritz!Box SmartHome Lights are no longer working after update to Home Assistant Core 2023.12
The problem
After I updated to Home Assistant Core 2023.12 the light devices from my Fritz!Box SmartHome integration are no longer available in Home Assistant. They are still available in the Fritz!Box UI.
The Fritz!Box SmartHome integration generates error messages in the log on startup (see below).
What version of Home Assistant Core has the issue?
core-2023.12.0
What was the last working version of Home Assistant Core?
core-2023.11.3
What type of installation are you running?
Home Assistant OS
Integration causing the issue
AVM Fritz!SmartHome
Link to integration documentation on our website
https://www.home-assistant.io/integrations/fritzbox
Diagnostics information
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
2023-12-06 22:50:55.507 WARNING (MainThread) [homeassistant.util.async_] Detected blocking call to putrequest inside the event loop by integration 'fritzbox' at homeassistant/components/fritzbox/light.py, line 41: device.get_colors(),, please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+fritzbox%22
2023-12-06 22:50:55.526 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 497, in async_add_entities
tasks = [
^
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 497, in <listcomp>
tasks = [
^
File "/usr/src/homeassistant/homeassistant/components/fritzbox/light.py", line 41, in <genexpr>
device.get_colors(),
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pyfritzhome/devicetypes/fritzhomedevicelightbulb.py", line 136, in get_colors
return self._fritz.get_colors(self.ain)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pyfritzhome/fritzhome.py", line 288, in get_colors
colordefaults = self._get_colordefaults(ain)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pyfritzhome/fritzhome.py", line 283, in _get_colordefaults
plain = self._aha_request("getcolordefaults", ain=ain)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pyfritzhome/fritzhome.py", line 85, in _aha_request
plain = self._request(url, params)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/pyfritzhome/fritzhome.py", line 39, in _request
rsp = self._session.get(
^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 602, in get
return self.request("GET", url, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 589, in request
resp = self.send(prep, **send_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/sessions.py", line 703, in send
r = adapter.send(request, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/requests/adapters.py", line 486, in send
resp = conn.urlopen(
^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 715, in urlopen
httplib_response = self._make_request(
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 416, in _make_request
conn.request(method, url, **httplib_request_kw)
File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 244, in request
super(HTTPConnection, self).request(method, url, body=body, headers=headers)
File "/usr/local/lib/python3.11/http/client.py", line 1286, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/local/lib/python3.11/http/client.py", line 1297, in _send_request
self.putrequest(method, url, **skips)
File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 219, in putrequest
return _HTTPConnection.putrequest(self, method, url, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/src/homeassistant/homeassistant/util/async_.py", line 168, in protected_loop_func
check_loop(func, strict=strict)
File "/usr/src/homeassistant/homeassistant/util/async_.py", line 155, in check_loop
raise RuntimeError(
RuntimeError: Blocking calls must be done in the executor or a separate thread; Use `await hass.async_add_executor_job()`; at homeassistant/components/fritzbox/light.py, line 41: device.get_colors(),
2023-12-06 22:51:08.399 WARNING (MainThread) [homeassistant.components.sensor] Setup of sensor platform fritz is taking over 10 seconds.
### Additional information
_No response_
About this issue
- Original URL
- State: closed
- Created 7 months ago
- Reactions: 4
- Comments: 16 (5 by maintainers)
Hi @ckadluba I can’t see any problem in the logs and you say its working for you now, so I will close this issue. Please let me know if the problem returns 👍
@home-assistant close
Same issue here. Logger: homeassistant.util.async_ Source: util/async_.py:140 First occurred: 7. Dezember 2023 um 11:38:17 (1 occurrences) Last logged: 7. Dezember 2023 um 11:38:17
Detected blocking call to putrequest inside the event loop by integration ‘fritzbox’ at homeassistant/components/fritzbox/light.py, line 41: device.get_colors(), please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A"integration%3A+fritzbox"