Describe the bug
After updating past version 2026.07.1, the solax_modbus integration fails to set up sensors for my Sofar inverter.
Integration Version
2026.08.2
Homeassistant core version
2026.8.2
Inverter brand
Sofar
Plugin used
plugin_sofar.py
Serial prefix
SP1ES1
Connection Method
LSE-3-USB adapter - Modbus TCP over Port 8899
Detailed Error Log
Error while setting up solax_modbus platform for sensor: Sofar: multi-function single-register write was rejected by device 1 at register 0x9020: ExceptionResponse(dev_id=1, function_code=144, exception_code=3)
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 499, in _async_setup_platform
await asyncio.shield(awaitable)
File "/config/custom_components/solax_modbus/sensor.py", line 210, in async_setup_entry
if not await battery_config.select_battery(hub, batt_nr, batt_pack_nr):
File "/config/custom_components/solax_modbus/plugin_sofar.py", line 4128, in select_battery
await hub.async_write_registers_single(unit=hub._modbus_addr, address=self.bms_inquire_address, payload=payload)
File "/config/custom_components/solax_modbus/init.py", line 1564, in async_write_registers_single
return await self._async_transport_write(...)
File "/config/custom_components/solax_modbus/init.py", line 1479, in _async_transport_write
return self._validate_write_response(...)
File "/config/custom_components/solax_modbus/init.py", line 1378, in _validate_write_response
raise HomeAssistantError(f"{self._name}: {operation} was rejected by device {unit} at register 0x{address:x}: {response}")
homeassistant.exceptions.HomeAssistantError: Sofar: multi-function single-register write was rejected by device 1 at register 0x9020: ExceptionResponse(dev_id=1, function_code=144, exception_code=3)
Additional context
- Battery Setup: Pylontech Force H2 (BMS V1)
- Connection Type: Modbus TCP over Ethernet (LSE-3-USB adapter / Port 8899)
- Modbus Address: 1 (default)
- Rollback Test: Downgrading to version 2026.07.1 resolves the issue completely and sensors set up as expected.
- Notes: The error occurs during the battery selection routine (
select_battery) when writing to register 0x9020.
Describe the bug
After updating past version 2026.07.1, the
solax_modbusintegration fails to set up sensors for my Sofar inverter.Integration Version
2026.08.2
Homeassistant core version
2026.8.2
Inverter brand
Sofar
Plugin used
plugin_sofar.py
Serial prefix
SP1ES1
Connection Method
LSE-3-USB adapter - Modbus TCP over Port 8899
Detailed Error Log
Error while setting up solax_modbus platform for sensor: Sofar: multi-function single-register write was rejected by device 1 at register 0x9020: ExceptionResponse(dev_id=1, function_code=144, exception_code=3)
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 499, in _async_setup_platform
await asyncio.shield(awaitable)
File "/config/custom_components/solax_modbus/sensor.py", line 210, in async_setup_entry
if not await battery_config.select_battery(hub, batt_nr, batt_pack_nr):
File "/config/custom_components/solax_modbus/plugin_sofar.py", line 4128, in select_battery
await hub.async_write_registers_single(unit=hub._modbus_addr, address=self.bms_inquire_address, payload=payload)
File "/config/custom_components/solax_modbus/init.py", line 1564, in async_write_registers_single
return await self._async_transport_write(...)
File "/config/custom_components/solax_modbus/init.py", line 1479, in _async_transport_write
return self._validate_write_response(...)
File "/config/custom_components/solax_modbus/init.py", line 1378, in _validate_write_response
raise HomeAssistantError(f"{self._name}: {operation} was rejected by device {unit} at register 0x{address:x}: {response}")
homeassistant.exceptions.HomeAssistantError: Sofar: multi-function single-register write was rejected by device 1 at register 0x9020: ExceptionResponse(dev_id=1, function_code=144, exception_code=3)
Additional context
select_battery) when writing to register0x9020.