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 c89bea954a..8242a1bbfc 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 c89bea954a..8242a1bbfc 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 114db85006..40688eccff 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 5ad26b874b..4d43e85b2b 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 1f393b94a6..7908591c57 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 7e59332809..c5b1b881c1 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 796b72190c..4ae4a759aa 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 5ec8bde4d9..2a126e2534 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 2091548d1e..b21dc29e49 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 a6be2347ac..08cc9dfa48 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 a2cf8f8632..127afb5934 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 b0122008a2..a47a58cec6 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 2c793ef67b..4fe34aaa1e 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 f097fb71b6..9b41872f9e 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 a6fcc78c59..589dcd7f8d 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 d045274675..e8bb251736 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 91c52c6a47..79cc8e2d03 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 5ae0a89f92..add2a93df6 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 e52821f98b..f23fd33740 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 363363fbcc..22d9638cd2 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 791cc9f6a0..3061cb9694 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 8f70e33e56..7513f3007f 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 369aff78b9..bcf4c51667 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 8da4608433..7599b60c64 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 9bc2752597..e966acfa60 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 051e19e881..499d15de32 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 c47e8c51f4..44b60a0ae1 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 2110142aa9..a12d7dcefb 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 236999ec82..c98d673c13 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 f179434385..1ac66d0945 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 852e23a5b4..263859c98f 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 1f77b030c3..2e5fb5bd1d 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 467bd2f024..0e1e36f054 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 8481f050c9..912c619daa 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 6dc513a7ce..154bed7447 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 556b0a4faa..dafc2040fc 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 82d8ad5d09..a411e5e18c 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 80956a4272..842052c0bc 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 8b36c42e43..ccbdac0bbb 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 09bf254b35..87fb4d343b 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 6d1a537c80..f6059d63b5 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 9c54637dca..03d1eebdef 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 51a5802c62..7c07ae89e8 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 2696375b8b..8dcb0c4c0c 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 8f7fa72545..83d9933c22 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 78218eda4b..bf8b2b79f5 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 3a84cfd483..704992bd7c 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 283b31d0b9..b0c872d32d 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 3765252e5a..60740c4eed 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 a53e601815..8b191a8343 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 3e00d9cd53..deaba4aa87 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 b8c58b4038..a6a2cdc5e5 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 1838a9649d..4d131e2fe4 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 5f19c65060..7c5f1b1c57 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 af1091f329..b88270cf5c 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 5f8c05970d..424fe3bf24 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 d228dc2953..2de5ee47ec 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 f61a2ffcb7..402d4e871d 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 3873b478ab..6c22a5399a 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 35d11bcf64..51a573afea 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 7517368483..51360c2107 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 a240fe7fcc..32720c98fd 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 9652de1ef2..80e601471b 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 8859a9fe1f..db9966f01c 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 a07df3d324..fc3ea963c9 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 c267c828af..f3308db520 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 5a874a67a5..19cf8b37f8 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 8fcf286187..cfe05817e7 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 83f3a063da..bed666ffc3 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 852b6ef2ce..761cbdb3ca 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 be15aac7fa..1c9fe28548 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 4395aa43c2..0d5befac04 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 85b9748343..c7f755f452 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 fbc854cae4..a8b30e0ce3 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 59a9d4db28..be7d0833fb 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 ad0cebc202..3272d6cd37 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 dbef281f08..93a0001ab8 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 0e52e0d00c..f4c9181e93 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 9ebfa22892..e4e707cb78 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 73e6f305ee..4e5a89c5fd 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