Commit Graph

1346 Commits

Author SHA1 Message Date
3d-gussner
79a148bb14 Update #MSG_DEFAULT_SETTINGS_LOADED c=20 r=6
as Italian translation is longer
2021-03-19 18:34:39 +01:00
3d-gussner
8cbf0b3318 Update "Crash detected. Resume print?" c=20 r=2 2021-03-19 16:38:53 +01:00
3d-gussner
cbe2a4d301 Update MSG_CHECK_IDLER c=20 r=5 2021-03-19 16:22:05 +01:00
3d-gussner
ce42f2c2a5 Update MSG_BED_HEATING_SAFETY_DISABLED c=20 r=4 2021-03-19 16:11:42 +01:00
3d-gussner
18a58c504d Update #MSG_BED_HEATING_SAFETY_DISABLED c=20 r=3 2021-03-19 15:21:42 +01:00
3d-gussner
37ec18596b Update #MSG_USERWAIT c= value 2021-03-19 14:29:15 +01:00
3d-gussner
dd4c02aa15 Update "Heating disabled by safety timer." c= r= values 2021-03-19 14:23:46 +01:00
DRracer
8ac1d5b95e
Attempt to workaround the M73 C0|D0 visual issue (#3067)
Attempt to workaround the M73 C0|D0 visual issue

This is an attempt to enable alternation of time to print finish and time
to color change even in the last minute of time to color change, i.e. be
able to print "0:00C".

The proposed solution leverages the capability of the current FW to read
float values from the C|D parameter. This could have the raw benefit of
being able still to alternate this time on the LCD as "0:00C" (or
"<1min") if the slicer sends a non-zero but <1 time right before the
color change.

Co-authored-by: D.R.racer <drracer@drracer.eu>
Co-authored-by: 3d-gussner <3d.gussner@gmail.com>
2021-03-19 10:18:28 +01:00
3d-gussner
6355458052 Add def M120_M121_ENABLED to Configuration_adv.h 2021-03-11 15:00:49 +01:00
3d-gussner
832e881955 Disable M120 M121 2021-03-10 17:46:19 +01:00
DRracer
c1849f5cc2
Merge pull request #2405 from leptun/MK3_NEW_SD_COMPILATION
️New SD menu
2021-03-03 11:45:04 +01:00
DRracer
e9c3becb2c
Merge pull request #2572 from wavexx/fwretract_plan_sync
Always sync before manipulating the planner position in FWRETRACT
2021-03-01 08:26:57 +01:00
Alex Voinea
6e0ecf5cd2
Remove redundant click sound in factory reset (MK3 merge issue) 2021-02-26 18:22:32 +02:00
Alex Voinea
194438c130
Fix formatting 2021-02-26 09:54:57 +02:00
Alex Voinea
7faffa539a
Merge branch 'MK3' into MK3_NEW_SD_COMPILATION 2021-02-26 09:48:46 +02:00
Alex Voinea
204da1cc3f
Factory reset and check_file progress bar 2021-02-25 21:04:05 +02:00
Yuri D'Elia
ff4e53d2d1 Prevent babysteps in more unsafe situations through homing_flag
Further restrict babystep insertion when the lcd_update is enabled by
toggling homing_flag when probing Z (where Z shouldn't be touched
anyway as it would disrupt the measurement)

Also reset the encoder value during mesh leveling.
2021-02-25 16:44:16 +01:00
Yuri D'Elia
c241adec5f Ensure babystep_apply|undo always uses the planner
The code around these calls _requires_ that the steps are immediately
processed and/or added to the subsequent planner moves.

The only part that doesn't care about immediate insertion is the
direct user-insertion though the lcd encoder.
2021-02-25 16:44:16 +01:00
DRracer
7b22895f23
Merge pull request #3032 from DRracer/service-prep2
Make a special welcome message for Shipping/Service prep.
2021-02-25 08:51:47 +01:00
DRracer
9ed713ab13
Merge pull request #3015 from 3d-gussner/PFW-1174
PFW-1174: Add pause/resume for USB/host prints via LCD menu
2021-02-25 08:50:41 +01:00
3d-gussner
08a6a4b25e Enable Filament sensor action during print even if in Support::Sensor info 2021-02-23 15:19:03 +01:00
3d-gussner
9110ffd4ae Revert M602 2021-02-22 16:36:21 +01:00
3d-gussner
a109d20506 Merge remote-tracking branch 'upstream/MK3' into PFW-1174
Fix merge issues
2021-02-18 11:05:31 +01:00
3d-gussner
c1d8e6660b Indentations 2021-02-18 10:07:40 +01:00
DRracer
adf347fdf1
Merge pull request #3034 from 3d-gussner/MK3_PFW-960
PFW-960 Improve M0/M1/M117
2021-02-18 09:59:01 +01:00
3d-gussner
291ee8e46d Indentations 2021-02-18 09:53:14 +01:00
3d-gussner
75a385d614 Indentations 2021-02-18 09:10:28 +01:00
3d-gussner
2b4cf8d56e Fix FANCHECK build error 2021-02-17 13:52:31 +01:00
D.R.racer
c3bea4d71c Make a special welcome message for shipping/service prep
Another request from our Service dept. - the user shall be prevented
from skipping the intro wizard, because otherwise some preset/calibrated
features will look like not done - especially live-z calibration.

And since there are users, who send a machine to service to perform 1st
layer calibration only, they must not omit the Z-calibration at the
start after shipping.
2021-02-17 12:53:56 +01:00
DRracer
7a84ad71dc
Merge pull request #3023 from DRracer/service-prep
Add Service prep. item into Factory reset
2021-02-17 10:43:08 +01:00
D.R.racer
dbb0269bd4 Make indentation consistent with surrounding code in factory_reset() 2021-02-17 08:27:49 +01:00
3d-gussner
afc15b42bb Indentations 2021-02-17 08:13:32 +01:00
3d-gussner
59c2b7e795 Fix Fan error issues. 2021-02-17 07:42:12 +01:00
3d-gussner
66ea1bdfba Indentations 2021-02-16 12:31:23 +01:00
3d-gussner
583993b7e2 Back to "Status" after gcode M0/M1 2021-02-15 15:25:04 +01:00
3d-gussner
25928232e4 Merge remote-tracking branch 'upstream/MK3' into MK3_PFW-960 2021-02-15 13:06:47 +01:00
3d-gussner
9071a9f8fd Gcode M1 must have a string while M0 it is optional
As the `M0/M1` moved to the beginning of the parser
- parser would not be able to "find" `M1nn` command if the query was `M1` instead of `M1 `
- to be able to "stop/halt" without sending a string and display default message use gcode `M0`
- as there are no `M0nn` gcodes the parser can query `M0` without additional space needed as in `M1 `
2021-02-15 12:51:12 +01:00
3d-gussner
c95a8e13d7 Fix indentations to 4 spaces per tab 2021-02-12 11:47:02 +01:00
3d-gussner
b13d4b71d4 Add Change time behind existing message 2021-02-11 07:47:44 +01:00
3d-gussner
d063ffb141 Add parameter D to gcode M73 for silent/stealth mode 2021-02-11 07:47:43 +01:00
3d-gussner
91c767b0f2 Reduce code size 2021-02-11 07:47:43 +01:00
3d-gussner
ae48e7c3ce indentation 2021-02-11 07:47:43 +01:00
3d-gussner
f4ca6ee59d Fix typo 2021-02-11 07:47:43 +01:00
3d-gussner
cca90da64b Include silent mode on time change
- depends on difference between print time remaining NORMAL vs SILENT mode
2021-02-11 07:47:43 +01:00
3d-gussner
cb61436093 Add remaining time to change/pause/user interaction to LCD Info screen
- Add parameter `C` to gcode `M73`
- LCD Info screen switches to change time if last `M73` gcode contains `C` parameter
  - Examples:
    - `M73 P5 R120` will display on LCD ` SD  5%      02:00R ` if it is printing at 100% speed
    - `M73 P5 R120 C60` will display on LCD ` SD  5%      01:00C ` if it is printing at 100% speed

Slicers can generate "Time to change/pause/user interaction" using `C<mins:0-65535>` parameter to "overwrite" the remaining print time.
To switch between time to change and remaining time just send in intervals `M73` with or without `C` parameter.
2021-02-11 07:47:43 +01:00
Alex Voinea
b4de57c365
Merge branch 'MK3' into MK3_NEW_SD_COMPILATION 2021-02-10 17:08:28 +02:00
DRracer
7aa4595211
Merge branch 'MK3' into thumbnails2 2021-02-10 12:15:57 +01:00
D.R.racer
c1ead75a73 Remove commented debug code
the whole PR is ready for review after successfull tests
2021-02-10 11:18:59 +01:00
Alex Voinea
d2a7c62b50
Merge branch 'MK3' into MK3_NEW_SD_COMPILATION 2021-02-09 16:17:43 +02:00
DRracer
a47c971c75
Merge pull request #3010 from leptun/MK3_fix_M23
Fix M23
2021-02-09 15:06:51 +01:00
DRracer
5c3683b4ad
Merge pull request #3022 from 3d-gussner/PFW-1182
PFW-1182 Fix too long translations during Load/Unload Filament
2021-02-09 08:24:31 +01:00
DRracer
d5d44d30a7
Merge pull request #2305 from 3d-gussner/MK3-Fix_M120_M121
Follow RepRap Wiki G-codes documentation
2021-02-09 07:52:14 +01:00
D.R.racer
3668cdeb30 Add Service prep. item into Factory reset
upon request from our Service dept. - it is to do the same stuff like
Shipping prep., but keep the printer's stats intact. Still, this has to
be verified and may undergo some further changes.
2021-02-08 17:27:32 +01:00
3d-gussner
92db282eca Merge remote-tracking branch 'upstream/MK3' into PFW-960 2021-02-08 12:48:27 +01:00
3d-gussner
fb39e7296b Uniform message Press the knob 2021-02-08 10:58:41 +01:00
Voinea Dragos
52f7a71dce More fixes that were extracted from #2405 2021-02-06 14:59:11 +02:00
DRracer
2dfe21358f
Merge pull request #2838 from wavexx/m204_travel_acceleration
Implement M204 T (separate travel acceleration)
2021-02-05 16:27:50 +01:00
DRracer
77eb10000c
Merge pull request #2948 from 3d-gussner/PFW-1168
PFW-1168 Move Z up running xyz calibration
2021-02-05 16:18:07 +01:00
Yuri D'Elia
186ce0f4b3 Handle acceleration settings in UVLO/power panic
Acceleration settings need to be saved in UVLO, since these are often
changed/set during a print. This is especially important for travel and
retract acceleration, which is usually set once per-print.

Saving and restoring is not 100% correct.

We save the current front-end value, which might ahead of the backend
when UVLO is triggered. Print acceleration, likely the most significant,
should be saved in the block buffer to be accurate.

Acceleration needs to be restored after the UVLO Z repositioning is
performed, using an M204 command. This is correct, however we don't save
the _temporary_ max acceleration limits set via M201, which could be
higher than the saved limits (via M500). This could result in lower
clamped values compared to the original print.

Maximum acceleration/jerk/feedrate limits should _all_ be saved in UVLO
in the future.
2021-02-03 11:28:51 +01:00
Yuri D'Elia
1c76152e62 Implement separate travel acceleration (M204 T)
Allow to separate extrusion and travel acceleration settings using M204,
as Marlin 1.1.x and 2.x does using M204 T.

This allows to reduce the number of instructions required during
printing, since resetting the acceleration for travel moves is no longer
required and can be done a single time during the print.

Provision for this parameter was pre-existing, but not implemented.
M204 has two forms: the lagacy format (Marlin <1.1):

  M204 S[print-acc] T[retract-acc]

and the newer format:

  M204 P[print-acc] R[retract-acc] T[travel-acc]

The distinction in the MK3 FW is done based on the presence of the P
parameter. If P is seen, the new format is adoped. In the new format
however, M204 T was ignored until this change.

To keep backward compatibility, M204 S[acc] will set both print and
travel acceleration, which is identical in behavior to recent versions
of Marlin.
2021-02-03 11:20:28 +01:00
Alex Voinea
f6ae379077 Fix dir_names array definition. Prevents overrun 2021-02-02 19:08:44 +02:00
3d-gussner
57e730c80c Merge remote-tracking branch 'vojtech-pavlik/MK3' into MK3_Test_PRs
Fix merge issues PR1900
2021-02-02 13:49:34 +01:00
Alex Voinea
647cde0cae Add documentation 2021-02-02 13:38:20 +02:00
Alex Voinea
2f4119a6d7 M552 - Printer IP address 2021-02-02 13:21:16 +02:00
DRracer
2b81abb24c
Merge pull request #2814 from wavexx/MK3_PAT9125_I2C
Use hardware TWI for the PAT9125 (optical) filament sensor
2021-02-02 09:15:35 +01:00
DRracer
40e45c5eaa
Merge pull request #3009 from leptun/PFW-1144-LongPathName
"M27 P" support. Get current file absolute filename (file path)
2021-02-01 14:41:15 +01:00
DRracer
58c217a340
Merge pull request #2988 from leptun/PFW-1171-EEPROM_SN
Cache SN to EEPROM on startup
2021-02-01 14:24:13 +01:00
Alex Voinea
7e09df6a34 Add documentation 2021-02-01 14:54:44 +02:00
Alex Voinea
b6d56bc0f4 Change M27 argument from L to P as that makes more sense (path vs LFN)) 2021-02-01 14:54:37 +02:00
Voinea Dragos
30131c9ab5 Patch broken string PROGMEM transition with setTargetedHotend() error 2021-02-01 06:12:37 +01:00
Voinea Dragos
ea44d78d68 Merge branch 'MK3' into PFW-1171-EEPROM_SN 2021-01-31 17:19:00 +02:00
Voinea Dragos
698499f00d split timer0 and timer2 initialization. Move timer2 init early 2021-01-31 17:18:32 +02:00
Voinea Dragos
6b6205d2f6 M27 refactoring and M27 L initial implementation 2021-01-31 15:06:20 +02:00
Yuri D'Elia
31b3ad0613 Merge remote-tracking branch 'upstream/MK3' into MK3_PAT9125_I2C 2021-01-29 18:28:55 +01:00
D.R.racer
7279de7403 Separate reading G-code files and writing to a file
- extract common strings
- cleanup openFileWrite and openFileReadFilteredGcode formatting a bit
Alltogether - code size 400B down
2021-01-28 09:37:58 +01:00
D.R.racer
c3758d350e Fast skipping of large comment blocks
This is an extension/optimization of PR #2956.
It uses the cached 512B block buffer to avoid heavy-weight read() in SdBaseFile.
Even though this principle allowed the AVR to skip ~600KB of data within ~5 seconds,
the impact on code base is huge, especially into well proven and long-term stable
parts like reading a file from the SD card.

