Commit Graph

72 Commits

Author SHA1 Message Date
9ad42d6617 add delay between pulse edges (#10778) 2018-05-19 17:12:16 -05:00
ba4c32eec5 Followup to _AXIS patch 2018-05-13 10:43:35 -05:00
d9154ebdf6 Followup to math patch 2018-05-13 09:30:27 -05:00
883b0c9880 Convert custom maths to inlines (#10728) 2018-05-13 08:10:08 -05:00
08e36e264e Apply _AXIS macro 2018-05-13 06:51:01 -05:00
8f8c6a9bc4 Move get_axis_position_mm to Planner (#10718) 2018-05-12 09:59:11 -05:00
a1062eec5b Better handling of DELAY_NS and DELAY_US (#10716)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-05-12 08:34:04 -05:00
3614e6ce0f Fix Switching Extruder with Linear Advance 2018-05-12 02:26:14 -05:00
306f0f2135 Move Stepper::synchronize to Planner (#10713)
Co-Authored-By: ejtagle <ejtagle@hotmail.com>
2018-05-12 01:38:02 -05:00
722aba77f3 Fix LIN_ADVANCE + SWITCHING_EXTRUDER stepper directions (#10656) 2018-05-09 14:36:09 -05:00
0436e16fb2 Apply shorthand Assembler macros 2018-05-08 10:08:54 -05:00
af1950a63e Improve sync of stepper positions 2018-05-06 01:24:14 -05:00
0c23792344 Apply int32_t to stepper 2018-05-05 18:21:03 -05:00
0c428a66d9 Proper AVR preemptive interrupt handling (#10496)
Also simplify logic on all ARM-based interrupts. Now, it is REQUIRED to properly configure interrupt priority. USART should have highest priority, followed by Stepper, and then all others.
2018-04-23 22:05:07 -05:00
36b97bde9f clear_block_buffer, kill_current_block in quick_stop 2018-04-13 22:04:53 -05:00
57a899a412 [2.0.x] 6th-order jerk-controlled motion planning in real-time for AVR (#10373) 2018-04-11 18:13:42 -05:00
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!)
2018-04-07 21:03:28 -05:00
7d8a46519f Output ABC for delta stepper counts 2018-03-31 20:13:32 -05:00
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
2018-03-21 19:30:06 -05:00
48d7036874 Consolidate smart stepper driver initialization 2018-03-19 22:05:16 -05:00
eaefc1e410 Add CorePQ support for BABYSTEPPING (#10155) 2018-03-19 02:51:40 -05:00
51bf3c9503 Fix E direction for MK2_MULTIPLEXER with LIN_ADVANCE 2018-03-14 07:56:18 -05:00
e7570f3195 Improve TMC config organization, naming 2018-03-14 00:18:41 -05:00
751785fc97 Followup to recent patches
- `M666` is static, not inline
- Disambiguate some stepper macros
2018-03-10 21:41:17 -06:00
16a8edc5f0 Add more delay before pulse off in Linear Advance ISR
A capital idea from https://github.com/MarlinFirmware/Marlin/pull/9914#issuecomment-371614153
2018-03-09 05:26:29 -06:00
98d48fc731 Followup to HAL_timer_restrain
Followup to #9985
2018-03-07 22:18:37 -06:00
a1a88ebabc HAL function to ensure min stepper interrupt interval (#9985) 2018-03-07 17:53:25 -06:00
e5ec793f7e Wrap stepper indirection macros 2018-03-07 05:42:45 -06:00
5b85464791 Fix for LA (#9964)
Missed in the original LA 1.5 PR: eISR has to use a local copy of
current_block->use_advance_lead because it might still run wenn the last
block has been set to NULL.
2018-03-07 05:33:13 -06:00
ca0def766e LIN_ADVANCE single stepper optimization 2018-03-06 19:26:54 -06:00
8291ae34f2 Support duplication mode in LIN_ADVANCE 2018-03-06 19:12:23 -06:00
0dd1c4458d Put more code between pulse start and stop (#9959) 2018-03-05 23:06:57 -06:00
07ae23fe14 No pulse delay on last e_steps in advance isr 2018-03-04 15:06:31 -06:00
ed758de80d tweak comment in stepper.cpp 2018-03-04 04:03:23 -06:00
6d7f4f84e2 Add board MKS_BASE_HEROIC (#9926)
Followup to #9008

- Don't define micro-stepping pins for boards that lack them.
- Allow setting of 128 microsteps with `M350`.
2018-03-03 23:14:52 -06:00
cb4cb86d80 Useless line removed (#9814)
nextAdvanceISR is set in the next if structure in every possible
situation, so it's useless to set it once more before.
2018-02-25 21:20:37 -06:00
813f9f3082 [bugfix_2.0.x] - LIN_ADVANCE V1.5 stepper.cpp (#9797)
Removal of obsolete (i) from port of LIN_ADVANCE from V1.1.x to V2..0.x.
2018-02-24 16:37:23 -06:00
2bd252b501 [2.0.x] LIN_ADVANCE v1.5 (#9712) 2018-02-23 00:53:29 -06:00
3d1692d1fd Fix X2 enable with X_DUAL_STEPPER_DRIVERS
From #9286
2018-02-18 22:50:47 -06:00
03d790451f [2.0.x] HAL timer set/get count => set/get compare (#9581)
To reduce confusion over the current timer count vs. the compare (aka "top") value. Caution: this re-uses the function name, changing its meaning.
2018-02-10 20:42:00 -06:00
d168ee9bed Drop leveling include from steppers.cpp 2018-02-08 01:32:19 -06:00
887664aa61 Restore broken Dual X Carriage 2018-01-20 15:08:50 -06:00
50366b00d5 Tweak cleaning buffer / SD finished command 2017-12-24 20:35:05 -06:00
8df5955da4 Revert "Reset timer count before first block step"
This reverts commit 5cf6a062e3.
2017-12-17 02:37:35 -06:00
0cd1e91056 [2.0.x] TMC driver update (#8769) 2017-12-15 15:03:14 -06:00
cf2193c07f Comment, fix filament width sensor 2017-12-13 02:32:34 -06:00
73e32925e4 References are better for array args 2017-12-11 00:27:06 -06:00
5cf6a062e3 Reset timer count before first block step 2017-12-10 18:38:53 -06:00
82ef6b5242 Add an option to specify "pulse" timer 2017-12-10 18:38:53 -06:00
4fa65a5c25 TCNT0 => HAL_timer_get_current_count
Fix #8710
2017-12-08 22:35:28 -06:00