TAZ 4 feed rate and speed

Greetings,

Just got my TAZ yesterday yay ! Long story short, I’ve been using a UM1 at work and I decided to get myself a TAZ for home, for several reasons, including the bed size.

My goal was to keep using Cura as I’m used to it (though I discovered interesting settings in slic3r), after 2 attempts, I got my 0.1 and 0.25 mm layer profiles right for ABS, everything going all right.

I do have a few questions though : I noticed that my printing times (estimated) in Cura wouldn’t match what is happening on the TAZ, so I started to wonder about the feed rate settings and max speed in the default installed firmware.

The max acceleration seems to be the same, but I can’t tell for the general acceleration, the jerk and other values as I don’t have access to the UM1 during the WE.

I’m printing with the same speed (well, feedrate I think) which was working for a 0.4mm nozzle. It’s hard to say if the TAZ is having enough acceleration to reach the same speed at the end.

printing time error are quite important. I have a current 4.5 hr estimate on a part, but it’s going to be more like 6 hr from the progress bar.

are there some settings I can change or is there something one knows in cura to adjust to the other machine ? From what I see (visually), the max speed is useless if you can’t reach it, so the acceleration and jerk are the master settings there (?)

as the core of the TAZ is a similar firmware to than the UM, the only thing I see are the settings.

side question : I see that I cannot manually change the temp with the screen above 235°C. Do I have to recompile to change this ?

Finally : I’m targeting the dual extruder very soon, is there a firmware compile guide for that ?

thanks !

ok, update time. So I came to realize the general acceleration on the Taz is obviously much lower due to the printing head (no bashing there, as the type of extruder is what I selected and made me chose the taz).
Printing time start to catch up with cura estimate as soon as I increase the acceleration a bit, I even tried up to 1700 (slight above 1/2 acc of my UM1). That create obviously many vibration due to the inertia, for now I’m at 1000 and it’s working nicely. Speed isn’t my main concern, I was just trying to understand numbers and keep printing at the same feed rate as I’m used to.

Couple of notes : I found a little design flaw in the printing head, I get scalloped contour on short radius, I ended up checking visually the cause, I get wobbling even with the stock acceleration, when printing at 70 mm/s. I’ll soon mod the head and post here if I get any improvement.

Regarding temperature : I noticed 2 things

  • first my hot end PID values seemed to be really “off”. I could reach the temperature but it was really floppy. Regulation seemed ok but with non aggressive settings, reaching the right temp takes ages.

So I ran the PID autotune in pronterface, and the values I got were TOTALLY different. Just sayin’
So… I don’t know if the calibration had been done, or if those were just stock settings
[edit] checking the configuration.h, the values I had were the firmware values, so no calibration has been ran while the website says the opposite. No biggie but for newcomers, it’s totally confusing.

Same for the hot bed. When I print with Cura gcode, I specify the temp in my profile, and the hot bed temp as well, so that the printing starts by a preheat to the desired hotend temp and bed temp, the proceed with printing. With the stock values, the hot end would heat “okay” but then the bed would take ages to converge to the desired value OR will eventually never reach it (I didn’t wait too long, I stopped after 1/2 hr).

So I ran the PID calibration for the bed as well, then it works

Generic advice for running the PID calibration :

  • make sure your hardware is at room temp as stipulated in the guide
  • select a calibration temperature that is above your usual temp. That will give you a slight overshoot for values under but will ensure that it converges, especially for the hot bed.

for instance, I print ABS at 235°C, I selected 240°C for the calibration. My hot bed is at 95°, I calibrated with 110°C. Now works like a charm, I have a very good regulation and just enough overshoot during preheat to reach the temp and start printing in a minimum time, while temp ends regulating during the skirt or brim.

don’t forget to save your EEPROM settings with M500 in pronterface and note the values in your user’s manual in case you recompile your firmware and don’t put the values back in the configuration.h

TAZ ROCKS !

Hello erv,

I was wondering if you could post your Cura configuration, I to have a Taz4 and printing ABS. Maybe we can compare notes on what works and what doesn’t and help each other out. I have a base config file that tech support game for Cura. It fixes the retraction issue, but I’m not for sure on the acceleration values you mentioned. I can post it if you want to take a look at it.

I’ve tried printing with slic3r and had some mixed results. (all my holes and slots coming in to small while outside dimensions were very accurate).

