mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-11-29 05:41:05 -07:00
Merge branch 'master' into WIP_improve_initialization
Conflicts: cura/AutoSave.py cura/BuildVolume.py cura/CuraApplication.py Contributes to CURA-5164
This commit is contained in:
commit
5704a7b184
41 changed files with 1109 additions and 341 deletions
|
|
@ -308,7 +308,21 @@ class USBPrinterOutputDevice(PrinterOutputDevice):
|
|||
if b"ok T:" in line or line.startswith(b"T:") or b"ok B:" in line or line.startswith(b"B:"): # Temperature message. 'T:' for extruder and 'B:' for bed
|
||||
extruder_temperature_matches = re.findall(b"T(\d*): ?([\d\.]+) ?\/?([\d\.]+)?", line)
|
||||
# Update all temperature values
|
||||
for match, extruder in zip(extruder_temperature_matches, self._printers[0].extruders):
|
||||
matched_extruder_nrs = []
|
||||
for match in extruder_temperature_matches:
|
||||
extruder_nr = 0
|
||||
if match[0] != b"":
|
||||
extruder_nr = int(match[0])
|
||||
|
||||
if extruder_nr in matched_extruder_nrs:
|
||||
continue
|
||||
matched_extruder_nrs.append(extruder_nr)
|
||||
|
||||
if extruder_nr >= len(self._printers[0].extruders):
|
||||
Logger.log("w", "Printer reports more temperatures than the number of configured extruders")
|
||||
continue
|
||||
|
||||
extruder = self._printers[0].extruders[extruder_nr]
|
||||
if match[1]:
|
||||
extruder.updateHotendTemperature(float(match[1]))
|
||||
if match[2]:
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ class USBPrinterOutputDeviceManager(QObject, OutputDevicePlugin):
|
|||
self._check_updates = True
|
||||
self._update_thread.start()
|
||||
|
||||
def stop(self):
|
||||
def stop(self, store_data: bool = True):
|
||||
self._check_updates = False
|
||||
|
||||
def _onConnectionStateChanged(self, serial_port):
|
||||
|
|
@ -79,10 +79,11 @@ class USBPrinterOutputDeviceManager(QObject, OutputDevicePlugin):
|
|||
if container_stack is None:
|
||||
time.sleep(5)
|
||||
continue
|
||||
port_list = [] # Just an empty list; all USB devices will be removed.
|
||||
if container_stack.getMetaDataEntry("supports_usb_connection"):
|
||||
port_list = self.getSerialPortList(only_list_usb=True)
|
||||
else:
|
||||
port_list = [] # Just use an empty list; all USB devices will be removed.
|
||||
machine_file_formats = [file_type.strip() for file_type in container_stack.getMetaDataEntry("file_formats").split(";")]
|
||||
if "text/x-gcode" in machine_file_formats:
|
||||
port_list = self.getSerialPortList(only_list_usb=True)
|
||||
self._addRemovePorts(port_list)
|
||||
time.sleep(5)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue