|
@ -1602,8 +1602,14 @@ void prepare_move() |
|
|
{ |
|
|
{ |
|
|
clamp_to_software_endstops(destination); |
|
|
clamp_to_software_endstops(destination); |
|
|
|
|
|
|
|
|
previous_millis_cmd = millis(); |
|
|
previous_millis_cmd = millis(); |
|
|
plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder); |
|
|
// Do not use feedmultiply for E or Z only moves |
|
|
|
|
|
if( (current_position[X_AXIS] == destination [X_AXIS]) && (current_position[Y_AXIS] == destination [Y_AXIS])) { |
|
|
|
|
|
plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); |
|
|
|
|
|
} |
|
|
|
|
|
else { |
|
|
|
|
|
plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder); |
|
|
|
|
|
} |
|
|
for(int8_t i=0; i < NUM_AXIS; i++) { |
|
|
for(int8_t i=0; i < NUM_AXIS; i++) { |
|
|
current_position[i] = destination[i]; |
|
|
current_position[i] = destination[i]; |
|
|
} |
|
|
} |
|
|