nothing fancy but here it is. That works fairly well. The real adjustments that I yet have to do are in the firmware (acceleration max). My head is woobling too much to achieve larger speed, I might just have to accept it as it’s bigger than on my UM1 and it’s totally logical. My plan is to adjust those once I’ve completed my flexi dualy which is still WIP (renovating the house right now, it’s not involving 3D printing unfortunately)

[profile]
layer_height = 0.1
wall_thickness = 0.7
retraction_enable = True
solid_layer_thickness = 1
fill_density = 30
nozzle_size = 0.35
print_speed = 70
print_temperature = 235
print_temperature2 = 0
print_temperature3 = 0
print_temperature4 = 0
print_bed_temperature = 95
support = None
platform_adhesion = Brim
support_dual_extrusion = Both
wipe_tower = False
wipe_tower_volume = 15
ooze_shield = False
filament_diameter = 2.85
filament_diameter2 = 0
filament_diameter3 = 0
filament_diameter4 = 0
filament_flow = 105
retraction_speed = 25
retraction_amount = 1.25
retraction_dual_amount = 16.5
retraction_min_travel = 1.5
retraction_combing = True
retraction_minimal_extrusion = 0.02
retraction_hop = 0.0
bottom_thickness = 0.2
object_sink = 0.0
overlap_dual = 0.15
travel_speed = 150
bottom_layer_speed = 25
infill_speed = 0
inset0_speed = 0
insetx_speed = 0
cool_min_layer_time = 5
fan_enabled = True
skirt_line_count = 5
skirt_gap = 3.0
skirt_minimal_length = 150.0
fan_full_height = 0.5
fan_speed = 25
fan_speed_max = 50
cool_min_feedrate = 10
cool_head_lift = False
solid_top = True
solid_bottom = True
fill_overlap = 25
support_type = Lines
support_angle = 60
support_fill_rate = 15
support_xy_distance = 0.7
support_z_distance = 0.15
spiralize = False
brim_line_count = 20
raft_margin = 5
raft_line_spacing = 1.0
raft_base_thickness = 0.3
raft_base_linewidth = 0.7
raft_interface_thickness = 0.2
raft_interface_linewidth = 0.2
fix_horrible_union_all_type_a = True
fix_horrible_union_all_type_b = False
fix_horrible_use_open_bits = False
fix_horrible_extensive_stitching = False
plugin_config = 
object_center_x = -1
object_center_y = -1

[alterations]
start.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M109 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M82        ;set extruder to absolute mode
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	G92 E0                  ;zero the extruded length
	G1 F200 E3              ;extrude 3mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	;Put printing message on LCD screen
	M117 Printing...
end.gcode = ;End GCode
	M104 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
start2.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M104 S{print_temperature} ;Uncomment to add your own temperature line
	;M109 T1 S{print_temperature2} ;Uncomment to add your own temperature line
	;M109 T0 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	T1                      ;Switch to the 2nd extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T0                      ;Switch to the first extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	;Put printing message on LCD screen
	M117 Printing...
end2.gcode = ;End GCode
	M104 T0 S0                     ;extruder heater off
	M104 T1 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
support_start.gcode = 
support_end.gcode = 
cool_start.gcode = 
cool_end.gcode = 
replace.csv = 
switchextruder.gcode = ;Switch between the current extruder and the next extruder, when printing with multiple extruders.
	G92 E0
	G1 E-36 F5000
	G92 E0
	T{extruder}
	G1 X{new_x} Y{new_y} Z{new_z} F{travel_speed}
	G1 E36 F5000
	G92 E0

Here is the code that came from Lulzbot help desk.