The sole purpose of this PR is to show/verify the possibility of the AVR CPU
in relation to adding thumbnails into MK3 G-codes.
Moreover, this PR shall not be merged unless the missing/commented features
are restored - especially file seeking and M84 search.

PFW-1175
2021-01-27 07:03:51 +01:00
DRracer
891f37a622
Merge pull request #2982 from DRracer/codesize
Reduce code size and RAM usage
2021-01-26 12:04:39 +01:00
DRracer
c465417f50
Merge pull request #2987 from leptun/PFW-1144-LongPathName
"M20 L" support. Print long filenames
2021-01-26 08:40:26 +01:00
D.R.racer
348902240e Fix code_seen_P("fv") broken by one of the merges 2021-01-26 08:02:33 +01:00
DRracer
3975415490
Merge branch 'MK3' into codesize 2021-01-25 12:43:30 +01:00
DRracer
58351fb27a
Merge pull request #2977 from DRracer/farm-patch1
Farmers' requests
2021-01-25 11:15:44 +01:00
Voinea Dragos
2b3729125d Prevent wdt reset during file listing 2021-01-25 11:46:51 +02:00
D.R.racer
c1ff6242b0 Avoid copying FW version number into RAM - use the PROGMEM string 2021-01-25 09:03:04 +01:00
Voinea Dragos
4f769f0faa PRUSA RESET safety precaution 2021-01-25 09:58:12 +02:00
D.R.racer
6a62674bd8 Keep PRUSA RESET available even in non-farm mode 2021-01-25 08:43:37 +01:00
D.R.racer
98a4da571d Merge branch 'farm-patch1' of github.com:DRracer/Prusa-Firmware into farm-patch1 2021-01-25 08:39:20 +01:00
D.R.racer
9bfada94f0 Remove commented code 2021-01-25 08:38:44 +01:00
Voinea Dragos
e8e4aabfdb Add gcode documentation 2021-01-22 21:07:14 +02:00
D.R.racer
3ccd1b2b2b Refactor lcd_set_cursor + lcd_puts_P -> lcd_puts_at_P
saves considerable amount of flash
2021-01-22 18:34:47 +01:00
Voinea Dragos
da21916473 Change printf_P without format arguments and NL to puts_P only 2021-01-22 18:56:05 +02:00
D.R.racer
2780a03967 Improve duplicate_Tcode_ignored
kudos to @leptun
2021-01-22 17:47:44 +01:00
D.R.racer
3dc85b319c Marlin_main.cpp hacks
- code_seen("string") -> code_seen_P(PSTR("string")) saved >100B of RAM!
- serial print "." -> '.' saved some code
- extract commonly used string
- SERIAL_PROTOCOLLN("") -> SERIAL_PROTOCOLLN() as no argument is
necessary
2021-01-22 17:15:36 +01:00
DRracer
eceb7b4e5f
Merge pull request #2981 from 3d-gussner/PFW-1140-2
PFW-1140 Add fan speed and position auto report
2021-01-22 13:00:23 +01:00
3d-gussner
008c6a2590 Remove defines 2021-01-22 12:26:29 +01:00
3d-gussner
ede3f34051 Documentation 2021-01-22 10:40:29 +01:00
Voinea Dragos
ced3d9fa77 "M20 L" support. Print long filenames 2021-01-22 11:13:44 +02:00
D.R.racer
31951fe8c9 Code refactoring
Motivation:
- save some RAM joining the autoreport flags into 1 byte
- encapsulate the magic of setting bit masks/features into a class with
a stable public interface
2021-01-20 11:46:25 +01:00
Voinea Dragos
70d254a1fc Allow resetting when not in farm mode 2021-01-19 13:39:21 +02:00
Voinea Dragos
48b4bdfe8e Make the PRUSA RESET command functional on the miniRambo 2021-01-19 13:36:08 +02:00
Voinea Dragos
542677c080 Prevent switching to serial port 1 on miniRambo and such 2021-01-19 13:11:48 +02:00