Commit Graph

531 Commits

Author SHA1 Message Date
bubnikv
11e7eb27ee Merge remote-tracking branch 'remotes/origin/M221_fix' into MK3_fast_dbg 2018-03-05 19:13:07 +01:00
bubnikv
ba49c21f17 Unified the volumetric_multiplier with extrusion_multiply to improve
numeric accuracy and to reduce compuatitonal load. With this commit,
the numeric rounding is fixed not only for the M221 G-code
(as implemented by the preceding commit), but also for the volumetric
extrusion in general.

Removed the old FILAMENT_SENSOR code, which served the purpose
to modulate the volumetric multiplayer in real time depending
on the measured filament diameter. This feature will certainly not be
used by Prusa Research in the near future as we know of no sensor,
which would offer sufficient accuracy for a reasonable price.
2018-02-21 11:25:21 +01:00
bubnikv
ee5949c56e Fix of a loss in precission when the extruder multiplier is set
with M221. For 50um layers, the precision loss leads to holes
in the print.
2018-02-20 15:30:18 +01:00
bubnikv
403ed26d47 Merge remote-tracking branch 'remotes/upstream/MK3' into MK3 2018-02-20 15:21:44 +01:00
Robert Pelnar
dff8c29362 Microstep linearity correction, optimized wave compression.
Correction factor can be adjusted from 0.9 to 1.25 by 0.005 steps.
2018-02-17 19:58:40 +01:00
Robert Pelnar
57499dc6a0 M350 for E axis (8, 16, 32, 64, 128 microsteps) 2018-02-15 15:40:49 +01:00
bubnikv
dd2468d306 Avoid the stepper interrupt being missed by extending the tick time
beyond the current time. This is a trick borrwed from upstream Marlin.

In debug mode, watch for the missed stepper interrupt ticks where the interrupts
are missed by more than 20% of the 10kHz stepper interrupt repeat rate,
and show the statistics (number of missed ticks and by how many micro
seconds was the interrupt missed, and what was the maximum missed
interrupt delay) on the display and send it to the serial line.
2018-02-15 11:44:19 +01:00
Robert Pelnar
79caf3d9c6 tmc2130 optimalization, accurate homing and microstep linearity correction
dcode D12 removed (no longer needed)
homeaxis optimized + xy home calibration support
new eeprom variables
new lcd menu edit types (byte3, mres, wfac), new menu "Experimental"
currents adjusted
2018-02-15 04:17:58 +01:00
PavelSindler
33aa3d5e7d commint nr 2018-02-05 16:56:31 +01:00
PavelSindler
3bd892135a erase eeprom section which belongs to M500 gcode in case that version was changed and default settings are used 2018-02-05 16:49:06 +01:00
bubnikv
2babbb3b11 Enabled linear advance. 2018-02-02 22:56:13 +01:00
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
9652cf2d5b Merge branch 'MK3' into MK3_fast_dbg 2018-02-02 20:51:57 +01:00
bubnikv
9379430f8c A bit of documentation. 2018-02-02 20:45:45 +01:00
bubnikv
c2950b01a6 Added macros for outputting serial data onto the logical analyzer line
at 2 megabaud, 9bits, 1 stop bit. At this high rate the serial output
takes next to no time, so it does not slow down the debugged firmware
too much, and the data is nicely aligned with the other debug signals
on the logical analyzer screen.
2018-02-02 20:42:09 +01:00
bubnikv
3b312a42f8 Adjusted the features for the debug buid:
Removed DEBUG_DISABLE_STARTMSGS. This macro defeats the purpose
of the build server and the build messages of the non-release builds.

