Back to Supported G-Codes

M82 & M83 - Extruder Mode

DMC File Mode: Not Supported
Streaming Mode: Supported

Description

M82 and M83 control the positioning mode for the extruder (E) axis independently of the linear axes (X, Y, Z). This allows the extruder to operate in a different mode than the rest of the machine, which is common in 3D printing workflows.

M82 (Absolute Extruder): Extruder E values represent absolute positions. Sending E10 twice in a row results in no movement on the second command because the extruder is already at position 10.

M83 (Relative Extruder): Extruder E values represent distances to move from the current position. Sending E10 twice in a row extrudes 10 units each time, for a total of 20 units.

Syntax

M82 ; Set extruder to absolute mode
M83 ; Set extruder to relative mode

Parameters

CommandParametersDescription
M82NoneSets extruder to absolute positioning mode
M83NoneSets extruder to relative positioning mode

Important Considerations

  • The extruder defaults to absolute mode when configured via ConfigureExtruder
  • M82/M83 only affect the extruder (E) axis — linear axes (X, Y, Z) are not changed
  • G90/G91 set the mode for all axes including the extruder, but M82/M83 can override the extruder independently afterward
  • If no extruder axis is configured, M82/M83 are silently ignored

Interaction with G90/G91

G90 and G91 set the positioning mode for all configured axes, including the extruder. M82/M83 can then override the extruder independently. The last command to affect the extruder axis wins:

  • G90 then M83 — linear axes absolute, extruder relative
  • G91 then M82 — linear axes relative, extruder absolute
  • M83 then G90 — all axes absolute (G90 overrides M83)

Examples

Absolute Extruder (M82)

G90 ; Absolute positioning for all axes
M82 ; Absolute extruder (redundant here, but explicit)
G1 X10 E5 F1000 ; Move to X=10, extruder to position 5
G1 X20 E10 ; Move to X=20, extruder to position 10
G1 X30 E10 ; Move to X=30, extruder stays at 10 (no extrusion)

Relative Extruder (M83)

G90 ; Absolute positioning for linear axes
M83 ; Relative extruder
G1 X10 E5 F1000 ; Move to X=10, extrude 5 units
G1 X20 E5 ; Move to X=20, extrude another 5 units
G1 X30 E5 ; Move to X=30, extrude another 5 units (total: 15)

Relative Linear Axes with Absolute Extruder

G91 ; Relative positioning for all axes
M82 ; Override extruder back to absolute
G1 X10 E5 F1000 ; Move +10 in X, extruder to position 5
G1 X10 E10 ; Move another +10 in X, extruder to position 10
G1 X10 E10 ; Move another +10 in X, extruder stays at 10

Typical 3D Printing Setup

G90 ; Absolute positioning for XYZ
M83 ; Relative extruder (common in slicers)
G1 X10 Y10 E0.5 F1500 ; Move to (10,10), extrude 0.5mm
G1 X20 Y10 E0.5 ; Move to (20,10), extrude 0.5mm
G1 X20 Y20 E0.5 ; Move to (20,20), extrude 0.5mm
G1 X10 Y20 E0.5 ; Move to (10,20), extrude 0.5mm
G1 X10 Y10 E0.5 ; Close the square, extrude 0.5mm