145 Commits (0358ffcd4caf64b7e78449a4c184ed5b00dfdb72)

Author SHA1 Message Date
etagle 569df3fc0c Fix interrupt-based endstop detection
- Also implemented real endstop reading on interrupt.
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
Jiri Jaburek 43ddb29f9e Add FAN_MAX_PWM for M106-controlled fans 7 years ago
Scott Lahteine 08e36e264e Apply _AXIS macro 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 439e0cdd0f
Patch up reverse_pass_kernel (and other planner code) (#10674) 7 years ago
Scott Lahteine 57c2f8d2f6 Trailing whitespace cleanup 7 years ago
Scott Lahteine 19f189b4e5
Add UBL support for G2/G3 and G5 (#10648) 7 years ago
Scott Lahteine 4d4bf7897d Junction Deviation jerk limiting option 7 years ago
Scott Lahteine 0436e16fb2 Apply shorthand Assembler macros 7 years ago
Scott Lahteine d1b619be52 Standardize some hexadecimals 7 years ago
Scott Lahteine 1f11b0f612 Fully init planner sync block 7 years ago
Scott Lahteine af1950a63e Improve sync of stepper positions 7 years ago
Scott Lahteine f423e54f77 Strip trailing spaces 7 years ago
Scott Lahteine 5a064d0e94 Fix bug in planner.set_position_mm 7 years ago
Scott Lahteine 8f57e098de Use end-of-line comments in planner.cpp 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 fe91514395
MBL should add z_offset regardless of fade (#10308) 7 years ago
Scott Lahteine ac7e97f4fe Change order of inactive stepper disable/enable
This ensures that steppers that share an enable pin will only be disabled for a miniscule time.
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 3c2bfa5e53
Update powersupply_on in power_on/off (#10015)
Fix #10004
7 years ago
Scott Lahteine 930720bbbb
Fix broken reverse planner (#9943)
From #9914 by @Sebastianv650
7 years ago
Scott Lahteine d1dc863962 autotemp_factor is not value_celsius_diff
See https://github.com/MarlinFirmware/Marlin/issues/9852#issuecomment-369861822
7 years ago
Scott Lahteine 689bc99402 Correction to acceleration 7 years ago
Scott Lahteine 2bd252b501
[2.0.x] LIN_ADVANCE v1.5 (#9712) 7 years ago
Scott Lahteine 73cd34b121 Finish AUTO_POWER_CONTROL implementation
Followup to #9503
7 years ago
Thomas Moore 786746404b [2.0.x] Apply feedrate to nozzle movement for kinematic machines (#8778) 7 years ago
Scott Lahteine 9644fe1839 Lightly optimize arc length calculation 7 years ago
Scott Lahteine 4f5e087ff4 Planner anti-stutter by Sebastian Popp 7 years ago
Scott Lahteine 5effe1590c Fix NO_VOLUMETRICS bug 7 years ago
Thomas Moore 2917d1217d Revert "Followup to #8698"
This reverts commit 4e891e9fb7.
7 years ago
Scott Lahteine 97d509d4d2 Revert "Improved Core-compatible jerk code"
Reverting commit 3cd7659
7 years ago
Scott Lahteine 5bc2acc072 Restore position_float to fix LIN_ADVANCE 7 years ago
Scott Lahteine 913d9e9a59 Matching sign across filwidth vars 7 years ago
Scott Lahteine 933f76fda3 Option to disable all volumetric extrusion 7 years ago
Scott Lahteine de5ca96654 More parity with 1.1.x, plus whitespace 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 a71d2f3f40 UBL_DELTA => UBL_SEGMENTED 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
Bob-the-Kuhn 65d0f32f82 divide only when required 7 years ago
Scott Lahteine 85c6ffbe0d Discard all "continued" blocks on interrupted move 7 years ago
Scott Lahteine 4e891e9fb7 Followup to #8698 7 years ago
Scott Lahteine 3cd7659924 Improved Core-compatible jerk code 7 years ago
Scott Lahteine 840289e7cc Use block cleaning instead of split flag 7 years ago
Scott Lahteine 2fde60da12 Changes for parity with 1.1.x 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 5fbb2f121e Remove skew warning that could crash the planner 7 years ago
Scott Lahteine d8b444c144 Cleanup constextpr in planner.cpp 7 years ago
Scott Lahteine 53694ebaa1 Folllwup to planner splitting 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 23557f8e77 Remove obsolete de_float 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 ec6ca37ed3 Fix (un)apply_leveling fade bug 7 years ago
Scott Lahteine a52fec6ac4 Planner class parity with 1.1.x 7 years ago
Scott Lahteine 23e45fa3c4 Apply const to some planner vars 7 years ago
Scott Lahteine 285b868e9b Tweak planner code style 7 years ago
Scott Lahteine 1f2acc33bc Tweaks for check_axes_activity 7 years ago
Scott Lahteine 16baa48699 Fix #8579
Fan speed code fell into a curly brace
7 years ago
Scott Lahteine 27c5692b13 Syntax tweaks 7 years ago
Scott Lahteine a03f93bab4 Fix fan kickstart 7 years ago
Scott Lahteine 9e3c41f9e8 Tweak fan kickstart / speed code 7 years ago
Scott Lahteine 60adc6ff02 Display filwidth ratio in terms of E mm 7 years ago
Scott Lahteine 50f09cc029 Miscellaneous cleanup 7 years ago
Scott Lahteine cba9c1cf9e Add pre-calculated planner.e_factor 7 years ago
Thomas Moore 600c85226e Normalize load/unload length in M600 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 3e3911fb81 Use planner.leveling_active for all leveling systems 7 years ago
Scott Lahteine ca1e47375c Move fade_scaling_factor_for_z to Planner 7 years ago
Scott Lahteine 9a930ebec2 Make leveling_is_active a macro 7 years ago
Scott Lahteine 1adb5a6a48 Remove obsolete UBL z_offset 7 years ago
Scott Lahteine 03f4891fb9 Remove legacy ADVANCE feature 7 years ago
Scott Lahteine a10451ceed Move Volumetric methods to Planner 7 years ago
Scott Lahteine 1a37ebc76d Move M163-M165 MIXING_EXTRUDER to cpp 7 years ago
Scott Lahteine b464887ea1 Make BARICUDA a feature 7 years ago
Scott Lahteine 4f1eadf41f FILAMENT_WIDTH_SENSOR feature 7 years ago
Scott Lahteine 551752eac7 Consolidate "bedlevel" code 7 years ago
Scott Lahteine bf7af95db3 Move flow_percentage to Planner 7 years ago
Scott Lahteine 722786966a Add gcode.cpp, motion.*, queue.* - Apply to some G-codes. 7 years ago
Scott Lahteine 3d8a0ab4b2 Module updates 7 years ago
Scott Lahteine 0c9231fd04 Move 'module' files 7 years ago