Environment
- Home Assistant version: 2026.04
- Integration version: v1.0.0 (via HACS)
- Python version: 3.14
- Hardware: Raspberry Pi (Home Assistant OS)
- Devices: 5x Hisense split AC (model 009-199), managed via ConnectLife
Bug 1: Websocket blocks HA startup for 5 minutes
During Home Assistant startup, HisenseWebSocket._connect_ws() hangs and causes a 5-minute
timeout before HA can proceed. This blocks ALL other integrations from completing setup.
Log:
2026-04-06 18:50:39.442 WARNING (MainThread) [homeassistant.bootstrap] Setup timed out for
bootstrap waiting on {<Task pending name='Task-604'
coro=<HisenseWebSocket._connect_ws() running at
/config/custom_components/hisense_ac_plugin/websocket.py:119>
wait_for= cb=[set.remove()]>} - moving forward
Expected behavior: The websocket connection should either complete quickly or fail gracefully
without blocking HA startup. Consider using hass.async_create_background_task() instead of
blocking the setup phase.
Bug 2: TypeError in switch.py line 474 (15 occurrences per boot)
After startup, multiple TypeError: 'NoneType' object can't be awaited errors are logged
from switch.py:474. With 5 AC units × 3 switches each, this generates 15 errors per boot.
Log:
2026-04-06 18:45:21.509 ERROR (SyncWorker_5) [homeassistant] Error doing job:
Task exception was never retrieved (task: None)
Traceback (most recent call last):
File "/config/custom_components/hisense_ac_plugin/switch.py", line 474, in _async_schedule_update
await self.async_schedule_update_ha_state(True)
TypeError: 'NoneType' object can't be awaited
Expected behavior: _async_schedule_update should check if async_schedule_update_ha_state
returns a valid awaitable before awaiting it, or handle the None case gracefully.
Additional warnings (non-blocking)
The integration also logs these warnings for each device, which is expected behavior
but worth noting:
WARNING [custom_components.hisense_ac_plugin.number] No supported numbers found
WARNING [custom_components.hisense_ac_plugin.water_heater] Skipping unsupported device: 009-199 (...)
WARNING [custom_components.hisense_ac_plugin.humidifier] Skipping unsupported device: 009-199 (...)
These are just informational (009-199 are AC units, not water heaters/humidifiers), but could
be silenced to keep logs clean.
Environment
Bug 1: Websocket blocks HA startup for 5 minutes
During Home Assistant startup,
HisenseWebSocket._connect_ws()hangs and causes a 5-minutetimeout before HA can proceed. This blocks ALL other integrations from completing setup.
Log:
2026-04-06 18:50:39.442 WARNING (MainThread) [homeassistant.bootstrap] Setup timed out for
bootstrap waiting on {<Task pending name='Task-604'
coro=<HisenseWebSocket._connect_ws() running at
/config/custom_components/hisense_ac_plugin/websocket.py:119>
wait_for= cb=[set.remove()]>} - moving forward
Expected behavior: The websocket connection should either complete quickly or fail gracefully
without blocking HA startup. Consider using
hass.async_create_background_task()instead ofblocking the setup phase.
Bug 2: TypeError in switch.py line 474 (15 occurrences per boot)
After startup, multiple
TypeError: 'NoneType' object can't be awaitederrors are loggedfrom
switch.py:474. With 5 AC units × 3 switches each, this generates 15 errors per boot.Log:
2026-04-06 18:45:21.509 ERROR (SyncWorker_5) [homeassistant] Error doing job:
Task exception was never retrieved (task: None)
Traceback (most recent call last):
File "/config/custom_components/hisense_ac_plugin/switch.py", line 474, in _async_schedule_update
await self.async_schedule_update_ha_state(True)
TypeError: 'NoneType' object can't be awaited
Expected behavior:
_async_schedule_updateshould check ifasync_schedule_update_ha_statereturns a valid awaitable before awaiting it, or handle the None case gracefully.
Additional warnings (non-blocking)
The integration also logs these warnings for each device, which is expected behavior
but worth noting:
WARNING [custom_components.hisense_ac_plugin.number] No supported numbers found
WARNING [custom_components.hisense_ac_plugin.water_heater] Skipping unsupported device: 009-199 (...)
WARNING [custom_components.hisense_ac_plugin.humidifier] Skipping unsupported device: 009-199 (...)
These are just informational (009-199 are AC units, not water heaters/humidifiers), but could
be silenced to keep logs clean.