@@ -1789,11 +1789,12 @@ bool Planner::_buffer_steps(const xyze_long_t &target
1789
1789
if (cleaning_buffer_counter) return false ;
1790
1790
1791
1791
// Fill the block with the specified movement
1792
- if (!_populate_block (block, false , target
1793
- OPTARG (HAS_POSITION_FLOAT, target_float)
1794
- OPTARG (HAS_DIST_MM_ARG, cart_dist_mm)
1795
- , fr_mm_s, extruder, millimeters
1796
- )) {
1792
+ if (!_populate_block (block, target
1793
+ OPTARG (HAS_POSITION_FLOAT, target_float)
1794
+ OPTARG (HAS_DIST_MM_ARG, cart_dist_mm)
1795
+ , fr_mm_s, extruder, millimeters
1796
+ )
1797
+ ) {
1797
1798
// Movement was not queued, probably because it was too short.
1798
1799
// Simply accept that as movement queued and done
1799
1800
return true ;
@@ -1820,17 +1821,24 @@ bool Planner::_buffer_steps(const xyze_long_t &target
1820
1821
}
1821
1822
1822
1823
/* *
1823
- * Planner::_populate_block
1824
- *
1825
- * Fills a new linear movement in the block (in terms of steps).
1824
+ * @brief Populate a block in preparation for insertion
1825
+ * @details Populate the fields of a new linear movement block
1826
+ * that will be added to the queue and processed soon
1827
+ * by the Stepper ISR.
1826
1828
*
1827
- * target - target position in steps units
1828
- * fr_mm_s - (target) speed of the move
1829
- * extruder - target extruder
1829
+ * @param block A block to populate
1830
+ * @param target Target position in steps units
1831
+ * @param target_float Target position in native mm
1832
+ * @param cart_dist_mm The pre-calculated move lengths for all axes, in mm
1833
+ * @param fr_mm_s (target) speed of the move
1834
+ * @param extruder target extruder
1835
+ * @param millimeters A pre-calculated linear distance for the move, in mm,
1836
+ * or 0.0 to have the distance calculated here.
1830
1837
*
1831
- * Returns true if movement is acceptable, false otherwise
1838
+ * @return true if movement is acceptable, false otherwise
1832
1839
*/
1833
- bool Planner::_populate_block (block_t * const block, bool split_move,
1840
+ bool Planner::_populate_block (
1841
+ block_t * const block,
1834
1842
const abce_long_t &target
1835
1843
OPTARG (HAS_POSITION_FLOAT, const xyze_pos_t &target_float)
1836
1844
OPTARG(HAS_DIST_MM_ARG, const xyze_float_t &cart_dist_mm)
@@ -2774,9 +2782,8 @@ bool Planner::_populate_block(block_t * const block, bool split_move,
2774
2782
// Initialize block entry speed. Compute based on deceleration to user-defined MINIMUM_PLANNER_SPEED.
2775
2783
const float v_allowable_sqr = max_allowable_speed_sqr (-block->acceleration , sq (float (MINIMUM_PLANNER_SPEED)), block->millimeters );
2776
2784
2777
- // If we are trying to add a split block, start with the
2778
- // max. allowed speed to avoid an interrupted first move.
2779
- block->entry_speed_sqr = !split_move ? sq (float (MINIMUM_PLANNER_SPEED)) : _MIN (vmax_junction_sqr, v_allowable_sqr);
2785
+ // Start with the minimum allowed speed
2786
+ block->entry_speed_sqr = sq (float (MINIMUM_PLANNER_SPEED));
2780
2787
2781
2788
// Initialize planner efficiency flags
2782
2789
// Set flag if block will always reach maximum junction speed regardless of entry/exit speeds.
0 commit comments