Cura 5.1 and TAZ 6

I’ve spent a bunch of time getting Cura 5.1 configured with my Lulzbot TAZ 6. I wanted to share what I have and see if anyone else has found anything else I missed.

Build plate

X: 280mm
Y: 280mm
Z: 250mm

rectangular

Heated bed: yes

Gcode flavor: marlin

Printhead

X min: -20mm
Y min: -10mm
X max: 10mm
Y max: 10mm

Gantry height 250 mm

Apply extruder offsets to GCode: yes

Start gcode

;This G-Code has been generated specifically for the LulzBot TAZ 6 with standard extruder
;Modified by HarlemSquirrel for Cura 5.1
M73 P0 ; clear GLCD progress bar
M75 ; start GLCD timer
G26 ; clear potential 'probe fail' condition
M107 ; disable fans
G90 ; absolute positioning
M420 S0 ; disable previous leveling matrix
M140 S{material_bed_temperature_layer_0} ; start bed heating up
M104 S{material_standby_temperature} ; soften filament
G28 ; Home all axis
M117 Heating... ; LCD status message
M109 R{material_standby_temperature} ; wait for temp
M82 ; set extruder to absolute mode
G92 E0 ; set extruder position to 0
G1 E-10 F100 ; retract filament 10mm
M104 S{material_standby_temperature} ; set to wipe temp
;M106 ; turn on fans to speed cooling
M109 R{material_standby_temperature} ; wait for to reach temp
M107 ; turn off fan
;M206 X0 Y0 Z0              ; uncomment to adjust wipe position (+X ~ nozzle moves left)(+Y ~ nozzle moves forward)(+Z ~ nozzle moves down)
G12 ; wiping sequence
M106 S255 ; turn on fan to blow away fuzzies
G4 S5 ; wait 5 seconds
M107 ; turn off fan
;M206 X0 Y4 Z0 ; reseting stock nozzle position ### CAUTION: changing this line can affect print quality ###
M109 R{material_standby_temperature} ; wait for extruder to reach probe temp
G1 X-10 Y293 F4000 ; move above first probe point
M204 S100 ; set probing acceleration
G29 ; start auto-leveling sequence
M420 S1 ; activate bed level matrix
M204 S500 ; restore standard acceleration
M104 S{material_print_temperature_layer_0} ; set extruder to print temp
;M425 Z     ; use measured Z backlash for compensation
;M425 Z F0     ; turn off measured Z backlash compensation. (if activated in the quality settings, this command will automatically be ignored)
G1 X0 Y0 Z15 F5000 ; move up off last probe point
G4 S1 ; pause
M117 Heating... ; progress indicator message on LCD
M109 R{material_print_temperature_layer_0} ; wait for extruder to reach printing temp
M190 R{material_bed_temperature_layer_0} ; wait for bed to reach printing temp
G1 Z2 E0 F75 ; prime tiny bit of filament into the nozzle
M82 ; set extruder to absolute mode
M400 ; wait for moves to finish
M117 TAZ 6 Printing... ; progress indicator message on LCD

End gcode

; Customized by HarlemSquirrel for Lulzbot TAZ 6 and Cura 5.1
M400 ; wait for moves to finish
M140 S45 ; start bed cooling
M104 S0 ; disable hotend
M107 ; disable fans
G91 ; relative positioning
G1 E-1 F300 ; filament retraction to release pressure
G1 Z20 E-5 X-20 Y-20 F3000 ; lift up and retract even more filament
G1 E6 ; re-prime extruder
M117 Cooling please wait ; progress indicator message on LCD
G90 ; absolute positioning
G1 Y0 F3000 ; move to cooling position
M190 R45 ; wait for bed to cool off
G1 Y280 F3000 ; present finished print
M140 S0 ; cool down
M77 ; stop GLCD timer
M84 ; disable steppers
G90 ; absolute positioning
M117 Print complete ; progress indicator message

Looks good, excellent work!

What version of TAZ 6 firmware are you using? What tool heads?

I use the Universal 2.0.9.0.13 and for my Single Extruder V2.1 I added the following to the start gcode:

M92 E844                     ; E-Steps (833)
M206 Y7                      ; Set Home Offsets
M301 P28.79 I1.91 D108.51    ; Nozzle PID (P28.79 I1.91 D108.51)
M907 E135                    ; E0 Motor Current
M500                         ; Save Settings

Of course, the E-Steps and the Nozzle PID would be different. I actually have 3 single extruders with different nozzle diameters so there are three different printer profiles.

I also have an M175 V2 so there’s different command for that one:

M92 E415                     ; E-Steps (415)
M206 Y0                      ; Set Home Offsets
M301 P17.42 I1.22 D62.43     ; Nozzle PID (P24.54 I2.52 D61.75)
M907 E160                    ; E0 Motor Current
M500                         ; Save Settings

I have a couple other tool heads and have run PID tuning on all of them. I did this because the default PID values in (an older version of) the firmware turned out to prevent the M175 tool head from completing the start gcode.

Using Universal 2.0.9.0.13 with single stock 0.5mm extruder (not sure the version)

That is interesting. I have a bunch of 1.75mm filament and some of it I’ve been having trouble printing with so I was thinking of getting an m175 v2 extruder for those.

How did you figure out the PID values?

It’s simple enough, there’s a gcode command in Marlin to calculate it (the M301 command uses the results).

M303 E0 S205 C10 ; This will run autotune for extruder 1 (Extruder 1 is E0) at 205°C for a total of 10 iterations.

Here’s some additional information:

https://www.3dmakerengineering.com/blogs/3d-printing/pid-tuning-marlin-firmware.

I picked the temperature based on the filament I print most often, PLA. I guess I could tune again for PETG or ABS but I haven’t had problems at those higher temperatures in the past.

1 Like

Oh very nice! I had no idea this was a thing. Thank you!

I really like my M175. I bought the V1 and upgraded it to the V2.

1 Like

To shave a few seconds off the startup time, I change the post-probe code:

G1 X0 Y0 Z15 F5000 ; move up off last probe point
G4 S1 ; pause
M117 Heating... ; progress indicator message on LCD
M109 R{material_print_temperature_layer_0} ; wait for extruder to reach printing temp
M190 R{material_bed_temperature_layer_0} ; wait for bed to reach printing temp

Becomes:

G1 X0 Y0 Z15 F5000 ; move up off last probe point
M117 Heating... ; progress indicator message on LCD
M104 R{material_print_temperature_layer_0} ; begin heating hotend before pause and moving
M140 R{material_bed_temperatuer_layer_0} ; begin heating bed before pause and moving
G4 S1 ; pause
M109 R{material_print_temperature_layer_0} ; wait for extruder to reach printing temp
M190 R{material_bed_temperature_layer_0} ; wait for bed to reach printing temp
1 Like