From 14c03cb6f4bf20b06ba5d6c849cd1a15341627df Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 13 Mar 2018 01:15:22 -0500 Subject: [PATCH] [2.0.x] Make MIN_PROBE_EDGE a general option (for electronic probes) (#10069) Some probes don't work near the edges of the bed. This change promotes MIN_PROBE_EDGE to a general setting that applies to all probing functions. --- Marlin/Configuration.h | 9 ++- Marlin/src/config/default/Configuration.h | 9 ++- .../AlephObjects/TAZ4/Configuration.h | 9 ++- .../AliExpress/CL-260/Configuration.h | 9 ++- .../config/examples/Anet/A6/Configuration.h | 9 ++- .../config/examples/Anet/A8/Configuration.h | 9 ++- .../examples/Azteeg/X5GT/Configuration.h | 9 ++- .../BIBO/TouchX/cyclops/Configuration.h | 9 ++- .../BIBO/TouchX/default/Configuration.h | 9 ++- .../examples/BQ/Hephestos/Configuration.h | 9 ++- .../examples/BQ/Hephestos_2/Configuration.h | 9 ++- .../config/examples/BQ/WITBOX/Configuration.h | 9 ++- .../config/examples/Cartesio/Configuration.h | 9 ++- .../examples/Creality/CR-10/Configuration.h | 9 ++- .../examples/Creality/CR-10S/Configuration.h | 9 ++- .../Creality/CR-10mini/Configuration.h | 9 ++- .../examples/Creality/Ender-2/Configuration.h | 9 ++- .../examples/Creality/Ender-4/Configuration.h | 9 ++- .../src/config/examples/Felix/Configuration.h | 9 ++- .../examples/Felix/DUAL/Configuration.h | 9 ++- .../FolgerTech/i3-2020/Configuration.h | 9 ++- .../examples/Geeetech/GT2560/Configuration.h | 9 ++- .../Geeetech/I3_Pro_X-GT2560/Configuration.h | 10 +-- .../Prusa i3 Pro B/bltouch/Configuration.h | 9 ++- .../Prusa i3 Pro B/noprobe/Configuration.h | 9 ++- .../examples/Infitary/i3-M508/Configuration.h | 9 ++- .../examples/JGAurora/A5/Configuration.h | 9 ++- .../examples/MakerParts/Configuration.h | 9 ++- .../examples/Malyan/M150/Configuration.h | 9 ++- .../examples/Malyan/M200/Configuration.h | 9 ++- .../Micromake/C1/basic/Configuration.h | 9 ++- .../Micromake/C1/enhanced/Configuration.h | 9 ++- .../config/examples/Mks/Sbase/Configuration.h | 9 ++- .../RepRapWorld/Megatronics/Configuration.h | 9 ++- .../config/examples/RigidBot/Configuration.h | 9 ++- .../src/config/examples/SCARA/Configuration.h | 9 ++- .../config/examples/STM32F10/Configuration.h | 9 ++- .../examples/Sanguinololu/Configuration.h | 9 ++- .../config/examples/TheBorg/Configuration.h | 9 ++- .../config/examples/TinyBoy2/Configuration.h | 9 ++- .../config/examples/Tronxy/X1/Configuration.h | 9 ++- .../examples/Tronxy/X5S/Configuration.h | 9 ++- .../examples/Tronxy/XY100/Configuration.h | 9 ++- .../UltiMachine/Archim2/Configuration.h | 9 ++- .../examples/Velleman/K8200/Configuration.h | 9 ++- .../examples/Velleman/K8400/Configuration.h | 9 ++- .../Velleman/K8400/Dual-head/Configuration.h | 9 ++- .../Wanhao/Duplicator 6/Configuration.h | 9 ++- .../examples/adafruit/ST7565/Configuration.h | 9 ++- .../FLSUN/auto_calibrate/Configuration.h | 10 +-- .../delta/FLSUN/kossel/Configuration.h | 10 +-- .../delta/FLSUN/kossel_mini/Configuration.h | 9 ++- .../delta/Hatchbox_Alpha/Configuration.h | 9 ++- .../examples/delta/generic/Configuration.h | 9 ++- .../delta/kossel_mini/Configuration.h | 9 ++- .../examples/delta/kossel_pro/Configuration.h | 9 ++- .../examples/delta/kossel_xl/Configuration.h | 9 ++- .../examples/gCreate/gMax1.5+/Configuration.h | 9 ++- .../config/examples/makibox/Configuration.h | 9 ++- .../examples/stm32f103ret6/Configuration.h | 9 ++- .../examples/tvrrug/Round2/Configuration.h | 9 ++- .../src/config/examples/wt150/Configuration.h | 9 ++- Marlin/src/feature/bedlevel/bedlevel.cpp | 8 -- Marlin/src/feature/bedlevel/bedlevel.h | 4 - Marlin/src/gcode/bedlevel/abl/G29.cpp | 29 +------- Marlin/src/gcode/calibrate/M48.cpp | 23 ++---- Marlin/src/inc/Conditionals_post.h | 74 ++++++++++--------- Marlin/src/inc/SanityCheck.h | 57 ++++++-------- Marlin/src/module/motion.h | 69 +++++++++-------- 69 files changed, 419 insertions(+), 406 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index cca1e9dcd2..5e704ee386 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/default/Configuration.h b/Marlin/src/config/default/Configuration.h index cca1e9dcd2..5e704ee386 100644 --- a/Marlin/src/config/default/Configuration.h +++ b/Marlin/src/config/default/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h b/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h index 09148595ee..71ad8bf2e4 100644 --- a/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h +++ b/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h @@ -743,6 +743,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -980,8 +983,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1029,7 +1030,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1052,7 +1053,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h b/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h index 627e463fa5..c29284e7c3 100644 --- a/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h +++ b/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Anet/A6/Configuration.h b/Marlin/src/config/examples/Anet/A6/Configuration.h index 497b670c93..cf7e16f48d 100644 --- a/Marlin/src/config/examples/Anet/A6/Configuration.h +++ b/Marlin/src/config/examples/Anet/A6/Configuration.h @@ -792,6 +792,9 @@ //#define Y_PROBE_OFFSET_FROM_EXTRUDER 15 // Y offset: -front +behind [the nozzle] //#define Z_PROBE_OFFSET_FROM_EXTRUDER 0.75 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 //#define XY_PROBE_SPEED 6000 @@ -1101,8 +1104,6 @@ //#define FRONT_PROBE_BED_POSITION 20 //#define BACK_PROBE_BED_POSITION 194 - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST @@ -1144,7 +1145,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1167,7 +1168,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 5 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Anet/A8/Configuration.h b/Marlin/src/config/examples/Anet/A8/Configuration.h index 2896bc260d..19eca58434 100644 --- a/Marlin/src/config/examples/Anet/A8/Configuration.h +++ b/Marlin/src/config/examples/Anet/A8/Configuration.h @@ -730,6 +730,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 6000 @@ -967,8 +970,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1016,7 +1017,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1039,7 +1040,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h b/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h index 238543b1ac..beb8672de0 100644 --- a/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h +++ b/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h b/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h index 31d0e9acf4..149b9f99dc 100644 --- a/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h +++ b/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h @@ -723,6 +723,9 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ const bool Z_MIN_PROBE_ENDSTOP_INVERTING = true; // set to true to invert the lo //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h b/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h index f9a51902fd..cdb29c6fad 100644 --- a/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h +++ b/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/BQ/Hephestos/Configuration.h b/Marlin/src/config/examples/BQ/Hephestos/Configuration.h index 7ea42f277d..76e02b8a70 100644 --- a/Marlin/src/config/examples/BQ/Hephestos/Configuration.h +++ b/Marlin/src/config/examples/BQ/Hephestos/Configuration.h @@ -711,6 +711,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -948,8 +951,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -997,7 +998,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1020,7 +1021,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h b/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h index 0ec9556767..052ac93490 100644 --- a/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h +++ b/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h @@ -724,6 +724,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 15 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -967,8 +970,6 @@ #define FRONT_PROBE_BED_POSITION Y_MIN_POS + (Y_PROBE_OFFSET_FROM_EXTRUDER) #define BACK_PROBE_BED_POSITION Y_MAX_POS - (Y_PROBE_OFFSET_FROM_EXTRUDER) - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST @@ -1010,7 +1011,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1033,7 +1034,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/BQ/WITBOX/Configuration.h b/Marlin/src/config/examples/BQ/WITBOX/Configuration.h index 75e5e5ebc4..4552e14074 100644 --- a/Marlin/src/config/examples/BQ/WITBOX/Configuration.h +++ b/Marlin/src/config/examples/BQ/WITBOX/Configuration.h @@ -711,6 +711,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -948,8 +951,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -997,7 +998,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1020,7 +1021,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Cartesio/Configuration.h b/Marlin/src/config/examples/Cartesio/Configuration.h index 7ca77756bb..86a8d1d369 100644 --- a/Marlin/src/config/examples/Cartesio/Configuration.h +++ b/Marlin/src/config/examples/Cartesio/Configuration.h @@ -722,6 +722,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -959,8 +962,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1008,7 +1009,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1031,7 +1032,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Creality/CR-10/Configuration.h b/Marlin/src/config/examples/Creality/CR-10/Configuration.h index b4e6c5ec20..dea648e465 100755 --- a/Marlin/src/config/examples/Creality/CR-10/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-10/Configuration.h @@ -733,6 +733,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -970,8 +973,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1019,7 +1020,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1043,7 +1044,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Creality/CR-10S/Configuration.h b/Marlin/src/config/examples/Creality/CR-10S/Configuration.h index c2a55f1766..cf31bcbfff 100644 --- a/Marlin/src/config/examples/Creality/CR-10S/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-10S/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -961,8 +964,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1010,7 +1011,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1033,7 +1034,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h b/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h index 16a64c194f..13ff2cf96d 100644 --- a/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h @@ -742,6 +742,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -979,8 +982,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1028,7 +1029,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1051,7 +1052,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Creality/Ender-2/Configuration.h b/Marlin/src/config/examples/Creality/Ender-2/Configuration.h index b7eb96ac3f..cbbc61874c 100644 --- a/Marlin/src/config/examples/Creality/Ender-2/Configuration.h +++ b/Marlin/src/config/examples/Creality/Ender-2/Configuration.h @@ -727,6 +727,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -964,8 +967,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1013,7 +1014,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1036,7 +1037,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Creality/Ender-4/Configuration.h b/Marlin/src/config/examples/Creality/Ender-4/Configuration.h index 3975295de8..35396083e3 100644 --- a/Marlin/src/config/examples/Creality/Ender-4/Configuration.h +++ b/Marlin/src/config/examples/Creality/Ender-4/Configuration.h @@ -733,6 +733,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -970,8 +973,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1019,7 +1020,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1042,7 +1043,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Felix/Configuration.h b/Marlin/src/config/examples/Felix/Configuration.h index a5580cab2d..5a42b1a01e 100644 --- a/Marlin/src/config/examples/Felix/Configuration.h +++ b/Marlin/src/config/examples/Felix/Configuration.h @@ -705,6 +705,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -942,8 +945,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -991,7 +992,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1014,7 +1015,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Felix/DUAL/Configuration.h b/Marlin/src/config/examples/Felix/DUAL/Configuration.h index 3da387d777..dae44675c5 100644 --- a/Marlin/src/config/examples/Felix/DUAL/Configuration.h +++ b/Marlin/src/config/examples/Felix/DUAL/Configuration.h @@ -705,6 +705,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -942,8 +945,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -991,7 +992,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1014,7 +1015,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h b/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h index e60e606175..32a8bfc986 100644 --- a/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h +++ b/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h @@ -730,6 +730,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -7 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -10.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 7500 @@ -973,8 +976,6 @@ #define FRONT_PROBE_BED_POSITION 10 #define BACK_PROBE_BED_POSITION 170 - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST @@ -1016,7 +1017,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 0 // Mesh inset margin on print area + #define MESH_INSET 0 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y 10 @@ -1039,7 +1040,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h b/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h index cb72374740..62f3622023 100644 --- a/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h @@ -738,6 +738,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -975,8 +978,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1024,7 +1025,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1047,7 +1048,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h b/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h index ea7f22e72e..52f4bdf985 100644 --- a/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/I3_Pro_X-GT2560/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 8 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,9 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 8 - // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 #define RIGHT_PROBE_BED_POSITION (X_BED_SIZE - 15) @@ -1009,7 +1009,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1032,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h index 82b2c3de67..6c1beb227f 100644 --- a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/bltouch/Configuration.h @@ -739,6 +739,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -44 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -1.4 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -976,8 +979,6 @@ #define GRID_MAX_POINTS_X 4 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 10 @@ -1025,7 +1026,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1048,7 +1049,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h index 95df5c0fbe..d318bd0fdb 100644 --- a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro B/noprobe/Configuration.h @@ -738,6 +738,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -975,8 +978,6 @@ #define GRID_MAX_POINTS_X 4 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 10 @@ -1024,7 +1025,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1047,7 +1048,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h b/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h index c46028e246..c14d05336c 100644 --- a/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h +++ b/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h @@ -727,6 +727,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -964,8 +967,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1013,7 +1014,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1036,7 +1037,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/JGAurora/A5/Configuration.h b/Marlin/src/config/examples/JGAurora/A5/Configuration.h index b2b1bbb972..b508c104ee 100644 --- a/Marlin/src/config/examples/JGAurora/A5/Configuration.h +++ b/Marlin/src/config/examples/JGAurora/A5/Configuration.h @@ -735,6 +735,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -978,8 +981,6 @@ #define FRONT_PROBE_BED_POSITION 20 #define BACK_PROBE_BED_POSITION 170 - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST @@ -1021,7 +1022,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1044,7 +1045,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 5 // As suggested by DaHai, https://www.youtube.com/watch?v=CBlADPgQqL0 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X #define MESH_G28_REST_ORIGIN // After homing all axes ('G28' or 'G28 XYZ') rest Z at Z_MIN_POS diff --git a/Marlin/src/config/examples/MakerParts/Configuration.h b/Marlin/src/config/examples/MakerParts/Configuration.h index f67eff5c93..ab1d475dab 100644 --- a/Marlin/src/config/examples/MakerParts/Configuration.h +++ b/Marlin/src/config/examples/MakerParts/Configuration.h @@ -743,6 +743,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -980,8 +983,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1029,7 +1030,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1052,7 +1053,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Malyan/M150/Configuration.h b/Marlin/src/config/examples/Malyan/M150/Configuration.h index fc9fd9b56b..6b7ec1445e 100644 --- a/Marlin/src/config/examples/Malyan/M150/Configuration.h +++ b/Marlin/src/config/examples/Malyan/M150/Configuration.h @@ -747,6 +747,9 @@ //#define Y_PROBE_OFFSET_FROM_EXTRUDER -50 // Y offset: -front +behind [the nozzle] //#define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes //#define XY_PROBE_SPEED 8000 @@ -994,8 +997,6 @@ #define FRONT_PROBE_BED_POSITION 50 #define BACK_PROBE_BED_POSITION 150 - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST @@ -1037,7 +1038,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1060,7 +1061,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Malyan/M200/Configuration.h b/Marlin/src/config/examples/Malyan/M200/Configuration.h index 8a486e8ea3..41f651c6fd 100644 --- a/Marlin/src/config/examples/Malyan/M200/Configuration.h +++ b/Marlin/src/config/examples/Malyan/M200/Configuration.h @@ -722,6 +722,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -959,8 +962,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1008,7 +1009,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1031,7 +1032,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h b/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h index eba8139faf..85922245b0 100644 --- a/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h +++ b/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h @@ -727,6 +727,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -964,8 +967,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1013,7 +1014,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1036,7 +1037,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h b/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h index 9eca245e4c..c33f8957c8 100644 --- a/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h +++ b/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h @@ -727,6 +727,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -964,8 +967,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1013,7 +1014,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1036,7 +1037,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Mks/Sbase/Configuration.h b/Marlin/src/config/examples/Mks/Sbase/Configuration.h index e21dd6db5b..cb735271e6 100644 --- a/Marlin/src/config/examples/Mks/Sbase/Configuration.h +++ b/Marlin/src/config/examples/Mks/Sbase/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 5 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -966,8 +969,6 @@ #define FRONT_PROBE_BED_POSITION 20 #define BACK_PROBE_BED_POSITION 170 - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h b/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h index dda7499cd8..bb4406f8e2 100644 --- a/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h +++ b/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/RigidBot/Configuration.h b/Marlin/src/config/examples/RigidBot/Configuration.h index 334d40515d..3b06976c84 100644 --- a/Marlin/src/config/examples/RigidBot/Configuration.h +++ b/Marlin/src/config/examples/RigidBot/Configuration.h @@ -721,6 +721,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -958,8 +961,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1007,7 +1008,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1030,7 +1031,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/SCARA/Configuration.h b/Marlin/src/config/examples/SCARA/Configuration.h index bebc6c1198..10ad83591e 100644 --- a/Marlin/src/config/examples/SCARA/Configuration.h +++ b/Marlin/src/config/examples/SCARA/Configuration.h @@ -734,6 +734,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -971,8 +974,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1020,7 +1021,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1043,7 +1044,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/STM32F10/Configuration.h b/Marlin/src/config/examples/STM32F10/Configuration.h index bbe5c82980..426a96904b 100644 --- a/Marlin/src/config/examples/STM32F10/Configuration.h +++ b/Marlin/src/config/examples/STM32F10/Configuration.h @@ -726,6 +726,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -963,8 +966,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1012,7 +1013,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1035,7 +1036,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Sanguinololu/Configuration.h b/Marlin/src/config/examples/Sanguinololu/Configuration.h index 51359de887..ea3cab23ba 100644 --- a/Marlin/src/config/examples/Sanguinololu/Configuration.h +++ b/Marlin/src/config/examples/Sanguinololu/Configuration.h @@ -754,6 +754,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -991,8 +994,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1040,7 +1041,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1063,7 +1064,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/TheBorg/Configuration.h b/Marlin/src/config/examples/TheBorg/Configuration.h index 16ed6cd6c8..068ad3327a 100644 --- a/Marlin/src/config/examples/TheBorg/Configuration.h +++ b/Marlin/src/config/examples/TheBorg/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 5 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -1.3 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -966,8 +969,6 @@ #define FRONT_PROBE_BED_POSITION 10 #define BACK_PROBE_BED_POSITION 210 - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Probe along the Y axis, advancing X after each column //#define PROBE_Y_FIRST @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/TinyBoy2/Configuration.h b/Marlin/src/config/examples/TinyBoy2/Configuration.h index fd7cca188e..32dc6af573 100644 --- a/Marlin/src/config/examples/TinyBoy2/Configuration.h +++ b/Marlin/src/config/examples/TinyBoy2/Configuration.h @@ -774,6 +774,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 15 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -1016,8 +1019,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1065,7 +1066,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1088,7 +1089,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Tronxy/X1/Configuration.h b/Marlin/src/config/examples/Tronxy/X1/Configuration.h index d8d7a4c492..e55dbeea8b 100644 --- a/Marlin/src/config/examples/Tronxy/X1/Configuration.h +++ b/Marlin/src/config/examples/Tronxy/X1/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Tronxy/X5S/Configuration.h b/Marlin/src/config/examples/Tronxy/X5S/Configuration.h index 7da6823da7..1aedb6745c 100644 --- a/Marlin/src/config/examples/Tronxy/X5S/Configuration.h +++ b/Marlin/src/config/examples/Tronxy/X5S/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -55 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Tronxy/XY100/Configuration.h b/Marlin/src/config/examples/Tronxy/XY100/Configuration.h index ca0e88d001..3bff569ecb 100644 --- a/Marlin/src/config/examples/Tronxy/XY100/Configuration.h +++ b/Marlin/src/config/examples/Tronxy/XY100/Configuration.h @@ -734,6 +734,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -971,8 +974,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1020,7 +1021,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1043,7 +1044,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h b/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h index 95f6a88c26..6a15edb1d3 100644 --- a/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h +++ b/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Velleman/K8200/Configuration.h b/Marlin/src/config/examples/Velleman/K8200/Configuration.h index b27e07d0c9..ea4db8d388 100644 --- a/Marlin/src/config/examples/Velleman/K8200/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8200/Configuration.h @@ -752,6 +752,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -990,8 +993,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1039,7 +1040,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1062,7 +1063,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Velleman/K8400/Configuration.h b/Marlin/src/config/examples/Velleman/K8400/Configuration.h index 84dfb36b59..f1ed6ca83b 100644 --- a/Marlin/src/config/examples/Velleman/K8400/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8400/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h b/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h index 6b6f515fab..1f05eb5f88 100644 --- a/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h b/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h index cd5cf4bed4..7b75d2cb99 100644 --- a/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h +++ b/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h @@ -733,6 +733,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -970,8 +973,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1019,7 +1020,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1042,7 +1043,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/adafruit/ST7565/Configuration.h b/Marlin/src/config/examples/adafruit/ST7565/Configuration.h index c114974427..dbfe99251a 100644 --- a/Marlin/src/config/examples/adafruit/ST7565/Configuration.h +++ b/Marlin/src/config/examples/adafruit/ST7565/Configuration.h @@ -723,6 +723,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -960,8 +963,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1009,7 +1010,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1032,7 +1033,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h b/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h index 5ad07d42db..f86a01482e 100644 --- a/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h @@ -803,6 +803,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0.10 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 20 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 5000 @@ -1091,9 +1094,6 @@ #define GRID_MAX_POINTS_X 7 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 20 - // Set the boundaries for probing (where the probe can reach). #define DELTA_PROBEABLE_RADIUS (DELTA_PRINTABLE_RADIUS - 15) #define LEFT_PROBE_BED_POSITION -(DELTA_PROBEABLE_RADIUS) @@ -1141,7 +1141,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1166,7 +1166,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h b/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h index 81c74b39fc..8a01932525 100644 --- a/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h @@ -803,6 +803,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0.10 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 20 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 5000 @@ -1091,9 +1094,6 @@ #define GRID_MAX_POINTS_X 7 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 20 - // Set the boundaries for probing (where the probe can reach). #define DELTA_PROBEABLE_RADIUS (DELTA_PRINTABLE_RADIUS - 15) #define LEFT_PROBE_BED_POSITION -(DELTA_PROBEABLE_RADIUS) @@ -1141,7 +1141,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1166,7 +1166,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h b/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h index 694c1b6a73..82a7eceb84 100644 --- a/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h @@ -803,6 +803,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0.25 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 2000 @@ -1090,8 +1093,6 @@ #define GRID_MAX_POINTS_X 9 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define DELTA_PROBEABLE_RADIUS (DELTA_PRINTABLE_RADIUS - 15) @@ -1140,7 +1141,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1165,7 +1166,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h b/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h index 831b929a70..0fa49c08ab 100644 --- a/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h +++ b/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h @@ -808,6 +808,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 4000 @@ -1096,8 +1099,6 @@ #define GRID_MAX_POINTS_X 9 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 #define LEFT_PROBE_BED_POSITION -(DELTA_PROBEABLE_RADIUS) #define RIGHT_PROBE_BED_POSITION DELTA_PROBEABLE_RADIUS @@ -1144,7 +1145,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1169,7 +1170,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/generic/Configuration.h b/Marlin/src/config/examples/delta/generic/Configuration.h index d3f2081195..71be4a6da6 100644 --- a/Marlin/src/config/examples/delta/generic/Configuration.h +++ b/Marlin/src/config/examples/delta/generic/Configuration.h @@ -793,6 +793,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -3.5 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 4000 @@ -1081,8 +1084,6 @@ #define GRID_MAX_POINTS_X 9 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 #define LEFT_PROBE_BED_POSITION -(DELTA_PROBEABLE_RADIUS) #define RIGHT_PROBE_BED_POSITION DELTA_PROBEABLE_RADIUS @@ -1129,7 +1130,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1154,7 +1155,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/kossel_mini/Configuration.h b/Marlin/src/config/examples/delta/kossel_mini/Configuration.h index 0179ae039e..6d8d19211d 100644 --- a/Marlin/src/config/examples/delta/kossel_mini/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_mini/Configuration.h @@ -793,6 +793,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -3.5 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 4000 @@ -1084,8 +1087,6 @@ #define GRID_MAX_POINTS_X 9 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 #define LEFT_PROBE_BED_POSITION -(DELTA_PROBEABLE_RADIUS) #define RIGHT_PROBE_BED_POSITION DELTA_PROBEABLE_RADIUS @@ -1132,7 +1133,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1157,7 +1158,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/kossel_pro/Configuration.h b/Marlin/src/config/examples/delta/kossel_pro/Configuration.h index bd0c204e75..9de4a5ffc4 100644 --- a/Marlin/src/config/examples/delta/kossel_pro/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_pro/Configuration.h @@ -789,6 +789,9 @@ * 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). +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -1084,8 +1087,6 @@ #define GRID_MAX_POINTS_X 7 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 #define LEFT_PROBE_BED_POSITION -(DELTA_PROBEABLE_RADIUS) #define RIGHT_PROBE_BED_POSITION DELTA_PROBEABLE_RADIUS @@ -1132,7 +1133,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1157,7 +1158,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/delta/kossel_xl/Configuration.h b/Marlin/src/config/examples/delta/kossel_xl/Configuration.h index e8a65c8176..675f0db972 100644 --- a/Marlin/src/config/examples/delta/kossel_xl/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_xl/Configuration.h @@ -805,6 +805,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 0.0 // Z probe to nozzle Y offset: -front +behind #define Z_PROBE_OFFSET_FROM_EXTRUDER 0.3 // Z probe to nozzle Z offset: -below (always!) +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -1093,8 +1096,6 @@ #define GRID_MAX_POINTS_X 5 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 #define LEFT_PROBE_BED_POSITION -(DELTA_PROBEABLE_RADIUS) #define RIGHT_PROBE_BED_POSITION DELTA_PROBEABLE_RADIUS @@ -1141,7 +1142,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1166,7 +1167,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h b/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h index 740a37a5a5..0de3c3a2e2 100644 --- a/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h +++ b/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h @@ -736,6 +736,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -0.25 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 45 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 7500 @@ -974,8 +977,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1023,7 +1024,7 @@ #define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 45 // Mesh inset margin on print area + #define MESH_INSET 45 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1046,7 +1047,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/makibox/Configuration.h b/Marlin/src/config/examples/makibox/Configuration.h index 3d9aecc3be..1b9d2f191a 100644 --- a/Marlin/src/config/examples/makibox/Configuration.h +++ b/Marlin/src/config/examples/makibox/Configuration.h @@ -726,6 +726,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -963,8 +966,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1012,7 +1013,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1035,7 +1036,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/stm32f103ret6/Configuration.h b/Marlin/src/config/examples/stm32f103ret6/Configuration.h index 18142ad303..fe25230107 100644 --- a/Marlin/src/config/examples/stm32f103ret6/Configuration.h +++ b/Marlin/src/config/examples/stm32f103ret6/Configuration.h @@ -724,6 +724,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -961,8 +964,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1010,7 +1011,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1033,7 +1034,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/tvrrug/Round2/Configuration.h b/Marlin/src/config/examples/tvrrug/Round2/Configuration.h index b714308a0b..2d9fb0813a 100644 --- a/Marlin/src/config/examples/tvrrug/Round2/Configuration.h +++ b/Marlin/src/config/examples/tvrrug/Round2/Configuration.h @@ -718,6 +718,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -955,8 +958,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1004,7 +1005,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1027,7 +1028,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/config/examples/wt150/Configuration.h b/Marlin/src/config/examples/wt150/Configuration.h index f264c3be9f..043cc9ed6d 100644 --- a/Marlin/src/config/examples/wt150/Configuration.h +++ b/Marlin/src/config/examples/wt150/Configuration.h @@ -728,6 +728,9 @@ #define Y_PROBE_OFFSET_FROM_EXTRUDER 10 // Y offset: -front +behind [the nozzle] #define Z_PROBE_OFFSET_FROM_EXTRUDER 0 // Z offset: -below +above [the nozzle] +// Certain types of probes need to stay away from edges +#define MIN_PROBE_EDGE 10 + // X and Y axis travel speed (mm/m) between probes #define XY_PROBE_SPEED 8000 @@ -965,8 +968,6 @@ #define GRID_MAX_POINTS_X 3 #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X - // The Z probe minimum outer margin (to validate G29 parameters). - #define MIN_PROBE_EDGE 10 // Set the boundaries for probing (where the probe can reach). #define LEFT_PROBE_BED_POSITION 15 @@ -1014,7 +1015,7 @@ //#define MESH_EDIT_GFX_OVERLAY // Display a graphics overlay while editing the mesh - #define MESH_INSET 1 // Mesh inset margin on print area + #define MESH_INSET 1 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 10 // Don't use more than 15 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X @@ -1037,7 +1038,7 @@ //=================================== Mesh ================================== //=========================================================================== - #define MESH_INSET 10 // Mesh inset margin on print area + #define MESH_INSET 10 // Set Mesh bounds as an inset region of the bed #define GRID_MAX_POINTS_X 3 // Don't use more than 7 points per axis, implementation limited. #define GRID_MAX_POINTS_Y GRID_MAX_POINTS_X diff --git a/Marlin/src/feature/bedlevel/bedlevel.cpp b/Marlin/src/feature/bedlevel/bedlevel.cpp index 262595039a..ec93172cd2 100644 --- a/Marlin/src/feature/bedlevel/bedlevel.cpp +++ b/Marlin/src/feature/bedlevel/bedlevel.cpp @@ -284,12 +284,4 @@ void reset_bed_level() { #endif -#if HAS_PROBING_PROCEDURE - void out_of_range_error(const char* p_edge) { - SERIAL_PROTOCOLPGM("?Probe "); - serialprintPGM(p_edge); - SERIAL_PROTOCOLLNPGM(" position out of range."); - } -#endif - #endif // HAS_LEVELING diff --git a/Marlin/src/feature/bedlevel/bedlevel.h b/Marlin/src/feature/bedlevel/bedlevel.h index 623fb07859..3db5aabd68 100644 --- a/Marlin/src/feature/bedlevel/bedlevel.h +++ b/Marlin/src/feature/bedlevel/bedlevel.h @@ -67,10 +67,6 @@ void reset_bed_level(); void _manual_goto_xy(const float &x, const float &y); #endif -#if HAS_PROBING_PROCEDURE - void out_of_range_error(const char* p_edge); -#endif - #if ENABLED(AUTO_BED_LEVELING_BILINEAR) #define _GET_MESH_X(I) (bilinear_start[X_AXIS] + (I) * bilinear_grid_spacing[X_AXIS]) #define _GET_MESH_Y(J) (bilinear_start[Y_AXIS] + (J) * bilinear_grid_spacing[Y_AXIS]) diff --git a/Marlin/src/gcode/bedlevel/abl/G29.cpp b/Marlin/src/gcode/bedlevel/abl/G29.cpp index 53d92160ec..19618b23e1 100644 --- a/Marlin/src/gcode/bedlevel/abl/G29.cpp +++ b/Marlin/src/gcode/bedlevel/abl/G29.cpp @@ -360,32 +360,9 @@ void GcodeSuite::G29() { front_probe_bed_position = parser.seenval('F') ? (int)RAW_Y_POSITION(parser.value_linear_units()) : FRONT_PROBE_BED_POSITION; back_probe_bed_position = parser.seenval('B') ? (int)RAW_Y_POSITION(parser.value_linear_units()) : BACK_PROBE_BED_POSITION; - const bool left_out_l = left_probe_bed_position < MIN_PROBE_X, - left_out = left_out_l || left_probe_bed_position > right_probe_bed_position - (MIN_PROBE_EDGE), - right_out_r = right_probe_bed_position > MAX_PROBE_X, - right_out = right_out_r || right_probe_bed_position < left_probe_bed_position + MIN_PROBE_EDGE, - front_out_f = front_probe_bed_position < MIN_PROBE_Y, - front_out = front_out_f || front_probe_bed_position > back_probe_bed_position - (MIN_PROBE_EDGE), - back_out_b = back_probe_bed_position > MAX_PROBE_Y, - back_out = back_out_b || back_probe_bed_position < front_probe_bed_position + MIN_PROBE_EDGE; - - if (left_out || right_out || front_out || back_out) { - if (left_out) { - out_of_range_error(PSTR("(L)eft")); - left_probe_bed_position = left_out_l ? MIN_PROBE_X : right_probe_bed_position - (MIN_PROBE_EDGE); - } - if (right_out) { - out_of_range_error(PSTR("(R)ight")); - right_probe_bed_position = right_out_r ? MAX_PROBE_X : left_probe_bed_position + MIN_PROBE_EDGE; - } - if (front_out) { - out_of_range_error(PSTR("(F)ront")); - front_probe_bed_position = front_out_f ? MIN_PROBE_Y : back_probe_bed_position - (MIN_PROBE_EDGE); - } - if (back_out) { - out_of_range_error(PSTR("(B)ack")); - back_probe_bed_position = back_out_b ? MAX_PROBE_Y : front_probe_bed_position + MIN_PROBE_EDGE; - } + if ( !position_is_reachable_by_probe(left_probe_bed_position, front_probe_bed_position) + || !position_is_reachable_by_probe(right_probe_bed_position, back_probe_bed_position)) { + SERIAL_PROTOCOLLNPGM("? (L,R,F,B) out of bounds."); return; } diff --git a/Marlin/src/gcode/calibrate/M48.cpp b/Marlin/src/gcode/calibrate/M48.cpp index 763b041848..cc82a7fe33 100644 --- a/Marlin/src/gcode/calibrate/M48.cpp +++ b/Marlin/src/gcode/calibrate/M48.cpp @@ -78,21 +78,10 @@ void GcodeSuite::M48() { const float X_probe_location = parser.linearval('X', X_current + X_PROBE_OFFSET_FROM_EXTRUDER), Y_probe_location = parser.linearval('Y', Y_current + Y_PROBE_OFFSET_FROM_EXTRUDER); - #if DISABLED(DELTA) - if (!WITHIN(X_probe_location, MIN_PROBE_X, MAX_PROBE_X)) { - out_of_range_error(PSTR("X")); - return; - } - if (!WITHIN(Y_probe_location, MIN_PROBE_Y, MAX_PROBE_Y)) { - out_of_range_error(PSTR("Y")); - return; - } - #else - if (!position_is_reachable_by_probe(X_probe_location, Y_probe_location)) { - SERIAL_PROTOCOLLNPGM("? (X,Y) location outside of probeable radius."); - return; - } - #endif + if (!position_is_reachable_by_probe(X_probe_location, Y_probe_location)) { + SERIAL_PROTOCOLLNPGM("? (X,Y) out of bounds."); + return; + } bool seen_L = parser.seen('L'); uint8_t n_legs = seen_L ? parser.value_byte() : 0; @@ -137,8 +126,8 @@ void GcodeSuite::M48() { float angle = random(0, 360); const float radius = random( #if ENABLED(DELTA) - (int) (0.1250000000 * (DELTA_PROBEABLE_RADIUS)), - (int) (0.3333333333 * (DELTA_PROBEABLE_RADIUS)) + (int) (0.1250000000 * (DELTA_PRINTABLE_RADIUS)), + (int) (0.3333333333 * (DELTA_PRINTABLE_RADIUS)) #else (int) 5.0, (int) (0.125 * min(X_BED_SIZE, Y_BED_SIZE)) #endif diff --git a/Marlin/src/inc/Conditionals_post.h b/Marlin/src/inc/Conditionals_post.h index beb4d178cc..ca7a8db33f 100644 --- a/Marlin/src/inc/Conditionals_post.h +++ b/Marlin/src/inc/Conditionals_post.h @@ -1007,9 +1007,6 @@ * Delta radius/rod trimmers/angle trimmers */ #if ENABLED(DELTA) - #ifndef DELTA_PROBEABLE_RADIUS - #define DELTA_PROBEABLE_RADIUS DELTA_PRINTABLE_RADIUS - #endif #ifndef DELTA_CALIBRATION_RADIUS #define DELTA_CALIBRATION_RADIUS DELTA_PRINTABLE_RADIUS - 10 #endif @@ -1053,29 +1050,34 @@ * Bed Probing rectangular bounds * These can be further constrained in code for Delta and SCARA */ + +#ifndef MIN_PROBE_EDGE + #define MIN_PROBE_EDGE 0 +#endif + #if ENABLED(DELTA) // Probing points may be verified at compile time within the radius // using static_assert(HYPOT2(X2-X1,Y2-Y1)<=sq(DELTA_PRINTABLE_RADIUS),"bad probe point!") // so that may be added to SanityCheck.h in the future. - #define _MIN_PROBE_X (X_CENTER - DELTA_PRINTABLE_RADIUS) - #define _MIN_PROBE_Y (Y_CENTER - DELTA_PRINTABLE_RADIUS) - #define _MAX_PROBE_X (X_CENTER + DELTA_PRINTABLE_RADIUS) - #define _MAX_PROBE_Y (Y_CENTER + DELTA_PRINTABLE_RADIUS) + #define _MIN_PROBE_X (X_CENTER - (DELTA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE) + #define _MIN_PROBE_Y (Y_CENTER - (DELTA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE) + #define _MAX_PROBE_X (X_CENTER + DELTA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE)) + #define _MAX_PROBE_Y (Y_CENTER + DELTA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE)) #elif IS_SCARA #define SCARA_PRINTABLE_RADIUS (SCARA_LINKAGE_1 + SCARA_LINKAGE_2) - #define _MIN_PROBE_X (X_CENTER - (SCARA_PRINTABLE_RADIUS)) - #define _MIN_PROBE_Y (Y_CENTER - (SCARA_PRINTABLE_RADIUS)) - #define _MAX_PROBE_X (X_CENTER + SCARA_PRINTABLE_RADIUS) - #define _MAX_PROBE_Y (Y_CENTER + SCARA_PRINTABLE_RADIUS) + #define _MIN_PROBE_X (X_CENTER - (SCARA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE) + #define _MIN_PROBE_Y (Y_CENTER - (SCARA_PRINTABLE_RADIUS) + MIN_PROBE_EDGE) + #define _MAX_PROBE_X (X_CENTER + SCARA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE)) + #define _MAX_PROBE_Y (Y_CENTER + SCARA_PRINTABLE_RADIUS - (MIN_PROBE_EDGE)) #else // Boundaries for Cartesian probing based on bed limits - #define _MIN_PROBE_X (max(X_MIN_BED, X_MIN_POS + X_PROBE_OFFSET_FROM_EXTRUDER)) - #define _MIN_PROBE_Y (max(Y_MIN_BED, Y_MIN_POS + Y_PROBE_OFFSET_FROM_EXTRUDER)) - #define _MAX_PROBE_X (min(X_MAX_BED, X_MAX_POS + X_PROBE_OFFSET_FROM_EXTRUDER)) - #define _MAX_PROBE_Y (min(Y_MAX_BED, Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER)) + #define _MIN_PROBE_X (max(X_MIN_BED + MIN_PROBE_EDGE, X_MIN_POS + X_PROBE_OFFSET_FROM_EXTRUDER)) + #define _MIN_PROBE_Y (max(Y_MIN_BED + MIN_PROBE_EDGE, Y_MIN_POS + Y_PROBE_OFFSET_FROM_EXTRUDER)) + #define _MAX_PROBE_X (min(X_MAX_BED - (MIN_PROBE_EDGE), X_MAX_POS + X_PROBE_OFFSET_FROM_EXTRUDER)) + #define _MAX_PROBE_Y (min(Y_MAX_BED - (MIN_PROBE_EDGE), Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER)) #endif -// Allow configuration to override these for special purposes +// These may be overridden in Configuration.h if a smaller area is desired #ifndef MIN_PROBE_X #define MIN_PROBE_X _MIN_PROBE_X #endif @@ -1097,10 +1099,10 @@ // Probing points may be verified at compile time within the radius // using static_assert(HYPOT2(X2-X1,Y2-Y1)<=sq(DELTA_PRINTABLE_RADIUS),"bad probe point!") // so that may be added to SanityCheck.h in the future. - #define _MESH_MIN_X (MIN_PROBE_X + MESH_INSET) - #define _MESH_MIN_Y (MIN_PROBE_Y + MESH_INSET) - #define _MESH_MAX_X (MAX_PROBE_X - (MESH_INSET)) - #define _MESH_MAX_Y (MAX_PROBE_Y - (MESH_INSET)) + #define _MESH_MIN_X (X_MIN_BED + MESH_INSET) + #define _MESH_MIN_Y (Y_MIN_BED + MESH_INSET) + #define _MESH_MAX_X (X_MAX_BED - (MESH_INSET)) + #define _MESH_MAX_Y (Y_MAX_BED - (MESH_INSET)) #else // Boundaries for Cartesian probing based on set limits #if ENABLED(AUTO_BED_LEVELING_UBL) @@ -1114,24 +1116,24 @@ #define _MESH_MAX_X (min(X_MAX_BED - (MESH_INSET), X_MAX_POS + X_PROBE_OFFSET_FROM_EXTRUDER)) #define _MESH_MAX_Y (min(Y_MAX_BED - (MESH_INSET), Y_MAX_POS + Y_PROBE_OFFSET_FROM_EXTRUDER)) #endif + #endif - /** - * These may be overridden in Configuration if a smaller area is wanted - */ - #if ENABLED(MESH_BED_LEVELING) || ENABLED(AUTO_BED_LEVELING_UBL) - #ifndef MESH_MIN_X - #define MESH_MIN_X _MESH_MIN_X - #endif - #ifndef MESH_MIN_Y - #define MESH_MIN_Y _MESH_MIN_Y - #endif - #ifndef MESH_MAX_X - #define MESH_MAX_X _MESH_MAX_X - #endif - #ifndef MESH_MAX_Y - #define MESH_MAX_Y _MESH_MAX_Y - #endif + + + // These may be overridden in Configuration.h if a smaller area is desired + #ifndef MESH_MIN_X + #define MESH_MIN_X _MESH_MIN_X #endif + #ifndef MESH_MIN_Y + #define MESH_MIN_Y _MESH_MIN_Y + #endif + #ifndef MESH_MAX_X + #define MESH_MAX_X _MESH_MAX_X + #endif + #ifndef MESH_MAX_Y + #define MESH_MAX_Y _MESH_MAX_Y + #endif + #endif // MESH_BED_LEVELING || AUTO_BED_LEVELING_UBL /** diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index 663d092d78..9e29e361ae 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -42,11 +42,11 @@ * the bleeding-edge source code, but sometimes this is not enough. This check * forces a minimum config file revision. Otherwise Marlin will not build. */ -#if ! defined(CONFIGURATION_H_VERSION) || CONFIGURATION_H_VERSION < REQUIRED_CONFIGURATION_H_VERSION +#if !defined(CONFIGURATION_H_VERSION) || CONFIGURATION_H_VERSION < REQUIRED_CONFIGURATION_H_VERSION #error "You are using an old Configuration.h file, update it before building Marlin." #endif -#if ! defined(CONFIGURATION_ADV_H_VERSION) || CONFIGURATION_ADV_H_VERSION < REQUIRED_CONFIGURATION_ADV_H_VERSION +#if !defined(CONFIGURATION_ADV_H_VERSION) || CONFIGURATION_ADV_H_VERSION < REQUIRED_CONFIGURATION_ADV_H_VERSION #error "You are using an old Configuration_adv.h file, update it before building Marlin." #endif @@ -275,7 +275,7 @@ /** * Serial */ -#if !defined(__AVR__) || !defined(USBCON) +#if !(defined(__AVR__) && defined(USBCON)) #if ENABLED(SERIAL_XON_XOFF) && RX_BUFFER_SIZE < 1024 #error "SERIAL_XON_XOFF requires RX_BUFFER_SIZE >= 1024 for reliable transfers without drops." #elif RX_BUFFER_SIZE && (RX_BUFFER_SIZE < 2 || !IS_POWER_OF_2(RX_BUFFER_SIZE)) @@ -856,12 +856,12 @@ static_assert(1 >= 0 #elif DISABLED(RESTORE_LEVELING_AFTER_G28) #error "AUTO_BED_LEVELING_UBL (<=1.1.8) always has RESTORE_LEVELING_AFTER_G28 enabled. To keep this behavior, #define RESTORE_LEVELING_AFTER_G28. To keep it disabled comment out this line in SanityCheck.h." #else - static_assert(WITHIN(UBL_PROBE_PT_1_X, MIN_PROBE_X, MAX_PROBE_X), "UBL_PROBE_PT_1_X can't be reached by the Z probe."); - static_assert(WITHIN(UBL_PROBE_PT_2_X, MIN_PROBE_X, MAX_PROBE_X), "UBL_PROBE_PT_2_X can't be reached by the Z probe."); - static_assert(WITHIN(UBL_PROBE_PT_3_X, MIN_PROBE_X, MAX_PROBE_X), "UBL_PROBE_PT_3_X can't be reached by the Z probe."); - static_assert(WITHIN(UBL_PROBE_PT_1_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_1_Y can't be reached by the Z probe."); - static_assert(WITHIN(UBL_PROBE_PT_2_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_2_Y can't be reached by the Z probe."); - static_assert(WITHIN(UBL_PROBE_PT_3_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_3_Y can't be reached by the Z probe."); + static_assert(WITHIN(UBL_PROBE_PT_1_X, MIN_PROBE_X, MAX_PROBE_X), "UBL_PROBE_PT_1_X is outside the probe region."); + static_assert(WITHIN(UBL_PROBE_PT_2_X, MIN_PROBE_X, MAX_PROBE_X), "UBL_PROBE_PT_2_X is outside the probe region."); + static_assert(WITHIN(UBL_PROBE_PT_3_X, MIN_PROBE_X, MAX_PROBE_X), "UBL_PROBE_PT_3_X is outside the probe region."); + static_assert(WITHIN(UBL_PROBE_PT_1_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_1_Y is outside the probe region."); + static_assert(WITHIN(UBL_PROBE_PT_2_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_2_Y is outside the probe region."); + static_assert(WITHIN(UBL_PROBE_PT_3_Y, MIN_PROBE_Y, MAX_PROBE_Y), "UBL_PROBE_PT_3_Y is outside the probe region."); #endif #elif OLDSCHOOL_ABL @@ -870,10 +870,6 @@ static_assert(1 >= 0 * Auto Bed Leveling */ - #if ENABLED(USE_RAW_KINEMATICS) - #error "USE_RAW_KINEMATICS is not compatible with AUTO_BED_LEVELING" - #endif - /** * Delta and SCARA have limited bed leveling options */ @@ -886,28 +882,21 @@ static_assert(1 >= 0 */ #if ABL_GRID - #ifdef DELTA_PROBEABLE_RADIUS - static_assert(LEFT_PROBE_BED_POSITION >= -DELTA_PROBEABLE_RADIUS, "LEFT_PROBE_BED_POSITION must be within DELTA_PROBEABLE_RADIUS."); - static_assert(RIGHT_PROBE_BED_POSITION <= DELTA_PROBEABLE_RADIUS, "RIGHT_PROBE_BED_POSITION must be within DELTA_PROBEABLE_RADIUS."); - static_assert(FRONT_PROBE_BED_POSITION >= -DELTA_PROBEABLE_RADIUS, "FRONT_PROBE_BED_POSITION must be within DELTA_PROBEABLE_RADIUS."); - static_assert(BACK_PROBE_BED_POSITION <= DELTA_PROBEABLE_RADIUS, "BACK_PROBE_BED_POSITION must be within DELTA_PROBEABLE_RADIUS."); - #else - static_assert(LEFT_PROBE_BED_POSITION < RIGHT_PROBE_BED_POSITION, "LEFT_PROBE_BED_POSITION must be less than RIGHT_PROBE_BED_POSITION."); - static_assert(FRONT_PROBE_BED_POSITION < BACK_PROBE_BED_POSITION, "FRONT_PROBE_BED_POSITION must be less than BACK_PROBE_BED_POSITION."); - static_assert(LEFT_PROBE_BED_POSITION >= MIN_PROBE_X, "LEFT_PROBE_BED_POSITION can't be reached by the Z probe."); - static_assert(RIGHT_PROBE_BED_POSITION <= MAX_PROBE_X, "RIGHT_PROBE_BED_POSITION can't be reached by the Z probe."); - static_assert(FRONT_PROBE_BED_POSITION >= MIN_PROBE_Y, "FRONT_PROBE_BED_POSITION can't be reached by the Z probe."); - static_assert(BACK_PROBE_BED_POSITION <= MAX_PROBE_Y, "BACK_PROBE_BED_POSITION can't be reached by the Z probe."); - #endif + static_assert(LEFT_PROBE_BED_POSITION < RIGHT_PROBE_BED_POSITION, "LEFT_PROBE_BED_POSITION must be less than RIGHT_PROBE_BED_POSITION."); + static_assert(FRONT_PROBE_BED_POSITION < BACK_PROBE_BED_POSITION, "FRONT_PROBE_BED_POSITION must be less than BACK_PROBE_BED_POSITION."); + static_assert(LEFT_PROBE_BED_POSITION >= MIN_PROBE_X, "LEFT_PROBE_BED_POSITION is outside the probe region."); + static_assert(RIGHT_PROBE_BED_POSITION <= MAX_PROBE_X, "RIGHT_PROBE_BED_POSITION is outside the probe region."); + static_assert(FRONT_PROBE_BED_POSITION >= MIN_PROBE_Y, "FRONT_PROBE_BED_POSITION is outside the probe region."); + static_assert(BACK_PROBE_BED_POSITION <= MAX_PROBE_Y, "BACK_PROBE_BED_POSITION is outside the probe region."); #else // AUTO_BED_LEVELING_3POINT - static_assert(WITHIN(ABL_PROBE_PT_1_X, MIN_PROBE_X, MAX_PROBE_X), "ABL_PROBE_PT_1_X can't be reached by the Z probe."); - static_assert(WITHIN(ABL_PROBE_PT_2_X, MIN_PROBE_X, MAX_PROBE_X), "ABL_PROBE_PT_2_X can't be reached by the Z probe."); - static_assert(WITHIN(ABL_PROBE_PT_3_X, MIN_PROBE_X, MAX_PROBE_X), "ABL_PROBE_PT_3_X can't be reached by the Z probe."); - static_assert(WITHIN(ABL_PROBE_PT_1_Y, MIN_PROBE_Y, MAX_PROBE_Y), "ABL_PROBE_PT_1_Y can't be reached by the Z probe."); - static_assert(WITHIN(ABL_PROBE_PT_2_Y, MIN_PROBE_Y, MAX_PROBE_Y), "ABL_PROBE_PT_2_Y can't be reached by the Z probe."); - static_assert(WITHIN(ABL_PROBE_PT_3_Y, MIN_PROBE_Y, MAX_PROBE_Y), "ABL_PROBE_PT_3_Y can't be reached by the Z probe."); + static_assert(WITHIN(ABL_PROBE_PT_1_X, MIN_PROBE_X, MAX_PROBE_X), "ABL_PROBE_PT_1_X is outside the probe region."); + static_assert(WITHIN(ABL_PROBE_PT_2_X, MIN_PROBE_X, MAX_PROBE_X), "ABL_PROBE_PT_2_X is outside the probe region."); + static_assert(WITHIN(ABL_PROBE_PT_3_X, MIN_PROBE_X, MAX_PROBE_X), "ABL_PROBE_PT_3_X is outside the probe region."); + static_assert(WITHIN(ABL_PROBE_PT_1_Y, MIN_PROBE_Y, MAX_PROBE_Y), "ABL_PROBE_PT_1_Y is outside the probe region."); + static_assert(WITHIN(ABL_PROBE_PT_2_Y, MIN_PROBE_Y, MAX_PROBE_Y), "ABL_PROBE_PT_2_Y is outside the probe region."); + static_assert(WITHIN(ABL_PROBE_PT_3_Y, MIN_PROBE_Y, MAX_PROBE_Y), "ABL_PROBE_PT_3_Y is outside the probe region."); #endif // AUTO_BED_LEVELING_3POINT @@ -968,9 +957,9 @@ static_assert(1 >= 0 #if ENABLED(Z_SAFE_HOMING) #if HAS_BED_PROBE #if !WITHIN(Z_SAFE_HOMING_X_POINT, MIN_PROBE_X, MAX_PROBE_X) - #error "Z_SAFE_HOMING_X_POINT can't be reached by the Z probe." + #error "Z_SAFE_HOMING_X_POINT is outside the probe region." #elif !WITHIN(Z_SAFE_HOMING_Y_POINT, MIN_PROBE_Y, MAX_PROBE_Y) - #error "Z_SAFE_HOMING_Y_POINT can't be reached by the Z probe." + #error "Z_SAFE_HOMING_Y_POINT is outside the probe region." #endif #elif !WITHIN(Z_SAFE_HOMING_X_POINT, X_MIN_POS, X_MAX_POS) #error "Z_SAFE_HOMING_X_POINT can't be reached by the nozzle." diff --git a/Marlin/src/module/motion.h b/Marlin/src/module/motion.h index 928e9f0f19..25b5a431fc 100644 --- a/Marlin/src/module/motion.h +++ b/Marlin/src/module/motion.h @@ -236,28 +236,33 @@ void homeaxis(const AxisEnum axis); #if IS_KINEMATIC // (DELTA or SCARA) + #if IS_SCARA + extern const float L1, L2; + #endif + // Return true if the given point is within the printable area - inline bool position_is_reachable(const float &rx, const float &ry) { + inline bool position_is_reachable(const float &rx, const float &ry, const float inset=0) { #if ENABLED(DELTA) - return HYPOT2(rx, ry) <= sq(DELTA_PRINTABLE_RADIUS); + return HYPOT2(rx, ry) <= sq(DELTA_PRINTABLE_RADIUS - inset); #elif IS_SCARA - #if MIDDLE_DEAD_ZONE_R > 0 - const float R2 = HYPOT2(rx - SCARA_OFFSET_X, ry - SCARA_OFFSET_Y); - return R2 >= sq(float(MIDDLE_DEAD_ZONE_R)) && R2 <= sq(L1 + L2); - #else - return HYPOT2(rx - SCARA_OFFSET_X, ry - SCARA_OFFSET_Y) <= sq(L1 + L2); - #endif - #else // CARTESIAN - // To be migrated from MakerArm branch in future + const float R2 = HYPOT2(rx - SCARA_OFFSET_X, ry - SCARA_OFFSET_Y); + return ( + R2 <= sq(L1 + L2) - inset + #if MIDDLE_DEAD_ZONE_R > 0 + && R2 >= sq(float(MIDDLE_DEAD_ZONE_R)) + #endif + ); #endif } - // Return true if the both nozzle and the probe can reach the given point. - // Note: This won't work on SCARA since the probe offset rotates with the arm. - inline bool position_is_reachable_by_probe(const float &rx, const float &ry) { - return position_is_reachable(rx, ry) - && position_is_reachable(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ry - (Y_PROBE_OFFSET_FROM_EXTRUDER)); - } + #if HAS_BED_PROBE + // Return true if the both nozzle and the probe can reach the given point. + // Note: This won't work on SCARA since the probe offset rotates with the arm. + inline bool position_is_reachable_by_probe(const float &rx, const float &ry) { + return position_is_reachable(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ry - (Y_PROBE_OFFSET_FROM_EXTRUDER)) + && position_is_reachable(rx, ry, FABS(MIN_PROBE_EDGE)); + } + #endif #else // CARTESIAN @@ -268,23 +273,27 @@ void homeaxis(const AxisEnum axis); && WITHIN(ry, Y_MIN_POS - 0.001, Y_MAX_POS + 0.001); } - /** - * Return whether the given position is within the bed, and whether the nozzle - * can reach the position required to put the probe at the given position. - * - * Example: For a probe offset of -10,+10, then for the probe to reach 0,0 the - * nozzle must be be able to reach +10,-10. - */ - inline bool position_is_reachable_by_probe(const float &rx, const float &ry) { - const float nx = rx - (X_PROBE_OFFSET_FROM_EXTRUDER), - ny = ry - (Y_PROBE_OFFSET_FROM_EXTRUDER); - return position_is_reachable(nx, ny) - && WITHIN(rx, X_MIN_BED - 0.001, X_MAX_BED + 0.001) - && WITHIN(ry, Y_MIN_BED - 0.001, Y_MAX_BED + 0.001); - } + #if HAS_BED_PROBE + /** + * Return whether the given position is within the bed, and whether the nozzle + * can reach the position required to put the probe at the given position. + * + * Example: For a probe offset of -10,+10, then for the probe to reach 0,0 the + * nozzle must be be able to reach +10,-10. + */ + inline bool position_is_reachable_by_probe(const float &rx, const float &ry) { + return position_is_reachable(rx - (X_PROBE_OFFSET_FROM_EXTRUDER), ry - (Y_PROBE_OFFSET_FROM_EXTRUDER)) + && WITHIN(rx, MIN_PROBE_X - 0.001, MAX_PROBE_X + 0.001) + && WITHIN(ry, MIN_PROBE_Y - 0.001, MAX_PROBE_Y + 0.001); + } + #endif #endif // CARTESIAN +#if !HAS_BED_PROBE + FORCE_INLINE bool position_is_reachable_by_probe(const float &rx, const float &ry) { return position_is_reachable(rx, ry); } +#endif + /** * Dual X Carriage / Dual Nozzle */