aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/homing.py
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2017-09-13 10:50:52 -0400
committerKevin O'Connor <kevin@koconnor.net>2017-09-19 17:25:42 -0400
commit857eb01bfa4389e6e475bacfe506424f2a158d15 (patch)
tree378c4692a75d6eebcf29273f75cd5aff178f387f /klippy/homing.py
parenta100f174f98dc4294654da6f3145530fa05813c4 (diff)
downloadkutter-857eb01bfa4389e6e475bacfe506424f2a158d15.tar.gz
kutter-857eb01bfa4389e6e475bacfe506424f2a158d15.tar.xz
kutter-857eb01bfa4389e6e475bacfe506424f2a158d15.zip
homing: Move query_endstop() code from kinematic classes to homing.py
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/homing.py')
-rw-r--r--klippy/homing.py25
1 files changed, 18 insertions, 7 deletions
diff --git a/klippy/homing.py b/klippy/homing.py
index c3b9723b..f75a7d06 100644
--- a/klippy/homing.py
+++ b/klippy/homing.py
@@ -36,18 +36,18 @@ class Homing:
print_time = self.toolhead.get_last_move_time()
endstops = []
for s in steppers:
- es = s.enable_endstop_checking(print_time, s.step_dist / speed)
- endstops.append((s, es, s.mcu_stepper.get_mcu_position()))
+ s.mcu_endstop.home_start(print_time, s.step_dist / speed)
+ endstops.append((s, s.mcu_stepper.get_mcu_position()))
self.toolhead.move(self._fill_coord(movepos), speed)
move_end_print_time = self.toolhead.get_last_move_time()
self.toolhead.reset_print_time()
- for s, es, last_pos in endstops:
- es.home_finalize(move_end_print_time)
+ for s, last_pos in endstops:
+ s.mcu_endstop.home_finalize(move_end_print_time)
# Wait for endstops to trigger
- for s, es, last_pos in endstops:
+ for s, last_pos in endstops:
try:
- es.home_wait()
- except es.error as e:
+ s.mcu_endstop.home_wait()
+ except s.mcu_endstop.error as e:
raise EndstopError("Failed to home stepper %s: %s" % (
s.name, str(e)))
post_home_pos = s.mcu_stepper.get_mcu_position()
@@ -57,6 +57,17 @@ class Homing:
def set_homed_position(self, pos):
self.toolhead.set_position(self._fill_coord(pos))
+def query_endstops(print_time, steppers):
+ for s in steppers:
+ s.mcu_endstop.query_endstop(print_time)
+ out = []
+ for s in steppers:
+ try:
+ out.append((s.name, s.mcu_endstop.query_endstop_wait()))
+ except s.mcu_endstop.error as e:
+ raise EndstopError(str(e))
+ return out
+
class EndstopError(Exception):
pass