|
@ -427,8 +427,16 @@ void manage_inactivity(const bool ignore_stepper_queue/*=false*/) { |
|
|
&& !planner.has_blocks_queued() |
|
|
&& !planner.has_blocks_queued() |
|
|
) { |
|
|
) { |
|
|
#if ENABLED(SWITCHING_EXTRUDER) |
|
|
#if ENABLED(SWITCHING_EXTRUDER) |
|
|
const bool oldstatus = E0_ENABLE_READ; |
|
|
bool oldstatus; |
|
|
enable_E0(); |
|
|
switch (active_extruder) { |
|
|
|
|
|
default: oldstatus = E0_ENABLE_READ; enable_E0(); break; |
|
|
|
|
|
#if E_STEPPERS > 1 |
|
|
|
|
|
case 2: case 3: oldstatus = E1_ENABLE_READ; enable_E1(); break; |
|
|
|
|
|
#if E_STEPPERS > 2 |
|
|
|
|
|
case 4: oldstatus = E2_ENABLE_READ; enable_E2(); break; |
|
|
|
|
|
#endif // E_STEPPERS > 2
|
|
|
|
|
|
#endif // E_STEPPERS > 1
|
|
|
|
|
|
} |
|
|
#else // !SWITCHING_EXTRUDER
|
|
|
#else // !SWITCHING_EXTRUDER
|
|
|
bool oldstatus; |
|
|
bool oldstatus; |
|
|
switch (active_extruder) { |
|
|
switch (active_extruder) { |
|
@ -454,9 +462,18 @@ void manage_inactivity(const bool ignore_stepper_queue/*=false*/) { |
|
|
current_position[E_AXIS] = olde; |
|
|
current_position[E_AXIS] = olde; |
|
|
planner.set_e_position_mm(olde); |
|
|
planner.set_e_position_mm(olde); |
|
|
planner.synchronize(); |
|
|
planner.synchronize(); |
|
|
|
|
|
|
|
|
#if ENABLED(SWITCHING_EXTRUDER) |
|
|
#if ENABLED(SWITCHING_EXTRUDER) |
|
|
E0_ENABLE_WRITE(oldstatus); |
|
|
switch (active_extruder) { |
|
|
#else |
|
|
default: oldstatus = E0_ENABLE_WRITE(oldstatus); break; |
|
|
|
|
|
#if E_STEPPERS > 1 |
|
|
|
|
|
case 2: case 3: oldstatus = E1_ENABLE_WRITE(oldstatus); break; |
|
|
|
|
|
#if E_STEPPERS > 2 |
|
|
|
|
|
case 4: oldstatus = E2_ENABLE_WRITE(oldstatus); break; |
|
|
|
|
|
#endif // E_STEPPERS > 2
|
|
|
|
|
|
#endif // E_STEPPERS > 1
|
|
|
|
|
|
} |
|
|
|
|
|
#else // !SWITCHING_EXTRUDER
|
|
|
switch (active_extruder) { |
|
|
switch (active_extruder) { |
|
|
case 0: E0_ENABLE_WRITE(oldstatus); break; |
|
|
case 0: E0_ENABLE_WRITE(oldstatus); break; |
|
|
#if E_STEPPERS > 1 |
|
|
#if E_STEPPERS > 1 |
|
|