diff options
author | Alex Voinea <voinea.dragos.alexandru@gmail.com> | 2024-05-14 22:21:58 +0200 |
---|---|---|
committer | KevinOConnor <kevin@koconnor.net> | 2024-05-14 18:21:24 -0400 |
commit | 5249d955bb0a4ee131cc3def5d9d53d61e2d4334 (patch) | |
tree | 0360209248e6c5a0e8b1cb83e529bf6c859188e2 /klippy/extras/tmc.py | |
parent | 0f3f29101ca49e913354811430d43776f13bcdbb (diff) | |
download | kutter-5249d955bb0a4ee131cc3def5d9d53d61e2d4334.tar.gz kutter-5249d955bb0a4ee131cc3def5d9d53d61e2d4334.tar.xz kutter-5249d955bb0a4ee131cc3def5d9d53d61e2d4334.zip |
tmc: Implement coolstep_threshold for drivers that support it
Signed-off-by: Alex Voinea <voinea.dragos.alexandru@gmail.com>
Diffstat (limited to 'klippy/extras/tmc.py')
-rw-r--r-- | klippy/extras/tmc.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/klippy/extras/tmc.py b/klippy/extras/tmc.py index 4ce9466a..e7c0239f 100644 --- a/klippy/extras/tmc.py +++ b/klippy/extras/tmc.py @@ -616,3 +616,19 @@ def TMCStealthchopHelper(config, mcu_tmc): else: # TMC2208 uses en_spreadCycle fields.set_field("en_spreadcycle", not en_pwm_mode) + +# Helper to configure StallGuard and CoolStep minimum velocity +def TMCVcoolthrsHelper(config, mcu_tmc): + fields = mcu_tmc.get_fields() + velocity = config.getfloat('coolstep_threshold', None, minval=0.) + tcoolthrs = 0 + + if velocity is not None: + stepper_name = " ".join(config.get_name().split()[1:]) + sconfig = config.getsection(stepper_name) + rotation_dist, steps_per_rotation = stepper.parse_step_distance(sconfig) + step_dist = rotation_dist / steps_per_rotation + mres = fields.get_field("mres") + tcoolthrs = TMCtstepHelper(step_dist, mres, + mcu_tmc.get_tmc_frequency(), velocity) + fields.set_field("tcoolthrs", tcoolthrs) |