adding in tool change for T2 & T3

This commit is contained in:
LarsBrubaker 2020-05-07 13:01:50 -07:00
parent 1cc5c19e80
commit 563c08520f
5 changed files with 64 additions and 0 deletions

View file

@ -158,8 +158,12 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
SettingsKey.bed_temperature,
SettingsKey.before_toolchange_gcode,
SettingsKey.before_toolchange_gcode_1,
SettingsKey.before_toolchange_gcode_2,
SettingsKey.before_toolchange_gcode_3,
SettingsKey.toolchange_gcode,
SettingsKey.toolchange_gcode_1,
SettingsKey.toolchange_gcode_2,
SettingsKey.toolchange_gcode_3,
SettingsKey.build_height,
SettingsKey.cancel_gcode,
SettingsKey.com_port,

View file

@ -46,6 +46,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
public const string bed_temperature = nameof(bed_temperature);
public const string before_toolchange_gcode = nameof(before_toolchange_gcode);
public const string before_toolchange_gcode_1 = nameof(before_toolchange_gcode_1);
public const string before_toolchange_gcode_2 = nameof(before_toolchange_gcode_2);
public const string before_toolchange_gcode_3 = nameof(before_toolchange_gcode_3);
public const string bottom_infill_speed = nameof(bottom_infill_speed);
public const string bottom_solid_layers = nameof(bottom_solid_layers);
public const string bridge_fan_speed = nameof(bridge_fan_speed);
@ -240,6 +242,8 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
public const string threads = nameof(threads);
public const string toolchange_gcode = nameof(toolchange_gcode);
public const string toolchange_gcode_1 = nameof(toolchange_gcode_1);
public const string toolchange_gcode_2 = nameof(toolchange_gcode_2);
public const string toolchange_gcode_3 = nameof(toolchange_gcode_3);
public const string top_infill_extrusion_width = nameof(top_infill_extrusion_width);
public const string top_solid_infill_speed = nameof(top_solid_infill_speed);
public const string top_solid_layers = nameof(top_solid_layers);

View file

@ -2058,6 +2058,42 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
DefaultValue = ""
},
new SliceSettingData()
{
SlicerConfigName = SettingsKey.before_toolchange_gcode_2,
PresentationName = "Before Tool Change G-Code 3".Localize(),
HelpText = "G-Code to be run before switching to extruder 3. Will use standard before G-Code if not set. You can use [wipe_tower_x] [wipe_tower_y] & [wipe_tower_z] to set the extruder position if needed. You can also use '; WRITE_RAW' to skip checksums or '; NO_PROCESSING' to skip position offsetting.".Localize(),
DataEditType = DataEditTypes.MULTI_LINE_TEXT,
ShowIfSet = "!sla_printer&extruder_count>2",
DefaultValue = ""
},
new SliceSettingData()
{
SlicerConfigName = SettingsKey.toolchange_gcode_2,
PresentationName = "After Tool Change G-Code 3".Localize(),
HelpText = "G-Code to be run after switching to extruder 3. Will use standard after G-Code if not set. You can use '; WRITE_RAW' to skip checksums or '; NO_PROCESSING' to skip position offsetting.".Localize(),
ShowIfSet = "!sla_printer&extruder_count>2",
DataEditType = DataEditTypes.MULTI_LINE_TEXT,
DefaultValue = ""
},
new SliceSettingData()
{
SlicerConfigName = SettingsKey.before_toolchange_gcode_3,
PresentationName = "Before Tool Change G-Code 4".Localize(),
HelpText = "G-Code to be run before switching to extruder 3. Will use standard before G-Code if not set. You can use [wipe_tower_x] [wipe_tower_y] & [wipe_tower_z] to set the extruder position if needed. You can also use '; WRITE_RAW' to skip checksums or '; NO_PROCESSING' to skip position offsetting.".Localize(),
DataEditType = DataEditTypes.MULTI_LINE_TEXT,
ShowIfSet = "!sla_printer&extruder_count>3",
DefaultValue = ""
},
new SliceSettingData()
{
SlicerConfigName = SettingsKey.toolchange_gcode_3,
PresentationName = "After Tool Change G-Code 4".Localize(),
HelpText = "G-Code to be run after switching to extruder 2. Will use standard after G-Code if not set. You can use '; WRITE_RAW' to skip checksums or '; NO_PROCESSING' to skip position offsetting.".Localize(),
ShowIfSet = "!sla_printer&extruder_count>3",
DataEditType = DataEditTypes.MULTI_LINE_TEXT,
DefaultValue = ""
},
new SliceSettingData()
{
SlicerConfigName = SettingsKey.top_infill_extrusion_width,
PresentationName = "Top Solid Infill".Localize(),

View file

@ -398,6 +398,14 @@ namespace MatterHackers.MatterControl.PrinterCommunication.Io
case 1:
afterGcodeToQueue = printer.Settings.GetValue(SettingsKey.toolchange_gcode_1).Replace("\\n", "\n");
break;
case 2:
afterGcodeToQueue = printer.Settings.GetValue(SettingsKey.toolchange_gcode_2).Replace("\\n", "\n");
break;
case 3:
afterGcodeToQueue = printer.Settings.GetValue(SettingsKey.toolchange_gcode_3).Replace("\\n", "\n");
break;
}
PrinterMove newToolMove = GetPosition(postSwitchLine, PrinterMove.Unknown);
@ -478,6 +486,14 @@ namespace MatterHackers.MatterControl.PrinterCommunication.Io
case 1:
beforeGcodeToQueue = printer.Settings.GetValue(SettingsKey.before_toolchange_gcode_1).Replace("\\n", "\n");
break;
case 2:
beforeGcodeToQueue = printer.Settings.GetValue(SettingsKey.before_toolchange_gcode_2).Replace("\\n", "\n");
break;
case 3:
beforeGcodeToQueue = printer.Settings.GetValue(SettingsKey.before_toolchange_gcode_3).Replace("\\n", "\n");
break;
}
preSwitchPosition = lastDestination.position;

View file

@ -243,6 +243,10 @@ Printer
toolchange_gcode
before_toolchange_gcode_1
toolchange_gcode_1
before_toolchange_gcode_2
toolchange_gcode_2
before_toolchange_gcode_3
toolchange_gcode_3
Filters
Filters
write_regex