Commit Graph

199 Commits

Author SHA1 Message Date
tobbelobb
330c4bcbb9 [1.1.x] Hangprinter support (#9180) 2018-09-08 21:17:02 -05:00
Scott Lahteine
ccb225f43a
Float maths updates for 2.0.x parity (#11213)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-07-06 21:44:33 -05:00
Scott Lahteine
a294ec3836
Add delta feedrate scaling (#11152) 2018-06-30 13:44:37 -05:00
Scott Lahteine
654f0bed25
Remove JUNCTION_DEVIATION_INCLUDE_E option (#11146) 2018-06-29 22:41:56 -05:00
Scott Lahteine
b880028334
Fix stepper/planner block handling, race conditions (#11136)
- Allow planner to alter the deceleration phase of the currently executing block.
- Remove BUSY flag, as it is NON ATOMIC to set bits in the Stepper ISR and Planner at the same time.

Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-06-27 18:11:23 -05:00
Scott Lahteine
04fc715c91
Add minimum step dir delay option, A4988 pulse note (#11122)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-06-26 22:28:46 -04:00
Scott Lahteine
4d5c655f8d
Make max_e_jerk an array to save CPU (#11121)
Co-Authored-By: gloomyandy <andy-git@gloomy-place.com>
2018-06-26 22:09:38 -04:00
Scott Lahteine
53745446f9 Fix LIN_ADVANCE max_e_jerk_factor
According to https://github.com/MarlinFirmware/Marlin/issues/9917#issuecomment-399204568
2018-06-21 21:38:52 -04:00
Scott Lahteine
8073f23672 Improvements for junction_deviation_mm
- Drop `max_jerk` with `JUNCTION_DEVIATION`
- Add `max_e_jerk_factor` for use by `LIN_ADVANCE`
- Recalculate `max_e_jerk_factor` when `junction_deviation_mm` changes
- Fix LCD editing of `junction_deviation_mm`
2018-06-11 21:49:26 -05:00
Scott Lahteine
327b9c389d
Add Junction Deviation mm runtime setting (#10989) 2018-06-10 18:02:40 -05:00
Scott Lahteine
1cdcc6adfa Adaptive multiaxis step smoothing
- Stepper bugs fixed
- Support MIXING_EXTRUDER with Linear Advance
- Miscellaneous cleanup

Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-06-10 01:56:00 -05:00
Sebastianv650
568b19e7d4 Fix/Improve junction deviation
- Respect axis max acceleration limits instead of forcing a fixed acceleration value.
- The `junction_unit_vec` ensures proper handling of entry and exit speeds even when the axes involved have different limits.
2018-05-31 20:06:37 -05:00
Scott Lahteine
c010b1f43f Clean up some trailing spaces 2018-05-31 19:37:22 -05:00
Scott Lahteine
949ee7afe9 BEZIER_JERK_CONTROL => S_CURVE_ACCELERATION 2018-05-26 18:31:57 -05:00
Scott Lahteine
d2f8971045 Fix planner block optimization 2018-05-20 21:24:57 -05:00
Scott Lahteine
a4f2f2fe54 Planner block HOLD flag 2018-05-20 21:24:57 -05:00
Scott Lahteine
8f26c3a6d3 Refactor and optimize Stepper/Planner 2018-05-20 21:24:57 -05:00
Scott Lahteine
3505d018db 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>
2018-05-13 04:51:33 -05:00
Scott Lahteine
ea353c3df6
Move some Stepper methods to Planner (#10719) 2018-05-12 09:29:17 -05:00
Scott Lahteine
b9e4ce3715 Fix compilation with UBL and Arc/Bézier
Fix #10660
2018-05-09 00:41:51 -05:00
Scott Lahteine
78410b210b
Add UBL support for G2/G3 and G5 (#10649) 2018-05-08 11:10:33 -05:00
Scott Lahteine
7ee1ab4fd3 Add Bézier Jerk Control option 2018-05-08 09:21:54 -05:00
Scott Lahteine
08e20dbbc6 Improve sync of stepper positions 2018-05-06 01:22:30 -05:00
Scott Lahteine
32b6a3ad12 Fewer includes of vector_3.h 2018-05-01 04:41:56 -05:00
Scott Lahteine
9769d799df clear_block_buffer, kill_current_block in quick_stop 2018-04-13 22:05:58 -05:00
Scott Lahteine
c46d47f45f Scale feedrate (mm/s to deg/s) for SCARA 2018-04-05 16:17:23 -05:00
Scott Lahteine
c57545ee08 blocks_queued => has_blocks_queued 2018-03-21 19:08:02 -05:00
Scott Lahteine
647c04def8 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.
2018-03-21 19:08:02 -05:00
Scott Lahteine
ecddd2a655 Make enums into implicit char 2018-03-06 23:36:56 -06:00
Sebastianv650
bc08ce86be Fix broken reverse planner (#9914)
See MarlinFirmware/Marlin#9913 for details.
2018-03-04 21:18:35 -06:00
Sebastianv650
9c65890644 [1.1.x] LIN_ADVANCE v1.5 (#9700) 2018-02-23 00:53:41 -06:00
Thomas Moore
5b4e39a429 Apply feedrate to nozzle movement for kinematic machines 2018-02-03 22:17:13 -06:00
Scott Lahteine
c1d6d24b9d Cleanup spacing, commentary 2018-01-11 18:52:54 -06:00
Sebastianv650
e2871f0dcd [1.1.x] Ensure smooth printer movements (#9149)
- Never execute a block without an up-to-date trapezoid
- Start blocks with MINIMUM_PLANNER_SPEED, except when coming from a full stop
2018-01-11 18:50:18 -06:00
Scott Lahteine
1068798465 Restore position_float to LIN_ADVANCE 2017-12-20 06:58:42 -06:00
Scott Lahteine
435981056e Option to disable all volumetric extrusion 2017-12-19 20:33:41 -06:00
Scott Lahteine
f38f2ace5a
Correct unskew, after all 2017-12-15 14:23:20 -06:00
Scott Lahteine
da9748fb21 Fix Planner::unskew parity with skew 2017-12-13 17:43:07 -06:00
Scott Lahteine
8519451161 Comment, improve filament width sensor 2017-12-13 02:35:23 -06:00
Scott Lahteine
bdf69db0a8 Extend Skew Correction to UBL 2017-12-11 01:31:14 -06:00
Scott Lahteine
da2eaa6b09 Use array refs where possible 2017-12-11 00:20:29 -06:00
Scott Lahteine
8244284116 _buffer_line => buffer_segment 2017-12-11 00:20:28 -06:00
Scott Lahteine
77519e9f14 Tweaks to planner.h 2017-12-08 21:11:17 -06:00
AnHardt
22baf3356a Apply @AnHardt reverse_pass changes
Plus: 3 times 2 float / to 1 float / and 2 float *
      and, reciprocal is an optimized operation
2017-12-08 21:11:17 -06:00
Scott Lahteine
75eb93140f Discard all CONTINUED blocks on interrupted move 2017-12-08 02:13:51 -06:00
Scott Lahteine
8be7a0b131 FORCE_INLINE before static 2017-12-08 01:31:59 -06:00
Scott Lahteine
3b30cc90f1 Clean on trigger instead of split_first_move flag 2017-12-06 21:43:26 -06:00
AnHardt
b19846aca1 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.
2017-12-06 14:56:37 +01:00
Scott Lahteine
23291a0466 Fix SKEW_CORRECTION without leveling 2017-12-05 18:47:19 -06:00
Scott Lahteine
000818f5e4 Split first move to planner for better chaining 2017-12-04 15:43:28 -06:00