diff --git a/software/tools/modbus_tool/modbus_tool.py b/software/tools/modbus_tool/modbus_tool.py index 8d4dfb9..a46251d 100755 --- a/software/tools/modbus_tool/modbus_tool.py +++ b/software/tools/modbus_tool/modbus_tool.py @@ -79,7 +79,9 @@ def poll_status(slave_id, interval): # Attempt to connect if client.connect(): reconnect_attempts = 0 - new_data["error"] = None # Clear error on successful reconnect + with status_lock: + status_data["error"] = None # Clear error in status_data immediately + time.sleep(0.1) # Allow UI to refresh with cleared error else: new_data["error"] = f"Connection lost. Attempting to reconnect ({reconnect_attempts}/{max_reconnect_attempts})..." time.sleep(reconnect_delay)