From 599649e45d997099cc19a10e53a31bd044e977a1 Mon Sep 17 00:00:00 2001 From: Sebastianv650 Date: Sat, 15 Oct 2016 13:38:47 +0200 Subject: [PATCH 1/3] Add formula for LIN_ADVANCE_K With this formula, a start value for K for further fine-calibration can be calculated. --- Marlin/Configuration_adv.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 97bd9803f9..07d9711694 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -503,7 +503,12 @@ // Implementation of a linear pressure control // Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +// K=0 means advance disabled. +// To get a rough start value for calibration, measure your "free filament length" between the hobbed bolt and the nozzle in cm. +// Then use the formula that fits your system, where L is the "free filament length": +// Filament diameter | 1,75mm | 3mm | +// Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | +// Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) From 9818d975878c9db14e3c0338fdab11fbeafb9513 Mon Sep 17 00:00:00 2001 From: Sebastianv650 Date: Sat, 15 Oct 2016 13:46:47 +0200 Subject: [PATCH 2/3] Fix Z-hops during retract/prime lead to blobs We don't want to have retract/prime movements done with LIN_ADVANCE, that's also true with simultaneously executed Z-hops. --- Marlin/planner.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index ffacf76db9..cfc23dfd36 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -1206,7 +1206,7 @@ void Planner::_buffer_line(const float &a, const float &b, const float &c, const // This leads to an enormous number of advance steps due to a huge e_acceleration. // The math is correct, but you don't want a retract move done with advance! // So this situation is filtered out here. - if (!block->steps[E_AXIS] || (!block->steps[X_AXIS] && !block->steps[Y_AXIS] && !block->steps[Z_AXIS]) || stepper.get_advance_k() == 0 || (uint32_t) block->steps[E_AXIS] == block->step_event_count) { + if (!block->steps[E_AXIS] || (!block->steps[X_AXIS] && !block->steps[Y_AXIS]) || stepper.get_advance_k() == 0 || (uint32_t) block->steps[E_AXIS] == block->step_event_count) { block->use_advance_lead = false; } else { From b9109b2875402f3583fb93c4b259bb976e055e8c Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 22 Oct 2016 05:03:09 -0500 Subject: [PATCH 3/3] Improve LIN_ADVANCE commentary (all configs) --- Marlin/Configuration_adv.h | 22 ++++++++++++------- .../Cartesio/Configuration_adv.h | 17 +++++++++++--- .../Felix/Configuration_adv.h | 17 +++++++++++--- .../Hephestos/Configuration_adv.h | 17 +++++++++++--- .../Hephestos_2/Configuration_adv.h | 17 +++++++++++--- .../K8200/Configuration_adv.h | 17 +++++++++++--- .../K8400/Configuration_adv.h | 17 +++++++++++--- .../RigidBot/Configuration_adv.h | 17 +++++++++++--- .../SCARA/Configuration_adv.h | 17 +++++++++++--- .../TAZ4/Configuration_adv.h | 17 +++++++++++--- .../WITBOX/Configuration_adv.h | 17 +++++++++++--- .../delta/biv2.5/Configuration_adv.h | 17 +++++++++++--- .../delta/generic/Configuration_adv.h | 17 +++++++++++--- .../delta/kossel_mini/Configuration_adv.h | 17 +++++++++++--- .../delta/kossel_pro/Configuration_adv.h | 17 +++++++++++--- .../delta/kossel_xl/Configuration_adv.h | 17 +++++++++++--- .../makibox/Configuration_adv.h | 17 +++++++++++--- .../tvrrug/Round2/Configuration_adv.h | 17 +++++++++++--- 18 files changed, 252 insertions(+), 59 deletions(-) diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index 07d9711694..a0a65f9c28 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -501,14 +501,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. -// To get a rough start value for calibration, measure your "free filament length" between the hobbed bolt and the nozzle in cm. -// Then use the formula that fits your system, where L is the "free filament length": -// Filament diameter | 1,75mm | 3mm | -// Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | -// Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/Cartesio/Configuration_adv.h b/Marlin/example_configurations/Cartesio/Configuration_adv.h index 951d5df8b3..98e4912213 100644 --- a/Marlin/example_configurations/Cartesio/Configuration_adv.h +++ b/Marlin/example_configurations/Cartesio/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/Felix/Configuration_adv.h b/Marlin/example_configurations/Felix/Configuration_adv.h index dfcabe6b1a..4138656e2e 100644 --- a/Marlin/example_configurations/Felix/Configuration_adv.h +++ b/Marlin/example_configurations/Felix/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/Hephestos/Configuration_adv.h b/Marlin/example_configurations/Hephestos/Configuration_adv.h index 6e8d66f8db..fb337fc778 100644 --- a/Marlin/example_configurations/Hephestos/Configuration_adv.h +++ b/Marlin/example_configurations/Hephestos/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 1.75 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/Hephestos_2/Configuration_adv.h b/Marlin/example_configurations/Hephestos_2/Configuration_adv.h index e15be7234e..e5c46ae262 100644 --- a/Marlin/example_configurations/Hephestos_2/Configuration_adv.h +++ b/Marlin/example_configurations/Hephestos_2/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/K8200/Configuration_adv.h b/Marlin/example_configurations/K8200/Configuration_adv.h index b2c6fd4832..0985448e12 100644 --- a/Marlin/example_configurations/K8200/Configuration_adv.h +++ b/Marlin/example_configurations/K8200/Configuration_adv.h @@ -507,9 +507,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/K8400/Configuration_adv.h b/Marlin/example_configurations/K8400/Configuration_adv.h index 50fd0e0c73..ebb9e83715 100644 --- a/Marlin/example_configurations/K8400/Configuration_adv.h +++ b/Marlin/example_configurations/K8400/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/RigidBot/Configuration_adv.h b/Marlin/example_configurations/RigidBot/Configuration_adv.h index 8dbc685dd6..ad70111aa2 100644 --- a/Marlin/example_configurations/RigidBot/Configuration_adv.h +++ b/Marlin/example_configurations/RigidBot/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 1.75 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/SCARA/Configuration_adv.h b/Marlin/example_configurations/SCARA/Configuration_adv.h index 51f6cb512a..3312340187 100644 --- a/Marlin/example_configurations/SCARA/Configuration_adv.h +++ b/Marlin/example_configurations/SCARA/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 1.75 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/TAZ4/Configuration_adv.h b/Marlin/example_configurations/TAZ4/Configuration_adv.h index 096d97edc8..28eab90c7a 100644 --- a/Marlin/example_configurations/TAZ4/Configuration_adv.h +++ b/Marlin/example_configurations/TAZ4/Configuration_adv.h @@ -509,9 +509,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/WITBOX/Configuration_adv.h b/Marlin/example_configurations/WITBOX/Configuration_adv.h index 6e8d66f8db..fb337fc778 100644 --- a/Marlin/example_configurations/WITBOX/Configuration_adv.h +++ b/Marlin/example_configurations/WITBOX/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 1.75 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/delta/biv2.5/Configuration_adv.h b/Marlin/example_configurations/delta/biv2.5/Configuration_adv.h index c5b8101a54..e22c36ce71 100644 --- a/Marlin/example_configurations/delta/biv2.5/Configuration_adv.h +++ b/Marlin/example_configurations/delta/biv2.5/Configuration_adv.h @@ -503,9 +503,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/delta/generic/Configuration_adv.h b/Marlin/example_configurations/delta/generic/Configuration_adv.h index 870c67c7e4..d8da99e486 100644 --- a/Marlin/example_configurations/delta/generic/Configuration_adv.h +++ b/Marlin/example_configurations/delta/generic/Configuration_adv.h @@ -503,9 +503,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h index 870c67c7e4..d8da99e486 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h @@ -503,9 +503,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h index 5c68f33de7..8f80d130cd 100644 --- a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h @@ -508,9 +508,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h index 0a12114ff6..698f9270b5 100644 --- a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h @@ -503,9 +503,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/makibox/Configuration_adv.h b/Marlin/example_configurations/makibox/Configuration_adv.h index dc08d5b1e8..d1a0f66fa0 100644 --- a/Marlin/example_configurations/makibox/Configuration_adv.h +++ b/Marlin/example_configurations/makibox/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE) diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h index dc57f5212d..f68070341b 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h @@ -501,9 +501,20 @@ #define D_FILAMENT 2.85 #endif -// Implementation of a linear pressure control -// Assumption: advance = k * (delta velocity) -// K=0 means advance disabled. A good value for a gregs wade extruder will be around K=75 +/** + * Implementation of linear pressure control + * + * Assumption: advance = k * (delta velocity) + * K=0 means advance disabled. + * To get a rough start value for calibration, measure your "free filament length" + * between the hobbed bolt and the nozzle (in cm). Use the formula below that fits + * your setup, where L is the "free filament length": + * + * Filament diameter | 1.75mm | 3.0mm | + * ----------------------------|-----------|------------| + * Stiff filament (PLA) | K=47*L/10 | K=139*L/10 | + * Softer filament (ABS, nGen) | K=88*L/10 | K=260*L/10 | + */ //#define LIN_ADVANCE #if ENABLED(LIN_ADVANCE)