From ece1f71c645da7115f497642c16278417a1f5292 Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Sun, 1 Oct 2017 16:31:05 -0400 Subject: endstop: Support oversampling of the endstop Some printers can show occasional noise on the endstop pin. Support sampling the endstop pin multiple times to attempt to filter out this noise. Signed-off-by: Kevin O'Connor --- klippy/stepper.py | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'klippy/stepper.py') diff --git a/klippy/stepper.py b/klippy/stepper.py index ab1af2ba..5040ce9e 100644 --- a/klippy/stepper.py +++ b/klippy/stepper.py @@ -6,6 +6,9 @@ import math, logging import homing, pins +ENDSTOP_OVERSAMPLE_COUNT = 4 +ENDSTOP_OVERSAMPLE_TIME = .000015 + class PrinterStepper: def __init__(self, printer, config, name): self.name = name @@ -52,6 +55,8 @@ class PrinterHomingStepper(PrinterStepper): self.mcu_endstop = pins.setup_pin( printer, 'endstop', config.get('endstop_pin')) + self.mcu_endstop.setup_oversample( + ENDSTOP_OVERSAMPLE_COUNT, ENDSTOP_OVERSAMPLE_TIME) self.mcu_endstop.add_stepper(self.mcu_stepper) self.position_min = config.getfloat('position_min', 0.) self.position_max = config.getfloat( -- cgit v1.2.3-70-g09d2