Browse Source

🩹 Simplify quick homing feedrate (#23714)

Co-authored-by: Scott Lahteine <github@thinkyhead.com>
espr14 2 years ago
parent
commit
5520aa3a10
No account linked to committer's email address
1 changed files with 4 additions and 5 deletions
  1. 4
    5
      Marlin/src/gcode/calibrate/G28.cpp

+ 4
- 5
Marlin/src/gcode/calibrate/G28.cpp View File

@@ -76,10 +76,9 @@
76 76
 
77 77
     const int x_axis_home_dir = TOOL_X_HOME_DIR(active_extruder);
78 78
 
79
-    const float mlx = max_length(X_AXIS),
80
-                mly = max_length(Y_AXIS),
81
-                mlratio = mlx > mly ? mly / mlx : mlx / mly,
82
-                fr_mm_s = _MIN(homing_feedrate(X_AXIS), homing_feedrate(Y_AXIS)) * SQRT(sq(mlratio) + 1.0);
79
+    // Use a higher diagonal feedrate so axes move at homing speed
80
+    const float minfr = _MIN(homing_feedrate(X_AXIS), homing_feedrate(Y_AXIS)),
81
+                fr_mm_s = HYPOT(minfr, minfr);
83 82
 
84 83
     #if ENABLED(SENSORLESS_HOMING)
85 84
       sensorless_t stealth_states {
@@ -95,7 +94,7 @@
95 94
       };
96 95
     #endif
97 96
 
98
-    do_blocking_move_to_xy(1.5 * mlx * x_axis_home_dir, 1.5 * mly * Y_HOME_DIR, fr_mm_s);
97
+    do_blocking_move_to_xy(1.5 * max_length(X_AXIS) * x_axis_home_dir, 1.5 * max_length(Y_AXIS) * Y_HOME_DIR, fr_mm_s);
99 98
 
100 99
     endstops.validate_homing_move();
101 100
 

Loading…
Cancel
Save