|
|
@ -2192,10 +2192,20 @@ static void do_homing_move(const AxisEnum axis, float distance, float fr_mm_s=0.
|
|
|
|
if (deploy_bltouch) set_bltouch_deployed(true);
|
|
|
|
if (deploy_bltouch) set_bltouch_deployed(true);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Tell the planner we're at Z=0
|
|
|
|
current_position[axis] = 0;
|
|
|
|
current_position[axis] = 0;
|
|
|
|
sync_plan_position();
|
|
|
|
|
|
|
|
current_position[axis] = distance;
|
|
|
|
#if IS_SCARA
|
|
|
|
planner.buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], fr_mm_s ? fr_mm_s : homing_feedrate_mm_s[axis], active_extruder);
|
|
|
|
SYNC_PLAN_POSITION_KINEMATIC();
|
|
|
|
|
|
|
|
current_position[axis] = distance;
|
|
|
|
|
|
|
|
inverse_kinematics(current_position);
|
|
|
|
|
|
|
|
planner.buffer_line(delta[A_AXIS], delta[B_AXIS], delta[C_AXIS], current_position[E_AXIS], fr_mm_s ? fr_mm_s : homing_feedrate_mm_s[axis], active_extruder);
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
sync_plan_position();
|
|
|
|
|
|
|
|
current_position[axis] = distance;
|
|
|
|
|
|
|
|
planner.buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], fr_mm_s ? fr_mm_s : homing_feedrate_mm_s[axis], active_extruder);
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
stepper.synchronize();
|
|
|
|
stepper.synchronize();
|
|
|
|
|
|
|
|
|
|
|
|
#if HOMING_Z_WITH_PROBE && ENABLED(BLTOUCH)
|
|
|
|
#if HOMING_Z_WITH_PROBE && ENABLED(BLTOUCH)
|
|
|
|