aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/extras/tmc2130.py
diff options
context:
space:
mode:
Diffstat (limited to 'klippy/extras/tmc2130.py')
-rw-r--r--klippy/extras/tmc2130.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/klippy/extras/tmc2130.py b/klippy/extras/tmc2130.py
index e6a27a43..9e676a5c 100644
--- a/klippy/extras/tmc2130.py
+++ b/klippy/extras/tmc2130.py
@@ -123,11 +123,13 @@ class TMCCurrentHelper:
def _calc_current(self, run_current, hold_current):
vsense = False
irun = self._calc_current_bits(run_current, vsense)
- ihold = self._calc_current_bits(hold_current, vsense)
+ ihold = self._calc_current_bits(min(hold_current, run_current),
+ vsense)
if irun < 16 and ihold < 16:
vsense = True
irun = self._calc_current_bits(run_current, vsense)
- ihold = self._calc_current_bits(hold_current, vsense)
+ ihold = self._calc_current_bits(min(hold_current, run_current),
+ vsense)
return vsense, irun, ihold
def _calc_current_from_field(self, field_name):
bits = self.fields.get_field(field_name)
@@ -147,7 +149,7 @@ class TMCCurrentHelper:
hold_current = self._calc_current_from_field("IHOLD")
if 'CURRENT' in params:
run_current = gcode.get_float(
- 'CURRENT', params, minval=hold_current, maxval=MAX_CURRENT)
+ 'CURRENT', params, minval=0., maxval=MAX_CURRENT)
else:
run_current = self._calc_current_from_field("IRUN")
if 'HOLDCURRENT' not in params and 'CURRENT' not in params: