Browse Source

Fix z feedrate value when doing mesh bed leveling. probe feedrate uses XY_PROBE_SPEED

Moshen Chan 8 years ago
parent
commit
29b174bfb9
2 changed files with 4 additions and 2 deletions
  1. 3
    1
      Marlin/Marlin_main.cpp
  2. 1
    1
      Marlin/ultralcd.cpp

+ 3
- 1
Marlin/Marlin_main.cpp View File

3515
 
3515
 
3516
   inline void _mbl_goto_xy(float x, float y) {
3516
   inline void _mbl_goto_xy(float x, float y) {
3517
     float old_feedrate_mm_s = feedrate_mm_s;
3517
     float old_feedrate_mm_s = feedrate_mm_s;
3518
-    feedrate_mm_s = homing_feedrate_mm_s[X_AXIS];
3518
+    feedrate_mm_s = homing_feedrate_mm_s[Z_AXIS];
3519
 
3519
 
3520
     current_position[Z_AXIS] = MESH_HOME_SEARCH_Z
3520
     current_position[Z_AXIS] = MESH_HOME_SEARCH_Z
3521
       #if Z_CLEARANCE_BETWEEN_PROBES > Z_HOMING_HEIGHT
3521
       #if Z_CLEARANCE_BETWEEN_PROBES > Z_HOMING_HEIGHT
3526
     ;
3526
     ;
3527
     line_to_current_position();
3527
     line_to_current_position();
3528
 
3528
 
3529
+    feedrate_mm_s = MMM_TO_MMS(XY_PROBE_SPEED);
3529
     current_position[X_AXIS] = LOGICAL_X_POSITION(x);
3530
     current_position[X_AXIS] = LOGICAL_X_POSITION(x);
3530
     current_position[Y_AXIS] = LOGICAL_Y_POSITION(y);
3531
     current_position[Y_AXIS] = LOGICAL_Y_POSITION(y);
3531
     line_to_current_position();
3532
     line_to_current_position();
3532
 
3533
 
3533
     #if Z_CLEARANCE_BETWEEN_PROBES > 0 || Z_HOMING_HEIGHT > 0
3534
     #if Z_CLEARANCE_BETWEEN_PROBES > 0 || Z_HOMING_HEIGHT > 0
3535
+      feedrate_mm_s = homing_feedrate_mm_s[Z_AXIS];
3534
       current_position[Z_AXIS] = LOGICAL_Z_POSITION(MESH_HOME_SEARCH_Z);
3536
       current_position[Z_AXIS] = LOGICAL_Z_POSITION(MESH_HOME_SEARCH_Z);
3535
       line_to_current_position();
3537
       line_to_current_position();
3536
     #endif
3538
     #endif

+ 1
- 1
Marlin/ultralcd.cpp View File

1026
       line_to_current(Z_AXIS);
1026
       line_to_current(Z_AXIS);
1027
       current_position[X_AXIS] = LOGICAL_X_POSITION(x);
1027
       current_position[X_AXIS] = LOGICAL_X_POSITION(x);
1028
       current_position[Y_AXIS] = LOGICAL_Y_POSITION(y);
1028
       current_position[Y_AXIS] = LOGICAL_Y_POSITION(y);
1029
-      line_to_current(manual_feedrate_mm_m[X_AXIS] <= manual_feedrate_mm_m[Y_AXIS] ? X_AXIS : Y_AXIS);
1029
+      planner.buffer_line_kinematic(current_position, MMM_TO_MMS(XY_PROBE_SPEED), active_extruder);
1030
       #if Z_HOMING_HEIGHT > 0
1030
       #if Z_HOMING_HEIGHT > 0
1031
         current_position[Z_AXIS] = LOGICAL_Z_POSITION(MESH_HOME_SEARCH_Z);
1031
         current_position[Z_AXIS] = LOGICAL_Z_POSITION(MESH_HOME_SEARCH_Z);
1032
         line_to_current(Z_AXIS);
1032
         line_to_current(Z_AXIS);

Loading…
Cancel
Save