From 29b174bfb93c1677f2ea8b6ea70fbd198e4ca4f1 Mon Sep 17 00:00:00 2001 From: Moshen Chan Date: Sat, 19 Nov 2016 16:34:41 -0800 Subject: [PATCH] Fix z feedrate value when doing mesh bed leveling. probe feedrate uses XY_PROBE_SPEED --- Marlin/Marlin_main.cpp | 4 +++- Marlin/ultralcd.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index da54ce4d6..0ea3e68ee 100755 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -3515,7 +3515,7 @@ inline void gcode_G28() { inline void _mbl_goto_xy(float x, float y) { float old_feedrate_mm_s = feedrate_mm_s; - feedrate_mm_s = homing_feedrate_mm_s[X_AXIS]; + feedrate_mm_s = homing_feedrate_mm_s[Z_AXIS]; current_position[Z_AXIS] = MESH_HOME_SEARCH_Z #if Z_CLEARANCE_BETWEEN_PROBES > Z_HOMING_HEIGHT @@ -3526,11 +3526,13 @@ inline void gcode_G28() { ; line_to_current_position(); + feedrate_mm_s = MMM_TO_MMS(XY_PROBE_SPEED); current_position[X_AXIS] = LOGICAL_X_POSITION(x); current_position[Y_AXIS] = LOGICAL_Y_POSITION(y); line_to_current_position(); #if Z_CLEARANCE_BETWEEN_PROBES > 0 || Z_HOMING_HEIGHT > 0 + feedrate_mm_s = homing_feedrate_mm_s[Z_AXIS]; current_position[Z_AXIS] = LOGICAL_Z_POSITION(MESH_HOME_SEARCH_Z); line_to_current_position(); #endif diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index 7073b9125..cbab5395f 100755 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -1026,7 +1026,7 @@ void kill_screen(const char* lcd_msg) { line_to_current(Z_AXIS); current_position[X_AXIS] = LOGICAL_X_POSITION(x); current_position[Y_AXIS] = LOGICAL_Y_POSITION(y); - line_to_current(manual_feedrate_mm_m[X_AXIS] <= manual_feedrate_mm_m[Y_AXIS] ? X_AXIS : Y_AXIS); + planner.buffer_line_kinematic(current_position, MMM_TO_MMS(XY_PROBE_SPEED), active_extruder); #if Z_HOMING_HEIGHT > 0 current_position[Z_AXIS] = LOGICAL_Z_POSITION(MESH_HOME_SEARCH_Z); line_to_current(Z_AXIS);