diff --git a/Marlin/Conditionals.h b/Marlin/Conditionals.h index 88bcec5116..29d643909b 100644 --- a/Marlin/Conditionals.h +++ b/Marlin/Conditionals.h @@ -829,8 +829,8 @@ #define Z_PROBE_OFFSET_RANGE_MAX 20 #endif #ifndef XY_PROBE_SPEED - #ifdef HOMING_FEEDRATE_XYZ - #define XY_PROBE_SPEED HOMING_FEEDRATE_XYZ + #ifdef HOMING_FEEDRATE_XY + #define XY_PROBE_SPEED HOMING_FEEDRATE_XY #else #define XY_PROBE_SPEED 4000 #endif diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index ac93cb453d..febe8e0557 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -756,7 +756,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) // default settings diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index d6f3077aa5..2f5c5d9114 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -306,7 +306,14 @@ static uint8_t cmd_queue_index_r = 0, * Feed rates are often configured with mm/m * but the planner and stepper like mm/s units. */ -const float homing_feedrate_mm_m[] = HOMING_FEEDRATE; +const float homing_feedrate_mm_m[] = { + #if ENABLED(DELTA) + HOMING_FEEDRATE_Z, HOMING_FEEDRATE_Z, + #else + HOMING_FEEDRATE_XY, HOMING_FEEDRATE_XY, + #endif + HOMING_FEEDRATE_Z, 0 +}; static float feedrate_mm_m = 1500.0, saved_feedrate_mm_m; int feedrate_percentage = 100, saved_feedrate_percentage; diff --git a/Marlin/SanityCheck.h b/Marlin/SanityCheck.h index bd5f962089..174f3b4304 100644 --- a/Marlin/SanityCheck.h +++ b/Marlin/SanityCheck.h @@ -682,6 +682,8 @@ #error "ABS_PREHEAT_FAN_SPEED is now PREHEAT_2_FAN_SPEED. Please update your configuration." #elif defined(ENDSTOPS_ONLY_FOR_HOMING) #error "ENDSTOPS_ONLY_FOR_HOMING is deprecated. Use (disable) ENDSTOPS_ALWAYS_ON_DEFAULT instead." +#elif defined(HOMING_FEEDRATE) + #error "HOMING_FEEDRATE is deprecated. Set individual rates with HOMING_FEEDRATE_(XY|Z|E) instead." #endif #endif //SANITYCHECK_H diff --git a/Marlin/example_configurations/Cartesio/Configuration.h b/Marlin/example_configurations/Cartesio/Configuration.h index 2aa864fa3b..d77924273b 100644 --- a/Marlin/example_configurations/Cartesio/Configuration.h +++ b/Marlin/example_configurations/Cartesio/Configuration.h @@ -756,7 +756,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {3000, 3000, 600, 20} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (10*60) // default settings diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h index 00662171c8..7a6ab42dc6 100644 --- a/Marlin/example_configurations/Felix/Configuration.h +++ b/Marlin/example_configurations/Felix/Configuration.h @@ -738,7 +738,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) // default settings diff --git a/Marlin/example_configurations/Felix/DUAL/Configuration.h b/Marlin/example_configurations/Felix/DUAL/Configuration.h index 29cc3b051a..15a0efb371 100644 --- a/Marlin/example_configurations/Felix/DUAL/Configuration.h +++ b/Marlin/example_configurations/Felix/DUAL/Configuration.h @@ -736,7 +736,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) // default settings diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h index 7b659c0bfa..fe47641379 100644 --- a/Marlin/example_configurations/Hephestos/Configuration.h +++ b/Marlin/example_configurations/Hephestos/Configuration.h @@ -748,7 +748,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {2000, 2000, 150, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY 2000 +#define HOMING_FEEDRATE_Z 150 // default settings diff --git a/Marlin/example_configurations/Hephestos_2/Configuration.h b/Marlin/example_configurations/Hephestos_2/Configuration.h index 9ce056a900..f932c76d79 100644 --- a/Marlin/example_configurations/Hephestos_2/Configuration.h +++ b/Marlin/example_configurations/Hephestos_2/Configuration.h @@ -750,7 +750,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {150*60, 150*60, 3.3*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (150*60) +#define HOMING_FEEDRATE_Z 200 // default settings diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h index 0c4a27162e..23458714bb 100644 --- a/Marlin/example_configurations/K8200/Configuration.h +++ b/Marlin/example_configurations/K8200/Configuration.h @@ -773,7 +773,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) // default settings diff --git a/Marlin/example_configurations/K8400/Configuration.h b/Marlin/example_configurations/K8400/Configuration.h index 2e822c619e..a1e901e683 100644 --- a/Marlin/example_configurations/K8400/Configuration.h +++ b/Marlin/example_configurations/K8400/Configuration.h @@ -756,7 +756,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 8*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (8*60) // default settings diff --git a/Marlin/example_configurations/K8400/Dual-head/Configuration.h b/Marlin/example_configurations/K8400/Dual-head/Configuration.h index 1bf429e0fb..a62265d70a 100644 --- a/Marlin/example_configurations/K8400/Dual-head/Configuration.h +++ b/Marlin/example_configurations/K8400/Dual-head/Configuration.h @@ -756,7 +756,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 8*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (8*60) // default settings diff --git a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h index 8dab9e9452..ffd83bb05c 100644 --- a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h +++ b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h @@ -756,7 +756,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) // default settings diff --git a/Marlin/example_configurations/RigidBot/Configuration.h b/Marlin/example_configurations/RigidBot/Configuration.h index 1568ed8738..222d2d3212 100644 --- a/Marlin/example_configurations/RigidBot/Configuration.h +++ b/Marlin/example_configurations/RigidBot/Configuration.h @@ -753,7 +753,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 15*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (15*60) // default settings diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h index 9123b2016a..304a14f420 100644 --- a/Marlin/example_configurations/SCARA/Configuration.h +++ b/Marlin/example_configurations/SCARA/Configuration.h @@ -764,7 +764,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {40*60, 40*60, 10*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (40*60) +#define HOMING_FEEDRATE_Z (10*60) // default settings diff --git a/Marlin/example_configurations/TAZ4/Configuration.h b/Marlin/example_configurations/TAZ4/Configuration.h index a4db05cb08..6f8e767e41 100644 --- a/Marlin/example_configurations/TAZ4/Configuration.h +++ b/Marlin/example_configurations/TAZ4/Configuration.h @@ -777,7 +777,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 8*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (8*60) // default settings diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h index d700848b55..2c06910a21 100644 --- a/Marlin/example_configurations/WITBOX/Configuration.h +++ b/Marlin/example_configurations/WITBOX/Configuration.h @@ -748,7 +748,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {120*60, 120*60, 7.2*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (120*60) +#define HOMING_FEEDRATE_Z 432 // default settings diff --git a/Marlin/example_configurations/adafruit/ST7565/Configuration.h b/Marlin/example_configurations/adafruit/ST7565/Configuration.h index 9c690416d5..d3f596052d 100644 --- a/Marlin/example_configurations/adafruit/ST7565/Configuration.h +++ b/Marlin/example_configurations/adafruit/ST7565/Configuration.h @@ -756,7 +756,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) // default settings diff --git a/Marlin/example_configurations/delta/biv2.5/Configuration.h b/Marlin/example_configurations/delta/biv2.5/Configuration.h index d0e8c37a1d..03448692aa 100644 --- a/Marlin/example_configurations/delta/biv2.5/Configuration.h +++ b/Marlin/example_configurations/delta/biv2.5/Configuration.h @@ -848,10 +848,8 @@ * MOVEMENT SETTINGS */ -// delta homing speeds must be the same on xyz -#define HOMING_FEEDRATE_XYZ (200*30) -#define HOMING_FEEDRATE_E 0 -#define HOMING_FEEDRATE { HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_E } +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*30) // default settings // delta speeds must be the same on xyz diff --git a/Marlin/example_configurations/delta/generic/Configuration.h b/Marlin/example_configurations/delta/generic/Configuration.h index 1b81a1e540..c5190cbdac 100644 --- a/Marlin/example_configurations/delta/generic/Configuration.h +++ b/Marlin/example_configurations/delta/generic/Configuration.h @@ -842,10 +842,8 @@ * MOVEMENT SETTINGS */ -// delta homing speeds must be the same on xyz -#define HOMING_FEEDRATE_XYZ (200*60) -#define HOMING_FEEDRATE_E 0 -#define HOMING_FEEDRATE { HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_E } +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*60) // default settings // delta speeds must be the same on xyz diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration.h b/Marlin/example_configurations/delta/kossel_mini/Configuration.h index b26f2bd54c..276397aa26 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h @@ -845,10 +845,8 @@ * MOVEMENT SETTINGS */ -// delta homing speeds must be the same on xyz -#define HOMING_FEEDRATE_XYZ (200*60) -#define HOMING_FEEDRATE_E 0 -#define HOMING_FEEDRATE { HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_E } +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*60) // default settings // delta speeds must be the same on xyz diff --git a/Marlin/example_configurations/delta/kossel_pro/Configuration.h b/Marlin/example_configurations/delta/kossel_pro/Configuration.h index b9b0eff1c3..d18501075f 100644 --- a/Marlin/example_configurations/delta/kossel_pro/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_pro/Configuration.h @@ -839,10 +839,8 @@ * MOVEMENT SETTINGS */ -// delta homing speeds must be the same on xyz -#define HOMING_FEEDRATE_XYZ (200*60) -#define HOMING_FEEDRATE_E 0 -#define HOMING_FEEDRATE { HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_E } +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*60) #define XYZ_FULL_STEPS_PER_ROTATION 200 #define XYZ_MICROSTEPS 32 diff --git a/Marlin/example_configurations/delta/kossel_xl/Configuration.h b/Marlin/example_configurations/delta/kossel_xl/Configuration.h index 5739ac3da8..db33a6f1c9 100644 --- a/Marlin/example_configurations/delta/kossel_xl/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_xl/Configuration.h @@ -840,10 +840,8 @@ * MOVEMENT SETTINGS */ -// delta homing speeds must be the same on xyz -#define HOMING_FEEDRATE_XYZ (60*60) -#define HOMING_FEEDRATE_E 0 -#define HOMING_FEEDRATE { HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_XYZ, HOMING_FEEDRATE_E } +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (60*60) // variables to calculate steps #define XYZ_FULL_STEPS_PER_ROTATION 200 diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h index a87caff14a..e8ca319bc4 100644 --- a/Marlin/example_configurations/makibox/Configuration.h +++ b/Marlin/example_configurations/makibox/Configuration.h @@ -759,7 +759,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {1500, 1500, 120, 0} // set the homing speeds (mm/min) ***** MakiBox A6 ***** +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY 1500 +#define HOMING_FEEDRATE_Z (2*60) // default settings diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h index 251fae1f1b..7d60a7e9ed 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h @@ -746,7 +746,9 @@ * MOVEMENT SETTINGS */ -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) // default settings