[profile]
layer_height = .14
wall_thickness = 1.0
retraction_enable = True
solid_layer_thickness = 1.2
fill_density = 30
nozzle_size = 0.35
print_speed = 40
print_temperature = 0
print_temperature2 = 0
print_temperature3 = 0
print_temperature4 = 0
print_bed_temperature = 0
support = Touching buildplate
platform_adhesion = None
support_dual_extrusion = Both
wipe_tower = False
wipe_tower_volume = 15
ooze_shield = False
filament_diameter = 2.89
filament_diameter2 = 0
filament_diameter3 = 0
filament_diameter4 = 0
filament_flow = 100.0
retraction_speed = 10
retraction_amount = 1
retraction_dual_amount = 16.5
retraction_min_travel = 1.5
retraction_combing = True
retraction_minimal_extrusion = 0.02
retraction_hop = 0.0
bottom_thickness = 0
object_sink = 0
overlap_dual = 0.15
travel_speed = 80
bottom_layer_speed = 30
infill_speed = 0.0
inset0_speed = 0
insetx_speed = 0
cool_min_layer_time = 5
fan_enabled = True
skirt_line_count = 2
skirt_gap = 6
skirt_minimal_length = 0
fan_full_height = .28
fan_speed = 50
fan_speed_max = 50
cool_min_feedrate = 8
cool_head_lift = False
solid_top = True
solid_bottom = True
fill_overlap = 2
support_type = Lines
support_angle = 0
support_fill_rate = 40
support_xy_distance = 1
support_z_distance = .1
spiralize = False
brim_line_count = 4
raft_margin = 3
raft_line_spacing = 1.0
raft_base_thickness = .4
raft_base_linewidth = 0.7
raft_interface_thickness = 0.2
raft_interface_linewidth = 0.2
fix_horrible_union_all_type_a = True
fix_horrible_union_all_type_b = False
fix_horrible_use_open_bits = False
fix_horrible_extensive_stitching = False
plugin_config = 
object_center_x = -1
object_center_y = -1

[alterations]
start.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M109 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M82        ;set extruder to absolute mode
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	G92 E0                  ;zero the extruded length
	G1 F200 E0              ;extrude 3mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	M203 X192 Y208 Z3 ;speed limits
	;Put printing message on LCD screen
	M117 TAZILLA at work....
end.gcode = ;End GCode
	M104 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
start2.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M104 S{print_temperature} ;Uncomment to add your own temperature line
	;M109 T1 S{print_temperature2} ;Uncomment to add your own temperature line
	;M109 T0 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	T1                      ;Switch to the 2nd extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T0                      ;Switch to the first extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	;Put printing message on LCD screen
	M117 Printing...
end2.gcode = ;End GCode
	M104 T0 S0                     ;extruder heater off
	M104 T1 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
support_start.gcode = 
support_end.gcode = 
cool_start.gcode = 
cool_end.gcode = 
replace.csv = 
switchextruder.gcode = ;Switch between the current extruder and the next extruder, when printing with multiple extruders.
	G92 E0
	G1 E-36 F5000
	G92 E0
	T{extruder}
	G1 X{new_x} Y{new_y} Z{new_z} F{travel_speed}
	G1 E36 F5000
	G92 E0

Hello erv and TomCables,

I found myself in a n00b predicament. I compiled the latest firmware for the TAZ4 and forgot to issue the M503 command and jot down all the initial settings… I wish I had come across your post first, erv! All my prints are coming out all off now…

Would either of you be so kind to post your EEPROM settings?

Thanks in advance.

You can restore your stock TAZ 4 firmware or pull the EEPROM values from the Configuration.h file.

Make sure that if you reflash your firmware, you enable this line by deleting the two leading //:

#define EEPROM_CHITCHAT

Once you do so, you’ll see the controller responses when issuing EEPROM commands.

I’m still not totally done with my profile and speed settings, but pretty close, I’ll post when I’m done

ok, now I’ve finalized everything and I’m pretty happy with what I’m doing ATM.

first off, I had mentioned my issues with the stock polymer IGUS linear guides there
https://forum.lulzbot.com/t/linear-bearing-backlash-big-x-axis-issues/966/1

please note that the following is now working after I’ve upgraded most axis (still have to do the Z one) with hardened steel bars and ball bearing linear guides. The X carriage has been fully upgraded, the Y (bed) has in one diagonal 2 plastic bearings, and on the other diagonal, 2 ball bearing guides (LMU10). The reasons is that I could (at first) perfectly align all of them and there was some constrains on the bars and bearings. Now, though it’s not “absolute”, I can’t see an backlash compared to what I had before. No noise neither aside a of casual tic-tac of the ball inside the bearings when they circulate in their housing.

My former goal was to get as close as possible from the UM1 I have at work. Not a reference per say, it’s just that it has a very nice printing speed and I wanted to see if I could get the same at home with the TAZ, even if it has a bigger head and much more inertia.

Regarding quality, I don’t use 0.2 layers, I print only with 0.1mm layers. The reason is that, with a 0.35 mm nozzle, there’s a max amount of plastic you can extrude at a given temp. If you want to print faster (or same speed) and thicker, you either need to increase temp (that works up to a certain limit), then plastic is too hot, you need the fan, you get warping or melting etc. OR, you need to slow down to maintain the feedrate (OR… use a bigger nozzle).
I found my limit on the UM1 to be 0.1 layers printed at 70 mm/s for perimeters, 50 mm/s for infils, to ensure a proper flat and gap free finish, so that was my target.

