aboutsummaryrefslogtreecommitdiffstats
path: root/klippy/extras
diff options
context:
space:
mode:
authorJeremy Briffaut <jeremy.briffaut@ensi-bourges.fr>2020-03-21 10:54:01 +0100
committerKevin O'Connor <kevin@koconnor.net>2020-03-23 14:43:34 -0400
commit6be552f6e6ac0d06b037a6ed692314ada0453e27 (patch)
treea203f15e11156ea61367014624ee85249547c27b /klippy/extras
parent6b7e917a8e0f266eddcc3c4e65691f17b203ef7e (diff)
downloadkutter-6be552f6e6ac0d06b037a6ed692314ada0453e27.tar.gz
kutter-6be552f6e6ac0d06b037a6ed692314ada0453e27.tar.xz
kutter-6be552f6e6ac0d06b037a6ed692314ada0453e27.zip
Allow manual_stepper to run in parallel than an other stepper
Signed-off-by: Jeremy Briffaut <kakou@kakou.org> Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'klippy/extras')
-rw-r--r--klippy/extras/manual_stepper.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/klippy/extras/manual_stepper.py b/klippy/extras/manual_stepper.py
index 743c6e23..24d83e28 100644
--- a/klippy/extras/manual_stepper.py
+++ b/klippy/extras/manual_stepper.py
@@ -58,7 +58,7 @@ class ManualStepper:
self.sync_print_time()
def do_set_position(self, setpos):
self.rail.set_position([setpos, 0., 0.])
- def do_move(self, movepos, speed, accel):
+ def do_move(self, movepos, speed, accel, sync=True):
self.sync_print_time()
cp = self.rail.get_commanded_position()
dist = movepos - cp
@@ -73,7 +73,8 @@ class ManualStepper:
self.trapq_free_moves(self.trapq, self.next_cmd_time + 99999.9)
toolhead = self.printer.lookup_object('toolhead')
toolhead.note_kinematic_activity(self.next_cmd_time)
- self.sync_print_time()
+ if sync:
+ self.sync_print_time()
def do_homing_move(self, movepos, speed, accel, triggered, check_trigger):
if not self.can_home:
raise self.gcode.error("No endstop for this manual stepper")
@@ -115,6 +116,7 @@ class ManualStepper:
if 'SET_POSITION' in params:
setpos = self.gcode.get_float('SET_POSITION', params)
self.do_set_position(setpos)
+ sync = self.gcode.get_int('SYNC', params, 1)
homing_move = self.gcode.get_int('STOP_ON_ENDSTOP', params, 0)
speed = self.gcode.get_float('SPEED', params, self.velocity, above=0.)
accel = self.gcode.get_float('ACCEL', params, self.accel, minval=0.)
@@ -124,7 +126,9 @@ class ManualStepper:
homing_move > 0, abs(homing_move) == 1)
elif 'MOVE' in params:
movepos = self.gcode.get_float('MOVE', params)
- self.do_move(movepos, speed, accel)
+ self.do_move(movepos, speed, accel, sync)
+ elif 'SYNC' in params and sync:
+ self.sync_print_time()
def load_config_prefix(config):
return ManualStepper(config)