3d-gussner
072b3f8300
Temp Model cal. menu
2022-10-26 13:34:27 +02:00
3d-gussner
f4a2c1c794
Update translations
...
Fix button msg
Update Dutch `F. jam detect`
2022-10-25 10:29:35 +02:00
Guðni Már Gilbert
45c72d48ed
optimisation: use failstats_reset_print in factory_reset_stats
...
Change in memory:
Flash: -56 bytes
SRAM: 0 bytes
2022-10-23 09:58:56 +00:00
Alex Voinea
edc5d013dd
Merge pull request #3698 from leptun/farm_presort_cache
...
Farm mode: cache filenames in the presort function
2022-10-21 15:43:49 +02:00
3d-gussner
b792d47350
Merge pull request #3694 from 3d-gussner/MK3_Hotend_fan
...
PFW-1415: Rename `Extruder fan` to `Hotend fan`
2022-10-19 08:47:15 +02:00
Alex Voinea
b485992c9e
If in farm mode, force the sorting direction to be reversed
...
So in an ideal scenario, the newest file is first. This of course breaks as soon as a file is deleted/renamed/moved, but it should at least be fixed now compared to before where the direction could be influenced by a disabled setting
2022-10-18 17:29:31 +02:00
Alex Voinea
798f215f88
Refactor SD menu settings
2022-10-18 17:24:35 +02:00
3d-gussner
eaaf1d6872
Rename Sheets
...
- `Satin 1` to `Satin `
- `Satin 2` to `NylonPA`
2022-10-18 10:20:01 +02:00
Alex Voinea
e18bfce597
Farm mode: cache filenames in the presort function
2022-10-17 20:17:28 +02:00
3d-gussner
e83728f72c
Change fan RPM display to 5 digits
...
All credits to @ WarrenSchultz for initial PR https://github.com/prusa3d/Prusa-Firmware/pull/3656
2022-10-17 15:41:05 +02:00
3d-gussner
f2fe9a51ee
rename `Extruder fan` to `Hotend fan`
2022-10-17 13:49:18 +02:00
Guðni Már Gilbert
2682b64a09
Optimisation: Reduce code size in rendering SD file names and folders
...
Change in memory:
Flash: -88 bytes
SRAM: 0 bytes
2022-10-12 20:19:21 +00:00
D.R.racer
2c695f14be
Increase required MMU version to 2.1.4.x
2022-10-12 07:45:13 +02:00
D.R.racer
6eab0dda59
Add parentheses - be more explicit in error codes' masking and comparison
2022-10-11 15:51:01 +02:00
D.R.racer
0aeb74e5b1
Intercept M708 A0xb: set ExtraLoadDistance on the printer side too
2022-10-11 15:51:01 +02:00
D.R.racer
b0466ae20f
Add infrastructure for MMU parametrization after comm start
...
For now, only the Extra loading distance is being sent, but the infrastructure can be easily extended for other registers as well.
2022-10-11 15:51:01 +02:00
D.R.racer
c7e4c9ce99
Allow backwards compatibility with legacy MMU g-codes
...
This piece just changes the default extra load length on the MK3 side.
The same needs to be done on the MMU side but:
- the MMU exposes its register for this (so we can change the extra load distance by writing into the register via G-code)
- the printer shall probably set this value on its own after line up of MMU communication
2022-10-11 15:51:01 +02:00
D.R.racer
013ce588a5
Support reading/polling multiple registers
...
In Idle and Command mode it is now possible to specify a list of registers which shall be periodically read from the MMU.
To keep the code and RAM size down registers are intentionally separated into 8bit and 16bit sets.
Adding a register into the set is just a matter of parametrization, there is no need to change the state machines anymore.
2022-10-11 15:51:01 +02:00
D.R.racer
ebb79351a7
Add preliminary support for MMU_SELFTEST_FAILED error messages
2022-10-11 15:51:01 +02:00
3d-gussner
d5ca47d1a6
Merge pull request #3646 from gudnimg/fix-mmu-buttons-v2
...
PFW-1403 Fix issue where physical MMU buttons do not dismiss error screen
2022-10-11 13:42:39 +02:00
Guðni Már Gilbert
8882d8f2c8
Only move XY when position is known
...
I had a crash when producing an error screen and printer was unhomed.
Extruder was located at the far right side, and immediately crashed when attempting to park.
2022-10-11 07:16:52 +02:00
Guðni Már Gilbert
9f3361577e
Merge pull request #3643 from gudnimg/PFW-1358
...
PFW-1358 More button utilizes text and an empty character on the right
2022-10-10 18:02:22 +00:00
Guðni Már Gilbert
98cfc37017
Merge pull request #3674 from gudnimg/mmu-first-lay-cal-purge-line
...
MMU: Sync first layer purge line with PrusaSlicer generated output
2022-10-10 17:59:18 +00:00
Guðni Már Gilbert
213f0e8c71
PFW-1358 Update second_col description
...
Value is no longer hardcoded
2022-10-10 17:48:56 +00:00
Alex Voinea
eb43d712df
Enable MISO pullup during SD CMD0
...
Fix typo
2022-10-10 09:43:50 +02:00
Guðni Már Gilbert
ccf0c0a09f
Merge pull request #3675 from gudnimg/pad-mmu-status-messages
...
Fix issue where MMU status messages are not padded
2022-10-09 10:49:55 +00:00
Guðni Már Gilbert
1c6345a85b
Fix issue where MMU status messages were not padded
...
Also combined common cases to reduce code size
2022-10-09 10:37:33 +00:00
Guðni Már Gilbert
76dc51d2f0
Sync first layer purge line with PrusaSlicer generated output
...
If you generate a multicolor gcode file with PrusaSlicer, the purge
line gcode will look like this.
This reduces clicking sounds from the extruder, filament extrusion is reduced by 6mm.
2022-10-09 10:03:54 +00:00
Guðni Már Gilbert
d483531606
PFW-1358 update c values
2022-10-08 09:40:43 +00:00
Guðni Már Gilbert
00ccdcd467
PFW-1358 change MSG_BTN_MORE from I1 to N1
2022-10-08 09:25:06 +00:00
Guðni Már Gilbert
d6e0f47739
PFW-1403 Rename ReportErrorSource to ErrorSource for shorter code
2022-10-08 08:51:32 +00:00
Guðni Már Gilbert
33690b927a
PFW-1403 Fix issue where physical MMU buttons do not dismiss error screen
2022-10-08 08:51:32 +00:00
Guðni Már Gilbert
8f0de44d84
PFW-1358 Move 'More' button to the corner of the screen
...
Make 'More' button position consistent with 3-button screen.
2022-10-08 08:50:40 +00:00
Guðni Már Gilbert
7264391c5f
PFW-1358 Fix and optimise button choice positions
2022-10-08 08:50:40 +00:00
Guðni Már Gilbert
9046fb3d44
PFW-1358 Adjust positions of button choices
2022-10-08 08:50:39 +00:00
Guðni Már Gilbert
06427087c0
PFW-1358 Change "More" button to single character
2022-10-08 08:50:39 +00:00
Tomáš Jozífek
233174cf86
Fill the doc for the EEPROM value at 0x0DA1 - active_sheet
2022-10-07 11:59:57 +02:00
3d-gussner
2067cddc46
Merge pull request #3631 from 3d-gussner/MK3_fix_eeprom_documentation_part1
...
MK3 fix eeprom doxygen documentation
2022-10-06 15:29:15 +02:00
Alex Voinea
629fc9d0f1
Merge pull request #3638 from wavexx/tm_cal_click
...
TM: Consume LCD click after calibration
2022-10-06 14:29:40 +02:00
3d-gussner
bab83704a1
Fix Typo 0X0 to 0x0
2022-10-06 13:23:16 +02:00
Yuri D'Elia
bfaed2768c
Merge pull request #3652 from wavexx/cmake_build_v2
...
cmake build improvements v2
2022-10-05 14:20:28 +02:00
Yuri D'Elia
d867da201f
cmake: Define FW_VARIANT instead of copying Configuration_prusa
2022-10-05 01:26:30 +02:00
Yuri D'Elia
1d3ee1caba
build: Add Configuration_var.h as a configuration wrapper
...
Instead of including Configuration_prusa.h directly, include
Configuration_var which then includes the proper variant file though a
preprocessor macro.
This allows to keep the existing build system intact, but also redefine
at compile time the final header without having to make copies on the
file system.
2022-10-05 01:26:26 +02:00
Yuri D'Elia
2ae376d633
build: Size optimization
...
Explicitly force-noinline xyzcal_scan_pixels_32x32_Zhop to match the
previous LTO build behavior.
2022-10-04 12:13:09 +02:00
Yuri D'Elia
5ed6bd7f8b
cleanup: Fix more spourious missing return warnings
...
Rewrite to use a temporary and get rid of the warning.
The generated asm is *unchanged*.
2022-10-03 21:54:08 +02:00
3d-gussner
992845198d
Merge pull request #3648 from wavexx/more_cleanups
...
cleanup: Expand tabs to fixup suspicious indentation warnings
2022-10-03 11:53:42 +02:00
Yuri D'Elia
4cc6695195
cleanup: Expand tabs to fixup suspicious indentation warnings
2022-10-02 20:42:36 +02:00
Yuri D'Elia
a8e85bd146
cmake: Work-around gcc 7 not supporting SOURCE_DATE_EPOCH
2022-10-02 20:32:32 +02:00
Yuri D'Elia
1d520f9165
cmake: Make builds fully reproducible by default
...
- Work-around SOURCE flags being reset for each project when setting the
random-seed property by calling a support function.
- Likewise, set correct flags for reproducibility when creating archives.
- Strip source prefix paths from debug info
This should set the EPOCH using the last git commit date when available,
but it's not currently implemented. Just set the EPOCH to be 0 for now.
2022-10-02 20:32:32 +02:00
vintagepc
d8c9c4450f
Merge pull request #3641 from vintagepc/build-with-cmake
...
Build the firmware with cmake
2022-10-02 13:05:32 -04:00
Yuri D'Elia
c7b6b9a99b
cleanup: Suppress unused argument warnings
2022-09-30 15:08:11 +02:00
VintagePC
c522330433
Merge remote-tracking branch 'upstream/MK3' into build-with-cmake
2022-09-30 09:04:35 -04:00
Yuri D'Elia
49f96213a4
Also consume longpress in lcd_consume_click()
2022-09-30 14:29:37 +02:00
Yuri D'Elia
b95d508574
cleanup: Remove implicit fallthrough in CRC validation
2022-09-30 12:55:47 +02:00
Yuri D'Elia
71be6b19d4
cleanup: Remove return value from MMU2Serial::write()
...
Removes a missing return warning.
Looks like we don't handle overflow at the moment and in all surrounding
code, so let's remove the return value for now.
2022-09-30 12:55:47 +02:00
Yuri D'Elia
6cfe000ac9
cleanup: Reorder members to match initialization order
2022-09-30 12:55:47 +02:00
Yuri D'Elia
398a4bf403
cleanup: Do not return const values from functions
...
This generates a warning under -Wextra, since in most cases a const
value doesn't prevent buggy code (as copies are allowed) while
preventing some optimizations (such as move operations) to take place.
2022-09-30 12:55:47 +02:00
Yuri D'Elia
d6af13dfc1
cleanup: Supress missing return warnings
...
Rewrite the function with a temporary to avoid the spourious no-return
warning.
The generated code is *unchanged*.
2022-09-30 12:31:07 +02:00
Yuri D'Elia
31ea48246a
TM: Consume LCD click after calibration
...
Consume any pending LCD click after the temperature model calibration.
Since we're already in the status menu, the usual consume action is not
done automatically here.
2022-09-30 12:24:54 +02:00
3d-gussner
74e15ac233
Rename EN_ONLY to EN_FARM
...
remove DEBUG/DEVEL/ALPHA/BETA lcd warning
2022-09-29 16:39:02 +02:00
3d-gussner
346dfbdbb3
Fix MSG_SPOOL_JOIN
2022-09-29 10:54:46 +02:00
3d-gussner
c7b500af1e
BETA firmware message only in English
...
Rephrase BETA firmware message to fit on two screens
ALPHA message same as DEVEL
Fix ALPHA DEVEL message
2022-09-29 10:48:16 +02:00
3d-gussner
1a8f18318c
Add Temp Model eeprom documentation
2022-09-28 18:15:23 +02:00
3d-gussner
302e4b679c
replace tab with spaces
2022-09-28 17:37:46 +02:00
Yuri D'Elia
709d07310a
lcd_print_pad: do not overflow len when truncating the string
2022-09-26 11:26:10 +02:00
Alex Voinea
7fb53899dc
Merge branch 'MK3' into MK3_MMU2_fix1
2022-09-23 14:55:23 +02:00
Yuri D'Elia
26b091d50e
Remove unneeded lcd_finishstatus()
2022-09-23 11:54:16 +02:00
Yuri D'Elia
80c06bda55
Improve warning behavior during thermal anomaly
...
The current code forces any warning to return the user to the status
screen in order to show the message.
Thermal anomaly warnings can repeat at very short intervals, making menu
navigation (to pause/tune the print) impossible.
We now check if the message to be displayed is the same and only force a
kickback for new messages.
This partially reverts https://github.com/prusa3d/Prusa-Firmware/pull/3600
since we need the string to be null terminated for ease of comparison.
We pad the status line at display time instead using the new
lcd_print_pad() function which achieves the same effect.
2022-09-22 16:12:35 +02:00
Tom Mittendorf
24b638b5d4
fixed undefined behaviour when left shifting a negative number
2022-09-21 16:21:19 +02:00
Yuri D'Elia
9a9aadca87
Do not hang during startup
...
In ultralcd_init() do not use lcd_setstatuspgm() to initialize the
welcome message.
The internal call to lcd_finishstatus() requires the serial to be
already available. Split the function into lcd_padstatus() to pre-pad
the string and save some space.
2022-09-21 16:12:16 +02:00
DRracer
f7d4095479
Merge branch 'MK3' into MK3_MMU2_fix1
2022-09-21 15:18:44 +02:00
Alex Voinea
2cdd3ba364
Move strings to progmem
2022-09-21 14:53:54 +02:00
Yuri D'Elia
16d1ef8510
Merge pull request #3560 from leptun/splash_version
...
Show firmware version on splash screen
2022-09-21 14:47:41 +02:00
Yuri D'Elia
a1213d6a6e
Merge pull request #3600 from gudnimg/init-lcd-status
...
Fix initialization of LCD status line message
2022-09-21 14:46:10 +02:00
Yuri D'Elia
ca9a28eff2
Merge pull request #3612 from wavexx/tm_update_r0
...
Temperature model: update R0 estimate
2022-09-21 14:46:03 +02:00
Yuri D'Elia
bccdab4c22
Merge pull request #3615 from wavexx/line_cnt_reset_fix
...
Do not reset line on serial commands without N
2022-09-21 14:45:46 +02:00
3d-gussner
183e21aa0b
Merge pull request #3599 from 3d-gussner/MK3_MMU2_messages
...
PFW-1339 - Update MMU2 translations
2022-09-21 10:27:01 +02:00
Yuri D'Elia
129df6dd4a
Do not reset line on serial commands without N
...
Fix regression introduced in fc10ca3146 .
Accept incoming serial commands without line numbers (assumed to be
injected by the host), but do not reset the last line count when doing
so.
2022-09-21 10:19:16 +02:00
Yuri D'Elia
1c4e9463ec
Temperature model: update R0 estimate
...
Update the default R0 estimate thanks to a larger dataset.
This improves the error margin during self-check.
2022-09-20 16:57:54 +02:00
Guðni Már Gilbert
eb7de5149b
Don't inline the function
...
Change in memory:
Flash: -44 bytes
SRAM: 0 bytes
2022-09-20 06:34:24 +02:00
Guðni Már Gilbert
c8a8484ca7
Remove atomic_update parameter
...
Change in memory:
Flash: +24 bytes
SRAM: -0 byte
2022-09-20 06:34:24 +02:00
Guðni Már Gilbert
76fb4610ea
Optimisation: Remove duplicated code in cmdqueue_could_enqueue_back()
...
Code is 28 lines shorter :)
Change in memory:
Flash: -42 bytes
SRAM: 0 bytes
2022-09-20 06:34:24 +02:00
Yuri D'Elia
156b5e5b99
Update current FW version
2022-09-19 18:15:39 +02:00
Alex Voinea
6a470791d3
Allow sending uint16_t values to registers
2022-09-19 15:13:37 +02:00
3d-gussner
770fdcd83b
Fix typo, thanks to @gudnimg
2022-09-19 08:02:40 +02:00
Guðni Már Gilbert
28b0ef1acb
PFW-1369 Use same ramming sequence as default settings in Slicer
2022-09-19 07:23:03 +02:00
3d-gussner
075a80e264
Add missing text
...
Finish Dutch translation
2022-09-17 17:38:45 +02:00
3d-gussner
068f4763e2
Update translatable strings to match our extraction macros
...
Update pot and po files
2022-09-17 16:53:30 +02:00
3d-gussner
47d7ea5dfd
Add MSG_LOAD_ALL and replace it a two loactions -10bytes flash
2022-09-17 16:36:09 +02:00
Guðni Már Gilbert
25a7dc8397
Fix: Filament Already Loaded only has two buttons
2022-09-17 16:36:09 +02:00
Guðni Már Gilbert
15a8c8fe37
Fix: Unload Manually did not send any button to the MMU
2022-09-17 16:36:09 +02:00
Guðni Már Gilbert
9b4a621275
Fix: Fsensor errors only have one reset button
2022-09-17 16:36:09 +02:00
Guðni Már Gilbert
037d51b049
Fix: Filament Already Loaded only has two buttons
2022-09-17 12:21:42 +02:00
Guðni Már Gilbert
3b60b894da
Fix: Unload Manually did not send any button to the MMU
2022-09-17 12:21:42 +02:00
Guðni Már Gilbert
e7b7d97f11
Fix: Fsensor errors only have one reset button
2022-09-17 12:21:42 +02:00
Guðni Már Gilbert
be7c1d55c8
Remove redundant for-loop
...
Now that lcd_status_message is now initialised correctly at boot-up,
this for-loop is no longer required. Now lcd_status_message is
only set in lcd_updatestatus() which always calls lcd_finishstatus()
lcd_finishstatus() makes sure the message does not exceed 20 characters
Saves 34 bytes of flash
2022-09-17 09:13:07 +00:00
Guðni Már Gilbert
4d6d267aef
Don't initialise lcd status message in definition
...
static variables are automatically zero initialised. Now that the
status line message is initialised in ultralcd_init(), we don't
need to set the variable in global scope.
Saves 22 bytes of flash and 1 byte of SRAM
2022-09-17 08:57:30 +00:00
Guðni Már Gilbert
f1e127ace4
Initialise status line message in setup()
...
Fixes #3581
2022-09-17 08:53:36 +00:00
3d-gussner
404c622301
Finish German translation
...
increase 2nd langusge size to 0x3500 13567bytes to fit mmu2 translations 🤞
2022-09-17 10:35:30 +02:00
3d-gussner
ec22e5faeb
Shorten message to 20 chars
...
add 01234567890123456789 ruler
2022-09-17 10:34:24 +02:00