aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2016-12-26 13:15:37 -0500
committerKevin O'Connor <kevin@koconnor.net>2016-12-28 22:38:27 -0500
commitf46bc0ef046f3848d64666778a304c85bb5439a3 (patch)
tree3d9c99d1563466980c186e64e33a73b4128343f7
parent800d53db6ad2fe0051c3d37dae08dc2fb1bff255 (diff)
downloadkutter-f46bc0ef046f3848d64666778a304c85bb5439a3.tar.gz
kutter-f46bc0ef046f3848d64666778a304c85bb5439a3.tar.xz
kutter-f46bc0ef046f3848d64666778a304c85bb5439a3.zip
stepper: Change default max_error from 50us to 25us
Change the default compression error window (max_error) from 50us to 25us - it's common for stepper motor drivers to have 30us for their "pwm fixed off time" and it would be good for the steps to be scheduled within that time. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-rw-r--r--docs/Features.md11
-rw-r--r--klippy/stepper.py2
2 files changed, 6 insertions, 7 deletions
diff --git a/docs/Features.md b/docs/Features.md
index 956caed3..723bc513 100644
--- a/docs/Features.md
+++ b/docs/Features.md
@@ -7,12 +7,11 @@ compelling features:
stepper motor, it compresses those events, transmits them to the
micro-controller, and then the micro-controller executes each event
at the requested time. Each stepper event is scheduled with a
- precision of no less than 50 micro-seconds. The software does not
- use kinematic estimations (such as the Bresenham algorithm) -
- instead it calculates precise step times based on the physics of
- acceleration and the physics of the machine kinematics. More precise
- stepper movement translates to quieter and more stable printer
- operation.
+ precision of 25 micro-seconds or better. The software does not use
+ kinematic estimations (such as the Bresenham algorithm) - instead it
+ calculates precise step times based on the physics of acceleration
+ and the physics of the machine kinematics. More precise stepper
+ movement translates to quieter and more stable printer operation.
* Best in class performance. Klipper is able to achieve high stepping
rates on both new and old micro-controllers. Even an old 8bit AVR
diff --git a/klippy/stepper.py b/klippy/stepper.py
index 1c40e6c7..43b541f3 100644
--- a/klippy/stepper.py
+++ b/klippy/stepper.py
@@ -51,7 +51,7 @@ class PrinterStepper:
self.min_stop_interval = (math.sqrt(3.*inv_max_step_accel + jc**2)
- math.sqrt(inv_max_step_accel + jc**2))
def build_config(self):
- max_error = self.config.getfloat('max_error', 0.000050)
+ max_error = self.config.getfloat('max_error', 0.000025)
step_pin = self.config.get('step_pin')
dir_pin = self.config.get('dir_pin')
min_stop_interval = max(0., self.min_stop_interval - max_error)