aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/stepper.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2019-11-13 17:59:40 -0500
committerKevin O'Connor <kevin@koconnor.net>2019-11-13 19:00:17 -0500
commit224574da4a623e3f37ebfe8082a546a9df697638 (patch)
tree81c65dca1a785d7a18708a81ad674866f58a9d22 /klippy/stepper.py
parente0e2f154986aa05666f3e0eea44a8c4074fa7cf7 (diff)
downloadkutter-224574da4a623e3f37ebfe8082a546a9df697638.tar.gz
kutter-224574da4a623e3f37ebfe8082a546a9df697638.tar.xz
kutter-224574da4a623e3f37ebfe8082a546a9df697638.zip
stepper: Add get/set_tag_position() and convert calc_position()
Rename calc_position() to calc_tag_position() and have it calculate the value of the position from the last stepper set_tag_position() call. This enables the calc_tag_position() code to be more flexible as it can be run with arbitrary positions. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/stepper.py')
-rw-r--r--klippy/stepper.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/klippy/stepper.py b/klippy/stepper.py
index 97a1283e..eff0fa67 100644
--- a/klippy/stepper.py
+++ b/klippy/stepper.py
@@ -29,7 +29,7 @@ class MCU_stepper:
"Stepper dir pin must be on same mcu as step pin")
self._dir_pin = dir_pin_params['pin']
self._invert_dir = dir_pin_params['invert']
- self._mcu_position_offset = 0.
+ self._mcu_position_offset = self._tag_position = 0.
self._min_stop_interval = 0.
self._reset_cmd_id = self._get_position_cmd = None
self._active_callbacks = []
@@ -107,6 +107,10 @@ class MCU_stepper:
if mcu_pos >= 0.:
return int(mcu_pos + 0.5)
return int(mcu_pos - 0.5)
+ def get_tag_position(self):
+ return self._tag_position
+ def set_tag_position(self, position):
+ self._tag_position = position
def set_stepper_kinematics(self, sk):
old_sk = self._stepper_kinematics
self._stepper_kinematics = sk
@@ -193,6 +197,8 @@ class PrinterRail:
self.endstops = []
self.add_extra_stepper(config)
self.get_commanded_position = self.steppers[0].get_commanded_position
+ self.get_tag_position = self.steppers[0].get_tag_position
+ self.set_tag_position = self.steppers[0].set_tag_position
# Primary endstop position
mcu_endstop = self.endstops[0][0]
if hasattr(mcu_endstop, "get_position_endstop"):