|
|
@ -192,14 +192,22 @@ void GcodeSuite::G28(const bool always_home_all) { |
|
|
|
} |
|
|
|
#endif |
|
|
|
|
|
|
|
if (all_axes_known() && parser.boolval('O')) { // home only if needed
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE) |
|
|
|
if (DEBUGGING(LEVELING)) { |
|
|
|
SERIAL_ECHOLNPGM("> homing not needed, skip"); |
|
|
|
SERIAL_ECHOLNPGM("<<< G28"); |
|
|
|
} |
|
|
|
#endif |
|
|
|
return; |
|
|
|
if (parser.boolval('O')) { |
|
|
|
if ( |
|
|
|
#if ENABLED(HOME_AFTER_DEACTIVATE) |
|
|
|
all_axes_known() // homing needed anytime steppers deactivate
|
|
|
|
#else |
|
|
|
all_axes_homed() // homing needed only if never homed
|
|
|
|
#endif |
|
|
|
) { |
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE) |
|
|
|
if (DEBUGGING(LEVELING)) { |
|
|
|
SERIAL_ECHOLNPGM("> homing not needed, skip"); |
|
|
|
SERIAL_ECHOLNPGM("<<< G28"); |
|
|
|
} |
|
|
|
#endif |
|
|
|
return; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// Wait for planner moves to finish!
|
|
|
|