Browse Source

Do not use feedrate multiiply on Z and E only moves.

pull/1/head
Erik vd Zalm 12 years ago
parent
commit
9083966c22
  1. 8
      Marlin/Marlin.pde

8
Marlin/Marlin.pde

@ -1603,7 +1603,13 @@ void prepare_move()
clamp_to_software_endstops(destination);
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++) {
current_position[i] = destination[i];
}

Loading…
Cancel
Save