Sebastianv650
f9bea7968f
BugFix for incorrect E-speed calculation
The extrusion speed was wrong due to a not high enough precision of
esteps to XY steps, therefore now the target float values are used to
calculate the ratio between XY movement and extrusion speed.
The e_speed_multiplier8 was replaced by an absolute multiplier called
abs_adv_steps_multiplier8, therefore one multiplication and bitshift can
be saved inside the stepper ISR. Due to this, also extruder_advance_k is
better suited inside the planner and not the stepper files any more.
8 years ago
Scott Lahteine
23f05f8be7
Use bit-length types in block_t
8 years ago
Scott Lahteine
75dbb71dd7
Replace block.busy with a block.flag bit
8 years ago
Scott Lahteine
8e787304c9
const float ref args in planner.h
8 years ago
Sebastianv650
c397b9d60a
Planner acceleration bugfix and speedup v2
.) Use already existing inverse_millimeters instead of /
block->millimeters.
.) Prevent overflow during acceleration calculation by checking if float
is necessary. Idea modified from Sailfish.
.) Save two uint32_t or even float multiplications by checking if
step[AXIS] has steps and if max acceleration is lower than accel. If
not, there is no need to check this axis.
8 years ago
Scott Lahteine
8e1cc9332a
Replace block flag bools with flag bits
…and apply const to some method parameters
8 years ago
Scott Lahteine
5ce5a9c822
Marlin: planner.h tweak
8 years ago
Scott Lahteine
d963020532
Sort out some header dependencies
8 years ago
Scott Lahteine
c5cac486f5
Use a, b, c instead of lx, ly, lz
8 years ago
Josef Pavlik
f8c2473a71
Improve planner kinematics, fix delta ABL
8 years ago
Scott Lahteine
d19cfcfc1d
max_jerk array, DEFAULT_XYJERK => DEFAULT_[XY]JERK
8 years ago
Scott Lahteine
ecf7cdde65
Augment planner/stepper getters/setters
8 years ago
Scott Lahteine
ea0dbee3c9
Enable ABL by type, support bilinear on cartesian
8 years ago
Scott Lahteine
22ece0081e
Pass array pointer to unapply_leveling
8 years ago
Scott Lahteine
cbc158eb62
Add a proper flag for ABL enabled
8 years ago
Scott Lahteine
6b9bf8e8fe
Add Planner::sync_from_steppers
Use to sync the planner after an interrupted move (when not overriding
the logical position).
8 years ago
Scott Lahteine
c109399bf6
Fix planner leveling and rename arguments
Use lx, ly, lz for “logical” positions
8 years ago
Scott Lahteine
9248cfb0ad
Bed leveling that accounts for home XYZ
8 years ago
Scott Lahteine
d554c1dda8
Clean up planner kernel pass methods
8 years ago
Scott Lahteine
b73203a0b7
Move some includes around to uncover missing deps
9 years ago
Scott Lahteine
f8b5749235
Replace division in planner with multiplication
9 years ago
Scott Lahteine
9f9fe043ba
Apply sq macro throughout
9 years ago
Scott Lahteine
93ba5bddd7
Append units to feedrate variables
9 years ago
Scott Lahteine
05da02f0a2
Implement MIXING_EXTRUDER and SWITCHING_EXTRUDER
9 years ago
Scott Lahteine
ef3bef6b9e
Fix feedrate in gcode_T (max_feedrate is mm/s)
9 years ago
Scott Lahteine
6d62a4ffc8
Patch LIN_ADVANCE for style and forward-compatibility
9 years ago
Sebastianv650
fb8e880734
Add LIN_ADVANCE
9 years ago
Scott Lahteine
72c6f2923f
axis_steps_per_unit => axis_steps_per_mm
9 years ago
Scott Lahteine
446515ab79
Adjust spacing in block_t
9 years ago
Scott Lahteine
3b08eb1eeb
`acceleration_st` => `acceleration_steps_per_s2`
9 years ago
Scott Lahteine
cb4704e07a
Rename some planner acceleration vars
- `per_sq_second` => `per_s2`
- `per_sqr_second` => `per_s2`
- `axis_steps_per_sqr_second` => `max_acceleration_steps_per_s2`
9 years ago
Scott Lahteine
49ecaf774d
Rename some auto/locals to avoid name conflict
9 years ago
Scott Lahteine
47b5c55c29
Implement the delayed-move technique
9 years ago
Scott Lahteine
381bc6f0b0
set_position => set_position_mm
9 years ago
Scott Lahteine
ff53819856
Drop FORCE_INLINE in planner.h
This change actually does increase the binary size by about 12 bytes,
but how does it affect performance?
9 years ago
Scott Lahteine
470d5ac09f
Apply static to Planner class
9 years ago
Scott Lahteine
5172d4ba40
COREYZ stepper, planner, endstop, babysteps
9 years ago
Scott Lahteine
516e79bbda
Declare extruder_duplication_enabled in Marlin.h
9 years ago
Scott Lahteine
6398d497b3
Ultimate followup to Stepper/Planner patch
- Search all symbols and apply prefixes where needed
- Encapsulate some private methods
- Inline some setters
- Make `microstep_mode` a public method
9 years ago
Scott Lahteine
96f51f400f
Planner singleton class
9 years ago
Scott Lahteine
0da744b7b0
Further cleanup of comments, partial Doxygen-style
Following up on #3231
9 years ago
jbrazio
5e5d250832
Added gplv3 header to all Marlin files
9 years ago
Scott Lahteine
4bbea5124d
Support for multiple PWM fans
9 years ago
Scott Lahteine
0c7f7ebcfb
Styling adjustments (PR#2668 & PR#2670)
Keep "astyled" reformatting
9 years ago
Richard Wackerbarth
6292d9e815
Rename ENABLE_AUTO_BED_LEVELING
With the introduction of the #if ENABLED(…)
reads better than
10 years ago
Scott Lahteine
bf6eb93c61
Overridable Options - Part 10 (PR#2562)
Apply `ENABLED` / `DISABLED` macros to planner files.
10 years ago
Andrew Lenharth
a0ae9e30df
don't pass integer by reference, inefficient. (PR#2547)
10 years ago
Scott Lahteine
0fca084ea6
Make EEPROM reproducible in GCode
With these changes the output of `M503 S0` is all you need to restore
the EEPROM. Building on this it is straightforward to save and restore
the EEPROM state using the SD card or external GCode file.
- Added `M145` to set “heatup states” for the LCD menu
- Added `M420` to toggle Mesh Bed Leveling
- Added `M421` to set a single Mesh coordinate
- Extended `Config_PrintSettings` with added M codes
- Cleaned up some comments here and there
10 years ago
Scott Lahteine
ccddc280be
Apply three more commits
10 years ago
Scott Lahteine
1269c445ab
Catch dangerous extrude before trying several
10 years ago