|
@ -6624,6 +6624,8 @@ inline void gcode_T(uint8_t tmp_extruder) { |
|
|
return; |
|
|
return; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#if HOTENDS > 1 |
|
|
|
|
|
|
|
|
float stored_feedrate = feedrate; |
|
|
float stored_feedrate = feedrate; |
|
|
|
|
|
|
|
|
if (code_seen('F')) { |
|
|
if (code_seen('F')) { |
|
@ -6638,7 +6640,6 @@ inline void gcode_T(uint8_t tmp_extruder) { |
|
|
#endif |
|
|
#endif |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
#if HOTENDS > 1 |
|
|
|
|
|
if (tmp_extruder != active_extruder) { |
|
|
if (tmp_extruder != active_extruder) { |
|
|
bool no_move = code_seen('S') && code_value_bool(); |
|
|
bool no_move = code_seen('S') && code_value_bool(); |
|
|
// Save current position to return to after applying extruder offset
|
|
|
// Save current position to return to after applying extruder offset
|
|
@ -6794,10 +6795,15 @@ inline void gcode_T(uint8_t tmp_extruder) { |
|
|
enable_solenoid_on_active_extruder(); |
|
|
enable_solenoid_on_active_extruder(); |
|
|
#endif // EXT_SOLENOID
|
|
|
#endif // EXT_SOLENOID
|
|
|
|
|
|
|
|
|
#endif // HOTENDS > 1
|
|
|
|
|
|
|
|
|
|
|
|
feedrate = stored_feedrate; |
|
|
feedrate = stored_feedrate; |
|
|
|
|
|
|
|
|
|
|
|
#else // !HOTENDS > 1
|
|
|
|
|
|
|
|
|
|
|
|
// Set the new active extruder
|
|
|
|
|
|
active_extruder = tmp_extruder; |
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
SERIAL_ECHO_START; |
|
|
SERIAL_ECHO_START; |
|
|
SERIAL_ECHO(MSG_ACTIVE_EXTRUDER); |
|
|
SERIAL_ECHO(MSG_ACTIVE_EXTRUDER); |
|
|
SERIAL_PROTOCOLLN((int)active_extruder); |
|
|
SERIAL_PROTOCOLLN((int)active_extruder); |
|
|