Removed DEBUG_DUMP_TO_2ND_SERIAL for performance reasons.
2018-02-02 20:37:03 +01:00
bubnikv
485355274e Optimized the MarlinSerial class by declaring all methods static.
The MarlinSerial defines no member variable, though the AVR GCC
stored a "this" pointer onto stack when calling the non-static
methods anyway.
2018-02-02 20:25:19 +01:00
PavelSindler
36536044f4 version changed 2018-02-02 17:48:02 +01:00
Robert Pelnar
4d8807e924 bugfix - failstats (total counters) reset to zero for empty eeprom (0xff) 2018-02-02 15:59:37 +01:00
PavelSindler
2dd2c971e2 whitespace 2018-02-01 20:25:19 +01:00
PavelSindler
84f7d057f3 fw version check: FW_VERSION string is case insensitive (parsing RC works) 2018-02-01 20:23:45 +01:00
PavelSindler
d92f6292aa unload with lowered current 2018-02-01 17:43:03 +01:00
PavelSindler
a256a8ff19
Merge pull request #450 from XPila/3.1.1-RC6
filament sensor additional check after runout (3mm back, 3mm forward …
2018-02-01 12:20:59 +01:00
Robert Pelnar
e20ee149b0 filament sensor additional check after runout (3mm back, 3mm forward @200mm/min) 2018-01-31 21:10:41 +01:00
PavelSindler
9d8191323b
Merge pull request #440 from XPila/3.1.1-RC6
Extruder stealthChop and constant-off-time mode.
2018-01-31 20:21:02 +01:00
XPila
822dd8ff9c
Merge pull request #448 from PavelSindler/eeprom_versions
EEPROM version change: inform user on LCD that default settings were loaded
2018-01-31 20:06:19 +01:00
XPila
beb3a507d3
Merge pull request #441 from PavelSindler/send_OK
PID cal. is not sending OK periodically, print fan error pauses print…
2018-01-31 20:03:08 +01:00
Robert Pelnar
adc69eda18 PINDA temp. calibration warning messages. 2018-01-31 17:03:33 +01:00
Robert Pelnar
1a01282e33 cardreader - new member "paused"
tmc2130 - decreased crash sensitivity for Y
2018-01-31 15:20:27 +01:00
Robert Pelnar
4c5618c371 failstats - reset "last print" counters
card - new member variable "paused" (bool)
2018-01-31 15:09:36 +01:00
Robert Pelnar
daaac2fb88 fail stats 2018-01-30 19:49:40 +01:00
Robert Pelnar
210b97d16d New fail stats (global, last print), crashdetection X and Y separated 2018-01-30 13:10:36 +01:00
PavelSindler
88f248cb77 Inform user that hardcoded default settings were loaded (EEPROM version change) 2018-01-30 11:31:44 +01:00
PavelSindler
cbcfcee48f PID cal. is not sending OK periodically, print fan error pauses print in octoprint (not disconnecting), initialize serial line when swithing in settings menu 2018-01-25 15:23:11 +01:00
Robert Pelnar
39bd5c3a1d Extruder stealthChop and constant-off-time mode.
Extruder different chopper frequency in spreadcycle.
Dcodes (fix)
2018-01-25 05:13:21 +01:00
TheZeroBeast
f4073120ef -m Added Encoder Fix changes 2018-01-25 06:49:28 +10:00
Robert Pelnar
cae68d9f6d Extruder resolution changed to 32usteps
build 151
2018-01-24 01:41:42 +01:00
XPila
556205d993
Merge pull request #432 from PavelSindler/invalid_gcodes
invalid / unknown gcodes reported on serial
2018-01-24 00:12:47 +01:00
XPila
975ed14cb6
Merge pull request #431 from PavelSindler/fan_error_resume
SD card long pause update
2018-01-24 00:12:33 +01:00
XPila
110ab8b2f6
Merge pull request #426 from PavelSindler/temperatures_update
Preheat temperatures update
2018-01-24 00:11:59 +01:00
XPila
b2ba72ffcd
Merge pull request #411 from PavelSindler/typo_fixed
typo fixed
2018-01-24 00:10:28 +01:00
XPila
777dcf072b
Merge pull request #430 from bubnikv/MK3_fsensor_fullrate
Optimization of the filament sensor.
2018-01-24 00:10:00 +01:00
PavelSindler
70ff22571f minor change 2018-01-23 20:04:18 +01:00
PavelSindler
3adedb558b invalid / unknown codes reported on serial 2018-01-23 20:01:02 +01:00
PavelSindler
64a709c097 removed temporary debuging code 2018-01-23 19:14:52 +01:00
PavelSindler
05e0abbd9d startFileprint delayed 2018-01-23 19:11:04 +01:00
bubnikv
44dc12005f Optimization of the filament sensor. 2018-01-23 16:47:42 +01:00
PavelSindler
c38458eb67 init 2018-01-23 16:21:43 +01:00
XPila
09e0c566e8
Merge pull request #420 from bubnikv/MK3_stepper_blocking
Mk3 stepper blocking
2018-01-23 13:15:59 +01:00
bubnikv
69f97e0ec3 Separated the "Unknown" build from the "Development" build.
Documented purpose of the various build types.
2018-01-22 17:41:05 +01:00