G28 - Auto Home


Auto-home one or more axes, moving them towards their endstops until triggered. Each axis is backed off and re-bumped according to the [XYZ]_HOME_BUMP_MM and HOMING_BUMP_DIVISOR settings.


Homing is required before G29, M48, and some other procedures.

If homing is needed the LCD will blink the X Y Z indicators.

G28 disables bed leveling. Follow with M420 S to turn leveling on, or use RESTORE_LEVELING_AFTER_G28 to automatically keep leveling on after G28.


G28 [O] [R] [X] [Y] [Z]

Optional. If the position is known then exit without homing. (1.1.9)


Raise before homing distance (1.1.9)


Flag to go back to the X axis origin


Flag to go back to the Y axis origin


Flag to go back to the Z axis origin


The most-used form of this command is to home all axes:

G28 ; Go to origin on all axes

With no arguments to G28, Marlin homes according to the Z_SAFE_HOMING, QUICK_HOME and HOME_Y_BEFORE_X settings.

G28 X Z ; Home the X and Z axes