G21 has been removed from TAZ 6 firmware

LulzBot TAZ 6
PLA 2.85

Default slicing settings

In the GCode produced for the TAZ 6 there are three G21 commands. The second one is in the start gcode and I can remove it. The first one appears (twice) in the following sections:

; PATHIO: Pathio necessary settings
G21 ;Set printer to use mm
G92 E0 ;Set Extrude to 0
G90 ; Set absolute positioning
M83 ;Set extruder to relative mode
M200 D0 ;Set printer to treat E as mm, not mm^3)

The above code does not appear to be user editable.

The latest firmware for the TAZ 6 (and other LulzBot printers) has removed the G20 and G21 commands, the printers default is mm and it cannot be changed. If a G21 is sent to the printer, the printer responds unknown command.

The PATHIO: Pathio necessary settings at least need an option to remove (or comment out) the G21 command.

Hi b-morgan!

Thanks for spotting that!

I’ll put this in as a bug report, but it may be quite difficult to remove, due to the possibility for other users who have not upgraded their firmware yet.

There is a G21 in the starting script, but that’s not the only one, I’ll mention that as well.



It would be acceptable to me if there was an option in the printer configuration, advanced section to decide if G21 should be included or not. The Marlin firmware only includes G20 and G21 if the firmware option INCH_MODE_SUPPORT is defined (IMO, if undefined, G21 should be a NOOP).

You can set the default to output G21 commands so the current behavior remains but I’d like to remove the “unknown commands” from each and every print job.

Another alternative is to store the “necessary settings” in a config file somewhere (with warnings) so that advanced users could ignore the warnings and remove the G21. This also allows for easier inclusion of other “necessary settings” in the future should they be necessary.

Yep, I agree with that idea.

I’ll put it as a suggestion to allow config of that start script.

Thanks for spotting this!


We’re planning on moving those “necessary settings” to be part of the start gcode, but there are some logistical hurdles beforehand (since we’ll need warnings if you don’t have them in your code). Just to clarify, does the G21 command cause your printer to halt, or does it just confuse it?

The printer just complains (see below). LulzBot delivered the new firmware before they delivered a version of CuraLE that had the G21 removed from the start code so I had to endure the complaints for a while. It was just annoying to chase it down.

Recv:  T:18.48 /0.00 B:19.33 /0.00 @:0 B@:0
Send: G21
Recv: echo:Unknown command: "G21"
Recv: ok P15 B4
Recv:  T:18.57 /0.00 B:19.36 /0.00 @:0 B@:0

I have opened a ticket in their bug tracker suggesting that removal of G21 is a bad idea. It is an unfortunate side effect of removing G20. I believe Pathio doesn’t want to support G20 either!

I have also created an issue against Marlin (https://github.com/MarlinFirmware/Marlin/issues/13228) as that may be the best place to “fix” this.