diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 8df5c2f08..d5d5d6aad 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -1808,6 +1808,11 @@ static void setup_for_endstop_move() { #endif // AUTO_BED_LEVELING_FEATURE +static void unknown_position_error() { + LCD_MESSAGEPGM(MSG_POSITION_UNKNOWN); + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM(MSG_POSITION_UNKNOWN); +} #if ENABLED(Z_PROBE_SLED) @@ -3651,6 +3656,11 @@ inline void gcode_M42() { */ inline void gcode_M48() { + if (!axis_known_position[X_AXIS] || !axis_known_position[Y_AXIS] || !axis_known_position[Z_AXIS]) { + unknown_position_error(); + return; + } + double sum = 0.0, mean = 0.0, sigma = 0.0, sample_set[50]; uint8_t verbose_level = 1, n_samples = 10, n_legs = 0, schizoid_flag = 0;