From 6e49901104d4a173f80420fd574661198f8aaa66 Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sun, 10 Jun 2018 15:32:46 -0500 Subject: [PATCH] Adaptive and max stepping followup --- Marlin/Conditionals_post.h | 23 ++++++++++--------- Marlin/Configuration_adv.h | 4 +++- .../AlephObjects/TAZ4/Configuration_adv.h | 4 +++- .../Anet/A6/Configuration_adv.h | 4 +++- .../Anet/A8/Configuration_adv.h | 4 +++- .../BIBO/TouchX/Cyclops/Configuration_adv.h | 4 +++- .../BIBO/TouchX/default/Configuration_adv.h | 4 +++- .../BQ/Hephestos/Configuration_adv.h | 4 +++- .../BQ/Hephestos_2/Configuration_adv.h | 4 +++- .../BQ/WITBOX/Configuration_adv.h | 4 +++- .../Cartesio/Configuration_adv.h | 4 +++- .../Creality/CR-10/Configuration_adv.h | 4 +++- .../Creality/CR-10S/Configuration_adv.h | 4 +++- .../Creality/CR-10mini/Configuration_adv.h | 4 +++- .../Creality/CR-8/Configuration_adv.h | 4 +++- .../Creality/Ender-2/Configuration_adv.h | 4 +++- .../Creality/Ender-3/Configuration_adv.h | 4 +++- .../Creality/Ender-4/Configuration_adv.h | 4 +++- .../Felix/Configuration_adv.h | 4 +++- .../FolgerTech/i3-2020/Configuration_adv.h | 4 +++- .../Prusa i3 Pro C/Configuration_adv.h | 4 +++- .../Prusa i3 Pro W/Configuration_adv.h | 4 +++- .../Infitary/i3-M508/Configuration_adv.h | 4 +++- .../JGAurora/A5/Configuration_adv.h | 4 +++- .../Malyan/M150/Configuration_adv.h | 4 +++- .../Micromake/C1/enhanced/Configuration_adv.h | 4 +++- .../RigidBot/Configuration_adv.h | 4 +++- .../SCARA/Configuration_adv.h | 4 +++- .../Sanguinololu/Configuration_adv.h | 4 +++- .../TinyBoy2/Configuration_adv.h | 4 +++- .../Velleman/K8200/Configuration_adv.h | 4 +++- .../Velleman/K8400/Configuration_adv.h | 4 +++- .../Wanhao/Duplicator 6/Configuration_adv.h | 4 +++- .../FLSUN/auto_calibrate/Configuration_adv.h | 4 +++- .../delta/FLSUN/kossel/Configuration_adv.h | 4 +++- .../FLSUN/kossel_mini/Configuration_adv.h | 4 +++- .../delta/generic/Configuration_adv.h | 4 +++- .../delta/kossel_mini/Configuration_adv.h | 4 +++- .../delta/kossel_pro/Configuration_adv.h | 4 +++- .../delta/kossel_xl/Configuration_adv.h | 4 +++- .../gCreate/gMax1.5+/Configuration_adv.h | 4 +++- .../makibox/Configuration_adv.h | 4 +++- .../tvrrug/Round2/Configuration_adv.h | 4 +++- .../wt150/Configuration_adv.h | 4 +++- Marlin/stepper.cpp | 18 ++++++++++----- 45 files changed, 153 insertions(+), 60 deletions(-) diff --git a/Marlin/Conditionals_post.h b/Marlin/Conditionals_post.h index 25cecf4f5..5b6ac3df5 100644 --- a/Marlin/Conditionals_post.h +++ b/Marlin/Conditionals_post.h @@ -1238,9 +1238,6 @@ #define MANUAL_PROBE_HEIGHT Z_HOMING_HEIGHT #endif -// Stepper pulse duration, in cycles -#define STEP_PULSE_CYCLES ((MINIMUM_STEPPER_PULSE) * CYCLES_PER_MICROSECOND) - // Updated G92 behavior shifts the workspace #define HAS_POSITION_SHIFT DISABLED(NO_WORKSPACE_OFFSETS) // The home offset also shifts the coordinate space @@ -1313,12 +1310,11 @@ // Calculate a default maximum stepper rate, if not supplied #ifndef MAXIMUM_STEPPER_RATE - #define MAXIMUM_STEPPER_RATE (1000000UL / (2UL * (MINIMUM_STEPPER_PULSE))) -#endif - -// Calculate a default maximum stepper rate, if not supplied -#ifndef MAXIMUM_STEPPER_RATE - #define MAXIMUM_STEPPER_RATE (1000000UL / (2UL * (MINIMUM_STEPPER_PULSE))) + #if MINIMUM_STEPPER_PULSE + #define MAXIMUM_STEPPER_RATE (1000000UL / (2UL * (MINIMUM_STEPPER_PULSE))) + #else + #define MAXIMUM_STEPPER_RATE 500000UL + #endif #endif // @@ -1383,7 +1379,12 @@ #define MIN_ISR_LOOP_CYCLES (ISR_X_STEPPER_CYCLES + ISR_Y_STEPPER_CYCLES + ISR_Z_STEPPER_CYCLES + ISR_E_STEPPER_CYCLES + ISR_MIXING_STEPPER_CYCLES) // Calculate the minimum MPU cycles needed per pulse to enforce not surpassing the maximum stepper rate -#define MIN_STEPPER_PULSE_CYCLES MAX((F_CPU) / (MAXIMUM_STEPPER_RATE), ((F_CPU) / 500000UL) * MINIMUM_STEPPER_PULSE) +#define _MIN_STEPPER_PULSE_CYCLES(N) MAX((F_CPU) / (MAXIMUM_STEPPER_RATE), ((F_CPU) / 500000UL) * (N)) +#if MINIMUM_STEPPER_PULSE + #define MIN_STEPPER_PULSE_CYCLES _MIN_STEPPER_PULSE_CYCLES(MINIMUM_STEPPER_PULSE) +#else + #define MIN_STEPPER_PULSE_CYCLES _MIN_STEPPER_PULSE_CYCLES(1) +#endif // But the user could be enforcing a minimum time, so the loop time is #define ISR_LOOP_CYCLES (ISR_LOOP_BASE_CYCLES + MAX(MIN_STEPPER_PULSE_CYCLES, MIN_ISR_LOOP_CYCLES)) @@ -1406,7 +1407,7 @@ #endif // Now estimate the total ISR execution time in cycles given a step per ISR multiplier -#define ISR_EXECUTION_CYCLES(rate) (((ISR_BASE_CYCLES + (ISR_LOOP_CYCLES * rate) + ISR_LA_BASE_CYCLES + ISR_LA_LOOP_CYCLES)) / rate) +#define ISR_EXECUTION_CYCLES(rate) (((ISR_BASE_CYCLES + ISR_S_CURVE_CYCLES + (ISR_LOOP_CYCLES * rate) + ISR_LA_BASE_CYCLES + ISR_LA_LOOP_CYCLES)) / rate) // The maximum allowable stepping frequency when doing x128-x1 stepping (in Hz) #define MAX_128X_STEP_ISR_FREQUENCY (F_CPU / ISR_EXECUTION_CYCLES(128)) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 5f8530c80..cff0244c8 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h b/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h index 60715bd11..afad9cef6 100644 --- a/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h +++ b/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Anet/A6/Configuration_adv.h b/Marlin/example_configurations/Anet/A6/Configuration_adv.h index 0c2e5d5a8..468562a61 100644 --- a/Marlin/example_configurations/Anet/A6/Configuration_adv.h +++ b/Marlin/example_configurations/Anet/A6/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Anet/A8/Configuration_adv.h b/Marlin/example_configurations/Anet/A8/Configuration_adv.h index a3304c20e..d2f8799d1 100644 --- a/Marlin/example_configurations/Anet/A8/Configuration_adv.h +++ b/Marlin/example_configurations/Anet/A8/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h b/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h index 58c61040f..289807c6b 100644 --- a/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h +++ b/Marlin/example_configurations/BIBO/TouchX/Cyclops/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h b/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h index 5f8530c80..cff0244c8 100644 --- a/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h +++ b/Marlin/example_configurations/BIBO/TouchX/default/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h b/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h index 3db720b37..77df1cf85 100644 --- a/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h b/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h index 5fe95b651..0e06856a5 100644 --- a/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h @@ -819,6 +819,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -832,9 +833,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h b/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h index 3db720b37..77df1cf85 100644 --- a/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Cartesio/Configuration_adv.h b/Marlin/example_configurations/Cartesio/Configuration_adv.h index 58b19ae30..3f6afbb2a 100644 --- a/Marlin/example_configurations/Cartesio/Configuration_adv.h +++ b/Marlin/example_configurations/Cartesio/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h index caea18b42..4b34c46a1 100755 --- a/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-10/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h index 54e763088..8d69e9edf 100644 --- a/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-10S/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h index 65db893f3..c9650fa31 100644 --- a/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-10mini/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h b/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h index 34e411cae..058e3cc42 100644 --- a/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/CR-8/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h b/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h index 2b5423752..a5b0a5b54 100644 --- a/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/Ender-2/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h b/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h index 5581bb3f2..95ffe1c9a 100644 --- a/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/Ender-3/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h b/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h index 34e411cae..058e3cc42 100644 --- a/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h +++ b/Marlin/example_configurations/Creality/Ender-4/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Felix/Configuration_adv.h b/Marlin/example_configurations/Felix/Configuration_adv.h index 96d0a927c..09c46d1d5 100644 --- a/Marlin/example_configurations/Felix/Configuration_adv.h +++ b/Marlin/example_configurations/Felix/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h b/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h index 67fe5f859..e018efc69 100644 --- a/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h +++ b/Marlin/example_configurations/FolgerTech/i3-2020/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature 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 6f93f3d19..66dda8047 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 @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature 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 6f93f3d19..66dda8047 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 @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h b/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h index f0924c700..55172c848 100644 --- a/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h +++ b/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h b/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h index c3a84aa33..4acbe9a3d 100644 --- a/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h +++ b/Marlin/example_configurations/JGAurora/A5/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Malyan/M150/Configuration_adv.h b/Marlin/example_configurations/Malyan/M150/Configuration_adv.h index f481a0029..92e5a7203 100644 --- a/Marlin/example_configurations/Malyan/M150/Configuration_adv.h +++ b/Marlin/example_configurations/Malyan/M150/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h b/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h index 30f2229e7..00d964c98 100644 --- a/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h +++ b/Marlin/example_configurations/Micromake/C1/enhanced/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/RigidBot/Configuration_adv.h b/Marlin/example_configurations/RigidBot/Configuration_adv.h index f580e791f..cebbfea35 100644 --- a/Marlin/example_configurations/RigidBot/Configuration_adv.h +++ b/Marlin/example_configurations/RigidBot/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/SCARA/Configuration_adv.h b/Marlin/example_configurations/SCARA/Configuration_adv.h index 8fa61daf9..fe8342363 100644 --- a/Marlin/example_configurations/SCARA/Configuration_adv.h +++ b/Marlin/example_configurations/SCARA/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Sanguinololu/Configuration_adv.h b/Marlin/example_configurations/Sanguinololu/Configuration_adv.h index 0f4e69e1d..15e77a8cf 100644 --- a/Marlin/example_configurations/Sanguinololu/Configuration_adv.h +++ b/Marlin/example_configurations/Sanguinololu/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/TinyBoy2/Configuration_adv.h b/Marlin/example_configurations/TinyBoy2/Configuration_adv.h index dd7e7f17b..ac511a2f6 100644 --- a/Marlin/example_configurations/TinyBoy2/Configuration_adv.h +++ b/Marlin/example_configurations/TinyBoy2/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h b/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h index 0e0bf6e10..55cd3a6cc 100644 --- a/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h +++ b/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h @@ -814,6 +814,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -827,9 +828,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h b/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h index 2ccddc215..1cd71f9ac 100644 --- a/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h +++ b/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h b/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h index a929510ae..bf2c5c30a 100644 --- a/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h +++ b/Marlin/example_configurations/Wanhao/Duplicator 6/Configuration_adv.h @@ -813,6 +813,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -826,9 +827,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature 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 c03c99186..bed1d6c4e 100644 --- a/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h @@ -813,6 +813,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -826,9 +827,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h b/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h index 842473937..774cf8752 100644 --- a/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/kossel/Configuration_adv.h @@ -813,6 +813,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -826,9 +827,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature 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 154b5caab..92895a5c9 100644 --- a/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h @@ -813,6 +813,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -826,9 +827,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/delta/generic/Configuration_adv.h b/Marlin/example_configurations/delta/generic/Configuration_adv.h index 154b5caab..92895a5c9 100644 --- a/Marlin/example_configurations/delta/generic/Configuration_adv.h +++ b/Marlin/example_configurations/delta/generic/Configuration_adv.h @@ -813,6 +813,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -826,9 +827,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h index 154b5caab..92895a5c9 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h @@ -813,6 +813,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -826,9 +827,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h index db34166bd..fc58078ca 100644 --- a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h @@ -818,6 +818,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -831,9 +832,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h index 0f7d5703b..291ed5064 100644 --- a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h @@ -813,6 +813,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -826,9 +827,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h index 77773de18..e95bd1aba 100644 --- a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h +++ b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/makibox/Configuration_adv.h b/Marlin/example_configurations/makibox/Configuration_adv.h index f0dc1c3f3..679e738ca 100644 --- a/Marlin/example_configurations/makibox/Configuration_adv.h +++ b/Marlin/example_configurations/makibox/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h index b21648ace..2e1c83f1a 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h @@ -811,6 +811,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -824,9 +825,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/example_configurations/wt150/Configuration_adv.h b/Marlin/example_configurations/wt150/Configuration_adv.h index f51cfc9b3..2f2f422f3 100644 --- a/Marlin/example_configurations/wt150/Configuration_adv.h +++ b/Marlin/example_configurations/wt150/Configuration_adv.h @@ -812,6 +812,7 @@ /** * Minimum stepper driver pulse width (in µs) * 0 : Smallest possible width the MCU can produce, compatible with TMC2xxx drivers + * 1 : Minimum for LV8729 stepper drivers * 2 : Minimum for DRV8825 stepper drivers * 3 : Minimum for TB6600 stepper drivers * 30 : Minimum for TB6560 stepper drivers @@ -825,9 +826,10 @@ * 400000 : Maximum for TMC2xxx stepper drivers * 250000 : Maximum for DRV8825 stepper driver * 150000 : Maximum for TB6600 stepper driver + * 130000 : Maximum for LV8729 stepper driver * 15000 : Maximum for TB6560 stepper driver */ -#define MAXIMUM_STEPPER_RATE 250000 // DRV8825 +#define MAXIMUM_STEPPER_RATE 250000 // @section temperature diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index ae1dff990..e721125a1 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -1266,7 +1266,7 @@ void Stepper::stepper_pulse_phase_isr() { // Just update the value we will get at the end of the loop step_events_completed += events_to_do; - #if MINIMUM_STEPPER_PULSE > 0 + #if MINIMUM_STEPPER_PULSE // Get the timer count and estimate the end of the pulse hal_timer_t pulse_end = HAL_timer_get_count(PULSE_TIMER_NUM) + hal_timer_t((HAL_TICKS_PER_US) * (MINIMUM_STEPPER_PULSE)); #endif @@ -1339,7 +1339,7 @@ void Stepper::stepper_pulse_phase_isr() { #endif #endif // !LIN_ADVANCE - #if MINIMUM_STEPPER_PULSE > 0 + #if MINIMUM_STEPPER_PULSE // Just wait for the requested pulse duration while (HAL_timer_get_count(PULSE_TIMER_NUM) < pulse_end) { /* nada */ } // Add to the value, the value needed for the pulse end and ensuring the maximum driver rate is enforced @@ -1373,7 +1373,7 @@ void Stepper::stepper_pulse_phase_isr() { // Decrement the count of pending pulses to do --events_to_do; - #if MINIMUM_STEPPER_PULSE > 0 + #if MINIMUM_STEPPER_PULSE // For minimum pulse time wait after stopping pulses also if (events_to_do) { // Just wait for the requested pulse duration @@ -1763,7 +1763,7 @@ uint32_t Stepper::stepper_block_phase_isr() { // Step E stepper if we have steps while (LA_steps) { - #if MINIMUM_STEPPER_PULSE > 0 + #if MINIMUM_STEPPER_PULSE hal_timer_t pulse_end = HAL_timer_get_count(PULSE_TIMER_NUM) + hal_timer_t((HAL_TICKS_PER_US) * (MINIMUM_STEPPER_PULSE)); #endif @@ -1778,7 +1778,7 @@ uint32_t Stepper::stepper_block_phase_isr() { E_STEP_WRITE(active_extruder, !INVERT_E_STEP_PIN); #endif - #if MINIMUM_STEPPER_PULSE > 0 + #if MINIMUM_STEPPER_PULSE // Just wait for the requested pulse duration while (HAL_timer_get_count(PULSE_TIMER_NUM) < pulse_end) { /* nada */ } // Add to the value, the value needed for the pulse end and ensuring the maximum driver rate is enforced @@ -1798,7 +1798,7 @@ uint32_t Stepper::stepper_block_phase_isr() { E_STEP_WRITE(active_extruder, INVERT_E_STEP_PIN); #endif - #if MINIMUM_STEPPER_PULSE > 0 + #if MINIMUM_STEPPER_PULSE // For minimum pulse time wait before looping // Just wait for the requested pulse duration if (LA_steps) while (HAL_timer_get_count(PULSE_TIMER_NUM) < pulse_end) { /* nada */ } @@ -2099,6 +2099,12 @@ void Stepper::report_positions() { #if ENABLED(BABYSTEPPING) + #if MINIMUM_STEPPER_PULSE + #define STEP_PULSE_CYCLES ((MINIMUM_STEPPER_PULSE) * CYCLES_PER_MICROSECOND) + #else + #define STEP_PULSE_CYCLES 0 + #endif + #if ENABLED(DELTA) #define CYCLES_EATEN_BABYSTEP (2 * 15) #else