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 cca1e9dcd..5e704ee38 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 cca1e9dcd..5e704ee38 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 09148595e..71ad8bf2e 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 627e463fa..c29284e7c 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 497b670c9..cf7e16f48 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 2896bc260..19eca5843 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 238543b1a..beb8672de 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 31d0e9acf..149b9f99d 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 f9a51902f..cdb29c6fa 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 7ea42f277..76e02b8a7 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 0ec955676..052ac9349 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 75e5e5ebc..4552e1407 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 7ca77756b..86a8d1d36 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 b4e6c5ec2..dea648e46 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 c2a55f176..cf31bcbff 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 16a64c194..13ff2cf96 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 b7eb96ac3..cbbc61874 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 3975295de..35396083e 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 a5580cab2..5a42b1a01 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 3da387d77..dae44675c 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 e60e60617..32a8bfc98 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 cb7237474..62f362202 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 ea7f22e72..52f4bdf98 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 82b2c3de6..6c1beb227 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 95df5c0fb..d318bd0fd 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 c46028e24..c14d05336 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 b2b1bbb97..b508c104e 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 f67eff5c9..ab1d475da 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 fc9fd9b56..6b7ec1445 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 8a486e8ea..41f651c6f 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 eba8139fa..85922245b 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 9eca245e4..c33f8957c 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 e21dd6db5..cb735271e 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 dda7499cd..bb4406f8e 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 334d40515..3b06976c8 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 bebc6c119..10ad83591 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 bbe5c8298..426a96904 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 51359de88..ea3cab23b 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 16ed6cd6c..068ad3327 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 fd7cca188..32dc6af57 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 d8d7a4c49..e55dbeea8 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 7da6823da..1aedb6745 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 ca0e88d00..3bff569ec 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 95f6a88c2..6a15edb1d 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 b27e07d0c..ea4db8d38 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 84dfb36b5..f1ed6ca83 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 6b6f515fa..1f05eb5f8 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 cd5cf4bed..7b75d2cb9 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 c11497442..dbfe99251 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 5ad07d42d..f86a01482 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 81c74b39f..8a0193252 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 694c1b6a7..82a7eceb8 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 831b929a7..0fa49c08a 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 d3f208119..71be4a6da 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 0179ae039..6d8d19211 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 bd0c204e7..9de4a5ffc 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 e8a65c817..675f0db97 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 740a37a5a..0de3c3a2e 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 3d9aecc3b..1b9d2f191 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 18142ad30..fe2523010 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 b714308a0..2d9fb0813 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 f264c3be9..043cc9ed6 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 262595039..ec93172cd 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 623fb0785..3db5aabd6 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 53d92160e..19618b23e 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 763b04184..cc82a7fe3 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 beb4d178c..ca7a8db33 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 663d092d7..9e29e361a 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 928e9f0f1..25b5a431f 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 */