diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h
index 26aefa3e8ab1fa7f6dafdce41776328b4f8db612..39e2bf9ef3b9139ae16c5a74a883f48e2594ac89 100644
--- a/Marlin/Configuration.h
+++ b/Marlin/Configuration.h
@@ -378,6 +378,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -509,9 +511,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp
index fb1d3b3b22cf5abfc78d72c1d8f5eb180aa617cd..1ccbed879bb947a61216c84ad08a43a7d952d72e 100644
--- a/Marlin/Marlin_main.cpp
+++ b/Marlin/Marlin_main.cpp
@@ -2268,7 +2268,7 @@ inline void gcode_G28() {
setup_for_endstop_move();
- set_destination_to_current();
+ set_destination_to_current(); // Directly after a reset this is all 0. Later we get a hint if we have to raise z or not.
feedrate = 0.0;
@@ -2311,50 +2311,40 @@ inline void gcode_G28() {
home_all_axis = (!homeX && !homeY && !homeZ) || (homeX && homeY && homeZ);
- if (home_all_axis || homeZ) {
-
- #if Z_HOME_DIR > 0 // If homing away from BED do Z first
+ #if Z_HOME_DIR > 0 // If homing away from BED do Z first
+ if (home_all_axis || homeZ) {
HOMEAXIS(Z);
#if ENABLED(DEBUG_LEVELING_FEATURE)
if (marlin_debug_flags & DEBUG_LEVELING) {
print_xyz("> HOMEAXIS(Z) > current_position", current_position);
}
#endif
+ }
- #elif defined(Z_RAISE_BEFORE_HOMING) && Z_RAISE_BEFORE_HOMING > 0
-
- // Consider the current Z-position as zero
- // !!WARNING!! If the machine has no physical z-max endstops then we
- // can move the axis more than it can physically travel.
- current_position[Z_AXIS] = 0;
- sync_plan_position();
-
- // (Does this need to be "negative home direction?" Why not just use Z_RAISE_BEFORE_HOMING?)
- destination[Z_AXIS] = -Z_RAISE_BEFORE_HOMING * home_dir(Z_AXIS);
- feedrate = max_feedrate[Z_AXIS] * 60;
+ #elif defined(MIN_Z_HEIGHT_FOR_HOMING) && MIN_Z_HEIGHT_FOR_HOMING > 0
+ // Raise Z before homing any other axes and z is not already high enough (never lower z)
+ if (current_position[Z_AXIS] <= MIN_Z_HEIGHT_FOR_HOMING) {
+ destination[Z_AXIS] = MIN_Z_HEIGHT_FOR_HOMING;
+ feedrate = max_feedrate[Z_AXIS] * 60; // feedrate (mm/m) = max_feedrate (mm/s)
#if ENABLED(DEBUG_LEVELING_FEATURE)
if (marlin_debug_flags & DEBUG_LEVELING) {
- SERIAL_ECHOPAIR("Raise Z (before homing) by ", (float)Z_RAISE_BEFORE_HOMING);
+ SERIAL_ECHOPAIR("Raise Z (before homing) to ", (float)MIN_Z_HEIGHT_FOR_HOMING);
SERIAL_EOL;
print_xyz("> (home_all_axis || homeZ) > current_position", current_position);
print_xyz("> (home_all_axis || homeZ) > destination", destination);
}
#endif
-
- // Raise Z-axis by Z_RAISE_BEFORE_HOMING before homing any other axis
line_to_destination();
st_synchronize();
// Update the current Z position even if it currently not real from Z-home
// otherwise each call to line_to_destination() will want to move Z-axis
- // by Z_RAISE_BEFORE_HOMING.
+ // by MIN_Z_HEIGHT_FOR_HOMING.
current_position[Z_AXIS] = destination[Z_AXIS];
-
- #endif
-
- } // home_all_axis || homeZ
+ }
+ #endif
#if ENABLED(QUICK_HOME)
@@ -2468,19 +2458,18 @@ inline void gcode_G28() {
if (home_all_axis) {
- // At this point we already have Z at Z_RAISE_BEFORE_HOMING height
+ // At this point we already have Z at MIN_Z_HEIGHT_FOR_HOMING height
// No need to move Z any more as this height should already be safe
- // enough to reach Z_SAFE_HOMING XY positions; just make sure the
- // planner is in sync.
+ // enough to reach Z_SAFE_HOMING XY positions.
+ // Just make sure the planner is in sync.
sync_plan_position();
//
// Set the Z probe (or just the nozzle) destination to the safe homing point
//
- // NOTE: If current_position[X_AXIS] or current_position[Y_AXIS] were set above
- // then this may not work as expected.
destination[X_AXIS] = round(Z_SAFE_HOMING_X_POINT - X_PROBE_OFFSET_FROM_EXTRUDER);
destination[Y_AXIS] = round(Z_SAFE_HOMING_Y_POINT - Y_PROBE_OFFSET_FROM_EXTRUDER);
+ destination[Z_AXIS] = current_position[Z_AXIS]; //z is already at the right height
feedrate = XY_TRAVEL_SPEED;
#if ENABLED(DEBUG_LEVELING_FEATURE)
@@ -2494,8 +2483,8 @@ inline void gcode_G28() {
line_to_destination();
st_synchronize();
- // Update the current positions for XY, Z is still at
- // Z_RAISE_BEFORE_HOMING height, no changes there.
+ // Update the current positions for XY, Z is still at least at
+ // MIN_Z_HEIGHT_FOR_HOMING height, no changes there.
current_position[X_AXIS] = destination[X_AXIS];
current_position[Y_AXIS] = destination[Y_AXIS];
@@ -2515,26 +2504,6 @@ inline void gcode_G28() {
&& cpx <= X_MAX_POS - X_PROBE_OFFSET_FROM_EXTRUDER
&& cpy >= Y_MIN_POS - Y_PROBE_OFFSET_FROM_EXTRUDER
&& cpy <= Y_MAX_POS - Y_PROBE_OFFSET_FROM_EXTRUDER) {
- // Set the plan current position to X, Y, 0
- current_position[Z_AXIS] = 0;
- plan_set_position(cpx, cpy, 0, current_position[E_AXIS]); // = sync_plan_position
-
- // Set Z destination away from bed and raise the axis
- // NOTE: This should always just be Z_RAISE_BEFORE_HOMING unless...???
- destination[Z_AXIS] = -Z_RAISE_BEFORE_HOMING * home_dir(Z_AXIS);
- feedrate = max_feedrate[Z_AXIS] * 60; // feedrate (mm/m) = max_feedrate (mm/s)
-
- #if ENABLED(DEBUG_LEVELING_FEATURE)
- if (marlin_debug_flags & DEBUG_LEVELING) {
- SERIAL_ECHOPAIR("Raise Z (before homing) by ", (float)Z_RAISE_BEFORE_HOMING);
- SERIAL_EOL;
- print_xyz("> homeZ > current_position", current_position);
- print_xyz("> homeZ > destination", destination);
- }
- #endif
-
- line_to_destination();
- st_synchronize();
// Home the Z axis
HOMEAXIS(Z);
diff --git a/Marlin/SanityCheck.h b/Marlin/SanityCheck.h
index 3d5941a36eead4b418fb881756fc5c31b8311fce..464a298bc31c578e377522f18cf3fab3e5cf1d6b 100644
--- a/Marlin/SanityCheck.h
+++ b/Marlin/SanityCheck.h
@@ -368,6 +368,8 @@
#error SDSLOW deprecated - set SPI_SPEED to SPI_HALF_SPEED instead
#elif defined(SDEXTRASLOW)
#error SDEXTRASLOW deprecated - set SPI_SPEED to SPI_QUARTER_SPEED instead
+#elif defined(Z_RAISE_BEFORE_HOMING)
+ #error Z_RAISE_BEFORE_HOMING is deprecated. Use MIN_Z_HEIGHT_FOR_HOMING instead.
#endif
#endif //SANITYCHECK_H
diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h
index b4644fce87d44cbd5e159d272bbf0817d442d990..abf49a40d9592a248d5e937c977759797e81ba17 100644
--- a/Marlin/example_configurations/Felix/Configuration.h
+++ b/Marlin/example_configurations/Felix/Configuration.h
@@ -360,6 +360,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -491,9 +493,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/Felix/Configuration_DUAL.h b/Marlin/example_configurations/Felix/Configuration_DUAL.h
index 59014c1d872932ff071c48b0fed114837260710c..33e49cad538f263cb94be054a58ad1a4678cf5af 100644
--- a/Marlin/example_configurations/Felix/Configuration_DUAL.h
+++ b/Marlin/example_configurations/Felix/Configuration_DUAL.h
@@ -357,6 +357,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -488,9 +490,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h
index 771d5b4832985b5e9b20ecae9342e1a55dd9d4a4..15c11b7ba97b8bd53360140359dfb3dea97a35eb 100644
--- a/Marlin/example_configurations/Hephestos/Configuration.h
+++ b/Marlin/example_configurations/Hephestos/Configuration.h
@@ -370,6 +370,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -501,9 +503,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/Hephestos_2/Configuration.h b/Marlin/example_configurations/Hephestos_2/Configuration.h
index 6de8e85dc8c0fa511fb2e96df5cdf75eda1e9adf..8dab9096ea3cdb7363ec237f42b24ad346727464 100644
--- a/Marlin/example_configurations/Hephestos_2/Configuration.h
+++ b/Marlin/example_configurations/Hephestos_2/Configuration.h
@@ -373,6 +373,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 5 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -504,9 +506,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER 15 // Z probe to nozzle Y offset: -front +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z probe to nozzle Z offset: -below (always!)
- #define Z_RAISE_BEFORE_HOMING 5 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 5 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h
index 383d89341bd2742b893ff17f20d4488194641caa..288beb905e4786c581b1292efe69014fce1d5ff1 100644
--- a/Marlin/example_configurations/K8200/Configuration.h
+++ b/Marlin/example_configurations/K8200/Configuration.h
@@ -393,6 +393,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR true
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -524,9 +526,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h
index 0cd3179b715d0d99afd336d634fecd0943de5830..2073ac25540bb22a682b4399c1376434065ac950 100644
--- a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h
+++ b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h
@@ -378,6 +378,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -509,9 +511,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/RigidBot/Configuration.h b/Marlin/example_configurations/RigidBot/Configuration.h
index a1c2ca5864749b907518597b0396190aa563d246..3190876f2b98082cf967141384ae3e9cff35d78b 100644
--- a/Marlin/example_configurations/RigidBot/Configuration.h
+++ b/Marlin/example_configurations/RigidBot/Configuration.h
@@ -372,6 +372,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -503,9 +505,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h
index 4d0a695118e03c4a09e45dfc01aae4bb2370e34e..4407fccd12f1d61eab3f6645dcde7116f859db2b 100644
--- a/Marlin/example_configurations/SCARA/Configuration.h
+++ b/Marlin/example_configurations/SCARA/Configuration.h
@@ -386,6 +386,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -517,9 +519,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- //#define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/TAZ4/Configuration.h b/Marlin/example_configurations/TAZ4/Configuration.h
index 774e29f4ff8929163b983ab284ef2ff40302e409..ea6dca4361ae28e4582dbde7b68386b89784335e 100644
--- a/Marlin/example_configurations/TAZ4/Configuration.h
+++ b/Marlin/example_configurations/TAZ4/Configuration.h
@@ -398,6 +398,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR true
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -529,9 +531,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h
index 7e227d367f38be1a98ca18289a150f00962e2b17..1b5d7c80da19c36997eb8b09951d34220678f6f6 100644
--- a/Marlin/example_configurations/WITBOX/Configuration.h
+++ b/Marlin/example_configurations/WITBOX/Configuration.h
@@ -370,6 +370,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -501,9 +503,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/adafruit/ST7565/Configuration.h b/Marlin/example_configurations/adafruit/ST7565/Configuration.h
index 86b53f67c3e8f6bd6679b77431bbb991e251116b..0f5b043b94690bf14f96e5d7f7a7bf596d437daa 100644
--- a/Marlin/example_configurations/adafruit/ST7565/Configuration.h
+++ b/Marlin/example_configurations/adafruit/ST7565/Configuration.h
@@ -378,6 +378,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -509,9 +511,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/delta/biv2.5/Configuration.h b/Marlin/example_configurations/delta/biv2.5/Configuration.h
index 119f458c62a41206f33b15e765425971c448ea49..bbb9e12b5dbf29378fcd2abbc5c2662c78b1ff57 100644
--- a/Marlin/example_configurations/delta/biv2.5/Configuration.h
+++ b/Marlin/example_configurations/delta/biv2.5/Configuration.h
@@ -413,6 +413,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -548,9 +550,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define Y_PROBE_OFFSET_FROM_EXTRUDER -10 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -3.5 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 4000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/delta/generic/Configuration.h b/Marlin/example_configurations/delta/generic/Configuration.h
index 964afea7b2418b55c792bd7fbba1fbaac95998b4..6c419c23cfb0f95c1de8d2908ea7a8884c76f2dc 100644
--- a/Marlin/example_configurations/delta/generic/Configuration.h
+++ b/Marlin/example_configurations/delta/generic/Configuration.h
@@ -413,6 +413,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -548,9 +550,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define Y_PROBE_OFFSET_FROM_EXTRUDER -10 // Z probe to nozzle Y offset: -front +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -3.5 // Z probe to nozzle Z offset: -below (always!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 4000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration.h b/Marlin/example_configurations/delta/kossel_mini/Configuration.h
index 13a7a500dd8f29797053d359131671420cff7396..7397eb5218c081e7d2a7049d24a1a5ded4abe024 100644
--- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h
+++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h
@@ -413,6 +413,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 15// (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -548,9 +550,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -10 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -3.5 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 15 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 4000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/delta/kossel_pro/Configuration.h b/Marlin/example_configurations/delta/kossel_pro/Configuration.h
index 40c94121343d690563bc2d923f10fd7034495818..5a83c56269cc85b92dee855a18def3d80046e712 100644
--- a/Marlin/example_configurations/delta/kossel_pro/Configuration.h
+++ b/Marlin/example_configurations/delta/kossel_pro/Configuration.h
@@ -400,6 +400,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -537,9 +539,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
// not giving someone a head crash. Use something like G29 Z-0.2 to adjust as needed.
#define Z_PROBE_OFFSET_FROM_EXTRUDER -17.25 // Increase this if the first layer is too thin (remember: it's a negative number so increase means closer to zero).
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 100 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/delta/kossel_xl/Configuration.h b/Marlin/example_configurations/delta/kossel_xl/Configuration.h
index ec58a88297fa27c5f5bd4ee3a1294986ca905a27..22870313e4dfc2c4bf58ebcbac2db90937e12c0e 100644
--- a/Marlin/example_configurations/delta/kossel_xl/Configuration.h
+++ b/Marlin/example_configurations/delta/kossel_xl/Configuration.h
@@ -406,6 +406,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 7 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -540,9 +542,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER 0.0 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER 0.3 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 7 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 7000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 20 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h
index 1bdcd47e20e2722ff14874ff39e65911b8d3bc5c..0bcde5a2897042292ad1553c28b99ec2215bbc49 100644
--- a/Marlin/example_configurations/makibox/Configuration.h
+++ b/Marlin/example_configurations/makibox/Configuration.h
@@ -381,6 +381,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -512,9 +514,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = false; // set to true to invert the l
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.
diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h
index 77024829f2c5e71df367ab3d0597aff5cff67720..388358c1113130e1e25fe396d5c39afd3ab054c4 100644
--- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h
+++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h
@@ -368,6 +368,8 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define INVERT_E3_DIR false
// @section homing
+//#define MIN_Z_HEIGHT_FOR_HOMING 4 // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
+ // Be sure you have this distance over your Z_MAX_POS in case.
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -499,9 +501,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Z offset: -front [of the nozzle] +behind
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below [the nozzle] (always negative!)
- #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z axis before homing (G28) for Z probe clearance.
- // Be sure you have this distance over your Z_MAX_POS in case.
-
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min.
#define Z_RAISE_BEFORE_PROBING 15 // How much the Z axis will be raised before traveling to the first probing point.