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..084b6290b4 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -749,14 +749,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// // 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..db188b82e3 100644 --- a/Marlin/example_configurations/Cartesio/Configuration.h +++ b/Marlin/example_configurations/Cartesio/Configuration.h @@ -749,14 +749,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (10*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {3000, 3000, 600, 20} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/Felix/Configuration.h b/Marlin/example_configurations/Felix/Configuration.h index 00662171c8..d486589a14 100644 --- a/Marlin/example_configurations/Felix/Configuration.h +++ b/Marlin/example_configurations/Felix/Configuration.h @@ -731,14 +731,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/Felix/DUAL/Configuration.h b/Marlin/example_configurations/Felix/DUAL/Configuration.h index 29cc3b051a..b751dee809 100644 --- a/Marlin/example_configurations/Felix/DUAL/Configuration.h +++ b/Marlin/example_configurations/Felix/DUAL/Configuration.h @@ -729,14 +729,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/Hephestos/Configuration.h b/Marlin/example_configurations/Hephestos/Configuration.h index 7b659c0bfa..96a4287cca 100644 --- a/Marlin/example_configurations/Hephestos/Configuration.h +++ b/Marlin/example_configurations/Hephestos/Configuration.h @@ -741,14 +741,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY 2000 +#define HOMING_FEEDRATE_Z 150 +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {2000, 2000, 150, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/Hephestos_2/Configuration.h b/Marlin/example_configurations/Hephestos_2/Configuration.h index 9ce056a900..9027007c86 100644 --- a/Marlin/example_configurations/Hephestos_2/Configuration.h +++ b/Marlin/example_configurations/Hephestos_2/Configuration.h @@ -743,14 +743,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (150*60) +#define HOMING_FEEDRATE_Z 200 +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {150*60, 150*60, 3.3*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/K8200/Configuration.h b/Marlin/example_configurations/K8200/Configuration.h index 0c4a27162e..f0b30f8614 100644 --- a/Marlin/example_configurations/K8200/Configuration.h +++ b/Marlin/example_configurations/K8200/Configuration.h @@ -766,14 +766,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/K8400/Configuration.h b/Marlin/example_configurations/K8400/Configuration.h index 2e822c619e..c9c649a66d 100644 --- a/Marlin/example_configurations/K8400/Configuration.h +++ b/Marlin/example_configurations/K8400/Configuration.h @@ -749,14 +749,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (8*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 8*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/K8400/Dual-head/Configuration.h b/Marlin/example_configurations/K8400/Dual-head/Configuration.h index 1bf429e0fb..4212cddc81 100644 --- a/Marlin/example_configurations/K8400/Dual-head/Configuration.h +++ b/Marlin/example_configurations/K8400/Dual-head/Configuration.h @@ -749,14 +749,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (8*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 8*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h index 8dab9e9452..38c1d546c9 100644 --- a/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h +++ b/Marlin/example_configurations/RepRapWorld/Megatronics/Configuration.h @@ -749,14 +749,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/RigidBot/Configuration.h b/Marlin/example_configurations/RigidBot/Configuration.h index 1568ed8738..540b3f6963 100644 --- a/Marlin/example_configurations/RigidBot/Configuration.h +++ b/Marlin/example_configurations/RigidBot/Configuration.h @@ -746,14 +746,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (15*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 15*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/SCARA/Configuration.h b/Marlin/example_configurations/SCARA/Configuration.h index 9123b2016a..3d534f72e9 100644 --- a/Marlin/example_configurations/SCARA/Configuration.h +++ b/Marlin/example_configurations/SCARA/Configuration.h @@ -757,14 +757,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (40*60) +#define HOMING_FEEDRATE_Z (10*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {40*60, 40*60, 10*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/TAZ4/Configuration.h b/Marlin/example_configurations/TAZ4/Configuration.h index a4db05cb08..9e56cdd3cd 100644 --- a/Marlin/example_configurations/TAZ4/Configuration.h +++ b/Marlin/example_configurations/TAZ4/Configuration.h @@ -770,14 +770,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (8*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 8*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/WITBOX/Configuration.h b/Marlin/example_configurations/WITBOX/Configuration.h index d700848b55..650a21c01d 100644 --- a/Marlin/example_configurations/WITBOX/Configuration.h +++ b/Marlin/example_configurations/WITBOX/Configuration.h @@ -741,14 +741,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (120*60) +#define HOMING_FEEDRATE_Z 432 +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {120*60, 120*60, 7.2*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/adafruit/ST7565/Configuration.h b/Marlin/example_configurations/adafruit/ST7565/Configuration.h index 9c690416d5..179cbb999d 100644 --- a/Marlin/example_configurations/adafruit/ST7565/Configuration.h +++ b/Marlin/example_configurations/adafruit/ST7565/Configuration.h @@ -749,14 +749,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// // default settings diff --git a/Marlin/example_configurations/delta/biv2.5/Configuration.h b/Marlin/example_configurations/delta/biv2.5/Configuration.h index d0e8c37a1d..ff70e8ce9f 100644 --- a/Marlin/example_configurations/delta/biv2.5/Configuration.h +++ b/Marlin/example_configurations/delta/biv2.5/Configuration.h @@ -842,16 +842,13 @@ #endif +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*30) + +// +// MOVEMENT SETTINGS // @section motion - -/** - * 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 } +// // 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..a623e984c5 100644 --- a/Marlin/example_configurations/delta/generic/Configuration.h +++ b/Marlin/example_configurations/delta/generic/Configuration.h @@ -836,16 +836,13 @@ #endif +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*60) + +// +// MOVEMENT SETTINGS // @section motion - -/** - * 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 } +// // 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..3f35411f4b 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration.h @@ -839,16 +839,13 @@ #endif +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*60) + +// +// MOVEMENT SETTINGS // @section motion - -/** - * 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 } +// // 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..7dc1412270 100644 --- a/Marlin/example_configurations/delta/kossel_pro/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_pro/Configuration.h @@ -833,16 +833,13 @@ #endif +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (200*60) + +// +// MOVEMENT SETTINGS // @section motion - -/** - * 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 } +// #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..9392105919 100644 --- a/Marlin/example_configurations/delta/kossel_xl/Configuration.h +++ b/Marlin/example_configurations/delta/kossel_xl/Configuration.h @@ -833,17 +833,13 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Delta only homes to Z +#define HOMING_FEEDRATE_Z (60*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * 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 } +// // variables to calculate steps #define XYZ_FULL_STEPS_PER_ROTATION 200 @@ -854,6 +850,8 @@ // delta speeds must be the same on xyz #define XYZ_STEPS (XYZ_FULL_STEPS_PER_ROTATION * XYZ_MICROSTEPS / double(XYZ_BELT_PITCH) / double(XYZ_PULLEY_TEETH)) +// default settings + #define DEFAULT_AXIS_STEPS_PER_UNIT {XYZ_STEPS, XYZ_STEPS, XYZ_STEPS, 158} // default steps per unit for PowerWasp #define DEFAULT_MAX_FEEDRATE {200, 200, 200, 25} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,9000,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. diff --git a/Marlin/example_configurations/makibox/Configuration.h b/Marlin/example_configurations/makibox/Configuration.h index a87caff14a..d26549afb2 100644 --- a/Marlin/example_configurations/makibox/Configuration.h +++ b/Marlin/example_configurations/makibox/Configuration.h @@ -752,14 +752,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY 1500 +#define HOMING_FEEDRATE_Z (2*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {1500, 1500, 120, 0} // set the homing speeds (mm/min) ***** MakiBox A6 ***** +// // default settings diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration.h b/Marlin/example_configurations/tvrrug/Round2/Configuration.h index 251fae1f1b..9d3f10201d 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration.h @@ -739,14 +739,14 @@ #define Z_SAFE_HOMING_Y_POINT ((Y_MIN_POS + Y_MAX_POS) / 2) // Y point for Z homing when homing all axis (G28). #endif +// Homing speeds (mm/m) +#define HOMING_FEEDRATE_XY (50*60) +#define HOMING_FEEDRATE_Z (4*60) +// +// MOVEMENT SETTINGS // @section motion - -/** - * MOVEMENT SETTINGS - */ - -#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) +// // default settings