diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 9635d3b70..49840449c 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/SanityCheck.h b/Marlin/SanityCheck.h index 5cc5c4cf3..205062845 100644 --- a/Marlin/SanityCheck.h +++ b/Marlin/SanityCheck.h @@ -278,7 +278,9 @@ #elif defined(JUNCTION_DEVIATION_FACTOR) #error "JUNCTION_DEVIATION_FACTOR is now JUNCTION_DEVIATION_MM. Please update your configuration." #elif defined(JUNCTION_ACCELERATION_FACTOR) - #error "JUNCTION_ACCELERATION_FACTOR is now JUNCTION_ACCELERATION. Please update your configuration." + #error "JUNCTION_ACCELERATION_FACTOR is obsolete. Delete it from Configuration_adv.h." +#elif defined(JUNCTION_ACCELERATION) + #error "JUNCTION_ACCELERATION is obsolete. Delete it from Configuration_adv.h." #endif #define BOARD_MKS_13 -47 diff --git a/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h b/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h index ee11a4e4d..f733ad611 100644 --- a/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h +++ b/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Anet/A6/Configuration_adv.h b/Marlin/example_configurations/Anet/A6/Configuration_adv.h index aad8c60c7..90c09f852 100644 --- a/Marlin/example_configurations/Anet/A6/Configuration_adv.h +++ b/Marlin/example_configurations/Anet/A6/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Anet/A8/Configuration_adv.h b/Marlin/example_configurations/Anet/A8/Configuration_adv.h index 332fa49e5..98a863868 100644 --- a/Marlin/example_configurations/Anet/A8/Configuration_adv.h +++ b/Marlin/example_configurations/Anet/A8/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h b/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h index f80e67157..22ed12b68 100644 --- a/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h +++ b/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h b/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h index 9635d3b70..49840449c 100644 --- a/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h +++ b/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h b/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h index 5636fd81e..a12ecbb18 100644 --- a/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h b/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h index e797f9f04..afa414bdd 100644 --- a/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h b/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h index 5636fd81e..a12ecbb18 100644 --- a/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Cartesio/Configuration_adv.h b/Marlin/example_configurations/Cartesio/Configuration_adv.h index 91f20ad8b..34195edd7 100644 --- a/Marlin/example_configurations/Cartesio/Configuration_adv.h +++ b/Marlin/example_configurations/Cartesio/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h index 09c64f7e9..838e7975f 100755 --- a/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h index b1f6ae97b..1008df389 100644 --- a/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h index d1b76c08a..ae640cb79 100644 --- a/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h index 3d09e04de..5dfa8e727 100644 --- a/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h b/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h index 7a14ec5f1..8fe74023d 100644 --- a/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h b/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h index 4724c7b1a..8502ac591 100644 --- a/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h b/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h index 3d09e04de..5dfa8e727 100644 --- a/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Felix/Configuration_adv.h b/Marlin/example_configurations/Felix/Configuration_adv.h index e7dcfac10..40a468656 100644 --- a/Marlin/example_configurations/Felix/Configuration_adv.h +++ b/Marlin/example_configurations/Felix/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h b/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h index 5c6a47c64..801bc2c59 100644 --- a/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h +++ b/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Geeetech/Prusa i3 Pro C/Configuration_adv.h b/Marlin/example_configurations/Geeetech/Prusa i3 Pro C/Configuration_adv.h index 497afb6c1..5b81ff4d6 100644 --- a/Marlin/example_configurations/Geeetech/Prusa i3 Pro C/Configuration_adv.h +++ b/Marlin/example_configurations/Geeetech/Prusa i3 Pro C/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Geeetech/Prusa i3 Pro W/Configuration_adv.h b/Marlin/example_configurations/Geeetech/Prusa i3 Pro W/Configuration_adv.h index 497afb6c1..5b81ff4d6 100644 --- a/Marlin/example_configurations/Geeetech/Prusa i3 Pro W/Configuration_adv.h +++ b/Marlin/example_configurations/Geeetech/Prusa i3 Pro W/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h b/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h index 04eb05c24..87eb4dfb1 100644 --- a/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h +++ b/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h b/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h index aa764e7fb..990e9df7c 100644 --- a/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h +++ b/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Malyan/M150/Configuration_adv.h b/Marlin/example_configurations/Malyan/M150/Configuration_adv.h index b7189ab6b..3e38fdb5e 100644 --- a/Marlin/example_configurations/Malyan/M150/Configuration_adv.h +++ b/Marlin/example_configurations/Malyan/M150/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h b/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h index 1c0cf5d82..1c106246a 100644 --- a/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h +++ b/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/RigidBot/Configuration_adv.h b/Marlin/example_configurations/RigidBot/Configuration_adv.h index ce2402af9..856787fa9 100644 --- a/Marlin/example_configurations/RigidBot/Configuration_adv.h +++ b/Marlin/example_configurations/RigidBot/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/SCARA/Configuration_adv.h b/Marlin/example_configurations/SCARA/Configuration_adv.h index acdc2c38b..54bf00553 100644 --- a/Marlin/example_configurations/SCARA/Configuration_adv.h +++ b/Marlin/example_configurations/SCARA/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Sanguinololu/Configuration_adv.h b/Marlin/example_configurations/Sanguinololu/Configuration_adv.h index 96e1f9f87..663507dc2 100644 --- a/Marlin/example_configurations/Sanguinololu/Configuration_adv.h +++ b/Marlin/example_configurations/Sanguinololu/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/TinyBoy2/Configuration_adv.h b/Marlin/example_configurations/TinyBoy2/Configuration_adv.h index 1398863be..c60965367 100644 --- a/Marlin/example_configurations/TinyBoy2/Configuration_adv.h +++ b/Marlin/example_configurations/TinyBoy2/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h b/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h index 482031915..770c0be15 100644 --- a/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h +++ b/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h @@ -450,7 +450,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h b/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h index 590beaaf3..a5a89bdee 100644 --- a/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h +++ b/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h b/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h index 5ddcaf352..111631fa0 100644 --- a/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h +++ b/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h b/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h index dff736ec5..a533b3ca5 100644 --- a/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h @@ -449,7 +449,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h b/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h index 50ddcde4d..5edbc1718 100644 --- a/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h @@ -449,7 +449,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h b/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h index cf883ec4f..ce4506c5b 100644 --- a/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h @@ -449,7 +449,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/delta/generic/Configuration_adv.h b/Marlin/example_configurations/delta/generic/Configuration_adv.h index cf883ec4f..ce4506c5b 100644 --- a/Marlin/example_configurations/delta/generic/Configuration_adv.h +++ b/Marlin/example_configurations/delta/generic/Configuration_adv.h @@ -449,7 +449,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h index cf883ec4f..ce4506c5b 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h @@ -449,7 +449,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h index 77efd8cce..c92897171 100644 --- a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h @@ -454,7 +454,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h index 60c17a5f9..9d1fd2242 100644 --- a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h @@ -449,7 +449,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h index 4c937138e..0113948a6 100644 --- a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h +++ b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/makibox/Configuration_adv.h b/Marlin/example_configurations/makibox/Configuration_adv.h index 0b9fe14c6..a1ed67da7 100644 --- a/Marlin/example_configurations/makibox/Configuration_adv.h +++ b/Marlin/example_configurations/makibox/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h index abcc34f66..547786fae 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/example_configurations/wt150/Configuration_adv.h b/Marlin/example_configurations/wt150/Configuration_adv.h index 48c1f33eb..76d7e0658 100644 --- a/Marlin/example_configurations/wt150/Configuration_adv.h +++ b/Marlin/example_configurations/wt150/Configuration_adv.h @@ -447,7 +447,6 @@ //#define JUNCTION_DEVIATION #if ENABLED(JUNCTION_DEVIATION) #define JUNCTION_DEVIATION_MM 0.02 // (mm) Distance from real junction edge - #define JUNCTION_ACCELERATION 1000 // (mm/s²) Maximum centripetal acceleration //#define JUNCTION_DEVIATION_INCLUDE_E #endif diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index 94d8bbe38..4ae9d16d4 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -2148,11 +2148,22 @@ bool Planner::_populate_block(block_t * const block, bool split_move, } else { NOLESS(junction_cos_theta, -0.999999); // Check for numerical round-off to avoid divide by zero. - const float sin_theta_d2 = SQRT(0.5 * (1.0 - junction_cos_theta)); // Trig half angle identity. Always positive. - // TODO: Technically, the acceleration used in calculation needs to be limited by the minimum of the - // two junctions. However, this shouldn't be a significant problem except in extreme circumstances. - vmax_junction_sqr = (JUNCTION_ACCELERATION * JUNCTION_DEVIATION_MM * sin_theta_d2) / (1.0 - sin_theta_d2); + float junction_unit_vec[JD_AXES] = { + unit_vec[X_AXIS] - previous_unit_vec[X_AXIS], + unit_vec[Y_AXIS] - previous_unit_vec[Y_AXIS], + unit_vec[Z_AXIS] - previous_unit_vec[Z_AXIS] + #if ENABLED(JUNCTION_DEVIATION_INCLUDE_E) + , unit_vec[E_AXIS] - previous_unit_vec[E_AXIS] + #endif + }; + // Convert delta vector to unit vector + normalize_junction_vector(junction_unit_vec); + + const float junction_acceleration = limit_value_by_axis_maximum(block->acceleration, junction_unit_vec), + sin_theta_d2 = SQRT(0.5 * (1.0 - junction_cos_theta)); // Trig half angle identity. Always positive. + + vmax_junction_sqr = (junction_acceleration * JUNCTION_DEVIATION_MM * sin_theta_d2) / (1.0 - sin_theta_d2); if (block->millimeters < 1.0) { // Fast acos approximation, minus the error bar to be safe @@ -2160,7 +2171,7 @@ bool Planner::_populate_block(block_t * const block, bool split_move, // If angle is greater than 135 degrees (octagon), find speed for approximate arc if (junction_theta > RADIANS(135)) { - const float limit_sqr = block->millimeters / (RADIANS(180) - junction_theta) * JUNCTION_ACCELERATION; + const float limit_sqr = block->millimeters / (RADIANS(180) - junction_theta) * junction_acceleration; NOMORE(vmax_junction_sqr, limit_sqr); } } diff --git a/Marlin/planner.h b/Marlin/planner.h index 894e83a11..0fea595d3 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -788,6 +788,30 @@ class Planner { static void recalculate_trapezoids(); static void recalculate(); + + #if ENABLED(JUNCTION_DEVIATION) + + #if ENABLED(JUNCTION_DEVIATION_INCLUDE_E) + #define JD_AXES XYZE + #else + #define JD_AXES XYZ + #endif + + FORCE_INLINE static void normalize_junction_vector(float (&vector)[JD_AXES]) { + float magnitude_sq = 0.0; + for (uint8_t idx = 0; idx < JD_AXES; idx++) if (vector[idx]) magnitude_sq += sq(vector[idx]); + const float inv_magnitude = 1.0 / SQRT(magnitude_sq); + for (uint8_t idx = 0; idx < JD_AXES; idx++) vector[idx] *= inv_magnitude; + } + + FORCE_INLINE static float limit_value_by_axis_maximum(const float &max_value, float (&unit_vec)[JD_AXES]) { + float limit_value = max_value; + for (uint8_t idx = 0; idx < JD_AXES; idx++) if (unit_vec[idx]) // Avoid divide by zero + NOMORE(limit_value, ABS(max_acceleration_mm_per_s2[idx] / unit_vec[idx])); + return limit_value; + } + + #endif // JUNCTION_DEVIATION }; #define PLANNER_XY_FEEDRATE() (MIN(planner.max_feedrate_mm_s[X_AXIS], planner.max_feedrate_mm_s[Y_AXIS]))