diff --git a/custom_components/protocol_wizard/protocols/modbus/coordinator.py b/custom_components/protocol_wizard/protocols/modbus/coordinator.py index 96fb511..d40105f 100644 --- a/custom_components/protocol_wizard/protocols/modbus/coordinator.py +++ b/custom_components/protocol_wizard/protocols/modbus/coordinator.py @@ -425,10 +425,10 @@ async def async_read_entity(self, address: str, entity_config: dict, **kwargs) - values = test_values detected_type = test_type break - except ModbusIOException: + except (ModbusIOException, OSError, ConnectionError): continue # Try next type - except ModbusIOException as err: + except (ModbusIOException, OSError, ConnectionError) as err: _LOGGER.warning("[Modbus] I/O error reading address %s: %s - will attempt reconnect on next request", address, err) # Connection will be recovered on next _async_connect call return None