From 86b172037bc47f20411e74659807ab52511b16f3 Mon Sep 17 00:00:00 2001 From: jan iversen Date: Sat, 25 Nov 2023 21:28:49 +0100 Subject: [PATCH] Add address to error text in modbus (#104520) --- homeassistant/components/modbus/modbus.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/modbus/modbus.py b/homeassistant/components/modbus/modbus.py index 764cf4930f7..c0474ad75d5 100644 --- a/homeassistant/components/modbus/modbus.py +++ b/homeassistant/components/modbus/modbus.py @@ -435,16 +435,24 @@ class ModbusHub: try: result: ModbusResponse = entry.func(address, value, **kwargs) except ModbusException as exception_error: - self._log_error(str(exception_error)) + error = ( + f"Error: device: {slave} address: {address} -> {str(exception_error)}" + ) + self._log_error(error) return None if not result: - self._log_error("Error: pymodbus returned None") + error = ( + f"Error: device: {slave} address: {address} -> pymodbus returned None" + ) + self._log_error(error) return None if not hasattr(result, entry.attr): - self._log_error(str(result)) + error = f"Error: device: {slave} address: {address} -> {str(result)}" + self._log_error(error) return None if result.isError(): - self._log_error("Error: pymodbus returned isError True") + error = f"Error: device: {slave} address: {address} -> pymodbus returned isError True" + self._log_error(error) return None self._in_error = False return result