I can print with 0.2 mm layers, it’s just that I need to print slower to maintain quality or you will miss plastic at some point (with identical temp). Now, with the most recent settings, I’ll give a shot to an identical profile except the layer thickness and see what happens. My experience is that even fir a .2 mm brim layer, it has trouble adhering as not enough plastic is coming out. Using a .1 first layer then 0.2 mm layer for the rest of the part might work.

TAZ motion settings :
Most of those are stock settings. However, I cranked up the acceleration to 2000 (UM1 is 3000) as I came to realize that without the proper accel, you can’t reach certain top speeds, especially during quick moves between different spots of the part, and also the part will print damn slow even if you require a printing speed of 70 mm/s : small distances will never reach the proper printing or travel speed with 500 of accel.
As a result, not reaching the proper speed can lead to oozing as well, and you get blobs on the sides and various issues.

After the head got strengthened with ball bearing guides and rebolted, I fount it’s totally capable of handling that accel.
Z accel was double IIRC, to have a nice Z hop between layers, cleaner result.


Accel 2000
Vxy jerk 8
Vz jerk 0.4
Ve jerk 10

Vmax X 400
Vmax Y 400
Vmax Z 8
Vmax E 50
A max XY 4000
A max Z 200
A max E 10000
A retract 3000

and just for reference, my Estep : 859

Printing settings. I use cura 14.09, this way I have a single software and 2 machine profiles to either print at work or at home.

Key points about cura :
No fan for ABS for medium to large parts, printing at 230 to 235°C with lulzbot ABS (their temp requirement, which works just fine). Bed at 100°C, though it will change the color of natural ABS as you know, but I don’t care much, and as I’m not using slurry to coat the bed, I have to crank up a bit the bed temp.

for small objects you might need to add the fan, I use min fan 25% to ensure it starts, max fan 100%, min layer time 5 seconds, and it will interpolate between 25 and 100% depending on the layer time, to avoid melting and oozing.

shell thickness : I initially though I would just use multiples of the nozzle diameter, but I found weird results in the printing time. So for instance, with 0.35 mm nozzle, I’m tempted to use a 1.05 mm shell but actually 1mm or 1.2 mm work better. Experiment.

print speed : 70 mm/s best comprise so far. Inill at 50 mm/s to ensure feed rate is respected and you have the proper amount of plastic applied on your top surfaces. Also my ABS was measured to be rather 2.81mm OD, not 2.85.
Flow 105%, I’ve been using that density settings at work, 5-7% of shrinkage is commonly used / accepted. Works for me at least.

First layer of 0.1mm now, for reasons explained above. Sticks better as I’m closer to the bed. Cura 14.09 has settings for an extra % on the bottom layer line width, so that you increase a bit the amount of plastic if necessary, especially if you want to use 0.2 mm for layer #1 / brim.

and… that’s pretty much it. Happy dance.
let me know what you think about that, with those settings, if you use cura etc.

[profile]
layer_height = 0.1
wall_thickness = 1.2
retraction_enable = True
solid_layer_thickness = 1
fill_density = 50
nozzle_size = 0.35
print_speed = 70
print_temperature = 230
print_temperature2 = 0
print_temperature3 = 0
print_temperature4 = 0
print_bed_temperature = 100
support = None
platform_adhesion = Brim
support_dual_extrusion = Both
wipe_tower = False
wipe_tower_volume = 15
ooze_shield = False
filament_diameter = 2.81
filament_diameter2 = 0
filament_diameter3 = 0
filament_diameter4 = 0
filament_flow = 105
retraction_speed = 25
retraction_amount = 1.25
retraction_dual_amount = 16.5
retraction_min_travel = 1.5
retraction_combing = True
retraction_minimal_extrusion = 0.02
retraction_hop = 0.0
bottom_thickness = 0.1
layer0_width_factor = 120
object_sink = 0.0
overlap_dual = 0.15
travel_speed = 150
bottom_layer_speed = 25
infill_speed = 50
inset0_speed = 0
insetx_speed = 0
cool_min_layer_time = 5
fan_enabled = False
skirt_line_count = 5
skirt_gap = 3.0
skirt_minimal_length = 150.0
fan_full_height = 0.5
fan_speed = 35
fan_speed_max = 100
cool_min_feedrate = 10
cool_head_lift = False
solid_top = True
solid_bottom = True
fill_overlap = 15
support_type = Lines
support_angle = 60
support_fill_rate = 15
support_xy_distance = 0.7
support_z_distance = 0.15
spiralize = False
simple_mode = False
brim_line_count = 20
raft_margin = 5
raft_line_spacing = 1.0
raft_base_thickness = 0.3
raft_base_linewidth = 0.7
raft_interface_thickness = 0.2
raft_interface_linewidth = 0.2
raft_airgap = 0.22
raft_surface_layers = 2
fix_horrible_union_all_type_a = True
fix_horrible_union_all_type_b = False
fix_horrible_use_open_bits = False
fix_horrible_extensive_stitching = False
plugin_config = 
object_center_x = -1
object_center_y = -1

