aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/extras/tmc.py
diff options
context:
space:
mode:
authorAlex Voinea <voinea.dragos.alexandru@gmail.com>2024-05-14 22:23:06 +0200
committerKevinOConnor <kevin@koconnor.net>2024-05-14 18:21:24 -0400
commited8dca8df08924e7df9291d5e4ff88c9fee4ca4e (patch)
tree61b5882acf00f60ecbe84ebb2431e3faa405e1e9 /klippy/extras/tmc.py
parent5249d955bb0a4ee131cc3def5d9d53d61e2d4334 (diff)
downloadkutter-ed8dca8df08924e7df9291d5e4ff88c9fee4ca4e.tar.gz
kutter-ed8dca8df08924e7df9291d5e4ff88c9fee4ca4e.tar.xz
kutter-ed8dca8df08924e7df9291d5e4ff88c9fee4ca4e.zip
tmc: Implement high_velocity_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.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/klippy/extras/tmc.py b/klippy/extras/tmc.py
index e7c0239f..366e00b1 100644
--- a/klippy/extras/tmc.py
+++ b/klippy/extras/tmc.py
@@ -632,3 +632,20 @@ def TMCVcoolthrsHelper(config, mcu_tmc):
tcoolthrs = TMCtstepHelper(step_dist, mres,
mcu_tmc.get_tmc_frequency(), velocity)
fields.set_field("tcoolthrs", tcoolthrs)
+
+# Helper to configure StallGuard and CoolStep maximum velocity and
+# SpreadCycle-FullStepping (High velocity) mode threshold.
+def TMCVhighHelper(config, mcu_tmc):
+ fields = mcu_tmc.get_fields()
+ velocity = config.getfloat('high_velocity_threshold', None, minval=0.)
+ thigh = 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")
+ thigh = TMCtstepHelper(step_dist, mres,
+ mcu_tmc.get_tmc_frequency(), velocity)
+ fields.set_field("thigh", thigh)