diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index fea3b9db90..2925f88da4 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -1050,11 +1050,16 @@ static void run_z_probe() { static void do_blocking_move_to(float x, float y, float z) { float oldFeedRate = feedrate; + feedrate = homing_feedrate[Z_AXIS]; + + current_position[Z_AXIS] = z; + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], feedrate/60, active_extruder); + st_synchronize(); + feedrate = XY_TRAVEL_SPEED; current_position[X_AXIS] = x; current_position[Y_AXIS] = y; - current_position[Z_AXIS] = z; plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], feedrate/60, active_extruder); st_synchronize();