|
|
@ -504,7 +504,7 @@ float junction_deviation = 0.1;
|
|
|
|
|
|
|
|
|
|
|
|
#ifdef PREVENT_DANGEROUS_EXTRUDE
|
|
|
|
#ifdef PREVENT_DANGEROUS_EXTRUDE
|
|
|
|
if (de) {
|
|
|
|
if (de) {
|
|
|
|
if (degHotend(active_extruder) < extrude_min_temp) {
|
|
|
|
if (degHotend(extruder) < extrude_min_temp) {
|
|
|
|
position[E_AXIS] = target[E_AXIS]; // Behave as if the move really took place, but ignore E part
|
|
|
|
position[E_AXIS] = target[E_AXIS]; // Behave as if the move really took place, but ignore E part
|
|
|
|
de = 0; // no difference
|
|
|
|
de = 0; // no difference
|
|
|
|
SERIAL_ECHO_START;
|
|
|
|
SERIAL_ECHO_START;
|
|
|
@ -541,8 +541,8 @@ float junction_deviation = 0.1;
|
|
|
|
|
|
|
|
|
|
|
|
block->steps[Z_AXIS] = labs(dz);
|
|
|
|
block->steps[Z_AXIS] = labs(dz);
|
|
|
|
block->steps[E_AXIS] = labs(de);
|
|
|
|
block->steps[E_AXIS] = labs(de);
|
|
|
|
block->steps[E_AXIS] *= volumetric_multiplier[active_extruder];
|
|
|
|
block->steps[E_AXIS] *= volumetric_multiplier[extruder];
|
|
|
|
block->steps[E_AXIS] *= extruder_multiply[active_extruder];
|
|
|
|
block->steps[E_AXIS] *= extruder_multiply[extruder];
|
|
|
|
block->steps[E_AXIS] /= 100;
|
|
|
|
block->steps[E_AXIS] /= 100;
|
|
|
|
block->step_event_count = max(block->steps[X_AXIS], max(block->steps[Y_AXIS], max(block->steps[Z_AXIS], block->steps[E_AXIS])));
|
|
|
|
block->step_event_count = max(block->steps[X_AXIS], max(block->steps[Y_AXIS], max(block->steps[Z_AXIS], block->steps[E_AXIS])));
|
|
|
|
|
|
|
|
|
|
|
@ -676,7 +676,7 @@ float junction_deviation = 0.1;
|
|
|
|
delta_mm[Y_AXIS] = dy / axis_steps_per_unit[Y_AXIS];
|
|
|
|
delta_mm[Y_AXIS] = dy / axis_steps_per_unit[Y_AXIS];
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
delta_mm[Z_AXIS] = dz / axis_steps_per_unit[Z_AXIS];
|
|
|
|
delta_mm[Z_AXIS] = dz / axis_steps_per_unit[Z_AXIS];
|
|
|
|
delta_mm[E_AXIS] = (de / axis_steps_per_unit[E_AXIS]) * volumetric_multiplier[active_extruder] * extruder_multiply[active_extruder] / 100.0;
|
|
|
|
delta_mm[E_AXIS] = (de / axis_steps_per_unit[E_AXIS]) * volumetric_multiplier[extruder] * extruder_multiply[extruder] / 100.0;
|
|
|
|
|
|
|
|
|
|
|
|
if (block->steps[X_AXIS] <= dropsegments && block->steps[Y_AXIS] <= dropsegments && block->steps[Z_AXIS] <= dropsegments) {
|
|
|
|
if (block->steps[X_AXIS] <= dropsegments && block->steps[Y_AXIS] <= dropsegments && block->steps[Z_AXIS] <= dropsegments) {
|
|
|
|
block->millimeters = fabs(delta_mm[E_AXIS]);
|
|
|
|
block->millimeters = fabs(delta_mm[E_AXIS]);
|
|
|
|