Commit Graph

685 Commits

Author SHA1 Message Date
PavelSindler
8800793dd1 removing debug code 2018-03-04 20:49:34 +01:00
PavelSindler
ad702c6d1f improved algorithm for first hit, improving sensor point changed, just one calibration round for 4point heatbed (no second run for improving measured coordinates) 2018-03-04 20:21:31 +01:00
PavelSindler
15a7699fe0 max error for searching in xy 2018-03-03 20:05:43 +01:00
PavelSindler
1f2c4fc5ad version changed 2018-03-01 15:52:53 +01:00
PavelSindler
644c4f771b
Merge pull request #509 from XPila/MK3
bugfix - beltstatus overflow
2018-03-01 14:49:13 +01:00
Robert Pelnar
fb8a28d120 bugfix - beltstatus overflow 2018-03-01 14:34:21 +01:00
PavelSindler
98f0efbc66 debug 2018-02-28 11:09:34 +01:00
PavelSindler
85bc19b77c force selftest if user upgraded from 3.1.2-RC1 or older fw version 2018-02-27 17:52:13 +01:00
PavelSindler
0d1cafded5 dont improve position of point in first row 2018-02-26 19:26:49 +01:00
PavelSindler
e249e854da dev version: print m114 coordinates when z endstop was triggered 2018-02-26 18:25:47 +01:00
PavelSindler
e2b835b881 version change 2018-02-23 17:53:15 +01:00
Robert Pelnar
4309c8951c fix - false fancheck error at end of print 2018-02-23 17:40:16 +01:00
Robert Pelnar
dfb1ffdba0 Merge remote-tracking branch 'upstream/MK3' into MK3-accurate_homming 2018-02-23 17:13:56 +01:00
Robert Pelnar
73b0349898 fix - Z movement speed in selftest
conditional translation for linearity correction and variable resolution
2018-02-23 16:31:24 +01:00
XPila
af5cfe76b5
Merge pull request #495 from XPila/MK3-accurate_homming
Accurate homing, fix - enabled after selftest.
2018-02-22 20:54:08 +01:00
Robert Pelnar
06da2bb915 Accurate homing, fix - enabled after selftest.
Experimantal menu - conditional translation.
2018-02-22 20:50:34 +01:00
PavelSindler
ae50a1a768 checking fan speed synchronized with block currently processed 2018-02-22 17:12:24 +01:00
Robert Pelnar
49832d4d3b Safety timer (disable heaters after 15min idle) 2018-02-22 16:46:17 +01:00
bubnikv
cff7b9b396 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-22 14:53:10 +01:00
bubnikv
4e3ea41ba4 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-22 14:52:36 +01:00
PavelSindler
d020f48791
Merge pull request #485 from bubnikv/M221_fix
Unified the volumetric_multiplier with extrusion_multiply to improve
2018-02-22 14:17:09 +01:00
PavelSindler
03a1bef4ee
Merge pull request #489 from PavelSindler/xyz_corrections_3
typo fixed
2018-02-22 13:41:22 +01:00
PavelSindler
819f2fd2b3 typo fixed 2018-02-22 13:40:31 +01:00
XPila
30bb84a7a7
Merge pull request #487 from PavelSindler/eeprom_printer_versions
Eeprom hw versions
2018-02-22 11:48:26 +01:00
XPila
ad33d3efd1
Merge pull request #488 from PavelSindler/xyz_corrections_3
Xyz corrections
2018-02-22 11:48:06 +01:00
PavelSindler
edc6366df2
Merge pull request #479 from PavelSindler/z_cal_fix
x_max_pos correction
2018-02-22 10:47:24 +01:00
PavelSindler
7a31fc5b6e
Merge pull request #486 from XPila/MK25
Pinout, conditional translation and variant file for MK2
2018-02-22 10:45:56 +01:00
PavelSindler
90e00b56a5 some defines moved to another position 2018-02-22 10:42:02 +01:00
PavelSindler
a4b3389dfa M45 verbosity, steel sheet define, minor modifications in xyz cal 2018-02-22 10:38:46 +01:00
PavelSindler
0fb471f528 whitespace 2018-02-22 00:11:17 +01:00
PavelSindler
0323af531d printer types and motherboard types added to eeprom; min extrude temp lowered because of woodfil 2018-02-22 00:09:12 +01:00
Robert Pelnar
c5175e97ec Pinout, conditional translation and variant file for MK2 2018-02-21 15:19:34 +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
XPila
74e6ff67d3
Merge pull request #482 from bubnikv/M221_fix
M221 fix
2018-02-20 19:10:07 +01:00
Robert Pelnar
66161062cf Homing accuracy calibration in selftest. 2018-02-20 19:02:55 +01:00
Robert Pelnar
e2e48bfd71 SD speed test (DEBUG)
homeaxis - fix set_destination_to_current
2018-02-20 18:50:20 +01:00
Robert Pelnar
d91dbc73c9 tmc2130 - optimalization, removed unused code 2018-02-20 17:06:37 +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
PavelSindler
43b8b125bc calibration points/offset corrections 2018-02-19 11:38:52 +01:00
PavelSindler
4457961d40 x_max_pos 2018-02-19 01:03:13 +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
08c59419da
Merge pull request #468 from PavelSindler/M600_currents
M600 unload current
2018-02-12 09:41:13 +01:00
Robert Pelnar
081b3852fc Menu - encoder position stack 2018-02-09 20:26:42 +01:00
Robert Pelnar
31e6271b2c Voltage measurement - conditional translation 2018-02-08 21:07:17 +01:00
Robert Pelnar
b08636c554 fix - conditional translation for DEBUG build 2018-02-08 18:56:15 +01:00
PavelSindler
80f353e8ff Z_MAX_POS 2018-02-08 16:52:05 +01:00
PavelSindler
a719ae1b01 whitespace 2018-02-08 16:33:43 +01:00
PavelSindler
ebe1c10423 lower current for unload 2018-02-08 16:32:27 +01:00
PavelSindler
9c4ce3623d M600 unload current 2018-02-08 16:11:51 +01:00
PavelSindler
29978c4126 TACH_1 must be defined to enable print fan error 2018-02-07 11:10:04 +01:00
PavelSindler
b202f2b297 version changed 2018-02-06 17:04:35 +01:00
PavelSindler
0c98ec5f6b selftest, max endstops undefined, initialization of extruder fan, y offset from extruder 2018-02-06 17:01:09 +01:00
PavelSindler
abf956b86f init 2018-02-06 09:19:27 +01:00
PavelSindler
df754a322b MK25 merge Xpila's changes 2018-02-06 08:33:26 +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
Robert Pelnar
8216b7777f hex files for MK2.5 and MK3
Configuration_prusa.h for MK2.5
2018-02-01 20:15:15 +01:00
Robert Pelnar
8562235440 MK2.5 port - compilable version 2018-02-01 20:08:11 +01:00
PavelSindler
d92f6292aa unload with lowered current 2018-02-01 17:43:03 +01:00
Robert Pelnar
f40b8a2186 MK3 configuration files, renamed EINY to EINSY 2018-02-01 17:10:41 +01:00
Robert Pelnar
f46d36a1d4 removed unused files (pins, variants) 2018-02-01 16:39:56 +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
PavelSindler
188116cb7e Preheat temperatures update 2018-01-22 16:03:43 +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
3efd90a9ea Merge branch 'MK3_stepper_lowres' into MK3_fast_dbg 2018-01-20 17:27:58 +01:00
bubnikv
5deee8f42c Merge remote-tracking branch 'remotes/upstream/MK3' into MK3_stepper_lowres 2018-01-20 17:24:12 +01:00
bubnikv
a94e266cf1 Documented CPU load and frequency of the following interrupts:
9.  ISR(INT7_vect) 			- Fan signal interrupt
26. ISR(M_USARTx_RX_vect)	- USB to serial RX
37. ISR(USART1_RX_vect)		- R-PI serial RX
2018-01-20 16:20:51 +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
9e534c1990 Minimize risk of stepper routine interrupt blocking by reorganizing
the routine to move the G-code line length from the command queue
to the planner queue.
2018-01-20 14:37:22 +01:00
bubnikv
7edce0b890 Only show the debug menu in the DEBUG_BUILD. 2018-01-18 16:43:40 +01:00
bubnikv
330f1576fc Support for debug builds:
A build version and repository is displayed on the welcome screen,
D-codes, stack overflow check and stepper timer overflow check
are enabled in the debug mode.
2018-01-18 16:24:25 +01:00
PavelSindler
b5f8b1d97c
Merge pull request #412 from PavelSindler/debug_version
initial message for debugging fw version
2018-01-18 13:18:16 +01:00
PavelSindler
e60cb2a79e unload filament sequence same as in M600 2018-01-17 21:54:34 +01:00
PavelSindler
4843f2c48e initial message not shown on release candidate versions 2018-01-17 17:38:34 +01:00
PavelSindler
bfa675c1a4 initial message for debugging fw version 2018-01-17 16:00:19 +01:00
PavelSindler
b73520bcea successfull -> successful 2018-01-17 14:40:37 +01:00
Robert Pelnar
36e4e39c85 3.1.1-RC5 build 148 2018-01-16 19:25:09 +01:00
XPila
515420ce06
Merge pull request #407 from PavelSindler/MK3_for_merging
maiden eeprom: tmc2130_mode is set to normal
2018-01-16 17:10:38 +01:00
Robert Pelnar
c2710fea63 crashdetection limits changed (X=48, Y=64) 2018-01-16 17:04:21 +01:00
PavelSindler
fbf947b75c maiden eeprom: tmc2130_mode is set to normal 2018-01-16 16:56:58 +01:00
Robert Pelnar
6b5f9253d6 build 147 2018-01-16 16:50:05 +01:00
XPila
026f68fd6f
Merge pull request #404 from PavelSindler/xyz_fixes
xyz homing hotfix, xyz cal. status changed
2018-01-16 01:39:57 +01:00
XPila
9efa1d3a03
Merge pull request #403 from PavelSindler/M600_update
timeout fix and unload message shortened
2018-01-16 01:39:18 +01:00
Robert Pelnar
f30da4bbca babystep synchronisation 2018-01-16 01:34:44 +01:00
PavelSindler
06c6cc119b xyz homing hotfix, xyz cal. status changed 2018-01-16 01:00:09 +01:00
PavelSindler
d8117eab66 timeout fix and MSG_UNLOAD_SUCCESSFULL message shortened 2018-01-15 17:39:42 +01:00
Robert Pelnar
981a681e52 Temperature ISR synchronization, M600 - faster unload 2018-01-15 17:29:07 +01:00
XPila
9d52d017df
Merge pull request #401 from PavelSindler/rx_buffer
get command update
2018-01-15 15:28:19 +01:00
XPila
87ffb0b193
Merge pull request #400 from PavelSindler/M600_update
M600 update
2018-01-15 15:27:41 +01:00
Robert Pelnar
aaf4e0a5e0 fixed bug - fsensor synchronization (b146) 2018-01-15 15:23:06 +01:00
PavelSindler
1d3f6e8be5 flush rx buffer in case that it was full 2018-01-15 12:18:21 +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
PavelSindler
9e7686b77f unload changes reverted back 2018-01-15 11:35:49 +01:00
PavelSindler
c36af887b7 M600 has timeout for nozzle, different procedure for unload 2018-01-15 11:30:28 +01:00
Robert Pelnar
9aedaa8fe7 build 146
hard limits
fsensor overflow fix
2018-01-14 23:59:43 +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
PavelSindler
3201fd1538 removed duplicit comment 2018-01-14 19:36:30 +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
Robert Pelnar
552b1f03b1 build 145
fixed - finishstatus declaration
2018-01-13 19:16:09 +01:00
XPila
78d6088d48
Merge pull request #392 from PavelSindler/fail_stats
filament fails counter fix
2018-01-12 22:23:18 +01:00
PavelSindler
8bd84ba4fd
Merge pull request #396 from XPila/MK3
Mk3
2018-01-12 22:08:50 +01:00
bubnikv
5ed9233abc Missed a bit with the last commit. 2018-01-12 22:01:53 +01:00
Robert Pelnar
530dfba417 Status message limit (PFW-124) 2018-01-12 21:21:21 +01:00
bubnikv
82304a2268 Slight optimization of the fan speed interrupt routine by accessing
the Arduino millis() without locking interrupts.
2018-01-12 21:16:29 +01:00
Robert Pelnar
ebf6d08fae Crash detection - message on lcd (PFW-115) 2018-01-12 21:02:49 +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