From 5661c11190f45bb58c312464f61835fe4e7122ea Mon Sep 17 00:00:00 2001 From: Manuel Weiser Date: Sun, 2 Mar 2025 11:13:04 +0100 Subject: [PATCH] =?UTF-8?q?Verbessere=20Verbindungsstatusverfolgung=20in?= =?UTF-8?q?=20BambuVirtualPrinter=20mit=20erweiterten=20Debug-Logs=20und?= =?UTF-8?q?=20informiere=20=C3=BCber=20erfolgreiche=20MQTT-Verbindungen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../printer/bambu_virtual_printer.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/octoprint_bambu_printer/printer/bambu_virtual_printer.py b/octoprint_bambu_printer/printer/bambu_virtual_printer.py index 2f30411..73ab2ca 100644 --- a/octoprint_bambu_printer/printer/bambu_virtual_printer.py +++ b/octoprint_bambu_printer/printer/bambu_virtual_printer.py @@ -176,7 +176,9 @@ class BambuVirtualPrinter: @property def is_connected(self): """Custom property to track connection status without modifying BambuClient directly""" - return self._custom_connected and self._mqtt_connected + connection_status = self._custom_connected and self._mqtt_connected + self._log.debug(f"Connection status check: custom_connected={self._custom_connected}, mqtt_connected={self._mqtt_connected}, result={connection_status}") + return connection_status def change_state(self, new_state: APrinterState): self._state_change_queue.put(new_state) @@ -252,6 +254,7 @@ class BambuVirtualPrinter: client.subscribe(device_topic) self._log.debug(f"Subscribed to topic: {device_topic}") + self._log.info(f"MQTT connection successful. Connected: {self.is_connected}") # Notify that we're connected self.sendOk() @@ -448,6 +451,13 @@ class BambuVirtualPrinter: self._mqtt_client.connect(host, port, 60) self._mqtt_client.loop_start() self._log.info(f"MQTT client started with {host}:{port}") + + # Explicitly set the connection status + self._custom_connected = True + + # Force initialize the printer connection status + if not hasattr(self._bambu_client, 'device'): + self._bambu_client._init_device() except Exception as e: self._log.error(f"Failed to connect to MQTT broker: {e}") raise