Fix gcode_T

This commit is contained in:
MagoKimbra 2016-06-16 09:05:36 +02:00
parent cd9ecfdcb1
commit 008d0637dd

View file

@ -6624,21 +6624,22 @@ inline void gcode_T(uint8_t tmp_extruder) {
return; return;
} }
float stored_feedrate = feedrate;
if (code_seen('F')) {
float next_feedrate = code_value_axis_units(X_AXIS);
if (next_feedrate > 0.0) stored_feedrate = feedrate = next_feedrate;
}
else {
#ifdef XY_TRAVEL_SPEED
feedrate = XY_TRAVEL_SPEED;
#else
feedrate = min(planner.max_feedrate[X_AXIS], planner.max_feedrate[Y_AXIS]);
#endif
}
#if HOTENDS > 1 #if HOTENDS > 1
float stored_feedrate = feedrate;
if (code_seen('F')) {
float next_feedrate = code_value_axis_units(X_AXIS);
if (next_feedrate > 0.0) stored_feedrate = feedrate = next_feedrate;
}
else {
#ifdef XY_TRAVEL_SPEED
feedrate = XY_TRAVEL_SPEED;
#else
feedrate = min(planner.max_feedrate[X_AXIS], planner.max_feedrate[Y_AXIS]);
#endif
}
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,9 +6795,14 @@ 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);