From: Daid Date: Sat, 10 Mar 2012 11:12:46 +0000 (+0100) Subject: Some bugfixes on the beta3 release X-Git-Tag: RC1~109^2 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=75e33649670e24fdcc68b2d818079178244ca266;p=cura.git Some bugfixes on the beta3 release --- diff --git a/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py b/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py index fccb85b1..c735febd 100644 --- a/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py +++ b/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py @@ -486,7 +486,7 @@ def getAlterationFile(fileName, allowMagicPrefix = True): if fileName == 'start.gcode': #For the start code, hack the temperature and the steps per E value into it. So the temperature is reached before the start code extrusion. #We also set our steps per E here, if configured. - eSteps = float(getProfileSetting('steps_per_e_unit', '0')) + eSteps = float(getPreference('steps_per_e', '0')) if eSteps > 0: prefix += 'M92 E'+str(eSteps)+'\n' temp = float(getProfileSetting('print_temperature', '0')) diff --git a/SkeinPyPy_NewUI/newui/configWizard.py b/SkeinPyPy_NewUI/newui/configWizard.py index 107f3042..78b51a9d 100644 --- a/SkeinPyPy_NewUI/newui/configWizard.py +++ b/SkeinPyPy_NewUI/newui/configWizard.py @@ -177,12 +177,14 @@ class UltimakerCheckupPage(InfoPage): wx.CallAfter(self.AddProgressText, "Checking start message...") if self.DoCommCommandWithTimeout(None, 'start') == False: wx.CallAfter(self.AddProgressText, "Error: Missing start message.") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Disabling step motors...") if self.DoCommCommandWithTimeout('M84') == False: wx.CallAfter(self.AddProgressText, "Error: Missing reply to Deactivate steppers (M84).") wx.CallAfter(self.AddProgressText, "Possible cause: Temperature MIN/MAX.\nCheck temperature sensor connections.") + self.comm.close() return wx.MessageBox('Please move the printer head to the center of the machine\nalso move the platform so it is not at the highest or lowest position,\nand make sure the machine is powered on.', 'Machine check', wx.OK | wx.ICON_INFORMATION) @@ -193,6 +195,7 @@ class UltimakerCheckupPage(InfoPage): wx.CallAfter(self.AddProgressText, "(This takes about 30 seconds)") if self.DoCommCommandWithTimeout("M104 S100") == False: wx.CallAfter(self.AddProgressText, "Failed to set temperature") + self.comm.close() return time.sleep(25) @@ -200,40 +203,49 @@ class UltimakerCheckupPage(InfoPage): if self.DoCommCommandWithTimeout("M104 S0") == False: wx.CallAfter(self.AddProgressText, "Failed to set temperature") + self.comm.close() return if tempInc < 15: wx.CallAfter(self.AddProgressText, "Your temperature sensor or heater is not working!") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Heater and temperature sensor working\nWarning: head might still be hot!") wx.CallAfter(self.AddProgressText, "Checking endstops") if self.DoCommCommandWithTimeout('M119', 'x_min') != "x_min:L x_max:L y_min:L y_max:L z_min:L z_max:L": wx.CallAfter(self.AddProgressText, "Error: There is a problem in your endstops!\nOne of them seems to be pressed while it shouldn't\ncheck the cable connections and the switches themselfs.") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Please press the X end switch in the front left corner.") if not self.DoCommCommandAndWaitForReply('M119', 'x_min', "x_min:H x_max:L y_min:L y_max:L z_min:L z_max:L"): wx.CallAfter(self.AddProgressText, "Failed to check the x_min endstop!") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Please press the X end switch in the front right corner.") if not self.DoCommCommandAndWaitForReply('M119', 'x_min', "x_min:L x_max:H y_min:L y_max:L z_min:L z_max:L"): wx.CallAfter(self.AddProgressText, "Failed to check the x_max endstop!") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Please press the Y end switch in the front left corner.") if not self.DoCommCommandAndWaitForReply('M119', 'x_min', "x_min:L x_max:L y_min:H y_max:L z_min:L z_max:L"): wx.CallAfter(self.AddProgressText, "Failed to check the x_max endstop!") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Please press the Y end switch in the back left corner.") if not self.DoCommCommandAndWaitForReply('M119', 'x_min', "x_min:L x_max:L y_min:L y_max:H z_min:L z_max:L"): wx.CallAfter(self.AddProgressText, "Failed to check the x_max endstop!") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Please press the Z end switch in the top.") if not self.DoCommCommandAndWaitForReply('M119', 'x_min', "x_min:L x_max:L y_min:L y_max:L z_min:H z_max:L"): wx.CallAfter(self.AddProgressText, "Failed to check the x_max endstop!") + self.comm.close() return wx.CallAfter(self.AddProgressText, "Please press the Z end switch in the bottom.") if not self.DoCommCommandAndWaitForReply('M119', 'x_min', "x_min:L x_max:L y_min:L y_max:L z_min:L z_max:H"): wx.CallAfter(self.AddProgressText, "Failed to check the x_max endstop!") + self.comm.close() return wx.CallAfter(self.AddProgressText, "End stops are working.") @@ -332,9 +344,16 @@ class UltimakerCalibrateStepsPerEPage(InfoPage): def OnRun(self): self.comm = machineCom.MachineCom() + while True: + line = self.comm.readline() + if line == '': + return + if line.startswith('start'): + break self.sendGCommand('M302') #Disable cold extrusion protection self.sendGCommand("G92 E0"); self.sendGCommand("G1 E100 F300"); + time.sleep(5) self.comm.close() def sendGCommand(self, cmd): diff --git a/SkeinPyPy_NewUI/newui/mainWindow.py b/SkeinPyPy_NewUI/newui/mainWindow.py index 25ac4c01..e1cc265b 100644 --- a/SkeinPyPy_NewUI/newui/mainWindow.py +++ b/SkeinPyPy_NewUI/newui/mainWindow.py @@ -105,7 +105,7 @@ class mainWindow(configBase.configWindowBase): validators.warningAbove(c, 260.0, "Temperatures above 260C could damage your machine, be careful!") configBase.TitleRow(right, "Support") - c = configBase.SettingRow(right, "Support type", 'support', ['None', 'Exterior only', 'Everywhere', 'Empty layers only'], 'Type of support structure build.\nNone does not do any support.\nExterior only only creates support on the outside.\nEverywhere creates support even on the insides of the model.\nOnly on empty layers is for stacked objects.') + c = configBase.SettingRow(right, "Support type", 'support', ['None', 'Exterior Only', 'Everywhere', 'Empty Layers Only'], 'Type of support structure build.\nNone does not do any support.\nExterior only only creates support on the outside.\nEverywhere creates support even on the insides of the model.\nOnly on empty layers is for stacked objects.') configBase.TitleRow(right, "Filament") c = configBase.SettingRow(right, "Diameter (mm)", 'filament_diameter', '2.89', 'Diameter of your filament, as accurately as possible.\nIf you cannot measure this value you will have to callibrate it, a higher number means less extrusion, a smaller number generates more extrusion.')