bubnikv
9acd41a942
Reworked the stepper routine:
...
1) The computational load is spread more evenly along the stepper ISR
ticks by moving some of the timer and linear advance calculation from
the block initialization into the 1st tick of the steady phase
of the trapezoid.
2) Reworked planning of the Linear Advance ISR ticks to fit
the time slot allocated for the main stepper ISR tick. This is achieved
by grouping the Linear Advance extruder ticks by a power of two to tick
the Linear Advance interrupts at a maximum 7kHz. Also some
of the extruder ticks are performed just after the XYZ ticks
and if the remaining time slot for the Linear Advance ticks is too short,
all the Linear Advance steps are ticked inside the main stepper ISR invocation.
3) Added some calls to MSerial.checkRx() if the stepper ISR routine
is delayed for too long by the additional LinearAdvance ticks.
This implementation differs significantly from the original implementation
by @Sebastianv650, as this implementation tries to follow the exact
timing of the XYZ axes with the drawback of possibly ticking the extruder
faster than it could handle, while the original implementation
by @Sebastianv650 ticks the extruder slower with the drawback of possibly
spreading the XYZ ticks, thus introducing jerk in the cartesian movement.
2018-02-02 22:55:50 +01:00
bubnikv
160cdccae1
Merge remote-tracking branch 'remotes/origin/MK3_stepper_blocking' into MK3_fast_dbg
2018-01-20 17:31:26 +01:00
bubnikv
815dfcb14b
Implemented a stepper timer reset after a long blocking cli()
...
or DISABLE_STEPPER_DRIVER_INTERRUPT().
If this is not done, the stepper interrupt would likely overflow,
leading to a maximum 32ms delay before the stepper interrupt wakes up.
In addition, the stepper timer overflow error would be reported
by the debug builds.
2018-01-20 15:39:21 +01:00
bubnikv
17a8e2db01
Documented the interrupt blocking by a main thread by its maximum time.
...
Added a debug output to serial line on stepper timer overflow.
2018-01-20 14:58:30 +01:00
bubnikv
1eac2b4ccb
Fixed a regression error from the last commit regarding Z homing.
...
Removed unused Z_LATE_ENABLE symbol.
2018-01-15 12:00:28 +01:00
bubnikv
7a972fd9b0
Split the stepper ISR routine into multiple inline functions,
...
added an optimized DDA routine for moves with less than 32767 ticks.
2018-01-14 22:37:07 +01:00
bubnikv
30b06488ca
Redefined the DDA step and accumulator values to unions to support
...
access to the low / high words of the 32bit values.
This is a prerequisity for an optimized 16bit only DDA
in case the number of step is lower than 32767.
2018-01-14 17:01:04 +01:00
bubnikv
a1fd50ea9a
Simlified the extruder ticking code.
2018-01-14 14:45:27 +01:00
bubnikv
135dda1bff
Slight optimization of the stepper timer routine.
...
Use WRITE_NC instead of WRITE for writing into the slow ports.
2018-01-12 21:01:01 +01:00
bubnikv
3e6d853364
Debugging of the stepper timer routine. When enabled through
...
DEBUG_STEPPER_TIMER_MISSED, the printer is halted on stepper timer overflow
and an error message is displayed.
2018-01-12 20:51:14 +01:00
Robert Pelnar
c6e77f55f6
checkrx in stepper returned back
...
build 143a
2017-12-30 02:55:22 +01:00
Robert Pelnar
e3c006dbe9
Serial communication uses port0 or port1, not both, removed some suspected code.
...
build 141
2017-12-29 00:06:47 +01:00
Robert Pelnar
c6e10fb903
Removed SG software homming
...
After Calibration Z enabled minstop (SG and PINDA)
TMC2130 code simplification
2017-12-15 14:10:20 +01:00
Robert Pelnar
e8b2043d03
Stack monitor in stepper ISR
2017-12-10 20:38:09 +01:00
PavelSindler
4d9780a3c6
Merged lin adv. fix from MK2
2017-11-14 13:57:32 +01:00
Robert Pelnar
01de834e0d
SG_THR_X = 2, holding currents == running currents
...
Farm preheat menu
dcode D5 - read/write/erase FLASH
dcode D6 - bootloader update test (for new stk500-prusa)
_NO_ASM - MINGW simulator support
fixed bug - "Fil. sensor [on/off]" menu
Build number = 107
2017-11-13 18:45:11 +01:00
Robert Pelnar
cddb0eafb8
PAT9125 - sampled only Y value, new debug code D9125.
...
FSensor - synchronous sampling and new algorithm
build number = 103
2017-10-24 19:45:15 +02:00
michalprusa
1244b195f9
M119 now reports real values of hardware endstops, not SG status.
2017-10-18 18:04:42 +02:00
Robert Pelnar
df1aa85526
Crashdetection + configuration file.
2017-09-22 19:28:32 +02:00
PavelSindler
37d7740e42
Merge pull request #47 from PavelSindler/MK3
...
fan check turn off, saving to eeprom with offset and levels, fan kickstart,2nd heatbed version, fans check modified
2017-09-22 14:39:52 +02:00
bubnikv
72ab17f585
Further fixes of the power panic and g-code & planner queues.
2017-09-22 13:44:10 +02:00
PavelSindler
6eb57da770
fan check can be turned off from support menu, saving parameters to eeprom with offset and different levels, fan kickstart,2nd heatbed version, fans check modified
2017-09-21 15:20:02 +02:00
Robert Pelnar
4cae00741e
MAKER FAIRE
...
filament sensor: runout detection tuning, save/restore print
silent mode: safe mode selection durring printing and after homing
2017-09-21 01:52:28 +02:00
Robert Pelnar
d63045fdb3
TMC2130 stallguard improovment - axis load monitoring, autocalibrate Z.
2017-08-21 13:06:17 +02:00
Robert Pelnar
683784c4c7
PAT9125 I2C, hardware SG homing
...
separate pin configuration file for each board
changed board codes:
RAMBO =100, MiniRambo1.0 =200, MiniRambo1.3 = 203, Einy03 =303, Einy04 =304
2017-08-17 15:23:34 +02:00
michalprusa
06fe85e9ee
Linear Advance
2017-07-07 01:58:02 +02:00
PavelSindler
5943e786ee
Merge remote-tracking branch 'upstream/MK3' into MK3
...
sync with upstream # Please enter a commit message to explain why this merge is necessary,
2017-07-06 13:20:02 +02:00
PavelSindler
54ef2936c7
selftest
2017-07-06 13:19:11 +02:00
XPila
78f7923ab2
Merge pull request #10 from XPila/MK3
...
Changed jerks, disabled oversampling, debug code, commands for seting…
2017-07-06 13:07:37 +02:00
Robert Pelnar
2b24e9ceb3
Changed jerks, disabled oversampling, debug code, commands for seting pwm_ampl and pwm_grad (M917, M918), changed configuration files
2017-07-06 13:06:07 +02:00
PavelSindler
d05e62813a
Merge remote-tracking branch 'upstream/MK3' into MK3
...
sync with upstream
2017-07-03 14:08:39 +02:00
Robert Pelnar
e09f0c64c7
TMC2130 tuning, silent/high power mode
2017-07-03 07:43:50 +02:00
Robert Pelnar
c4307c7373
TMC2130 tunning, overtemp
2017-07-03 00:11:42 +02:00
PavelSindler
db12119b68
position saving and restoring in UVLO
2017-07-02 00:11:21 +02:00
PavelSindler
ae0c64248f
sync with upstream
2017-07-01 19:29:57 +02:00
PavelSindler
c4be651d2b
uvlo initial version
2017-07-01 18:51:02 +02:00
Robert Pelnar
f6a8e1df9d
TMC2130 + software SG homing + LF lineendings + tmc2130 debug M-Codes
...
M910 - tmc2130_init
M911 - set holding currents
M912 - set running currents
M913 - print currents
2017-07-01 12:39:16 +02:00
PavelSindler
43d696659f
3.0.12-RC2 sync
2017-06-29 18:35:43 +02:00
PavelSindler
0578ea527e
fan speed check initial version, selftest updated
2017-06-28 14:24:45 +02:00
michalprusa
21177476ac
StallGuard homing implemented, working
2017-06-17 16:58:36 +02:00
michalprusa
c83b1833bc
Johhny Firmware sync
2017-06-17 15:42:48 +02:00
michalprusa
cabaec95c8
EINY implementation
2017-03-24 20:16:03 +01:00
michalprusa
3faef75a0d
3.0.10 sync
2017-03-24 19:47:50 +01:00
bubnikv
29cb4b2b5d
Removed the non-working pressure advance feature.
...
Improved accuracy of diagonal moves by oversampling the path discretization.
Accelerated the planner by rewriting time critical routines from floating
point to fixed point arithmetics.
2016-09-01 13:09:56 +02:00
michalprusa
307d17422d
3.0.6 sync
2016-08-11 10:42:53 +02:00
michalprusa
30f0528aba
Initial commit
2016-07-22 15:28:01 +02:00