stepper: Make sure to reload trapq in set_stepper_kinematics()
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
541665679e
commit
c6b652044d
|
@ -39,7 +39,6 @@ class ForceMove:
|
|||
self.trapq_free_moves = ffi_lib.trapq_free_moves
|
||||
self.stepper_kinematics = ffi_main.gc(
|
||||
ffi_lib.cartesian_stepper_alloc('x'), ffi_lib.free)
|
||||
ffi_lib.itersolve_set_trapq(self.stepper_kinematics, self.trapq)
|
||||
# Register commands
|
||||
gcode = self.printer.lookup_object('gcode')
|
||||
gcode.register_command('STEPPER_BUZZ', self.cmd_STEPPER_BUZZ,
|
||||
|
@ -80,6 +79,7 @@ class ForceMove:
|
|||
toolhead = self.printer.lookup_object('toolhead')
|
||||
toolhead.flush_step_generation()
|
||||
prev_sk = stepper.set_stepper_kinematics(self.stepper_kinematics)
|
||||
prev_trapq = stepper.set_trapq(self.trapq)
|
||||
stepper.set_position((0., 0., 0.))
|
||||
axis_r, accel_t, cruise_t, cruise_v = calc_move_time(dist, speed, accel)
|
||||
print_time = toolhead.get_last_move_time()
|
||||
|
@ -88,6 +88,7 @@ class ForceMove:
|
|||
print_time = print_time + accel_t + cruise_t + accel_t
|
||||
stepper.generate_steps(print_time)
|
||||
self.trapq_free_moves(self.trapq, print_time + 99999.9)
|
||||
stepper.set_trapq(prev_trapq)
|
||||
stepper.set_stepper_kinematics(prev_sk)
|
||||
toolhead.note_kinematic_activity(print_time)
|
||||
toolhead.dwell(accel_t + cruise_t + accel_t)
|
||||
|
|
|
@ -124,8 +124,9 @@ class MCU_stepper:
|
|||
old_sk = self._stepper_kinematics
|
||||
self._stepper_kinematics = sk
|
||||
if sk is not None:
|
||||
self._ffi_lib.itersolve_set_stepcompress(
|
||||
sk, self._stepqueue, self._step_dist)
|
||||
self._ffi_lib.itersolve_set_stepcompress(sk, self._stepqueue,
|
||||
self._step_dist)
|
||||
self.set_trapq(self._trapq)
|
||||
return old_sk
|
||||
def note_homing_end(self, did_trigger=False):
|
||||
ret = self._ffi_lib.stepcompress_reset(self._stepqueue, 0)
|
||||
|
|
Loading…
Reference in New Issue