Adjust leveling conditionals
This commit is contained in:
parent
a64e5659ce
commit
ed81e9b3d3
6 changed files with 24 additions and 25 deletions
|
@ -718,15 +718,14 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set ABL options based on the specific type of leveling
|
* Set granular options based on the specific type of leveling
|
||||||
*/
|
*/
|
||||||
#define ABL_PLANAR (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_3POINT))
|
#define ABL_PLANAR (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_3POINT))
|
||||||
#define ABL_GRID (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR))
|
#define ABL_GRID (ENABLED(AUTO_BED_LEVELING_LINEAR) || ENABLED(AUTO_BED_LEVELING_BILINEAR))
|
||||||
#define HAS_ABL (ABL_PLANAR || ABL_GRID || ENABLED(AUTO_BED_LEVELING_UBL))
|
#define HAS_ABL (ABL_PLANAR || ABL_GRID || ENABLED(AUTO_BED_LEVELING_UBL))
|
||||||
|
#define HAS_LEVELING (HAS_ABL || ENABLED(MESH_BED_LEVELING))
|
||||||
#define PLANNER_LEVELING (HAS_ABL || ENABLED(MESH_BED_LEVELING))
|
#define PLANNER_LEVELING (ABL_PLANAR || ABL_GRID || ENABLED(MESH_BED_LEVELING))
|
||||||
#define HAS_PROBING_PROCEDURE (HAS_ABL || ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST))
|
#define HAS_PROBING_PROCEDURE (HAS_ABL || ENABLED(Z_MIN_PROBE_REPEATABILITY_TEST))
|
||||||
|
|
||||||
#if HAS_PROBING_PROCEDURE
|
#if HAS_PROBING_PROCEDURE
|
||||||
#define PROBE_BED_WIDTH abs(RIGHT_PROBE_BED_POSITION - (LEFT_PROBE_BED_POSITION))
|
#define PROBE_BED_WIDTH abs(RIGHT_PROBE_BED_POSITION - (LEFT_PROBE_BED_POSITION))
|
||||||
#define PROBE_BED_HEIGHT abs(BACK_PROBE_BED_POSITION - (FRONT_PROBE_BED_POSITION))
|
#define PROBE_BED_HEIGHT abs(BACK_PROBE_BED_POSITION - (FRONT_PROBE_BED_POSITION))
|
||||||
|
|
|
@ -324,7 +324,7 @@ float code_value_temp_diff();
|
||||||
linear_fit* lsf_linear_fit(double x[], double y[], double z[], const int);
|
linear_fit* lsf_linear_fit(double x[], double y[], double z[], const int);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
void reset_bed_level();
|
void reset_bed_level();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -2403,7 +2403,7 @@ static void clean_up_after_endstop_or_probe_move() {
|
||||||
|
|
||||||
#endif // HAS_BED_PROBE
|
#endif // HAS_BED_PROBE
|
||||||
|
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
/**
|
/**
|
||||||
* Turn bed leveling on or off, fixing the current
|
* Turn bed leveling on or off, fixing the current
|
||||||
* position as-needed.
|
* position as-needed.
|
||||||
|
@ -2511,7 +2511,7 @@ static void clean_up_after_endstop_or_probe_move() {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // PLANNER_LEVELING
|
#endif // HAS_LEVELING
|
||||||
|
|
||||||
#if ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(MESH_BED_LEVELING)
|
#if ENABLED(AUTO_BED_LEVELING_BILINEAR) || ENABLED(MESH_BED_LEVELING)
|
||||||
|
|
||||||
|
@ -3747,7 +3747,7 @@ inline void gcode_G28() {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Disable the leveling matrix before homing
|
// Disable the leveling matrix before homing
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
#if ENABLED(AUTO_BED_LEVELING_UBL)
|
||||||
const bool bed_leveling_state_at_entry = ubl.state.active;
|
const bool bed_leveling_state_at_entry = ubl.state.active;
|
||||||
#endif
|
#endif
|
||||||
|
@ -4368,7 +4368,7 @@ void home_all_axes() { gcode_G28(); }
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
|
|
||||||
// Jettison bed leveling data
|
// Jettison bed leveling data
|
||||||
if (code_seen('J')) {
|
if (code_seen('J')) {
|
||||||
|
@ -5034,7 +5034,7 @@ void home_all_axes() { gcode_G28(); }
|
||||||
if (!position_is_reachable(pos, true)) return;
|
if (!position_is_reachable(pos, true)) return;
|
||||||
|
|
||||||
// Disable leveling so the planner won't mess with us
|
// Disable leveling so the planner won't mess with us
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
set_bed_leveling_enabled(false);
|
set_bed_leveling_enabled(false);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -5091,7 +5091,7 @@ void home_all_axes() { gcode_G28(); }
|
||||||
|
|
||||||
stepper.synchronize();
|
stepper.synchronize();
|
||||||
|
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
set_bed_leveling_enabled(false);
|
set_bed_leveling_enabled(false);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -7294,7 +7294,7 @@ inline void gcode_M115() {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// MESH_REPORT (M420 V)
|
// MESH_REPORT (M420 V)
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
SERIAL_PROTOCOLLNPGM("Cap:LEVELING_DATA:1");
|
SERIAL_PROTOCOLLNPGM("Cap:LEVELING_DATA:1");
|
||||||
#else
|
#else
|
||||||
SERIAL_PROTOCOLLNPGM("Cap:LEVELING_DATA:0");
|
SERIAL_PROTOCOLLNPGM("Cap:LEVELING_DATA:0");
|
||||||
|
@ -8336,7 +8336,7 @@ void quickstop_stepper() {
|
||||||
SYNC_PLAN_POSITION_KINEMATIC();
|
SYNC_PLAN_POSITION_KINEMATIC();
|
||||||
}
|
}
|
||||||
|
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
/**
|
/**
|
||||||
* M420: Enable/Disable Bed Leveling and/or set the Z fade height.
|
* M420: Enable/Disable Bed Leveling and/or set the Z fade height.
|
||||||
*
|
*
|
||||||
|
@ -9857,12 +9857,12 @@ void process_next_command() {
|
||||||
gcode_G28();
|
gcode_G28();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
#if PLANNER_LEVELING || ENABLED(AUTO_BED_LEVELING_UBL)
|
#if HAS_LEVELING
|
||||||
case 29: // G29 Detailed Z probe, probes the bed at 3 or more points,
|
case 29: // G29 Detailed Z probe, probes the bed at 3 or more points,
|
||||||
// or provides access to the UBL System if enabled.
|
// or provides access to the UBL System if enabled.
|
||||||
gcode_G29();
|
gcode_G29();
|
||||||
break;
|
break;
|
||||||
#endif // PLANNER_LEVELING
|
#endif // HAS_LEVELING
|
||||||
|
|
||||||
#if HAS_BED_PROBE
|
#if HAS_BED_PROBE
|
||||||
|
|
||||||
|
@ -10363,7 +10363,7 @@ void process_next_command() {
|
||||||
break;
|
break;
|
||||||
#endif // FILAMENT_WIDTH_SENSOR
|
#endif // FILAMENT_WIDTH_SENSOR
|
||||||
|
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
case 420: // M420: Enable/Disable Bed Leveling
|
case 420: // M420: Enable/Disable Bed Leveling
|
||||||
gcode_M420();
|
gcode_M420();
|
||||||
break;
|
break;
|
||||||
|
@ -10917,7 +10917,7 @@ void get_cartesian_from_steppers() {
|
||||||
*/
|
*/
|
||||||
void set_current_from_steppers_for_axis(const AxisEnum axis) {
|
void set_current_from_steppers_for_axis(const AxisEnum axis) {
|
||||||
get_cartesian_from_steppers();
|
get_cartesian_from_steppers();
|
||||||
#if PLANNER_LEVELING && DISABLED(AUTO_BED_LEVELING_UBL)
|
#if PLANNER_LEVELING
|
||||||
planner.unapply_leveling(cartes);
|
planner.unapply_leveling(cartes);
|
||||||
#endif
|
#endif
|
||||||
if (axis == ALL_AXES)
|
if (axis == ALL_AXES)
|
||||||
|
|
|
@ -1071,7 +1071,7 @@ void MarlinSettings::reset() {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Applies to all MBL and ABL
|
// Applies to all MBL and ABL
|
||||||
#if PLANNER_LEVELING
|
#if HAS_LEVELING
|
||||||
reset_bed_level();
|
reset_bed_level();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -530,7 +530,7 @@ void Planner::check_axes_activity() {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#if PLANNER_LEVELING && DISABLED(AUTO_BED_LEVELING_UBL)
|
#if PLANNER_LEVELING
|
||||||
/**
|
/**
|
||||||
* lx, ly, lz - logical (cartesian, not delta) positions in mm
|
* lx, ly, lz - logical (cartesian, not delta) positions in mm
|
||||||
*/
|
*/
|
||||||
|
@ -634,7 +634,7 @@ void Planner::check_axes_activity() {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // PLANNER_LEVELING && !AUTO_BED_LEVELING_UBL
|
#endif // PLANNER_LEVELING
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Planner::_buffer_line
|
* Planner::_buffer_line
|
||||||
|
@ -1434,7 +1434,7 @@ void Planner::_set_position_mm(const float &a, const float &b, const float &c, c
|
||||||
}
|
}
|
||||||
|
|
||||||
void Planner::set_position_mm_kinematic(const float position[NUM_AXIS]) {
|
void Planner::set_position_mm_kinematic(const float position[NUM_AXIS]) {
|
||||||
#if PLANNER_LEVELING && DISABLED(AUTO_BED_LEVELING_UBL)
|
#if PLANNER_LEVELING
|
||||||
float lpos[XYZ] = { position[X_AXIS], position[Y_AXIS], position[Z_AXIS] };
|
float lpos[XYZ] = { position[X_AXIS], position[Y_AXIS], position[Z_AXIS] };
|
||||||
apply_leveling(lpos);
|
apply_leveling(lpos);
|
||||||
#else
|
#else
|
||||||
|
|
|
@ -246,7 +246,7 @@ class Planner {
|
||||||
|
|
||||||
static bool is_full() { return (block_buffer_tail == BLOCK_MOD(block_buffer_head + 1)); }
|
static bool is_full() { return (block_buffer_tail == BLOCK_MOD(block_buffer_head + 1)); }
|
||||||
|
|
||||||
#if PLANNER_LEVELING && DISABLED(AUTO_BED_LEVELING_UBL)
|
#if PLANNER_LEVELING
|
||||||
|
|
||||||
#define ARG_X float lx
|
#define ARG_X float lx
|
||||||
#define ARG_Y float ly
|
#define ARG_Y float ly
|
||||||
|
@ -296,7 +296,7 @@ class Planner {
|
||||||
* extruder - target extruder
|
* extruder - target extruder
|
||||||
*/
|
*/
|
||||||
static FORCE_INLINE void buffer_line(ARG_X, ARG_Y, ARG_Z, const float &e, const float &fr_mm_s, const uint8_t extruder) {
|
static FORCE_INLINE void buffer_line(ARG_X, ARG_Y, ARG_Z, const float &e, const float &fr_mm_s, const uint8_t extruder) {
|
||||||
#if PLANNER_LEVELING && DISABLED(AUTO_BED_LEVELING_UBL) && IS_CARTESIAN
|
#if PLANNER_LEVELING && IS_CARTESIAN
|
||||||
apply_leveling(lx, ly, lz);
|
apply_leveling(lx, ly, lz);
|
||||||
#endif
|
#endif
|
||||||
_buffer_line(lx, ly, lz, e, fr_mm_s, extruder);
|
_buffer_line(lx, ly, lz, e, fr_mm_s, extruder);
|
||||||
|
@ -312,7 +312,7 @@ class Planner {
|
||||||
* extruder - target extruder
|
* extruder - target extruder
|
||||||
*/
|
*/
|
||||||
static FORCE_INLINE void buffer_line_kinematic(const float ltarget[XYZE], const float &fr_mm_s, const uint8_t extruder) {
|
static FORCE_INLINE void buffer_line_kinematic(const float ltarget[XYZE], const float &fr_mm_s, const uint8_t extruder) {
|
||||||
#if PLANNER_LEVELING && DISABLED(AUTO_BED_LEVELING_UBL)
|
#if PLANNER_LEVELING
|
||||||
float lpos[XYZ] = { ltarget[X_AXIS], ltarget[Y_AXIS], ltarget[Z_AXIS] };
|
float lpos[XYZ] = { ltarget[X_AXIS], ltarget[Y_AXIS], ltarget[Z_AXIS] };
|
||||||
apply_leveling(lpos);
|
apply_leveling(lpos);
|
||||||
#else
|
#else
|
||||||
|
@ -336,7 +336,7 @@ class Planner {
|
||||||
* Clears previous speed values.
|
* Clears previous speed values.
|
||||||
*/
|
*/
|
||||||
static FORCE_INLINE void set_position_mm(ARG_X, ARG_Y, ARG_Z, const float &e) {
|
static FORCE_INLINE void set_position_mm(ARG_X, ARG_Y, ARG_Z, const float &e) {
|
||||||
#if PLANNER_LEVELING && DISABLED(AUTO_BED_LEVELING_UBL) && IS_CARTESIAN
|
#if PLANNER_LEVELING && IS_CARTESIAN
|
||||||
apply_leveling(lx, ly, lz);
|
apply_leveling(lx, ly, lz);
|
||||||
#endif
|
#endif
|
||||||
_set_position_mm(lx, ly, lz, e);
|
_set_position_mm(lx, ly, lz, e);
|
||||||
|
|
Reference in a new issue