|
|
@ -2471,18 +2471,6 @@ static void clean_up_after_endstop_or_probe_move() {
|
|
|
|
;
|
|
|
|
;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
bool leveling_is_active() {
|
|
|
|
|
|
|
|
return
|
|
|
|
|
|
|
|
#if ENABLED(MESH_BED_LEVELING)
|
|
|
|
|
|
|
|
mbl.active()
|
|
|
|
|
|
|
|
#elif ENABLED(AUTO_BED_LEVELING_UBL)
|
|
|
|
|
|
|
|
ubl.state.active
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
planner.abl_enabled
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Turn bed leveling on or off, fixing the current
|
|
|
|
* Turn bed leveling on or off, fixing the current
|
|
|
|
* position as-needed.
|
|
|
|
* position as-needed.
|
|
|
@ -2498,7 +2486,7 @@ static void clean_up_after_endstop_or_probe_move() {
|
|
|
|
constexpr bool can_change = true;
|
|
|
|
constexpr bool can_change = true;
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
if (can_change && enable != leveling_is_active()) {
|
|
|
|
if (can_change && enable != LEVELING_IS_ACTIVE()) {
|
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(MESH_BED_LEVELING)
|
|
|
|
#if ENABLED(MESH_BED_LEVELING)
|
|
|
|
|
|
|
|
|
|
|
@ -2559,7 +2547,7 @@ static void clean_up_after_endstop_or_probe_move() {
|
|
|
|
|
|
|
|
|
|
|
|
void set_z_fade_height(const float zfh) {
|
|
|
|
void set_z_fade_height(const float zfh) {
|
|
|
|
|
|
|
|
|
|
|
|
const bool level_active = leveling_is_active();
|
|
|
|
const bool level_active = LEVELING_IS_ACTIVE();
|
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
|
|
|
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
|
|
|
|
|
|
|
|
|
|
@ -3771,7 +3759,7 @@ inline void gcode_G4() {
|
|
|
|
#elif ENABLED(AUTO_BED_LEVELING_UBL)
|
|
|
|
#elif ENABLED(AUTO_BED_LEVELING_UBL)
|
|
|
|
SERIAL_ECHOPGM("UBL");
|
|
|
|
SERIAL_ECHOPGM("UBL");
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
if (leveling_is_active()) {
|
|
|
|
if (LEVELING_IS_ACTIVE()) {
|
|
|
|
SERIAL_ECHOLNPGM(" (enabled)");
|
|
|
|
SERIAL_ECHOLNPGM(" (enabled)");
|
|
|
|
#if ABL_PLANAR
|
|
|
|
#if ABL_PLANAR
|
|
|
|
const float diff[XYZ] = {
|
|
|
|
const float diff[XYZ] = {
|
|
|
@ -3802,7 +3790,7 @@ inline void gcode_G4() {
|
|
|
|
#elif ENABLED(MESH_BED_LEVELING)
|
|
|
|
#elif ENABLED(MESH_BED_LEVELING)
|
|
|
|
|
|
|
|
|
|
|
|
SERIAL_ECHOPGM("Mesh Bed Leveling");
|
|
|
|
SERIAL_ECHOPGM("Mesh Bed Leveling");
|
|
|
|
if (leveling_is_active()) {
|
|
|
|
if (LEVELING_IS_ACTIVE()) {
|
|
|
|
float lz = current_position[Z_AXIS];
|
|
|
|
float lz = current_position[Z_AXIS];
|
|
|
|
planner.apply_leveling(current_position[X_AXIS], current_position[Y_AXIS], lz);
|
|
|
|
planner.apply_leveling(current_position[X_AXIS], current_position[Y_AXIS], lz);
|
|
|
|
SERIAL_ECHOLNPGM(" (enabled)");
|
|
|
|
SERIAL_ECHOLNPGM(" (enabled)");
|
|
|
@ -3971,7 +3959,7 @@ inline void gcode_G28(const bool always_home_all) {
|
|
|
|
// Disable the leveling matrix before homing
|
|
|
|
// Disable the leveling matrix before homing
|
|
|
|
#if HAS_LEVELING
|
|
|
|
#if HAS_LEVELING
|
|
|
|
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
|
|
|
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
|
|
|
const bool ubl_state_at_entry = leveling_is_active();
|
|
|
|
const bool ubl_state_at_entry = LEVELING_IS_ACTIVE();
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
set_bed_leveling_enabled(false);
|
|
|
|
set_bed_leveling_enabled(false);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
@ -4261,7 +4249,7 @@ void home_all_axes() { gcode_G28(true); }
|
|
|
|
switch (state) {
|
|
|
|
switch (state) {
|
|
|
|
case MeshReport:
|
|
|
|
case MeshReport:
|
|
|
|
if (leveling_is_valid()) {
|
|
|
|
if (leveling_is_valid()) {
|
|
|
|
SERIAL_PROTOCOLLNPAIR("State: ", leveling_is_active() ? MSG_ON : MSG_OFF);
|
|
|
|
SERIAL_PROTOCOLLNPAIR("State: ", LEVELING_IS_ACTIVE() ? MSG_ON : MSG_OFF);
|
|
|
|
mbl_mesh_report();
|
|
|
|
mbl_mesh_report();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
@ -4580,7 +4568,7 @@ void home_all_axes() { gcode_G28(true); }
|
|
|
|
abl_probe_index = -1;
|
|
|
|
abl_probe_index = -1;
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
abl_should_enable = leveling_is_active();
|
|
|
|
abl_should_enable = LEVELING_IS_ACTIVE();
|
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
|
|
|
|
#if ENABLED(AUTO_BED_LEVELING_BILINEAR)
|
|
|
|
|
|
|
|
|
|
|
@ -7077,7 +7065,7 @@ inline void gcode_M42() {
|
|
|
|
// Disable bed level correction in M48 because we want the raw data when we probe
|
|
|
|
// Disable bed level correction in M48 because we want the raw data when we probe
|
|
|
|
|
|
|
|
|
|
|
|
#if HAS_LEVELING
|
|
|
|
#if HAS_LEVELING
|
|
|
|
const bool was_enabled = leveling_is_active();
|
|
|
|
const bool was_enabled = LEVELING_IS_ACTIVE();
|
|
|
|
set_bed_leveling_enabled(false);
|
|
|
|
set_bed_leveling_enabled(false);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
@ -9413,7 +9401,7 @@ void quickstop_stepper() {
|
|
|
|
if (parser.seen('Z')) set_z_fade_height(parser.value_linear_units());
|
|
|
|
if (parser.seen('Z')) set_z_fade_height(parser.value_linear_units());
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
const bool new_status = leveling_is_active();
|
|
|
|
const bool new_status = LEVELING_IS_ACTIVE();
|
|
|
|
|
|
|
|
|
|
|
|
if (to_enable && !new_status) {
|
|
|
|
if (to_enable && !new_status) {
|
|
|
|
SERIAL_ERROR_START();
|
|
|
|
SERIAL_ERROR_START();
|
|
|
@ -9644,7 +9632,7 @@ inline void gcode_M502() {
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(BABYSTEP_ZPROBE_OFFSET)
|
|
|
|
#if ENABLED(BABYSTEP_ZPROBE_OFFSET)
|
|
|
|
if (!no_babystep && leveling_is_active())
|
|
|
|
if (!no_babystep && LEVELING_IS_ACTIVE())
|
|
|
|
thermalManager.babystep_axis(Z_AXIS, -LROUND(diff * planner.axis_steps_per_mm[Z_AXIS]));
|
|
|
|
thermalManager.babystep_axis(Z_AXIS, -LROUND(diff * planner.axis_steps_per_mm[Z_AXIS]));
|
|
|
|
#else
|
|
|
|
#else
|
|
|
|
UNUSED(no_babystep);
|
|
|
|
UNUSED(no_babystep);
|
|
|
@ -10691,7 +10679,7 @@ void tool_change(const uint8_t tmp_extruder, const float fr_mm_s/*=0.0*/, bool n
|
|
|
|
|
|
|
|
|
|
|
|
#if ENABLED(MESH_BED_LEVELING)
|
|
|
|
#if ENABLED(MESH_BED_LEVELING)
|
|
|
|
|
|
|
|
|
|
|
|
if (leveling_is_active()) {
|
|
|
|
if (LEVELING_IS_ACTIVE()) {
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
#if ENABLED(DEBUG_LEVELING_FEATURE)
|
|
|
|
if (DEBUGGING(LEVELING)) SERIAL_ECHOPAIR("Z before MBL: ", current_position[Z_AXIS]);
|
|
|
|
if (DEBUGGING(LEVELING)) SERIAL_ECHOPAIR("Z before MBL: ", current_position[Z_AXIS]);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|