0
0
Fork 0
mirror of https://github.com/MarlinFirmware/Marlin.git synced 2025-01-22 17:52:57 +00:00

🩹Disable nonlinear extrusion on unretract (#26824)

* Fixes disable NLE on unretract #26808, which reported blobs at the start of lines during unretract.
This commit is contained in:
Vovodroid 2024-04-07 08:41:01 +03:00 committed by GitHub
parent a337a43bfd
commit c91771a51e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 8 additions and 6 deletions

View file

@ -2462,11 +2462,7 @@ bool Planner::_populate_block(
#if ENABLED(LIN_ADVANCE)
bool use_advance_lead = false;
#endif
if (true NUM_AXIS_GANG(
&& !block->steps.a, && !block->steps.b, && !block->steps.c,
&& !block->steps.i, && !block->steps.j, && !block->steps.k,
&& !block->steps.u, && !block->steps.v, && !block->steps.w)
) { // Is this a retract / recover move?
if (!ANY_AXIS_MOVES(block)) { // Is this a retract / recover move?
accel = CEIL(settings.retract_acceleration * steps_per_mm); // Convert to: acceleration steps/sec^2
}
else {

View file

@ -1123,4 +1123,10 @@ class Planner {
#define PLANNER_XY_FEEDRATE() _MIN(planner.settings.max_feedrate_mm_s[X_AXIS], planner.settings.max_feedrate_mm_s[Y_AXIS])
#define ANY_AXIS_MOVES(BLOCK) \
(false NUM_AXIS_GANG( \
|| BLOCK->steps.a, || BLOCK->steps.b, || BLOCK->steps.c, \
|| BLOCK->steps.i, || BLOCK->steps.j, || BLOCK->steps.k, \
|| BLOCK->steps.u, || BLOCK->steps.v, || BLOCK->steps.w))
extern Planner planner;

View file

@ -2770,7 +2770,7 @@ hal_timer_t Stepper::block_phase_isr() {
ne_edividend = advance_dividend.e;
const float scale = (float(ne_edividend) / advance_divisor) * planner.mm_per_step[E_AXIS_N(current_block->extruder)];
ne_scale = (1L << 24) * scale;
if (current_block->direction_bits.e) {
if (current_block->direction_bits.e && ANY_AXIS_MOVES(current_block)) {
ne_fix.A = (1L << 24) * ne.A;
ne_fix.B = (1L << 24) * ne.B;
ne_fix.C = (1L << 24) * ne.C;