Good afternoon,
I use several AirGradient ONEs (I-9PSL) connected to the Home Assistant. They all work reliably except for setting a firmware update error few times a day. Was the topic treated already? Thank you very much for help.
The I-9PSL Firmware version is: 3.3.9, Serial number of one of the instruments is: 34b7daa23c68. Configuration ‘Cloud’, firmware ‘Up-to-date.’ The Home Assistant is up to date on Home Assistant Blue / Hardkernel ODROID-N2/N2+.
Could the automatic firmware update be disabled?
The ERROR log in the Home Assistant is as follows:
2025-09-18 13:28:57.147 ERROR (MainThread) [homeassistant.helpers.entity] Update for update.i_9psl_a_firmware fails
Traceback (most recent call last):
File “/usr/local/lib/python3.13/site-packages/airgradient/airgradient.py”, line 62, in _request
response = await self.session.request(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<4 lines>...
)
^
File “/usr/local/lib/python3.13/site-packages/aiohttp/client.py”, line 770, in _request
resp = await handler(req)
^^^^^^^^^^^^^^^^^^
File “/usr/local/lib/python3.13/site-packages/aiohttp/client.py”, line 725, in _connect_and_send_request
conn = await self._connector.connect(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
req, traces=traces, timeout=real_timeout
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File “/usr/local/lib/python3.13/site-packages/aiohttp/connector.py”, line 642, in connect
proto = await self._create_connection(req, traces, timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/local/lib/python3.13/site-packages/aiohttp/connector.py”, line 1209, in _create_connection
_, proto = await self._create_direct_connection(req, traces, timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/local/lib/python3.13/site-packages/aiohttp/connector.py”, line 1550, in _create_direct_connection
transp, proto = await self._wrap_create_connection(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<7 lines>...
)
^
File “/usr/local/lib/python3.13/site-packages/aiohttp/connector.py”, line 1268, in _wrap_create_connection
sock = await aiohappyeyeballs.start_connection(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<6 lines>...
)
^
File “/usr/local/lib/python3.13/site-packages/aiohappyeyeballs/impl.py”, line 73, in start_connection
sock = await _connect_sock(
^^^^^^^^^^^^^^^^^^^^
...<6 lines>...
)
^
File “/usr/local/lib/python3.13/site-packages/aiohappyeyeballs/impl.py”, line 208, in _connect_sock
await loop.sock_connect(sock, address)
File “/usr/local/lib/python3.13/asyncio/selector_events.py”, line 641, in sock_connect
return await fut
^^^^^^^^^
asyncio.exceptions.CancelledError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File “/usr/local/lib/python3.13/site-packages/airgradient/airgradient.py”, line 61, in _request
async with asyncio.timeout(self.request_timeout):
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
File “/usr/local/lib/python3.13/asyncio/timeouts.py”, line 116, in aexit
raise TimeoutError from exc_val
TimeoutError
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/helpers/entity.py”, line 963, in async_update_ha_state
await self.async_device_update()
File “/usr/src/homeassistant/homeassistant/helpers/entity.py”, line 1314, in async_device_update
await self.async_update()
File “/usr/src/homeassistant/homeassistant/components/airgradient/update.py”, line 53, in async_update
await self.coordinator.client.get_latest_firmware_version(
self.coordinator.serial_number
)
File “/usr/local/lib/python3.13/site-packages/airgradient/airgradient.py”, line 172, in get_latest_firmware_version
response = await self._request(url)
^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/local/lib/python3.13/site-packages/airgradient/airgradient.py”, line 70, in _request
raise AirGradientConnectionError(msg) from exception
airgradient.exceptions.AirGradientConnectionError: Timeout occurred while connecting to the device