Commit Graph

4919 Commits

Author SHA1 Message Date
3d-gussner
2281bd1ef7 Merge branch 'PFW-1189' of https://github.com/3d-gussner/Prusa-Firmware into PFW-1189 2021-04-23 13:04:54 +02:00
3d-gussner
032e8a5957 @leptun strip 1st char hack for duplicate Cancel 2021-04-23 13:03:59 +02:00
D.R.racer
346044063a Fix length of some CZ messages 2021-04-23 12:48:25 +02:00
Yuri D'Elia
90a9e350c0 Remove warnings caused by '\x00'
Manually unescape '\x00' for the time being, removing spurious warnings.
2021-04-23 12:37:54 +02:00
Yuri D'Elia
2e6e2c4fde Do not output colors when redirecting output 2021-04-23 12:29:57 +02:00
Yuri D'Elia
8b5d01e3b1 Be more strict when checking translation lenght
Strip quotes immediately so that we can measure strings easily.
For single-line strings, check the translation lenght correctly.
2021-04-23 12:18:50 +02:00
Yuri D'Elia
a9f0ff441d Allow to customize OUTDIR in config.sh
Useful for custom build trees.
2021-04-23 12:15:48 +02:00
3d-gussner
403b340f19 Added EXTENDED_M20 to RepRap Gcode wiki M115 see https://reprap.org/mediawiki/index.php?title=G-code&type=revision&diff=189034&oldid=189033 2021-04-23 11:02:42 +02:00
3d-gussner
28aec049a2 Fix Typo in MSG_FIL_FAILED 2021-04-23 09:41:12 +02:00
3d-gussner
ff9185d1bb Readded >Cancel as the > has some meaning. Sadly the previously 10bytes more free space are gone again 2021-04-23 08:50:50 +02:00
3d-gussner
044c0a0a6a Update "\04Refresh" message as two "abcd" "efgh" in one line cause issues in lang-build scripts 2021-04-23 08:49:22 +02:00
3d-gussner
8eeb177c7e Use textwarp to check the message length and rows
@DRracer: Added origial English text to the output, added cols and rows as well
2021-04-23 08:46:32 +02:00
3d-gussner
e18d688b64 Fix merge issues 2021-04-22 20:48:26 +02:00
3d-gussner
681bc560c9 Merge remote-tracking branch 'upstream/MK3_3.10.0' into PFW-1189 2021-04-22 20:43:54 +02:00
DRracer
be776f88f2
Merge pull request #3124 from prusa3d/MK3
Sync MK3 -> MK3_3.10.0
2021-04-22 13:31:56 +02:00
DRracer
999b93be35
Merge pull request #3123 from prusa3d/MK3_3.10.0
MK3 3.10.0
2021-04-22 12:53:26 +02:00
DRracer
00ce16ee55
Merge pull request #3121 from wavexx/reduce_m600_min_height
Revert/cleanup mininum extruder height during M600
2021-04-22 11:43:18 +02:00
DRracer
1e0fd8af87
Merge pull request #3120 from wavexx/fix_lcd_redraw_autoload
Fix partial redraw during filament autoload
2021-04-22 10:36:40 +02:00
DRracer
98643825dc
Merge pull request #3055 from awenelo/add-satin-sheet
Add satin sheets
2021-04-22 07:13:32 +02:00
Yuri D'Elia
daef5428d2 Rework gcode_M600_filament_change_z_shift to make it consistent
gcode_M600_filament_change_z_shift is almost useless, since it performs
what is already been done internally by filament_unload().

However it *does* cause the carriage to raise earlier during unload
compared to making the user wait after "press for unload".

Change it so the calculated Z height matches MIN_Z_FOR_SWAP.
2021-04-21 19:12:26 +02:00
Yuri D'Elia
8d04316497 Revert/cleanup mininum extruder height during M600
This change restores the minimum extruder height for filament purge
during M600 from the current 50mm back to 27mm from FW 3.9.

