From 204fd6ec444a2251373ccb18f53030e6c9579877 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Tue, 19 Jul 2016 17:11:57 -0700 Subject: [PATCH] Set homing feedrates individually --- Marlin/Conditionals.h | 4 ++-- Marlin/Configuration.h | 4 +++- Marlin/Marlin_main.cpp | 9 ++++++++- Marlin/SanityCheck.h | 2 ++ Marlin/example_configurations/Cartesio/Configuration.h | 4 +++- Marlin/example_configurations/Felix/Configuration.h | 4 +++- Marlin/example_configurations/Felix/DUAL/Configuration.h | 4 +++- Marlin/example_configurations/Hephestos/Configuration.h | 4 +++- .../example_configurations/Hephestos_2/Configuration.h | 4 +++- Marlin/example_configurations/K8200/Configuration.h | 4 +++- Marlin/example_configurations/K8400/Configuration.h | 4 +++- .../K8400/Dual-head/Configuration.h | 4 +++- .../RepRapWorld/Megatronics/Configuration.h | 4 +++- Marlin/example_configurations/RigidBot/Configuration.h | 4 +++- Marlin/example_configurations/SCARA/Configuration.h | 4 +++- Marlin/example_configurations/TAZ4/Configuration.h | 4 +++- Marlin/example_configurations/WITBOX/Configuration.h | 4 +++- .../adafruit/ST7565/Configuration.h | 4 +++- .../example_configurations/delta/biv2.5/Configuration.h | 6 ++---- .../example_configurations/delta/generic/Configuration.h | 6 ++---- .../delta/kossel_mini/Configuration.h | 6 ++---- .../delta/kossel_pro/Configuration.h | 6 ++---- .../delta/kossel_xl/Configuration.h | 6 ++---- Marlin/example_configurations/makibox/Configuration.h | 4 +++- .../example_configurations/tvrrug/Round2/Configuration.h | 4 +++- 25 files changed, 73 insertions(+), 40 deletions(-) diff --git a/Marlin/Conditionals.h b/Marlin/Conditionals.h index 88bcec511..29d643909 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 ac93cb453..febe8e055 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 d6f3077aa..2f5c5d911 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 bd5f96208..174f3b430 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 2aa864fa3..d77924273 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 00662171c..7a6ab42dc 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 29cc3b051..15a0efb37 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 7b659c0bf..fe4764137 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 9ce056a90..f932c76d7 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 0c4a27162..23458714b 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 2e822c619..a1e901e68 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 1bf429e0f..a62265d70 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 8dab9e945..ffd83bb05 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 1568ed873..222d2d321 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 9123b2016..304a14f42 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 a4db05cb0..6f8e767e4 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 d700848b5..2c06910a2 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 9c690416d..d3f596052 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 d0e8c37a1..03448692a 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 1b81a1e54..c5190cbda 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 b26f2bd54..276397aa2 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 b9b0eff1c..d18501075 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 5739ac3da..db33a6f1c 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 a87caff14..e8ca319bc 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 251fae1f1..7d60a7e9e 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