Browse Source

USB device is first added and then trying to connect.

This is to ensure that USB printers work without autodetect
Jaime van Kessel 7 years ago
parent
commit
1ae881caee

+ 1 - 1
plugins/USBPrinting/USBPrinterOutputDevice.py

@@ -127,10 +127,10 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
             try:
                 self._serial = Serial(str(self._serial_port), self._baud_rate, timeout=self._timeout, writeTimeout=self._timeout)
             except SerialException:
+                Logger.log("w", "An exception occured while trying to create serial connection")
                 return
         container_stack = Application.getInstance().getGlobalContainerStack()
         num_extruders = container_stack.getProperty("machine_extruder_count", "value")
-
         # Ensure that a printer is created.
         self._printers = [PrinterOutputModel(output_controller=USBPrinterOuptutController(self), number_of_extruders=num_extruders)]
         self.setConnectionState(ConnectionState.connected)

+ 1 - 1
plugins/USBPrinting/USBPrinterOutputDeviceManager.py

@@ -157,8 +157,8 @@ class USBPrinterOutputDeviceManager(QObject, OutputDevicePlugin, Extension):
     def addOutputDevice(self, serial_port):
         device = USBPrinterOutputDevice.USBPrinterOutputDevice(serial_port)
         device.connectionStateChanged.connect(self._onConnectionStateChanged)
-        device.connect()
         self._usb_output_devices[serial_port] = device
+        device.connect()
 
     ##  Create a list of serial ports on the system.
     #   \param only_list_usb If true, only usb ports are listed