Scott Lahteine
435ecb6b67
Followup to stepper/planner refactor
7 years ago
etagle
a4af975873
Fix planner block optimization
...
- Fixed the planner incorrectly avoiding optimization of the block following the active one.
- Added extra conditions to terminate planner early and avoid redundant computations.
7 years ago
etagle
e0ca627033
Planner block HOLD flag
...
Allows the Stepper ISR to wait until a given block is free for use. Allows Planner to plan the first move, which is split into two.
7 years ago
etagle
a11eb50a3e
Refactor and optimize Stepper/Planner
...
Better encapsulation and considerably reduce stepper jitter
7 years ago
Scott Lahteine
99ecdf59af
Smarter MIN, MAX, ABS macros
...
Use macros that explicitly avoid double-evaluation and can be used for any datatype, replacing `min`, `max`, `abs`, `fabs`, `labs`, and `FABS`.
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
7 years ago
Scott Lahteine
8f8c6a9bc4
Move get_axis_position_mm to Planner ( #10718 )
7 years ago
Scott Lahteine
306f0f2135
Move Stepper::synchronize to Planner ( #10713 )
...
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
7 years ago
Scott Lahteine
a225d2e99e
Fix compilation with UBL and Arc/Bézier
...
Fix #10660
7 years ago
Scott Lahteine
19f189b4e5
Add UBL support for G2/G3 and G5 ( #10648 )
7 years ago
Scott Lahteine
af1950a63e
Improve sync of stepper positions
7 years ago
Scott Lahteine
d7b699ec34
Fewer includes of vector_3.h
7 years ago
Scott Lahteine
36b97bde9f
clear_block_buffer, kill_current_block in quick_stop
7 years ago
Eduardo José Tagle
57a899a412
[2.0.x] 6th-order jerk-controlled motion planning in real-time for AVR ( #10373 )
7 years ago
etagle
a29adde5c0
Implement BEZIER_JERK_CONTROL
...
Enable 6th-order jerk-controlled motion planning in real-time.
Only for 32bit MCUs. (AVR simply does not have enough processing power for this!)
7 years ago
Scott Lahteine
e8e60263c8
Scale feedrate (mm/s to deg/s) for SCARA
7 years ago
Scott Lahteine
1cb810ff1c
[2.0.x] Automatically reset stepper timeout ( #10179 )
...
* Automatically reset stepper timeout in manage_inactivity
Any code that adds moves to the planner can skip resetting the stepper timeout. We can let `idle` / `manage_inactivity` reset the timer whenever it detects any moves in the planner.
* blocks_queued => has_blocks_queued
7 years ago
Scott Lahteine
2057177184
Make enums into implicit char
7 years ago
Scott Lahteine
930720bbbb
Fix broken reverse planner ( #9943 )
...
From #9914 by @Sebastianv650
7 years ago
Scott Lahteine
2bd252b501
[2.0.x] LIN_ADVANCE v1.5 ( #9712 )
7 years ago
Thomas Moore
786746404b
[2.0.x] Apply feedrate to nozzle movement for kinematic machines ( #8778 )
7 years ago
Scott Lahteine
4f5e087ff4
Planner anti-stutter by Sebastian Popp
7 years ago
Scott Lahteine
5bc2acc072
Restore position_float to fix LIN_ADVANCE
7 years ago
Scott Lahteine
933f76fda3
Option to disable all volumetric extrusion
7 years ago
Scott Lahteine
09d13f186f
Correct unskew, after all
7 years ago
Scott Lahteine
368c124de8
Fix Planner::unskew parity with skew
7 years ago
Scott Lahteine
cf2193c07f
Comment, fix filament width sensor
7 years ago
Scott Lahteine
3255712343
Skew Correction for UBL
...
Also remove unused grid slicing function when using UBL segmented.
7 years ago
Scott Lahteine
3db5303bfe
_buffer_line => buffer_segment
7 years ago
Scott Lahteine
73e32925e4
References are better for array args
7 years ago
AnHardt
b3daf6b5db
[2.0.x] better reverse pass ( #8722 )
...
* repair reverse_pass()
And make it readeble.
This was broken a long time ago.
Not competely unfunctional but far from optimal.
* Minor speedup when calling calculate_trapezoid_for_block
2 float / to 1 foat / and 2 float *
* Various style changes
7 years ago
Scott Lahteine
85c6ffbe0d
Discard all "continued" blocks on interrupted move
7 years ago
Scott Lahteine
de3d3b9cb1
Put FORCE_INLINE before static
7 years ago
Scott Lahteine
840289e7cc
Use block cleaning instead of split flag
7 years ago
AnHardt
a993c5227d
Don't split first_move while homing or probing
...
While homing or probing it might be bad if the stop/trobe triggers during the first part and the second is still in the buffer.
7 years ago
Scott Lahteine
a2372cfab5
Fix SKEW_CORRECTION without leveling
7 years ago
Scott Lahteine
4b612f590c
Split first move to planner for better chaining
7 years ago
Scott Lahteine
dd8febca1a
Revert "Merge pull request #8611 from thinkyhead/bf2_planner_split_first"
...
This reverts commit 824980e70e
, reversing
changes made to aa7efb96bf
.
7 years ago
Scott Lahteine
3a97de52ef
Split first move to planner for better chaining
...
Address #8573 , #8595
7 years ago
Scott Lahteine
8056120195
Rename inverse_mm_s => inverse_secs
7 years ago
Scott Lahteine
000b3b3117
Comment/cleanup of motion code
7 years ago
Scott Lahteine
0154e3480c
New feature: BED_SKEW_CORRECTION
7 years ago
Scott Lahteine
dd3ce40826
Drop Planner::position_float, use int types
7 years ago
Scott Lahteine
a52fec6ac4
Planner class parity with 1.1.x
7 years ago
Scott Lahteine
60adc6ff02
Display filwidth ratio in terms of E mm
7 years ago
Scott Lahteine
1e8afb66b7
Fix a planner comment
7 years ago
Scott Lahteine
cba9c1cf9e
Add pre-calculated planner.e_factor
7 years ago
Scott Lahteine
0cfb936dd1
Clarify some motion code
7 years ago
Scott Lahteine
f8393a0908
Operate in Native Machine Space
7 years ago
Scott Lahteine
3e8754a38a
Add/correct time units on planner vars / M205 B
7 years ago
Scott Lahteine
0ceec1f166
Fix leveling_active_at_z warning
7 years ago