|
|
@ -47,7 +47,7 @@ |
|
|
|
#include "../feature/bedlevel/bedlevel.h" |
|
|
|
#endif |
|
|
|
|
|
|
|
#if HAS_AXIS_UNHOMED_ERR && (ENABLED(ULTRA_LCD) || ENABLED(EXTENSIBLE_UI)) |
|
|
|
#if ENABLED(ULTRA_LCD) || ENABLED(EXTENSIBLE_UI) |
|
|
|
#include "../lcd/ultralcd.h" |
|
|
|
#endif |
|
|
|
|
|
|
@ -1036,35 +1036,31 @@ void prepare_move_to_destination() { |
|
|
|
set_current_from_destination(); |
|
|
|
} |
|
|
|
|
|
|
|
#if HAS_AXIS_UNHOMED_ERR |
|
|
|
|
|
|
|
bool axis_unhomed_error(const bool x/*=true*/, const bool y/*=true*/, const bool z/*=true*/) { |
|
|
|
#if ENABLED(HOME_AFTER_DEACTIVATE) |
|
|
|
const bool xx = x && !TEST(axis_known_position, X_AXIS), |
|
|
|
yy = y && !TEST(axis_known_position, Y_AXIS), |
|
|
|
zz = z && !TEST(axis_known_position, Z_AXIS); |
|
|
|
#else |
|
|
|
const bool xx = x && !TEST(axis_homed, X_AXIS), |
|
|
|
yy = y && !TEST(axis_homed, Y_AXIS), |
|
|
|
zz = z && !TEST(axis_homed, Z_AXIS); |
|
|
|
bool axis_unhomed_error(const bool x/*=true*/, const bool y/*=true*/, const bool z/*=true*/) { |
|
|
|
#if ENABLED(HOME_AFTER_DEACTIVATE) |
|
|
|
const bool xx = x && !TEST(axis_known_position, X_AXIS), |
|
|
|
yy = y && !TEST(axis_known_position, Y_AXIS), |
|
|
|
zz = z && !TEST(axis_known_position, Z_AXIS); |
|
|
|
#else |
|
|
|
const bool xx = x && !TEST(axis_homed, X_AXIS), |
|
|
|
yy = y && !TEST(axis_homed, Y_AXIS), |
|
|
|
zz = z && !TEST(axis_homed, Z_AXIS); |
|
|
|
#endif |
|
|
|
if (xx || yy || zz) { |
|
|
|
SERIAL_ECHO_START(); |
|
|
|
SERIAL_ECHOPGM(MSG_HOME " "); |
|
|
|
if (xx) SERIAL_CHAR('X'); |
|
|
|
if (yy) SERIAL_CHAR('Y'); |
|
|
|
if (zz) SERIAL_CHAR('Z'); |
|
|
|
SERIAL_ECHOLNPGM(" " MSG_FIRST); |
|
|
|
|
|
|
|
#if ENABLED(ULTRA_LCD) || ENABLED(EXTENSIBLE_UI) |
|
|
|
ui.status_printf_P(0, PSTR(MSG_HOME " %s%s%s " MSG_FIRST), xx ? MSG_X : "", yy ? MSG_Y : "", zz ? MSG_Z : ""); |
|
|
|
#endif |
|
|
|
if (xx || yy || zz) { |
|
|
|
SERIAL_ECHO_START(); |
|
|
|
SERIAL_ECHOPGM(MSG_HOME " "); |
|
|
|
if (xx) SERIAL_ECHOPGM(MSG_X); |
|
|
|
if (yy) SERIAL_ECHOPGM(MSG_Y); |
|
|
|
if (zz) SERIAL_ECHOPGM(MSG_Z); |
|
|
|
SERIAL_ECHOLNPGM(" " MSG_FIRST); |
|
|
|
|
|
|
|
#if ENABLED(ULTRA_LCD) || ENABLED(EXTENSIBLE_UI) |
|
|
|
ui.status_printf_P(0, PSTR(MSG_HOME " %s%s%s " MSG_FIRST), xx ? MSG_X : "", yy ? MSG_Y : "", zz ? MSG_Z : ""); |
|
|
|
#endif |
|
|
|
return true; |
|
|
|
} |
|
|
|
return false; |
|
|
|
return true; |
|
|
|
} |
|
|
|
|
|
|
|
#endif // HAS_AXIS_UNHOMED_ERR
|
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
/**
|
|
|
|
* Homing bump feedrate (mm/s) |
|
|
|