[alterations]
start.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M109 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M82        ;set extruder to absolute mode
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	G92 E0                  ;zero the extruded length
	G1 F200 E3              ;extrude 3mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	;Put printing message on LCD screen
	M117 Printing...
end.gcode = ;End GCode
	M104 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
start2.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M104 S{print_temperature} ;Uncomment to add your own temperature line
	;M109 T1 S{print_temperature2} ;Uncomment to add your own temperature line
	;M109 T0 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	T1                      ;Switch to the 2nd extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T0                      ;Switch to the first extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	;Put printing message on LCD screen
	M117 Printing...
end2.gcode = ;End GCode
	M104 T0 S0                     ;extruder heater off
	M104 T1 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
start3.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M104 S{print_temperature} ;Uncomment to add your own temperature line
	;M109 T1 S{print_temperature2} ;Uncomment to add your own temperature line
	;M109 T0 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	T2                      ;Switch to the 2nd extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T1                      ;Switch to the 2nd extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T0                      ;Switch to the first extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	;Put printing message on LCD screen
	M117 Printing...
end3.gcode = ;End GCode
	M104 T0 S0                     ;extruder heater off
	M104 T1 S0                     ;extruder heater off
	M104 T2 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
	;{profile_string}
start4.gcode = ;Sliced at: {day} {date} {time}
	;Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
	;Print time: {print_time}
	;Filament used: {filament_amount}m {filament_weight}g
	;Filament cost: {filament_cost}
	;M190 S{print_bed_temperature} ;Uncomment to add your own bed temperature line
	;M104 S{print_temperature} ;Uncomment to add your own temperature line
	;M109 T2 S{print_temperature2} ;Uncomment to add your own temperature line
	;M109 T1 S{print_temperature2} ;Uncomment to add your own temperature line
	;M109 T0 S{print_temperature} ;Uncomment to add your own temperature line
	G21        ;metric values
	G90        ;absolute positioning
	M107       ;start with the fan off
	G28 X0 Y0  ;move X/Y to min endstops
	G28 Z0     ;move Z to min endstops
	G1 Z15.0 F{travel_speed} ;move the platform down 15mm
	T3                      ;Switch to the 4th extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T2                      ;Switch to the 3th extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T1                      ;Switch to the 2nd extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F200 E-{retraction_dual_amount}
	T0                      ;Switch to the first extruder
	G92 E0                  ;zero the extruded length
	G1 F200 E10             ;extrude 10mm of feed stock
	G92 E0                  ;zero the extruded length again
	G1 F{travel_speed}
	;Put printing message on LCD screen
	M117 Printing...
end4.gcode = ;End GCode
	M104 T0 S0                     ;extruder heater off
	M104 T1 S0                     ;extruder heater off
	M104 T2 S0                     ;extruder heater off
	M104 T3 S0                     ;extruder heater off
	M140 S0                     ;heated bed heater off (if you have it)
	G91                                    ;relative positioning
	G1 E-1 F300                            ;retract the filament a bit before lifting the nozzle, to release some of the pressure
	G1 Z+0.5 E-5 X-20 Y-20 F{travel_speed} ;move Z up a bit and retract filament even more
	G28 X0 Y0                              ;move X/Y to min endstops, so the head is out of the way
	M84                         ;steppers off
	G90                         ;absolute positioning
	;{profile_string}
support_start.gcode = 
support_end.gcode = 
cool_start.gcode = 
cool_end.gcode = 
replace.csv = 
preswitchextruder.gcode = ;Switch between the current extruder and the next extruder, when printing with multiple extruders.
	;This code is added before the T(n)
postswitchextruder.gcode = ;Switch between the current extruder and the next extruder, when printing with multiple extruders.
	;This code is added after the T(n)