+ self.panel = self.AddPanel()
+ image_size=(LulzbotMachineSelectPage.IMAGE_WIDTH, LulzbotMachineSelectPage.IMAGE_HEIGHT)
+ self.taz6 = self.AddImageButton(self.panel, 0, 0, _('Tilapia'),
+ 'Lulzbot_Toolhead_TAZ_Tilapia.jpg', image_size,
+ style=ImageButton.IB_GROUP)
+ self.taz6.OnSelected(self.OnTilapiaSelected)
+ self.taz6.SetValue(True)
+
+ def OnPageShown(self):
+ self.taz6.TriggerGroupCallbacks()
+
+ def OnTilapiaSelected(self):
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotReadyPage)
+
+ def StoreData(self):
+ profile.putProfileSetting('nozzle_size', '0.5')
+ profile.putMachineSetting('extruder_amount', '1')
+ profile.putMachineSetting('toolhead', 'Single Extruder Tilapia')
+ profile.putMachineSetting('toolhead_shortname', 'Tilapia')
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_6_Single_Tilapia')
+ profile.putMachineSetting('machine_name', 'LulzBot TAZ 6')
+
+class LulzbotTazSelectPage(InfoPage):
+ def __init__(self, parent):
+ super(LulzbotTazSelectPage, self).__init__(parent, _("LulzBot TAZ 4-5 Selection"))
+
+ self.panel = self.AddPanel()
+ image_size=(LulzbotMachineSelectPage.IMAGE_WIDTH, LulzbotMachineSelectPage.IMAGE_HEIGHT)
+ self.taz5 = self.AddImageButton(self.panel, 0, 0, _('Stock TAZ 5 (PEI && v2)'),
+ 'Lulzbot_TAZ_5_Hex_and_PEI.jpg', image_size,
+ style=ImageButton.IB_GROUP)
+ self.taz5.OnSelected(self.OnTaz5Selected)
+ self.taz4 = self.AddImageButton(self.panel, 0, 1, _('Stock TAZ 4 (PET && v1)'),
+ 'Lulzbot_TAZ_4_Buda_and_PET.jpg', image_size)
+ self.taz4.OnSelected(self.OnTaz4Selected)
+ self.modified = self.AddImageButton(self.panel, 1, 0, _('Modified LulzBot TAZ 4 or 5'),
+ 'Lulzbot_TAZ5.jpg', image_size)
+ self.modified.OnSelected(self.OnModifiedSelected)
+ self.taz5.SetValue(True)
+
+ def OnPageShown(self):
+ self.taz5.TriggerGroupCallbacks()
+
+ def OnTaz5Selected(self):
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotTaz5NozzleSelectPage)
+ wx.wizard.WizardPageSimple.Chain(self.GetParent().lulzbotTaz5NozzleSelectPage,
+ self.GetParent().lulzbotReadyPage)
+
+ def OnTaz4Selected(self):
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotReadyPage)
+
+ def OnModifiedSelected(self):
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotTazBedSelectPage)
+ wx.wizard.WizardPageSimple.Chain(self.GetParent().lulzbotTazBedSelectPage,
+ self.GetParent().lulzbotTazHotendPage)
+
+ def StoreData(self):
+ if self.taz5.GetValue():
+ profile.putProfileSetting('nozzle_size', '0.5')
+ profile.putMachineSetting('extruder_amount', '1')
+ profile.putMachineSetting('toolhead', 'Single Extruder V2')
+ profile.putMachineSetting('toolhead_shortname', '')
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_5_SingleV2')
+ profile.putMachineSetting('machine_name', 'LulzBot TAZ 5')
+ elif self.taz4.GetValue():
+ profile.putProfileSetting('nozzle_size', '0.35')
+ profile.putMachineSetting('extruder_amount', '1')
+ profile.putMachineSetting('toolhead', 'Single Extruder V1')
+ profile.putMachineSetting('toolhead_shortname', '')
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_4_SingleV1')
+ profile.putMachineSetting('machine_name', 'LulzBot TAZ 4')
+
+class LulzbotTazBedSelectPage(InfoPage):
+ def __init__(self, parent):
+ super(LulzbotTazBedSelectPage, self).__init__(parent, _("Bed Surface"))
+
+ self.panel = self.AddPanel()
+ image_size=(LulzbotMachineSelectPage.IMAGE_WIDTH, LulzbotMachineSelectPage.IMAGE_HEIGHT)
+ self.pei = self.AddImageButton(self.panel, 0, 0, _('PEI'),
+ 'Lulzbot_TAZ_PEI_Bed.jpg', image_size,
+ style=ImageButton.IB_GROUP)
+ self.pet = self.AddImageButton(self.panel, 0, 1, _('PET'),
+ 'Lulzbot_TAZ_PET_Bed.jpg', image_size)
+ self.pei.SetValue(True)
+
+ def StoreData(self):
+ if self.pei.GetValue():
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_5')
+ profile.putMachineSetting('machine_name', 'LulzBot TAZ 5')
+ else:
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_4')
+ profile.putMachineSetting('machine_name', 'LulzBot TAZ 4')
+
+
+class LulzbotTazToolheadSelectPage(InfoPage):
+ def __init__(self, parent):
+ super(LulzbotTazToolheadSelectPage, self).__init__(parent, _("LulzBot TAZ Tool Head Selection"))
+
+ self.panel = self.AddPanel()
+ image_size=(LulzbotMachineSelectPage.IMAGE_WIDTH, LulzbotMachineSelectPage.IMAGE_HEIGHT)
+ self.single = self.AddImageButton(self.panel, 0, 0, _('Single Extruder v1'),
+ 'Lulzbot_Toolhead_TAZ_Single_v1.jpg', image_size,
+ style=ImageButton.IB_GROUP)
+ self.flexy = self.AddImageButton(self.panel, 0, 1, _('Flexystruder v1'),
+ 'Lulzbot_Toolhead_TAZ_Flexystruder_v1.jpg', image_size)
+ self.dually = self.AddImageButton(self.panel, 1, 0, _('Dual Extruder v1'),
+ 'Lulzbot_Toolhead_TAZ_Dual_Extruder_v1.jpg', image_size)
+ self.flexydually = self.AddImageButton(self.panel, 1, 1, _('FlexyDually v1'),
+ 'Lulzbot_Toolhead_TAZ_FlexyDually_v1.jpg', image_size)
+ self.SetVersion(1)
+ self.single.SetValue(True)
+
+ def SetVersion(self, version):
+ image_size=(LulzbotMachineSelectPage.IMAGE_WIDTH, LulzbotMachineSelectPage.IMAGE_HEIGHT)
+ self.single.SetBitmap(self.GetBitmap('Lulzbot_Toolhead_TAZ_Single_v%d.jpg' % version, image_size))
+ self.single.SetLabel(_('Single Extruder v%d' % version))
+ self.flexy.SetBitmap(self.GetBitmap('Lulzbot_Toolhead_TAZ_Flexystruder_v%d.jpg' % version, image_size))
+ self.flexy.SetLabel(_('Flexystruder v%d' % version))
+ self.dually.SetBitmap(self.GetBitmap('Lulzbot_Toolhead_TAZ_Dual_Extruder_v%d.jpg' % version, image_size))
+ self.dually.SetLabel(_('Dual Extruder v%d' % version))
+ self.flexydually.SetBitmap(self.GetBitmap('Lulzbot_Toolhead_TAZ_FlexyDually_v%d.jpg' % version, image_size))
+ self.flexydually.SetLabel(_('FlexyDually v%d' % version))
+ self.version = version
+ if version == 1:
+ self.single.OnSelected(None)
+ self.flexy.OnSelected(None)
+ self.dually.OnSelected(None)
+ self.flexydually.OnSelected(None)
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotFirmwarePage)
+ elif version == 2:
+ self.single.OnSelected(self.OnSingleV2)
+ self.flexy.OnSelected(self.OnNonSingle)
+ self.dually.OnSelected(self.OnNonSingle)
+ self.flexydually.OnSelected(self.OnNonSingle)
+ if self.single.GetValue():
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotTaz5NozzleSelectPage)
+ wx.wizard.WizardPageSimple.Chain(self.GetParent().lulzbotTaz5NozzleSelectPage, self.GetParent().lulzbotFirmwarePage)
+ else:
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotFirmwarePage)
+ wx.wizard.WizardPageSimple.Chain(self.GetParent().lulzbotFirmwarePage, self.GetParent().lulzbotReadyPage)
+
+ def OnSingleV2(self):
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotTaz5NozzleSelectPage)
+ wx.wizard.WizardPageSimple.Chain(self.GetParent().lulzbotTaz5NozzleSelectPage, self.GetParent().lulzbotFirmwarePage)
+
+ def OnNonSingle(self):
+ wx.wizard.WizardPageSimple.Chain(self, self.GetParent().lulzbotFirmwarePage)
+
+ def StoreData(self):
+ if profile.getMachineSetting('machine_type').startswith('lulzbot_TAZ_4'):
+ taz_version = 4
+ else:
+ taz_version = 5
+ version = (taz_version, self.version)
+ if self.single.GetValue():
+ profile.putProfileSetting('nozzle_size', '0.5' if self.version == 2 else '0.35')
+ profile.putMachineSetting('extruder_amount', '1')
+ profile.putMachineSetting('toolhead', 'Single Extruder V%d' % self.version)
+ profile.putMachineSetting('toolhead_shortname', '')
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_%d_SingleV%d' % version)
+ elif self.flexy.GetValue():
+ profile.putProfileSetting('nozzle_size', '0.6')
+ profile.putMachineSetting('extruder_amount', '1')
+ profile.putMachineSetting('toolhead', 'Flexystruder V%d' % self.version)
+ profile.putMachineSetting('toolhead_shortname', 'Flexystruder v%d' % self.version)
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_%d_FlexystruderV%d' % version)
+ elif self.dually.GetValue():
+ profile.putProfileSetting('nozzle_size', '0.5')
+ profile.putMachineSetting('extruder_amount', '2')
+ profile.putMachineSetting('extruder_offset_x1', '0.0')
+ profile.putMachineSetting('extruder_offset_y1', '-50.0' if self.version == 2 else '-52.00')
+ profile.putMachineSetting('toolhead', 'Dual Extruder V%d' % self.version)
+ profile.putMachineSetting('toolhead_shortname', 'Dual v%d' % self.version)
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_%d_DualV%d' % version)
+ elif self.flexydually.GetValue():
+ profile.putProfileSetting('nozzle_size', '0.6')
+ profile.putMachineSetting('extruder_amount', '2')
+ profile.putMachineSetting('extruder_offset_x1', '0.0')
+ profile.putMachineSetting('extruder_offset_y1', '-50.0' if self.version == 2 else '-52.00')
+ profile.putMachineSetting('toolhead', 'FlexyDually V%d' % self.version)
+ profile.putMachineSetting('toolhead_shortname', 'FlexyDually v%d' % self.version)
+ profile.putMachineSetting('machine_type', 'lulzbot_TAZ_%d_FlexyDuallyV%d' % version)
+
+
+class LulzbotHotendSelectPage(InfoPage):
+ def __init__(self, parent, allowBack = True):
+ super(LulzbotHotendSelectPage, self).__init__(parent, _("LulzBot Tool Head Hot end Selection"))
+
+ self.allowBack = allowBack
+ self.panel = self.AddPanel()
+ image_size=(LulzbotMachineSelectPage.IMAGE_WIDTH, LulzbotMachineSelectPage.IMAGE_HEIGHT)
+ self.v1 = self.AddImageButton(self.panel, 0, 0, _('v1 (Budaschnozzle)'),
+ 'Lulzbot_Toolhead_v1.jpg', image_size,
+ style=ImageButton.IB_GROUP)
+ self.v2 = self.AddImageButton(self.panel, 0, 1, _('v2 (LulzBot Hexagon)'),
+ 'Lulzbot_Toolhead_v2.jpg', image_size)
+ self.v1.SetValue(True)
+
+ def AllowBack(self):
+ return self.allowBack
+
+ def StoreData(self):
+ self.GetParent().lulzbotTazToolheadPage.SetVersion(1 if self.v1.GetValue() else 2)
+
+class LulzbotTaz5NozzleSelectPage(InfoPage):
+ url2='http://lulzbot.com/printer-identification'
+
+ def __init__(self, parent):
+ super(LulzbotTaz5NozzleSelectPage, self).__init__(parent, _("LulzBot TAZ Single v2 Nozzle Selection"))
+
+ self.AddText(_('Please select your LulzBot Hexagon Hot End\'s nozzle diameter:'))