diff options
Diffstat (limited to 'klippy/extras/tmc2130.py')
-rw-r--r-- | klippy/extras/tmc2130.py | 8 |
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: |