What M600 means

A filament change is a stateful machine procedure, not one simple extrusion move. Marlin's Advanced Pause feature can lift Z, park XY, retract, unload, prompt the user, load and prime, then restore the print position. Parameter defaults come from firmware configuration and may be overridden in the command.

Support is not universal. Klipper users commonly define M600 as a macro built from PAUSE and printer-specific moves; RepRapFirmware can use its own filament-change macros and workflow. An offline file cannot know whether a display, runout sensor, macro or human response will be available when the command executes.

Syntax and parameters

M600
M600 X<park-x> Y<park-y> Z<lift> [E<retract>] [U<unload>] [L<load>] [R<resume-temp>]
X / Y

Requested park position on Marlin.

Z

Relative Z lift before parking.

E / U / L

Initial retract, unload and load lengths; signs and defaults are firmware-defined.

R / T / B

Resume temperature, target extruder and alert beeps on supported Marlin builds.

Practical examples

Use configured change routine

M600

Starts the machine's default filament-change sequence.

Request a park point

M600 X10 Y15 Z5

Illustrative Marlin form that parks at X10 Y15 after a 5 mm relative lift.

Firmware context

SystemStatusWhat changes
MarlinCommonRequires ADVANCED_PAUSE_FEATURE and suitable user interaction; available parameters depend on configuration.
KlipperCheck dialectM600 is typically a user-defined macro; PAUSE/RESUME behavior and parking are printer-specific.
RepRapFirmwareCheck dialectFilament-change handling is macro- and machine-specific; confirm the configured workflow.
CNC controllersNot applicableM600 is not a general CNC filament or tool-change standard.

What this viewer can show

Pause marker visible, workflow not executed

The viewer does not expand M600 into hidden park, unload and resume moves because those live in firmware or macros. Only explicit moves written in the file affect the rendered path.

Common mistakes

  • Verify that the printer can pause and wait safely before relying on M600 in an unattended file.
  • Park coordinates and unload lengths must match the actual machine and filament path.
  • A viewer cannot guarantee that resume restores temperatures, extrusion state and position correctly.

Primary sources

This page is an original explanation, reviewed against the firmware documentation below. Always confirm commands against the firmware and configuration on the machine that will execute them.