diff --git a/Marlin/Conditionals_post.h b/Marlin/Conditionals_post.h index 2614217bbe..89b8afb652 100644 --- a/Marlin/Conditionals_post.h +++ b/Marlin/Conditionals_post.h @@ -602,10 +602,10 @@ #define XY_PROBE_SPEED 4000 #endif #endif - #if Z_PROBE_TRAVEL_HEIGHT > Z_PROBE_DEPLOY_HEIGHT - #define _Z_PROBE_DEPLOY_HEIGHT Z_PROBE_TRAVEL_HEIGHT + #if Z_CLEARANCE_BETWEEN_PROBES > Z_CLEARANCE_DEPLOY_PROBE + #define _Z_CLEARANCE_DEPLOY_PROBE Z_CLEARANCE_BETWEEN_PROBES #else - #define _Z_PROBE_DEPLOY_HEIGHT Z_PROBE_DEPLOY_HEIGHT + #define _Z_CLEARANCE_DEPLOY_PROBE Z_CLEARANCE_DEPLOY_PROBE #endif #else #undef X_PROBE_OFFSET_FROM_EXTRUDER @@ -681,17 +681,17 @@ #endif /** - * Z_HOMING_HEIGHT / Z_PROBE_TRAVEL_HEIGHT + * Z_HOMING_HEIGHT / Z_CLEARANCE_BETWEEN_PROBES */ #ifndef Z_HOMING_HEIGHT - #ifndef Z_PROBE_TRAVEL_HEIGHT + #ifndef Z_CLEARANCE_BETWEEN_PROBES #define Z_HOMING_HEIGHT 0 #else - #define Z_HOMING_HEIGHT Z_PROBE_TRAVEL_HEIGHT + #define Z_HOMING_HEIGHT Z_CLEARANCE_BETWEEN_PROBES #endif #endif - #ifndef Z_PROBE_TRAVEL_HEIGHT - #define Z_PROBE_TRAVEL_HEIGHT Z_HOMING_HEIGHT + #ifndef Z_CLEARANCE_BETWEEN_PROBES + #define Z_CLEARANCE_BETWEEN_PROBES Z_HOMING_HEIGHT #endif #if IS_KINEMATIC diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 0361d8eeaa..08b6b75b09 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -619,12 +619,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 10 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 51962d076f..eec1b634b1 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -1657,7 +1657,10 @@ static void clean_up_after_endstop_or_probe_move() { SERIAL_ECHOLNPGM(")"); } #endif + float z_dest = LOGICAL_Z_POSITION(z_raise); + if (zprobe_zoffset < 0) z_dest -= zprobe_zoffset; + if (z_dest > current_position[Z_AXIS]) do_blocking_move_to_z(z_dest); } @@ -1911,7 +1914,7 @@ static void clean_up_after_endstop_or_probe_move() { if (endstops.z_probe_enabled == deploy) return false; // Make room for probe - do_probe_raise(_Z_PROBE_DEPLOY_HEIGHT); + do_probe_raise(_Z_CLEARANCE_DEPLOY_PROBE); // When deploying make sure BLTOUCH is not already triggered #if ENABLED(BLTOUCH) @@ -2030,7 +2033,7 @@ static void clean_up_after_endstop_or_probe_move() { // If the nozzle is above the travel height then // move down quickly before doing the slow probe - float z = LOGICAL_Z_POSITION(Z_PROBE_TRAVEL_HEIGHT); + float z = LOGICAL_Z_POSITION(Z_CLEARANCE_BETWEEN_PROBES); if (z < current_position[Z_AXIS]) do_blocking_move_to_z(z, MMM_TO_MMS(Z_PROBE_SPEED_FAST)); @@ -2069,7 +2072,7 @@ static void clean_up_after_endstop_or_probe_move() { float old_feedrate_mm_s = feedrate_mm_s; // Ensure a minimum height before moving the probe - do_probe_raise(Z_PROBE_TRAVEL_HEIGHT); + do_probe_raise(Z_CLEARANCE_BETWEEN_PROBES); // Move to the XY where we shall probe #if ENABLED(DEBUG_LEVELING_FEATURE) @@ -2089,15 +2092,10 @@ static void clean_up_after_endstop_or_probe_move() { float measured_z = run_z_probe(); - if (stow) { + if (!stow) + do_probe_raise(Z_CLEARANCE_BETWEEN_PROBES); + else if (STOW_PROBE()) return NAN; - } - else { - #if ENABLED(DEBUG_LEVELING_FEATURE) - if (DEBUGGING(LEVELING)) SERIAL_ECHOLNPGM("> do_probe_raise"); - #endif - do_probe_raise(Z_PROBE_TRAVEL_HEIGHT); - } if (verbose_level > 2) { SERIAL_PROTOCOLPGM("Bed X: "); @@ -3194,8 +3192,8 @@ inline void gcode_G28() { feedrate_mm_s = homing_feedrate_mm_s[X_AXIS]; current_position[Z_AXIS] = MESH_HOME_SEARCH_Z - #if Z_PROBE_TRAVEL_HEIGHT > Z_HOMING_HEIGHT - + Z_PROBE_TRAVEL_HEIGHT + #if Z_CLEARANCE_BETWEEN_PROBES > Z_HOMING_HEIGHT + + Z_CLEARANCE_BETWEEN_PROBES #elif Z_HOMING_HEIGHT > 0 + Z_HOMING_HEIGHT #endif @@ -3206,7 +3204,7 @@ inline void gcode_G28() { current_position[Y_AXIS] = LOGICAL_Y_POSITION(y); line_to_current_position(); - #if Z_PROBE_TRAVEL_HEIGHT > 0 || Z_HOMING_HEIGHT > 0 + #if Z_CLEARANCE_BETWEEN_PROBES > 0 || Z_HOMING_HEIGHT > 0 current_position[Z_AXIS] = LOGICAL_Z_POSITION(MESH_HOME_SEARCH_Z); line_to_current_position(); #endif @@ -3301,8 +3299,8 @@ inline void gcode_G28() { else { // One last "return to the bed" (as originally coded) at completion current_position[Z_AXIS] = MESH_HOME_SEARCH_Z - #if Z_PROBE_TRAVEL_HEIGHT > Z_HOMING_HEIGHT - + Z_PROBE_TRAVEL_HEIGHT + #if Z_CLEARANCE_BETWEEN_PROBES > Z_HOMING_HEIGHT + + Z_CLEARANCE_BETWEEN_PROBES #elif Z_HOMING_HEIGHT > 0 + Z_HOMING_HEIGHT #endif @@ -3645,7 +3643,7 @@ inline void gcode_G28() { #endif // AUTO_BED_LEVELING_3POINT - // Raise to _Z_PROBE_DEPLOY_HEIGHT. Stow the probe. + // Raise to _Z_CLEARANCE_DEPLOY_PROBE. Stow the probe. if (STOW_PROBE()) return; // Restore state after probing diff --git a/Marlin/SanityCheck.h b/Marlin/SanityCheck.h index dccf7b8ea1..73fb06386e 100644 --- a/Marlin/SanityCheck.h +++ b/Marlin/SanityCheck.h @@ -130,9 +130,11 @@ #elif defined(MIN_Z_HEIGHT_FOR_HOMING) #error "MIN_Z_HEIGHT_FOR_HOMING is now Z_HOMING_HEIGHT. Please update your configuration." #elif defined(Z_RAISE_BEFORE_PROBING) || defined(Z_RAISE_AFTER_PROBING) - #error "Z_RAISE_(BEFORE|AFTER)_PROBING are deprecated. Use Z_PROBE_DEPLOY_HEIGHT instead." + #error "Z_RAISE_(BEFORE|AFTER)_PROBING are deprecated. Use Z_CLEARANCE_DEPLOY_PROBE instead." #elif defined(Z_RAISE_PROBE_DEPLOY_STOW) || defined(Z_RAISE_BETWEEN_PROBINGS) - #error "Z_RAISE_PROBE_DEPLOY_STOW and Z_RAISE_BETWEEN_PROBINGS are now Z_PROBE_DEPLOY_HEIGHT and Z_PROBE_TRAVEL_HEIGHT Please update your configuration." + #error "Z_RAISE_PROBE_DEPLOY_STOW and Z_RAISE_BETWEEN_PROBINGS are now Z_CLEARANCE_DEPLOY_PROBE and Z_CLEARANCE_BETWEEN_PROBES. Please update your configuration." +#elif defined(Z_PROBE_DEPLOY_HEIGHT) || defined(Z_PROBE_TRAVEL_HEIGHT) + #error "Z_PROBE_DEPLOY_HEIGHT and Z_PROBE_TRAVEL_HEIGHT are now Z_CLEARANCE_DEPLOY_PROBE and Z_CLEARANCE_BETWEEN_PROBES. Please update your configuration." #elif !defined(MIN_STEPS_PER_SEGMENT) #error Please replace "const int dropsegments" with "#define MIN_STEPS_PER_SEGMENT" (and increase by 1) in Configuration_adv.h. #elif defined(PREVENT_DANGEROUS_EXTRUDE) @@ -425,14 +427,14 @@ /** * Make sure Z raise values are set */ - #if !defined(Z_PROBE_DEPLOY_HEIGHT) - #error "You must set Z_PROBE_DEPLOY_HEIGHT in your configuration." - #elif !defined(Z_PROBE_TRAVEL_HEIGHT) - #error "You must set Z_PROBE_TRAVEL_HEIGHT in your configuration." - #elif Z_PROBE_DEPLOY_HEIGHT < 0 - #error "Probes need Z_PROBE_DEPLOY_HEIGHT >= 0." - #elif Z_PROBE_TRAVEL_HEIGHT < 0 - #error "Probes need Z_PROBE_TRAVEL_HEIGHT >= 0." + #if !defined(Z_CLEARANCE_DEPLOY_PROBE) + #error "You must define Z_CLEARANCE_DEPLOY_PROBE in your configuration." + #elif !defined(Z_CLEARANCE_BETWEEN_PROBES) + #error "You must define Z_CLEARANCE_BETWEEN_PROBES in your configuration." + #elif Z_CLEARANCE_DEPLOY_PROBE < 0 + #error "Probes need Z_CLEARANCE_DEPLOY_PROBE >= 0." + #elif Z_CLEARANCE_BETWEEN_PROBES < 0 + #error "Probes need Z_CLEARANCE_BETWEEN_PROBES >= 0." #endif #else diff --git a/Marlin/example_configurations/Cartesio/Configuration.h b/Marlin/example_configurations/Cartesio/Configuration.h index da7161e3c9..434b6a16f7 100644 --- a/Marlin/example_configurations/Cartesio/Configuration.h +++ b/Marlin/example_configurations/Cartesio/Configuration.h @@ -602,12 +602,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h index 16802dfd32..88e11f0f37 100644 --- a/Marlin/example_configurations/Felix/Configuration.h +++ b/Marlin/example_configurations/Felix/Configuration.h @@ -585,12 +585,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/Felix/DUAL/Configuration.h b/Marlin/example_configurations/Felix/DUAL/Configuration.h index b8baf3c677..36bcb64e01 100644 --- a/Marlin/example_configurations/Felix/DUAL/Configuration.h +++ b/Marlin/example_configurations/Felix/DUAL/Configuration.h @@ -583,12 +583,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h index 5bac996bba..dadaa2eb29 100644 --- a/Marlin/example_configurations/Hephestos/Configuration.h +++ b/Marlin/example_configurations/Hephestos/Configuration.h @@ -594,12 +594,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/Hephestos_2/Configuration.h b/Marlin/example_configurations/Hephestos_2/Configuration.h index fc5a6cf92a..03f3d6e46b 100644 --- a/Marlin/example_configurations/Hephestos_2/Configuration.h +++ b/Marlin/example_configurations/Hephestos_2/Configuration.h @@ -596,12 +596,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 5 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 2 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 5 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 2 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h index 87142b70b4..08ee8676e4 100644 --- a/Marlin/example_configurations/K8200/Configuration.h +++ b/Marlin/example_configurations/K8200/Configuration.h @@ -619,12 +619,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/K8400/Configuration.h b/Marlin/example_configurations/K8400/Configuration.h index e3c7b8433d..31bef4e60e 100644 --- a/Marlin/example_configurations/K8400/Configuration.h +++ b/Marlin/example_configurations/K8400/Configuration.h @@ -602,12 +602,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/K8400/Dual-head/Configuration.h b/Marlin/example_configurations/K8400/Dual-head/Configuration.h index 27f58977d7..ac8e2c2c01 100644 --- a/Marlin/example_configurations/K8400/Dual-head/Configuration.h +++ b/Marlin/example_configurations/K8400/Dual-head/Configuration.h @@ -602,12 +602,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h index 1755e47d3b..928051c658 100644 --- a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h +++ b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h @@ -602,12 +602,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/RigidBot/Configuration.h b/Marlin/example_configurations/RigidBot/Configuration.h index 1f4cd5747a..435e018fc1 100644 --- a/Marlin/example_configurations/RigidBot/Configuration.h +++ b/Marlin/example_configurations/RigidBot/Configuration.h @@ -600,12 +600,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h index 47db29c7f4..370024f11f 100644 --- a/Marlin/example_configurations/SCARA/Configuration.h +++ b/Marlin/example_configurations/SCARA/Configuration.h @@ -617,12 +617,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/TAZ4/Configuration.h b/Marlin/example_configurations/TAZ4/Configuration.h index 495e11bdf4..3f62c57b48 100644 --- a/Marlin/example_configurations/TAZ4/Configuration.h +++ b/Marlin/example_configurations/TAZ4/Configuration.h @@ -623,12 +623,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h index b46ce31480..672b88f915 100644 --- a/Marlin/example_configurations/WITBOX/Configuration.h +++ b/Marlin/example_configurations/WITBOX/Configuration.h @@ -594,12 +594,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/adafruit/ST7565/Configuration.h b/Marlin/example_configurations/adafruit/ST7565/Configuration.h index fd239237e1..2186bd7fc0 100644 --- a/Marlin/example_configurations/adafruit/ST7565/Configuration.h +++ b/Marlin/example_configurations/adafruit/ST7565/Configuration.h @@ -602,12 +602,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/delta/biv2.5/Configuration.h b/Marlin/example_configurations/delta/biv2.5/Configuration.h index cbbe08b118..1795c41404 100644 --- a/Marlin/example_configurations/delta/biv2.5/Configuration.h +++ b/Marlin/example_configurations/delta/biv2.5/Configuration.h @@ -692,12 +692,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 50 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 50 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/delta/generic/Configuration.h b/Marlin/example_configurations/delta/generic/Configuration.h index f609017fed..57d30de42d 100644 --- a/Marlin/example_configurations/delta/generic/Configuration.h +++ b/Marlin/example_configurations/delta/generic/Configuration.h @@ -686,12 +686,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration.h b/Marlin/example_configurations/delta/kossel_mini/Configuration.h index 7bed412b19..56a206a1ea 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h @@ -689,12 +689,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 50 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 50 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/delta/kossel_pro/Configuration.h b/Marlin/example_configurations/delta/kossel_pro/Configuration.h index 264077dcf4..06b2766f8c 100644 --- a/Marlin/example_configurations/delta/kossel_pro/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_pro/Configuration.h @@ -690,12 +690,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 100 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 100 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/delta/kossel_xl/Configuration.h b/Marlin/example_configurations/delta/kossel_xl/Configuration.h index eddc9fbb4e..f2992d11e3 100644 --- a/Marlin/example_configurations/delta/kossel_xl/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_xl/Configuration.h @@ -692,12 +692,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 20 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 10 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 20 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 10 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h index 9a76b77a8c..c80bace9e7 100644 --- a/Marlin/example_configurations/makibox/Configuration.h +++ b/Marlin/example_configurations/makibox/Configuration.h @@ -605,12 +605,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h index 40c317a526..98b74a646b 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h @@ -598,12 +598,22 @@ // Enable Z Probe Repeatability test to see how accurate your probe is //#define Z_MIN_PROBE_REPEATABILITY_TEST -// -// Minimum heights for the probe to deploy/stow and travel. -// These values specify the distance from the NOZZLE to the BED. -// -#define Z_PROBE_DEPLOY_HEIGHT 15 // Z position for the probe to deploy/stow -#define Z_PROBE_TRAVEL_HEIGHT 5 // Z position for travel between points +/** + * Z probes require clearance when deploying, stowing, and moving between + * probe points to avoid hitting the bed and other hardware. + * Servo-mounted probes require extra space for the arm to rotate. + * Inductive probes need space to keep from triggering early. + * + * Use these settings to specify the distance (mm) to raise the probe (or + * lower the bed). The values set here apply over and above any (negative) + * probe Z Offset set with Z_PROBE_OFFSET_FROM_EXTRUDER, M851, or the LCD. + * Only integer values >= 1 are valid here. + * + * Example: `M851 Z-5` with a CLEARANCE of 4 => 9mm from bed to nozzle. + * But: `M851 Z+1` with a CLEARANCE of 2 => 2mm from bed to nozzle. + */ +#define Z_CLEARANCE_DEPLOY_PROBE 15 // Z Clearance for Deploy/Stow +#define Z_CLEARANCE_BETWEEN_PROBES 5 // Z Clearance between probe points // // For M851 give a range for adjusting the Z probe offset