|
@@ -2087,14 +2087,16 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
|
2087
|
2087
|
#if ENABLED(MIXING_EXTRUDER)
|
2088
|
2088
|
float delta_mm_i = 0;
|
2089
|
2089
|
if (i == E_AXIS) {
|
2090
|
|
- for (uint8_t s = 0; s < MIXING_STEPPERS; s++)
|
2091
|
|
- delta_mm_i = MAX(mixing_factor[s] * ABS(delta_mm[i]), delta_mm_i);
|
|
2090
|
+ for (uint8_t s = 0; s < MIXING_STEPPERS; s++) {
|
|
2091
|
+ const float delta_mm_s = mixing_factor[s] * delta_mm[i];
|
|
2092
|
+ if (ABS(delta_mm_s) > ABS(delta_mm_i)) delta_mm_i = delta_mm_s;
|
|
2093
|
+ }
|
2092
|
2094
|
}
|
2093
|
|
- else delta_mm_i = ABS(delta_mm[i]);
|
|
2095
|
+ else delta_mm_i = delta_mm[i];
|
2094
|
2096
|
#else
|
2095
|
|
- const float delta_mm_i = ABS(delta_mm[i]);
|
|
2097
|
+ const float delta_mm_i = delta_mm[i];
|
2096
|
2098
|
#endif
|
2097
|
|
- const float cs = current_speed[i] = delta_mm_i * inverse_secs;
|
|
2099
|
+ const float cs = ABS(current_speed[i] = delta_mm_i * inverse_secs);
|
2098
|
2100
|
#if ENABLED(DISTINCT_E_FACTORS)
|
2099
|
2101
|
if (i == E_AXIS) i += extruder;
|
2100
|
2102
|
#endif
|