We do this by introducing a new option for unload_filament() to indicate
that the unload is part of an automatic swap, and in such cases avoid
raising more than absolutely necessary (this will _also_ come in handy
to avoid the extra purge in PR #2318 during M600).

A new define MIN_Z_FOR_SWAP is introduced for this purpose.
MIN_Z_FOR_UNLOAD is still used for manual lcd unload and for M702 and
hasn't been changed.
2021-04-21 19:07:58 +02:00
Yuri D'Elia
bc355674d9 Fix partial redraw during filament autoload
If the printer was already being pre-heated but didn't reach the target
temperature yet and a new filament is being inserted, the LCD used to
display a "Preheating to load" message to block the loading until the
extruder is hot.

This message is currently missing, and the ">Cancel" option doesn't
display immediately either, depending on the extruder height.

This PR fixes this behavior, which was broken during an earlier update.

We now force-update LCD updates during the first (and _only_) time the
screen is setup, and push all messages _before_ the carriage is
eventually raised, so that ">Cancel" is shown immediately as well.
2021-04-21 16:56:16 +02:00
DRracer
bdeecd4fee
Merge pull request #3116 from prusa3d/MK3_3.10.0
Merge MK3_3.10.0
2021-04-21 16:22:22 +02:00
DRracer
84a9a5fd3f
Merge pull request #3113 from leptun/MK3_M20L_change_format
M20 L updated format and first implementation of timestamp reporting (M20 T)
2021-04-20 08:24:07 +02:00
Alex Voinea
7d82cab125
Update doxygen 2021-04-20 09:16:56 +03:00
Alex Voinea
c4b70b82f3
Document M20 T parameter 2021-04-20 09:13:38 +03:00
Alex Voinea
1c0383c48f
Add capability report for extended M20 2021-04-20 09:03:22 +03:00
D.R.racer
7011014abb Save 16 bytes - pass ls_param by value to functions
... as ls_param is a 1-byte structure it is more conservative to pass it
to functions by value than by a pointer
2021-04-20 06:50:37 +02:00
Voinea Dragos
2129bcf315 M20 T 2021-04-19 14:48:50 +03:00
Voinea Dragos
b16e1e5235 Invert size and LFN in M20 L output 2021-04-19 13:54:43 +03:00
Voinea Dragos
6d7d8c7c75 Do not show hidden/system dirs with M20 L 2021-04-19 13:31:30 +03:00
DRracer
10de97c042
Merge pull request #3110 from prusa3d/MK3_3.10.0
merge MK3_3.10.0 into MK3
2021-04-19 10:07:42 +02:00
Yuri D'Elia
a5e4df390d Sync before/after setting mesh_bed_leveling_flag/homing_flag
mesh_bed_leveling_flag and homing_flag should be set only when the
planner is empty as a consequence of #3100, since any operation executed
*while* the mbl/homing flag is set is considered part of the compound
instruction that generated it (G80, G28, G30, G76).

Failure in doing so can result in instructions just prior being lost,
since they're incorrectly discarded (assumed to be redone).

G1  ; lost ..
G80 ; .. if PP happens here
2021-04-19 06:31:57 +02:00
Yuri D'Elia
23c75da727 Fix Crash/PP recovery position on instructions with comments
PR #2967 altered the way ``sdpos_atomic`` was set, causing issues in the
crashdetect/powerpanic recovery offset if the instruction being
recovered happens to contain a comment.

Previously ``sdpos`` was assumed to be a single byte prior to the last
read character. sdpos+1 would thus position the index to the next
instruction. With gcode-filtering in place, sdpos is left just before
the comment, while the actual read position is at the newline. This
causes to parser to resume in the middle of the comment.

Change the value returned by cardreader::get_sdpos() to always return
the last read position, as everybody expects (!!).

This avoids the +1, and correctly sets the resume position to the next
valid instruction without overhead.
2021-04-19 06:30:37 +02:00
D.R.racer
c43688a549 Version changed (3.10.0-RC2 build 4104) 2021-04-16 13:52:36 +02:00
DESKTOP-AFI832L\admin
5a91e1de4d Calibration: fix checking of scan of calibration points
PFW-1223
2021-04-14 06:25:18 +02:00
Voinea Dragos
7356cd0811 EEPROM_JOB_ID 2021-04-09 08:09:51 +02:00
DRracer
f9f6284c50
Merge pull request #3100 from wavexx/powerpanic_state_fixes
Fix PowerPanic and Crash Detection during homing and bed leveling
2021-04-07 18:19:50 +02:00
Yuri D'Elia
61faa49cbb Fix buffer overflow in buf
Fix cmd overflow introduced in 186ce0f.

With a precision of %f being .6 and assuming a maximum (theoretical)
acceleration of 99999 we need 47 bytes including terminating byte.

Round it to 48
2021-04-07 15:57:50 +02:00
Alex Voinea
d31601dcb8 Use correct mfrid for gd25q20c 2021-04-06 10:16:47 +02:00
Alex Voinea
94c1e65d83 Fix MK2.x builds 2021-04-06 10:16:47 +02:00
Alex Voinea
56948157d0 GD25Q40C xflash support 2021-04-06 10:16:47 +02:00
Alex Voinea
07bf4bbe48 Fix gd25120c rd_uid command 2021-04-06 10:16:47 +02:00
Alex Voinea
9454f9d8ec Rename w25x20cl to xflash 2021-04-06 10:16:47 +02:00
Yuri D'Elia
449d181971 G80: handle power panic
This is handled in the same way crash detection is handled: homing/mbl
invalidates saved_target _and_ current position.

Fixes PP recovery during MBL and homing.
2021-04-06 02:20:00 +02:00
Yuri D'Elia
b46a52ffa8 G80: Handle crash detection
At a higher level, crash detection will repeat the last gcode command.

Some commands such as G28 or G80 need to be repeated in full and require
special handling.

In such cases, do not store the saved target coordinate (which is fake
in such cases) and invalidate the saved position.

This fixes the last coordinate of the first G1 move after recovery.

We also avoid moving from the origin when the saved position is
invalidated, which is not strictly necessary, but saves some time.
2021-04-06 02:00:47 +02:00
Yuri D'Elia
a5530593fa G80: preserve lcd status and message when aborting
Restore the old status just before returning, so that the subsequent G80
can restore the first (initial) message correctly.
2021-04-06 00:31:56 +02:00
Yuri D'Elia
5923276a86 G80: correctly abort during crash detection
Crash detection is handled at a higher level (which automatically
repeats the current command), however we still need to abort the current
command correctly.

Handle XY crashes by checking the planner status after st_synchronize().
2021-04-06 00:31:29 +02:00
Yuri D'Elia
5da39df968 G80: Use consistent XY axis feedrate 2021-04-06 00:10:33 +02:00
Yuri D'Elia
ce2e35d14d Move G80 into it's own function
No actual changes done in the function in this, besides break->return.

In G28, simply call the new function instead of using goto, making the
code more readable.

Also remove the senseless comments in G28 about command queuing (dating
back to when G80 was queued instead of being executed).
2021-04-05 23:35:17 +02:00