From 5490a664f51c3466fc171492a7016d21876ab33a Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Mon, 24 Sep 2018 21:59:12 -0400 Subject: [PATCH] Expose: Homing Validation and Endstop Noise Threshold (#11912) --- Marlin/Configuration.h | 26 +++++++++---------- Marlin/src/config/default/Configuration.h | 26 +++++++++---------- .../AlephObjects/TAZ4/Configuration.h | 26 +++++++++---------- .../AliExpress/CL-260/Configuration.h | 26 +++++++++---------- .../config/examples/Anet/A2/Configuration.h | 26 +++++++++---------- .../examples/Anet/A2plus/Configuration.h | 26 +++++++++---------- .../config/examples/Anet/A6/Configuration.h | 26 +++++++++---------- .../config/examples/Anet/A8/Configuration.h | 26 +++++++++---------- .../examples/Azteeg/X5GT/Configuration.h | 26 +++++++++---------- .../BIBO/TouchX/cyclops/Configuration.h | 26 +++++++++---------- .../BIBO/TouchX/default/Configuration.h | 26 +++++++++---------- .../examples/BQ/Hephestos/Configuration.h | 26 +++++++++---------- .../examples/BQ/Hephestos_2/Configuration.h | 26 +++++++++---------- .../config/examples/BQ/WITBOX/Configuration.h | 26 +++++++++---------- .../config/examples/Cartesio/Configuration.h | 26 +++++++++---------- .../examples/Creality/CR-10/Configuration.h | 26 +++++++++---------- .../examples/Creality/CR-10S/Configuration.h | 26 +++++++++---------- .../Creality/CR-10mini/Configuration.h | 26 +++++++++---------- .../examples/Creality/CR-8/Configuration.h | 26 +++++++++---------- .../examples/Creality/Ender-2/Configuration.h | 26 +++++++++---------- .../examples/Creality/Ender-3/Configuration.h | 26 +++++++++---------- .../examples/Creality/Ender-4/Configuration.h | 26 +++++++++---------- .../examples/Einstart-S/Configuration.h | 26 +++++++++---------- .../src/config/examples/Felix/Configuration.h | 26 +++++++++---------- .../examples/Felix/DUAL/Configuration.h | 26 +++++++++---------- .../FolgerTech/i3-2020/Configuration.h | 26 +++++++++---------- .../examples/Formbot/T-Rex_2+/Configuration.h | 26 +++++++++---------- .../examples/Formbot/T_Rex_3/Configuration.h | 26 +++++++++---------- .../examples/Geeetech/GT2560/Configuration.h | 26 +++++++++---------- .../Geeetech/I3_Pro_X-GT2560/Configuration.h | 26 +++++++++---------- .../Prusa i3 Pro B/bltouch/Configuration.h | 26 +++++++++---------- .../Prusa i3 Pro B/noprobe/Configuration.h | 26 +++++++++---------- .../Geeetech/Prusa i3 Pro C/Configuration.h | 26 +++++++++---------- .../Geeetech/Prusa i3 Pro W/Configuration.h | 26 +++++++++---------- .../examples/Infitary/i3-M508/Configuration.h | 26 +++++++++---------- .../examples/JGAurora/A5/Configuration.h | 26 +++++++++---------- .../examples/MakerParts/Configuration.h | 26 +++++++++---------- .../examples/Malyan/M150/Configuration.h | 26 +++++++++---------- .../examples/Malyan/M200/Configuration.h | 26 +++++++++---------- .../Micromake/C1/basic/Configuration.h | 26 +++++++++---------- .../Micromake/C1/enhanced/Configuration.h | 26 +++++++++---------- .../config/examples/Mks/Sbase/Configuration.h | 26 +++++++++---------- .../examples/RepRapPro/Huxley/Configuration.h | 26 +++++++++---------- .../RepRapWorld/Megatronics/Configuration.h | 26 +++++++++---------- .../config/examples/RigidBot/Configuration.h | 26 +++++++++---------- .../src/config/examples/SCARA/Configuration.h | 26 +++++++++---------- .../config/examples/STM32F10/Configuration.h | 26 +++++++++---------- .../config/examples/STM32F4/Configuration.h | 26 +++++++++---------- .../examples/Sanguinololu/Configuration.h | 26 +++++++++---------- .../config/examples/TheBorg/Configuration.h | 26 +++++++++---------- .../config/examples/TinyBoy2/Configuration.h | 26 +++++++++---------- .../config/examples/Tronxy/X1/Configuration.h | 26 +++++++++---------- .../examples/Tronxy/X3A/Configuration.h | 26 +++++++++---------- .../examples/Tronxy/X5S/Configuration.h | 26 +++++++++---------- .../examples/Tronxy/XY100/Configuration.h | 26 +++++++++---------- .../UltiMachine/Archim2/Configuration.h | 26 +++++++++---------- .../examples/Velleman/K8200/Configuration.h | 26 +++++++++---------- .../examples/Velleman/K8400/Configuration.h | 26 +++++++++---------- .../Velleman/K8400/Dual-head/Configuration.h | 26 +++++++++---------- .../Wanhao/Duplicator 6/Configuration.h | 26 +++++++++---------- .../examples/adafruit/ST7565/Configuration.h | 26 +++++++++---------- .../delta/Anycubic/Kossel/Configuration.h | 26 +++++++++---------- .../FLSUN/auto_calibrate/Configuration.h | 26 +++++++++---------- .../delta/FLSUN/kossel/Configuration.h | 26 +++++++++---------- .../delta/FLSUN/kossel_mini/Configuration.h | 26 +++++++++---------- .../delta/Hatchbox_Alpha/Configuration.h | 26 +++++++++---------- .../examples/delta/generic/Configuration.h | 26 +++++++++---------- .../delta/kossel_mini/Configuration.h | 26 +++++++++---------- .../examples/delta/kossel_pro/Configuration.h | 26 +++++++++---------- .../examples/delta/kossel_xl/Configuration.h | 26 +++++++++---------- .../examples/gCreate/gMax1.5+/Configuration.h | 26 +++++++++---------- .../config/examples/makibox/Configuration.h | 26 +++++++++---------- .../examples/stm32f103ret6/Configuration.h | 26 +++++++++---------- .../examples/tvrrug/Round2/Configuration.h | 26 +++++++++---------- .../src/config/examples/wt150/Configuration.h | 26 +++++++++---------- Marlin/src/inc/SanityCheck.h | 10 +++++-- Marlin/src/module/endstops.cpp | 9 ++++--- Marlin/src/module/endstops.h | 6 ++--- buildroot/share/tests/DUE_tests | 11 ++++++++ buildroot/share/tests/megaatmega2560_tests | 12 +-------- 80 files changed, 1002 insertions(+), 996 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index c89bea954..8242a1bbf 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/default/Configuration.h b/Marlin/src/config/default/Configuration.h index c89bea954..8242a1bbf 100644 --- a/Marlin/src/config/default/Configuration.h +++ b/Marlin/src/config/default/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h b/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h index 114db8500..40688eccf 100644 --- a/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h +++ b/Marlin/src/config/examples/AlephObjects/TAZ4/Configuration.h @@ -623,21 +623,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1214,6 +1211,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (8*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h b/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h index 5ad26b874..4d43e85b2 100644 --- a/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h +++ b/Marlin/src/config/examples/AliExpress/CL-260/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Anet/A2/Configuration.h b/Marlin/src/config/examples/Anet/A2/Configuration.h index 1f393b94a..7908591c5 100644 --- a/Marlin/src/config/examples/Anet/A2/Configuration.h +++ b/Marlin/src/config/examples/Anet/A2/Configuration.h @@ -586,21 +586,18 @@ #define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1177,6 +1174,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Anet/A2plus/Configuration.h b/Marlin/src/config/examples/Anet/A2plus/Configuration.h index 7e5933280..c5b1b881c 100644 --- a/Marlin/src/config/examples/Anet/A2plus/Configuration.h +++ b/Marlin/src/config/examples/Anet/A2plus/Configuration.h @@ -586,21 +586,18 @@ #define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1177,6 +1174,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Anet/A6/Configuration.h b/Marlin/src/config/examples/Anet/A6/Configuration.h index 796b72190..4ae4a759a 100644 --- a/Marlin/src/config/examples/Anet/A6/Configuration.h +++ b/Marlin/src/config/examples/Anet/A6/Configuration.h @@ -623,21 +623,18 @@ #define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1347,6 +1344,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Anet/A8/Configuration.h b/Marlin/src/config/examples/Anet/A8/Configuration.h index 5ec8bde4d..2a126e253 100644 --- a/Marlin/src/config/examples/Anet/A8/Configuration.h +++ b/Marlin/src/config/examples/Anet/A8/Configuration.h @@ -610,21 +610,18 @@ #define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1201,6 +1198,9 @@ #define HOMING_FEEDRATE_XY (100*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h b/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h index 2091548d1..b21dc29e4 100644 --- a/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h +++ b/Marlin/src/config/examples/Azteeg/X5GT/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h b/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h index a6be2347a..08cc9dfa4 100644 --- a/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h +++ b/Marlin/src/config/examples/BIBO/TouchX/cyclops/Configuration.h @@ -575,21 +575,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1166,6 +1163,9 @@ #define HOMING_FEEDRATE_XY (25*60) #define HOMING_FEEDRATE_Z (6*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h b/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h index a2cf8f863..127afb593 100644 --- a/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h +++ b/Marlin/src/config/examples/BIBO/TouchX/default/Configuration.h @@ -575,21 +575,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1166,6 +1163,9 @@ #define HOMING_FEEDRATE_XY (15*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/BQ/Hephestos/Configuration.h b/Marlin/src/config/examples/BQ/Hephestos/Configuration.h index b0122008a..a47a58cec 100644 --- a/Marlin/src/config/examples/BQ/Hephestos/Configuration.h +++ b/Marlin/src/config/examples/BQ/Hephestos/Configuration.h @@ -591,21 +591,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1182,6 +1179,9 @@ #define HOMING_FEEDRATE_XY 2000 #define HOMING_FEEDRATE_Z 150 +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h b/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h index 2c793ef67..4fe34aaa1 100644 --- a/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h +++ b/Marlin/src/config/examples/BQ/Hephestos_2/Configuration.h @@ -604,21 +604,18 @@ #define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z ( 4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/BQ/WITBOX/Configuration.h b/Marlin/src/config/examples/BQ/WITBOX/Configuration.h index f097fb71b..9b41872f9 100644 --- a/Marlin/src/config/examples/BQ/WITBOX/Configuration.h +++ b/Marlin/src/config/examples/BQ/WITBOX/Configuration.h @@ -591,21 +591,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1182,6 +1179,9 @@ #define HOMING_FEEDRATE_XY (120*60) #define HOMING_FEEDRATE_Z 432 +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Cartesio/Configuration.h b/Marlin/src/config/examples/Cartesio/Configuration.h index a6fcc78c5..589dcd7f8 100644 --- a/Marlin/src/config/examples/Cartesio/Configuration.h +++ b/Marlin/src/config/examples/Cartesio/Configuration.h @@ -602,21 +602,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1193,6 +1190,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (10*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Creality/CR-10/Configuration.h b/Marlin/src/config/examples/Creality/CR-10/Configuration.h index d04527467..e8bb25173 100755 --- a/Marlin/src/config/examples/Creality/CR-10/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-10/Configuration.h @@ -613,21 +613,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1204,6 +1201,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Creality/CR-10S/Configuration.h b/Marlin/src/config/examples/Creality/CR-10S/Configuration.h index 91c52c6a4..79cc8e2d0 100644 --- a/Marlin/src/config/examples/Creality/CR-10S/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-10S/Configuration.h @@ -607,21 +607,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1199,6 +1196,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h b/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h index 5ae0a89f9..add2a93df 100644 --- a/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-10mini/Configuration.h @@ -622,21 +622,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1213,6 +1210,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Creality/CR-8/Configuration.h b/Marlin/src/config/examples/Creality/CR-8/Configuration.h index e52821f98..f23fd3374 100644 --- a/Marlin/src/config/examples/Creality/CR-8/Configuration.h +++ b/Marlin/src/config/examples/Creality/CR-8/Configuration.h @@ -613,21 +613,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1204,6 +1201,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Creality/Ender-2/Configuration.h b/Marlin/src/config/examples/Creality/Ender-2/Configuration.h index 363363fbc..22d9638cd 100644 --- a/Marlin/src/config/examples/Creality/Ender-2/Configuration.h +++ b/Marlin/src/config/examples/Creality/Ender-2/Configuration.h @@ -607,21 +607,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1198,6 +1195,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Creality/Ender-3/Configuration.h b/Marlin/src/config/examples/Creality/Ender-3/Configuration.h index 791cc9f6a..3061cb969 100644 --- a/Marlin/src/config/examples/Creality/Ender-3/Configuration.h +++ b/Marlin/src/config/examples/Creality/Ender-3/Configuration.h @@ -607,21 +607,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1198,6 +1195,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Creality/Ender-4/Configuration.h b/Marlin/src/config/examples/Creality/Ender-4/Configuration.h index 8f70e33e5..7513f3007 100644 --- a/Marlin/src/config/examples/Creality/Ender-4/Configuration.h +++ b/Marlin/src/config/examples/Creality/Ender-4/Configuration.h @@ -613,21 +613,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1204,6 +1201,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Einstart-S/Configuration.h b/Marlin/src/config/examples/Einstart-S/Configuration.h index 369aff78b..bcf4c5166 100644 --- a/Marlin/src/config/examples/Einstart-S/Configuration.h +++ b/Marlin/src/config/examples/Einstart-S/Configuration.h @@ -615,21 +615,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1204,6 +1201,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Felix/Configuration.h b/Marlin/src/config/examples/Felix/Configuration.h index 8da460843..7599b60c6 100644 --- a/Marlin/src/config/examples/Felix/Configuration.h +++ b/Marlin/src/config/examples/Felix/Configuration.h @@ -584,21 +584,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1176,6 +1173,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Felix/DUAL/Configuration.h b/Marlin/src/config/examples/Felix/DUAL/Configuration.h index 9bc275259..e966acfa6 100644 --- a/Marlin/src/config/examples/Felix/DUAL/Configuration.h +++ b/Marlin/src/config/examples/Felix/DUAL/Configuration.h @@ -584,21 +584,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1176,6 +1173,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h b/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h index 051e19e88..499d15de3 100644 --- a/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h +++ b/Marlin/src/config/examples/FolgerTech/i3-2020/Configuration.h @@ -608,21 +608,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1200,6 +1197,9 @@ #define HOMING_FEEDRATE_XY (40*60) #define HOMING_FEEDRATE_Z (55) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Formbot/T-Rex_2+/Configuration.h b/Marlin/src/config/examples/Formbot/T-Rex_2+/Configuration.h index c47e8c51f..44b60a0ae 100644 --- a/Marlin/src/config/examples/Formbot/T-Rex_2+/Configuration.h +++ b/Marlin/src/config/examples/Formbot/T-Rex_2+/Configuration.h @@ -615,21 +615,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1231,6 +1228,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Formbot/T_Rex_3/Configuration.h b/Marlin/src/config/examples/Formbot/T_Rex_3/Configuration.h index 2110142aa..a12d7dcef 100644 --- a/Marlin/src/config/examples/Formbot/T_Rex_3/Configuration.h +++ b/Marlin/src/config/examples/Formbot/T_Rex_3/Configuration.h @@ -626,21 +626,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1247,6 +1244,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h b/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h index 236999ec8..c98d673c1 100644 --- a/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/GT2560/Configuration.h @@ -618,21 +618,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1209,6 +1206,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** 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 f17943438..1ac66d094 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 @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** 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 852e23a5b..263859c98 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 @@ -618,21 +618,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1210,6 +1207,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** 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 1f77b030c..2e5fb5bd1 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 @@ -618,21 +618,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1209,6 +1206,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration.h b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration.h index 467bd2f02..0e1e36f05 100644 --- a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro C/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration.h b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration.h index 8481f050c..912c619da 100644 --- a/Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration.h +++ b/Marlin/src/config/examples/Geeetech/Prusa i3 Pro W/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h b/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h index 6dc513a7c..154bed744 100644 --- a/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h +++ b/Marlin/src/config/examples/Infitary/i3-M508/Configuration.h @@ -607,21 +607,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1198,6 +1195,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/JGAurora/A5/Configuration.h b/Marlin/src/config/examples/JGAurora/A5/Configuration.h index 556b0a4fa..dafc2040f 100644 --- a/Marlin/src/config/examples/JGAurora/A5/Configuration.h +++ b/Marlin/src/config/examples/JGAurora/A5/Configuration.h @@ -615,21 +615,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1205,6 +1202,9 @@ #define HOMING_FEEDRATE_XY (80*60) #define HOMING_FEEDRATE_Z (12*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/MakerParts/Configuration.h b/Marlin/src/config/examples/MakerParts/Configuration.h index 82d8ad5d0..a411e5e18 100644 --- a/Marlin/src/config/examples/MakerParts/Configuration.h +++ b/Marlin/src/config/examples/MakerParts/Configuration.h @@ -623,21 +623,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1214,6 +1211,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Malyan/M150/Configuration.h b/Marlin/src/config/examples/Malyan/M150/Configuration.h index 80956a427..842052c0b 100644 --- a/Marlin/src/config/examples/Malyan/M150/Configuration.h +++ b/Marlin/src/config/examples/Malyan/M150/Configuration.h @@ -584,21 +584,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Malyan/M200/Configuration.h b/Marlin/src/config/examples/Malyan/M200/Configuration.h index 8b36c42e4..ccbdac0bb 100644 --- a/Marlin/src/config/examples/Malyan/M200/Configuration.h +++ b/Marlin/src/config/examples/Malyan/M200/Configuration.h @@ -602,21 +602,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1193,6 +1190,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h b/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h index 09bf254b3..87fb4d343 100644 --- a/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h +++ b/Marlin/src/config/examples/Micromake/C1/basic/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1198,6 +1195,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h b/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h index 6d1a537c8..f6059d63b 100644 --- a/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h +++ b/Marlin/src/config/examples/Micromake/C1/enhanced/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1198,6 +1195,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Mks/Sbase/Configuration.h b/Marlin/src/config/examples/Mks/Sbase/Configuration.h index 9c54637dc..03d1eebde 100644 --- a/Marlin/src/config/examples/Mks/Sbase/Configuration.h +++ b/Marlin/src/config/examples/Mks/Sbase/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/RepRapPro/Huxley/Configuration.h b/Marlin/src/config/examples/RepRapPro/Huxley/Configuration.h index 51a5802c6..7c07ae89e 100644 --- a/Marlin/src/config/examples/RepRapPro/Huxley/Configuration.h +++ b/Marlin/src/config/examples/RepRapPro/Huxley/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1243,6 +1240,9 @@ Black rubber belt(MXL), 18 - tooth aluminium pulley : 87.489 step per mm (Huxley #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (DEFAULT_MAX_Z_FEEDRATE*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h b/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h index 2696375b8..8dcb0c4c0 100644 --- a/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h +++ b/Marlin/src/config/examples/RepRapWorld/Megatronics/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/RigidBot/Configuration.h b/Marlin/src/config/examples/RigidBot/Configuration.h index 8f7fa7254..83d9933c2 100644 --- a/Marlin/src/config/examples/RigidBot/Configuration.h +++ b/Marlin/src/config/examples/RigidBot/Configuration.h @@ -599,21 +599,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1192,6 +1189,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (15*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/SCARA/Configuration.h b/Marlin/src/config/examples/SCARA/Configuration.h index 78218eda4..bf8b2b79f 100644 --- a/Marlin/src/config/examples/SCARA/Configuration.h +++ b/Marlin/src/config/examples/SCARA/Configuration.h @@ -616,21 +616,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1207,6 +1204,9 @@ #define HOMING_FEEDRATE_XY (40*60) #define HOMING_FEEDRATE_Z (10*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/STM32F10/Configuration.h b/Marlin/src/config/examples/STM32F10/Configuration.h index 3a84cfd48..704992bd7 100644 --- a/Marlin/src/config/examples/STM32F10/Configuration.h +++ b/Marlin/src/config/examples/STM32F10/Configuration.h @@ -605,21 +605,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1196,6 +1193,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/STM32F4/Configuration.h b/Marlin/src/config/examples/STM32F4/Configuration.h index 283b31d0b..b0c872d32 100644 --- a/Marlin/src/config/examples/STM32F4/Configuration.h +++ b/Marlin/src/config/examples/STM32F4/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Sanguinololu/Configuration.h b/Marlin/src/config/examples/Sanguinololu/Configuration.h index 3765252e5..60740c4ee 100644 --- a/Marlin/src/config/examples/Sanguinololu/Configuration.h +++ b/Marlin/src/config/examples/Sanguinololu/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1225,6 +1222,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (6*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/TheBorg/Configuration.h b/Marlin/src/config/examples/TheBorg/Configuration.h index a53e60181..8b191a834 100644 --- a/Marlin/src/config/examples/TheBorg/Configuration.h +++ b/Marlin/src/config/examples/TheBorg/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/TinyBoy2/Configuration.h b/Marlin/src/config/examples/TinyBoy2/Configuration.h index 3e00d9cd5..deaba4aa8 100644 --- a/Marlin/src/config/examples/TinyBoy2/Configuration.h +++ b/Marlin/src/config/examples/TinyBoy2/Configuration.h @@ -654,21 +654,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1250,6 +1247,9 @@ #define HOMING_FEEDRATE_XY (40*60) #define HOMING_FEEDRATE_Z (3*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Tronxy/X1/Configuration.h b/Marlin/src/config/examples/Tronxy/X1/Configuration.h index b8c58b403..a6a2cdc5e 100644 --- a/Marlin/src/config/examples/Tronxy/X1/Configuration.h +++ b/Marlin/src/config/examples/Tronxy/X1/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Tronxy/X3A/Configuration.h b/Marlin/src/config/examples/Tronxy/X3A/Configuration.h index 1838a9649..4d131e2fe 100644 --- a/Marlin/src/config/examples/Tronxy/X3A/Configuration.h +++ b/Marlin/src/config/examples/Tronxy/X3A/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1198,6 +1195,9 @@ #define HOMING_FEEDRATE_XY (100*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Tronxy/X5S/Configuration.h b/Marlin/src/config/examples/Tronxy/X5S/Configuration.h index 5f19c6506..7c5f1b1c5 100644 --- a/Marlin/src/config/examples/Tronxy/X5S/Configuration.h +++ b/Marlin/src/config/examples/Tronxy/X5S/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Tronxy/XY100/Configuration.h b/Marlin/src/config/examples/Tronxy/XY100/Configuration.h index af1091f32..b88270cf5 100644 --- a/Marlin/src/config/examples/Tronxy/XY100/Configuration.h +++ b/Marlin/src/config/examples/Tronxy/XY100/Configuration.h @@ -614,21 +614,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1205,6 +1202,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h b/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h index 5f8c05970..424fe3bf2 100644 --- a/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h +++ b/Marlin/src/config/examples/UltiMachine/Archim2/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Velleman/K8200/Configuration.h b/Marlin/src/config/examples/Velleman/K8200/Configuration.h index d228dc295..2de5ee47e 100644 --- a/Marlin/src/config/examples/Velleman/K8200/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8200/Configuration.h @@ -633,21 +633,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1224,6 +1221,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Velleman/K8400/Configuration.h b/Marlin/src/config/examples/Velleman/K8400/Configuration.h index f61a2ffcb..402d4e871 100644 --- a/Marlin/src/config/examples/Velleman/K8400/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8400/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (8*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** 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 3873b478a..6c22a5399 100644 --- a/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h +++ b/Marlin/src/config/examples/Velleman/K8400/Dual-head/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (8*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h b/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h index 35d11bcf6..51a573afe 100644 --- a/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h +++ b/Marlin/src/config/examples/Wanhao/Duplicator 6/Configuration.h @@ -613,21 +613,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1204,6 +1201,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/adafruit/ST7565/Configuration.h b/Marlin/src/config/examples/adafruit/ST7565/Configuration.h index 751736848..51360c210 100644 --- a/Marlin/src/config/examples/adafruit/ST7565/Configuration.h +++ b/Marlin/src/config/examples/adafruit/ST7565/Configuration.h @@ -603,21 +603,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1194,6 +1191,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/delta/Anycubic/Kossel/Configuration.h b/Marlin/src/config/examples/delta/Anycubic/Kossel/Configuration.h index a240fe7fc..32720c98f 100644 --- a/Marlin/src/config/examples/delta/Anycubic/Kossel/Configuration.h +++ b/Marlin/src/config/examples/delta/Anycubic/Kossel/Configuration.h @@ -711,21 +711,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1371,6 +1368,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (100*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** 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 9652de1ef..80e601471 100644 --- a/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/auto_calibrate/Configuration.h @@ -676,21 +676,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1322,6 +1319,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (100*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h b/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h index 8859a9fe1..db9966f01 100644 --- a/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/kossel/Configuration.h @@ -676,21 +676,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1321,6 +1318,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (100*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** 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 a07df3d32..fc3ea963c 100644 --- a/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h +++ b/Marlin/src/config/examples/delta/FLSUN/kossel_mini/Configuration.h @@ -676,21 +676,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1321,6 +1318,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (45*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h b/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h index c267c828a..f3308db52 100644 --- a/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h +++ b/Marlin/src/config/examples/delta/Hatchbox_Alpha/Configuration.h @@ -681,21 +681,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1324,6 +1321,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (200*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/delta/generic/Configuration.h b/Marlin/src/config/examples/delta/generic/Configuration.h index 5a874a67a..19cf8b37f 100644 --- a/Marlin/src/config/examples/delta/generic/Configuration.h +++ b/Marlin/src/config/examples/delta/generic/Configuration.h @@ -666,21 +666,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1309,6 +1306,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (200*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/delta/kossel_mini/Configuration.h b/Marlin/src/config/examples/delta/kossel_mini/Configuration.h index 8fcf28618..cfe05817e 100644 --- a/Marlin/src/config/examples/delta/kossel_mini/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_mini/Configuration.h @@ -666,21 +666,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1311,6 +1308,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (200*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/delta/kossel_pro/Configuration.h b/Marlin/src/config/examples/delta/kossel_pro/Configuration.h index 83f3a063d..bed666ffc 100644 --- a/Marlin/src/config/examples/delta/kossel_pro/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_pro/Configuration.h @@ -652,21 +652,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1312,6 +1309,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (200*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/delta/kossel_xl/Configuration.h b/Marlin/src/config/examples/delta/kossel_xl/Configuration.h index 852b6ef2c..761cbdb3c 100644 --- a/Marlin/src/config/examples/delta/kossel_xl/Configuration.h +++ b/Marlin/src/config/examples/delta/kossel_xl/Configuration.h @@ -670,21 +670,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1312,6 +1309,9 @@ // Delta only homes to Z #define HOMING_FEEDRATE_Z (60*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h b/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h index be15aac7f..1c9fe2854 100644 --- a/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h +++ b/Marlin/src/config/examples/gCreate/gMax1.5+/Configuration.h @@ -616,21 +616,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1208,6 +1205,9 @@ #define HOMING_FEEDRATE_XY (60*60) #define HOMING_FEEDRATE_Z (14*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/makibox/Configuration.h b/Marlin/src/config/examples/makibox/Configuration.h index 4395aa43c..0d5befac0 100644 --- a/Marlin/src/config/examples/makibox/Configuration.h +++ b/Marlin/src/config/examples/makibox/Configuration.h @@ -606,21 +606,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1197,6 +1194,9 @@ #define HOMING_FEEDRATE_XY 1500 #define HOMING_FEEDRATE_Z (2*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/stm32f103ret6/Configuration.h b/Marlin/src/config/examples/stm32f103ret6/Configuration.h index 85b974834..c7f755f45 100644 --- a/Marlin/src/config/examples/stm32f103ret6/Configuration.h +++ b/Marlin/src/config/examples/stm32f103ret6/Configuration.h @@ -605,21 +605,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1196,6 +1193,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/tvrrug/Round2/Configuration.h b/Marlin/src/config/examples/tvrrug/Round2/Configuration.h index fbc854cae..a8b30e0ce 100644 --- a/Marlin/src/config/examples/tvrrug/Round2/Configuration.h +++ b/Marlin/src/config/examples/tvrrug/Round2/Configuration.h @@ -592,21 +592,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1189,6 +1186,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/config/examples/wt150/Configuration.h b/Marlin/src/config/examples/wt150/Configuration.h index 59a9d4db2..be7d0833f 100644 --- a/Marlin/src/config/examples/wt150/Configuration.h +++ b/Marlin/src/config/examples/wt150/Configuration.h @@ -608,21 +608,18 @@ //#define ENDSTOP_INTERRUPTS_FEATURE /** - * Endstop Noise Filter + * Endstop Noise Threshold * - * Enable this option if endstops falsely trigger due to noise. - * NOTE: Enabling this feature means adds an error of +/-0.2mm, so homing - * will end up at a slightly different position on each G28. This will also - * reduce accuracy of some bed probes. - * For mechanical switches, the better approach to reduce noise is to install - * a 100 nanofarads ceramic capacitor in parallel with the switch, making it - * essentially noise-proof without sacrificing accuracy. - * This option also increases MCU load when endstops or the probe are enabled. - * So this is not recommended. USE AT YOUR OWN RISK. - * (This feature is not required for common micro-switches mounted on PCBs - * based on the Makerbot design, since they already include the 100nF capacitor.) + * Enable if your probe or endstops falsely trigger due to noise. + * + * - Higher values may affect repeatability or accuracy of some bed probes. + * - To fix noise install a 100nF ceramic capacitor inline with the switch. + * - This feature is not required for common micro-switches mounted on PCBs + * based on the Makerbot design, which already have the 100nF capacitor. + * + * :[2,3,4,5,6,7] */ -//#define ENDSTOP_NOISE_FILTER +//#define ENDSTOP_NOISE_THRESHOLD 2 //============================================================================= //============================== Movement Settings ============================ @@ -1199,6 +1196,9 @@ #define HOMING_FEEDRATE_XY (50*60) #define HOMING_FEEDRATE_Z (4*60) +// Validate that endstops are triggered on homing moves +#define VALIDATE_HOMING_ENDSTOPS + // @section calibrate /** diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index ad0cebc20..3272d6cd3 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -307,6 +307,8 @@ #error "MAX7219_DEBUG_STEPPER_TAIL is now MAX7219_DEBUG_PLANNER_TAIL. Please update your configuration." #elif defined(MAX7219_DEBUG_STEPPER_QUEUE) #error "MAX7219_DEBUG_STEPPER_QUEUE is now MAX7219_DEBUG_PLANNER_QUEUE. Please update your configuration." +#elif defined(ENDSTOP_NOISE_FILTER) + #error "ENDSTOP_NOISE_FILTER is now ENDSTOP_NOISE_THRESHOLD [2-7]. Please update your configuration." #endif #define BOARD_MKS_13 -47 @@ -1505,6 +1507,10 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE && Y_MAX_LENGTH >= Y_BED_SIZE, #endif #endif +#if defined(ENDSTOP_NOISE_THRESHOLD) && !WITHIN(ENDSTOP_NOISE_THRESHOLD, 2, 7) + #error "ENDSTOP_NOISE_THRESHOLD must be an integer from 2 to 7." +#endif + /** * emergency-command parser */ @@ -1726,8 +1732,8 @@ static_assert(X_MAX_LENGTH >= X_BED_SIZE && Y_MAX_LENGTH >= Y_BED_SIZE, #error "SENSORLESS_HOMING requires Z_MIN_ENDSTOP_INVERTING and ENDSTOPPULLUP_ZMIN when homing to Z_MIN." #elif Z_SENSORLESS && Z_HOME_DIR == 1 && (DISABLED(Z_MAX_ENDSTOP_INVERTING) || DISABLED(ENDSTOPPULLUP_ZMAX)) #error "SENSORLESS_HOMING requires Z_MAX_ENDSTOP_INVERTING and ENDSTOPPULLUP_ZMAX when homing to Z_MAX." - #elif ENABLED(ENDSTOP_NOISE_FILTER) - #error "SENSORLESS_HOMING is incompatible with ENDSTOP_NOISE_FILTER." + #elif ENDSTOP_NOISE_THRESHOLD + #error "SENSORLESS_HOMING is incompatible with ENDSTOP_NOISE_THRESHOLD." #endif #endif diff --git a/Marlin/src/module/endstops.cpp b/Marlin/src/module/endstops.cpp index dbef281f0..93a0001ab 100644 --- a/Marlin/src/module/endstops.cpp +++ b/Marlin/src/module/endstops.cpp @@ -45,7 +45,7 @@ volatile uint8_t Endstops::hit_state; Endstops::esbits_t Endstops::live_state = 0; -#if ENABLED(ENDSTOP_NOISE_FILTER) +#if ENDSTOP_NOISE_THRESHOLD Endstops::esbits_t Endstops::validated_live_state; uint8_t Endstops::endstop_poll_count; #endif @@ -479,7 +479,7 @@ void _O2 Endstops::M119() { // Check endstops - Could be called from Temperature ISR! void Endstops::update() { - #if DISABLED(ENDSTOP_NOISE_FILTER) + #if !ENDSTOP_NOISE_THRESHOLD if (!abort_enabled()) return; #endif @@ -622,7 +622,8 @@ void Endstops::update() { #endif #endif - #if ENABLED(ENDSTOP_NOISE_FILTER) + #if ENDSTOP_NOISE_THRESHOLD + /** * Filtering out noise on endstops requires a delayed decision. Let's assume, due to noise, * that 50% of endstop signal samples are good and 50% are bad (assuming normal distribution @@ -635,7 +636,7 @@ void Endstops::update() { */ static esbits_t old_live_state; if (old_live_state != live_state) { - endstop_poll_count = 7; + endstop_poll_count = ENDSTOP_NOISE_THRESHOLD; old_live_state = live_state; } else if (endstop_poll_count && !--endstop_poll_count) diff --git a/Marlin/src/module/endstops.h b/Marlin/src/module/endstops.h index 0e52e0d00..f4c9181e9 100644 --- a/Marlin/src/module/endstops.h +++ b/Marlin/src/module/endstops.h @@ -30,8 +30,6 @@ #include "../inc/MarlinConfig.h" #include -#define VALIDATE_HOMING_ENDSTOPS - enum EndstopEnum : char { X_MIN, Y_MIN, @@ -77,7 +75,7 @@ class Endstops { static esbits_t live_state; static volatile uint8_t hit_state; // Use X_MIN, Y_MIN, Z_MIN and Z_MIN_PROBE as BIT index - #if ENABLED(ENDSTOP_NOISE_FILTER) + #if ENDSTOP_NOISE_THRESHOLD static esbits_t validated_live_state; static uint8_t endstop_poll_count; // Countdown from threshold for polling #endif @@ -123,7 +121,7 @@ class Endstops { */ FORCE_INLINE static esbits_t state() { return - #if ENABLED(ENDSTOP_NOISE_FILTER) + #if ENDSTOP_NOISE_THRESHOLD validated_live_state #else live_state diff --git a/buildroot/share/tests/DUE_tests b/buildroot/share/tests/DUE_tests index 9ebfa2289..e4e707cb7 100755 --- a/buildroot/share/tests/DUE_tests +++ b/buildroot/share/tests/DUE_tests @@ -21,3 +21,14 @@ pins_set RAMPS Y_MAX_PIN -1 opt_add_adv Z2_MAX_PIN 2 opt_add_adv Z3_MAX_PIN 3 exec_test $1 $2 "RADDS Z_TRIPLE" + +# +# Test SWITCHING_EXTRUDER +# +restore_configs +opt_set MOTHERBOARD BOARD_RAMPS4DUE_EEF +opt_set EXTRUDERS 2 +opt_enable NUM_SERVOS +opt_set NUM_SERVOS 1 +opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER +exec_test $1 $2 "SWITCHING_EXTRUDER" diff --git a/buildroot/share/tests/megaatmega2560_tests b/buildroot/share/tests/megaatmega2560_tests index 73e6f305e..4e5a89c5f 100755 --- a/buildroot/share/tests/megaatmega2560_tests +++ b/buildroot/share/tests/megaatmega2560_tests @@ -121,16 +121,6 @@ exec_test $1 $2 "DUAL_X_CARRIAGE" #opt_set LCD_FEEDBACK_FREQUENCY_HZ 100 #opt_enable BQ_LCD_SMART_CONTROLLER SPEAKER # -# Test SWITCHING_EXTRUDER -# -restore_configs -opt_set MOTHERBOARD BOARD_RUMBA -opt_set EXTRUDERS 2 -opt_enable NUM_SERVOS -opt_set NUM_SERVOS 1 -opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER -exec_test $1 $2 "SWITCHING_EXTRUDER" -# # Enable COREXY # #restore_configs @@ -152,7 +142,7 @@ opt_enable_adv EXTRA_FAN_SPEED FWERETRACT Z_DUAL_STEPPER_DRIVERS Z_DUAL_ENDSTOPS opt_enable_adv MENU_ADDAUTOSTART SDCARD_SORT_ALPHA opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT opt_enable FILAMENT_LCD_DISPLAY FILAMENT_WIDTH_SENSOR -opt_enable ENDSTOP_INTERRUPTS_FEATURE FAN_SOFT_PWM SDSUPPORT +opt_enable ENDSTOP_INTERRUPTS_FEATURE ENDSTOP_NOISE_THRESHOLD FAN_SOFT_PWM SDSUPPORT opt_enable USE_XMAX_PLUG opt_enable SWITCHING_TOOLHEAD NUM_SERVOS DEBUG_LEVELING_FEATURE opt_set EXTRUDERS 2