diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 8778f602a0..56edf7db83 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -1072,15 +1072,14 @@ void process_commands() } break; - case 11: // G10 retract_recover - if(!retracted) + case 11: // G11 retract_recover + if(retracted) { destination[X_AXIS]=current_position[X_AXIS]; destination[Y_AXIS]=current_position[Y_AXIS]; destination[Z_AXIS]=current_position[Z_AXIS]; - current_position[Z_AXIS]+=retract_zlift; - current_position[E_AXIS]+=-retract_recover_length; + destination[E_AXIS]=current_position[E_AXIS]+retract_length+retract_recover_length; feedrate=retract_recover_feedrate; retracted=false; prepare_move();