Alex Voinea
a6331d22c8
Remove ancient SNMM code in the MK3 branch
2022-02-15 15:58:33 +01:00
Alex Voinea
775c460dc5
Merge branch 'MK3' into MK3_fix_usb_timer
2022-02-15 10:36:57 +01:00
DRracer
9aa0b250ff
Merge pull request #3405 from wavexx/fixup_suspicious_indentation
...
Fixup suspicious indentation in lcd_show_sensors_state
2022-02-15 10:31:20 +01:00
DRracer
2d9a154541
Merge pull request #3247 from gudnimg/remove-ifdef-gudni
...
Remove unused ifdef `MK1BP` and `MAX_SILENT_FEEDRATE`
2022-02-15 10:27:21 +01:00
Alex Voinea
73406f53e9
Merge pull request #3393 from gudnimg/add-menu-back-arrow-to-preheat-menu
...
Add menu back arrow to the Preheat menu
2022-02-15 08:49:07 +01:00
Yuri D'Elia
40881f52ad
Prettify lcd_show_sensors_state() v2
...
Allow to show the full precision of Xd/Yd by rearranging the layout
2022-02-14 23:30:08 +01:00
Yuri D'Elia
0c63e0e8df
Prettify MK3 sensor-info screen
2022-02-14 18:07:54 +01:00
Yuri D'Elia
d89f4e9952
Fix indentation in the MK3 sensor information screen
2022-02-14 17:59:47 +01:00
Alex Voinea
8d0f4b766a
Change fake SN as requested
2022-02-14 10:14:08 +01:00
Alex Voinea
4ec8781df2
Fix usb print timer
2022-02-13 22:52:49 +01:00
Guðni Már Gilbert
bd3a835516
Optimise preheat menu's MENU_ITEM_BACK_P
...
Saves 10 bytes of flash memory
2022-02-12 14:17:11 +00:00
Guðni Már Gilbert
70ee06144e
Add menu back arrow to the Perheat menu
...
All other menus have this arrow on the back button.
2022-02-12 12:48:39 +00:00
Guðni Már Gilbert
4672b6444c
Merge branch 'MK3' into remove-eeprom-func
2022-02-11 19:32:11 +00:00
Alex Voinea
3031f68d31
Fix Octoprint connect because of SN GET on blank einsy boards
2022-02-11 14:21:06 +01:00
Alex Voinea
42b91a83cd
Merge branch 'MK3' into MK3_3.12_Optimizations
2022-02-10 10:36:31 +01:00
Alex Voinea
5c0d2767a8
Move the test to the experimental menu
...
.
2022-02-08 11:18:09 +01:00
3d-gussner
a4b605ba16
The Bed level correct
menu is under Calibration
so BACK
is correct
2022-02-08 10:38:04 +01:00
3d-gussner
d80cef5443
Change [um] to [μm]
...
Including lang-im/export.sh to convert HD44780 to UTF-8 and vice versa
2022-02-08 10:18:27 +01:00
Alex Voinea
234add3c58
Merge branch 'MK3' into lcd-optimisation-gudni
2022-02-08 00:14:59 +01:00
Guðni Már Gilbert
121324d20b
Revert "Remove one space from Support -> Temperatures menu"
...
This reverts commit 158877e736
.
2022-02-08 00:09:09 +01:00
Alex Voinea
9c3c47ea29
Merge pull request #3253 from gudnimg/sd-sub-dir-fix
...
Fix edge case when SD card is inserted while user is inside the 'No SD card' submenu
2022-02-07 17:09:14 +01:00
3d-gussner
0d4d386991
Merge pull request #3228 from gudnimg/remove-mmu_lcd
...
Remove a few redundant lines from ultralcd code
2022-02-07 17:04:34 +01:00
Alex Voinea
5d29c4fab2
Fix build for real this time
2022-02-07 13:49:56 +01:00
Alex Voinea
b3a53f6436
Fix build
2022-02-07 14:41:56 +02:00
3d-gussner
db79ae9d5e
Forgot #ifdef DEBUG_PULLUP_CRASH
2022-02-07 13:31:55 +01:00
3d-gussner
0b8ecfbf7c
Add Test Pullup Crash menu
2022-02-07 13:28:48 +01:00
Guðni Már Gilbert
ff00988303
Revert "Replace hardcoded values and optimise strings"
...
This reverts commit e62bc4686f
.
2022-02-06 11:09:45 +01:00
Guðni Már Gilbert
c6ecc0dfc9
Merge branch 'prusa3d:MK3' into lcd-optimisation-gudni
2022-02-06 09:54:58 +00:00
Alex Voinea
d06e74dd6f
Fix Welcome message and language flashing
2022-02-05 23:44:24 +01:00
Guðni Már Gilbert
a22a7ea9d7
Change LCD_STR_UPLEVEL to LCD_STR_UPLEVEL[0] for consistency
...
Saves 4 bytes of flash and 2 bytes of SRAM (Arduino IDE 1.8.19)
2022-02-05 19:58:31 +00:00
Guðni Már Gilbert
d5b666d260
Add LCD_STR_SOLID_BLOCK to represent \xFF
2022-02-05 19:53:42 +00:00
Guðni Már Gilbert
e62bc4686f
Replace hardcoded values and optimise strings
...
This commit saves 64 bytes of flash memory on my end
2022-02-05 18:28:17 +00:00
Alex Voinea
21a0b53647
remove firstrun
2022-02-04 13:27:43 +01:00
Alex Voinea
6ce7792045
Remove "hh" in fmt where it makes no difference
2022-02-02 20:58:21 +01:00
Guðni Már Gilbert
146b008186
Remove redundant variable farm_status
...
It is unused and status_number variable can be used instead.
2022-02-02 18:37:55 +00:00
Guðni Már Gilbert
459570ab66
Change prusa_stat_printerstatus parameter to uint8_t
...
Also changes status_number global variable to uint8_t
Changes save 80 bytes of flash and 1 byte of SRAM (Arduino IDE 1.8.19)
2022-02-02 18:35:52 +00:00
Guðni Már Gilbert
e525bcb7f5
Optimise lcd_selftest_screen input parameters and return type
...
* _progress_scale is max 3 so it can be uint8_t
* _progress is max 6 so it can be uint8_t
* Change _delay type to uint16_t to be explicit
Changes save 102 bytes of flash memory (Arduino IDE 1.8.19)
2022-02-01 18:57:43 +00:00
Guðni Már Gilbert
9bf45773f9
Merge remote-tracking branch 'upstream/MK3' into rebase-testing-ground-v2
2022-01-30 11:43:16 +00:00
Guðni Már Gilbert
f8847edca6
Remove one unused variable
...
Saves 1 byte of SRAM
The variable is only assigned a value but is never used.
2022-01-30 11:39:28 +00:00
Guðni Már Gilbert
b835f31904
Remove variable move_menu_scale
...
The variable is just set to 1.0 and is never modified, I also
removed the function lcd_move_menu_1mm()
Changes save 96 bytes of flash memory and 4 bytes of SRAM
2022-01-30 11:39:27 +00:00
Guðni Már Gilbert
a940c364c9
Create enum class for heating_status variable
2022-01-30 11:39:27 +00:00
Guðni Már Gilbert
2013295f94
Change farm_timer to uint8_t
...
Remove extern declaration of farm_timer and farm_status as they
are only used in one file.
Saves 26 bytes of flash
2022-01-30 11:39:26 +00:00
Guðni Már Gilbert
a687173e02
Change custom_message_state_old and custom_message_state to uint8_t
...
I see max value as 7*7+10 = 59
Saves 100 byte of flash and 1 byte of SRAM
2022-01-30 11:39:26 +00:00
Guðni Már Gilbert
60c9640602
Change heating_status_counter to uint8_t
...
It has a max value of 14
Saves 28 bytes of flash and 1 byte of SRAM
2022-01-30 11:39:26 +00:00
Guðni Már Gilbert
6a9bab02f7
Convert display_time to ShortTimer
...
Saves 24 bytes of flash, 1 byte of SRAM
2022-01-30 11:39:25 +00:00
Guðni Már Gilbert
802b8860c8
Convert mmu_last_finda_response to ShortTimer
...
Saves 48 bytes of Flash, 1 byte of SRAM
2022-01-30 11:39:25 +00:00
Guðni Már Gilbert
37fd9d1b11
Convert NcTime to ShortTimer
...
The variable is only used in ultralcd.cpp so I made it static there
and deleted it from Marlin_main.cpp
Saves 24 bytes of flash and 1 byte of SRAM
2022-01-30 11:39:25 +00:00
Alex Voinea
fb10b4398e
Merge pull request #6 from gudnimg/gudni-PR1
...
Purged some `int`s for `uint8_t` when using the axis enum
2022-01-30 11:30:25 +00:00
Voinea Dragos
9684806e00
Change arduino IO to fastio where possible
2022-01-30 11:22:43 +00:00
Alex Voinea
93b1a6b736
"Unload filament" c adjustment
2022-01-16 11:19:24 +01:00
3d-gussner
e02dd42765
Prepare for lot of community languages
...
The firmware is limited to how many languages can be stored in the xflash.
We will need to compile multiple language groups
2022-01-03 11:25:15 +01:00
DRracer
0be90dc5d1
Merge pull request #3320 from prusa3d/MK3_3.10.1
...
Merge MK3_3.10.1 into MK3 after release
2021-12-17 14:02:13 +01:00
Yuri D'Elia
3849f9785a
Make cancel_heatup also abort cooldown in M190
...
This matches the expected behavior, as already implemented in
wait_for_heater().
2021-12-10 01:51:43 +01:00
Yuri D'Elia
32d8d892f5
Actually call UnconditionalStop() in Stop()->lcd_print_stop()
...
Remove incorrect check introduced during development.
2021-12-10 01:43:59 +01:00
Yuri D'Elia
83693bf4cc
Remove useless assignment in lcd_cooldown
...
The current filament action will be aborted by lcd_return_to_status()
2021-12-07 19:27:18 +01:00
Yuri D'Elia
78f856c8d6
Do not unconditionally overwrite the status message in check_file()
...
No function should touch the status message directly without checking
the message severity level first. Replace the strcpy_P with
lcd_setstatuspgm().
2021-12-07 19:27:18 +01:00
Yuri D'Elia
36a7b5ca56
Avoid redundant checks in lcd_setalertstatus*
2021-12-07 19:27:18 +01:00
Yuri D'Elia
a3915b57b9
Improve temp_runaway_stop robustness
...
Remove most of the duplicated code inside temp_runaway_stop(),
making it identical to the other temperature handlers.
Move the lower-level functions required to stop the entirety of the
machine into UnconditionalStop(). Reuse this function inside
lcd_print_stop().
Set the LCD alert message before calling Stop(), as done in other safety
handlers, so that the error is visible while the printer is stopping.
This also avoids other temporary status messages to appear before
the real issue is shown and/or STEALING the first CRITICAL alert
level before we do.
2021-12-07 19:25:34 +01:00
Yuri D'Elia
fb025bba05
Introduce severity levels for alert messages
...
Use the internal lcd_status_message_level for multiple severity levels
of alert messages.
This is needed to distinguish between non-critical alerts (such as FAN
ERROR) from critical ones (any heater issue). During a failure
scenario, a critical error MUST NOT be overridden by a lower-level one.
As such LCD_STATUS_CRITICAL is currently used for all heater-related
errors that result in a safety full-stop.
2021-12-07 11:06:08 +01:00
Guðni Már Gilbert
be79e3791f
Fixes #3262
...
Make sure to call lcd_timeoutToStatus.start() when the SD card is inserted
into the printer after it was removed beforehand.
(cherry picked from commit 6795843f153aa064f087f80990419a946cdfe857)
2021-11-18 19:23:21 +00:00
Panayiotis-git
f8410d8f3c
Print temperatures only if filament loading is still active
2021-11-18 11:46:36 +02:00
Guðni Már Gilbert
b716c208d7
Various optimisation to change int to uint8_t
...
This commit saves 174 bytes of flash memory
2021-08-03 22:42:01 +00:00
Guðni Már Gilbert
1946c58d21
1. Remove redundant variable 'inters'
...
2. 'gh' variable can be 1 byte instead of 2
This saves 26 bytes of flash memory
2021-08-03 21:46:11 +00:00
Guðni Már Gilbert
05ed5b9668
Improve lcd_selftest_screen_step() parameter types
...
Saves 62 bytes of flash memory
2021-08-03 21:35:28 +00:00
Guðni Már Gilbert
2554d21925
Use uint8_t when using axis enum
...
Saves 76 bytes of flash memory
2021-08-02 12:20:10 +00:00
Guðni Már Gilbert
158877e736
Remove one space from Support -> Temperatures menu
...
Saves 2 bytes of flash memory
2021-08-01 11:20:29 +00:00
Guðni Már Gilbert
da2c802440
Add two defines and use LCD_STR_DEGREE with consistency
...
This saves 12 bytes of flash and 2 bytes of SRAM
2021-08-01 11:10:03 +00:00
Guðni Már Gilbert
6afc87d3c8
Reduce unnecessary LCD CGRAM writes
2021-07-30 23:53:57 +00:00
Guðni Már Gilbert
b1972fdcee
Fixes https://github.com/prusa3d/Prusa-Firmware/issues/3252
2021-07-28 16:47:47 +00:00
Guðni Már Gilbert
25408d14da
Remove unused #ifdef MK1BP
...
MK1BP is never defined anywhere
2021-07-21 06:27:44 +00:00
Guðni Már Gilbert
13477c65c6
Remove two functions EEPROM_read_B() and EEPROM_save_B()
...
This resolves #3218
2021-07-20 17:04:17 +00:00
Guðni Már Gilbert
538ce06bf0
Remove unused function lcd_choose_color()
2021-07-20 08:55:49 +02:00
Guðni Már Gilbert
d853c19a21
Use fabs() instead of abs() when using floats
...
This saves 514 bytes of flash memory
2021-07-20 08:16:18 +02:00
Guðni Már Gilbert
153de8e1db
Remove redundant lines
2021-07-10 17:01:13 +00:00
Guðni Már Gilbert
47b8462c38
Remove two functions EEPROM_read() and EEPROM_save()
2021-07-02 20:10:47 +00:00
DRracer
6188870c2e
Merge pull request #3157 from wavexx/improve_d2
...
Add extra debugging functions & crash analysis
2021-06-22 07:37:30 +02:00
Alex Voinea
30d9faef9d
Minor fixes to SD presence handling ( #3139 )
...
* Remove forgotten function protorypes
* Fix code indentation
* Fix double sorting if SD card is inserted during setup()
* Correctly handle SD removal during sorting
2021-06-21 07:30:47 +02:00
Yuri D'Elia
a92c0278fe
Use LCD_WIDTH instead of hardcoding 20
2021-06-21 07:21:10 +02:00
Yuri D'Elia
09e935d27b
Fix two new explicit case fallthru warnings
2021-06-21 06:52:52 +02:00
Yuri D'Elia
d727a949dd
Silence explicit case-fallthru
2021-06-21 06:52:52 +02:00
Yuri D'Elia
f2fe57bfc0
Fix unused static declaration warnings
...
Guard declarations using the appropriate defines
2021-06-21 06:52:52 +02:00
Yuri D'Elia
97f66a6a13
Remove ignored/incorrect PROGMEM
...
This PROGMEM is currently ignored by gcc, but even if it wasn't it
wouldn't be correct since the following code is expecting to read "item"
without fetching the array itself from PROGMEM.
2021-06-21 06:44:19 +02:00
Yuri D'Elia
dd8c6c064c
xfdump: simplify stack debugging (sample pc+sp)
...
Instead of having to guess the PC where the SP was sampled, always take
both. This allows "seamless" stack decoding for both serial and xflash
dumps, since we don't have to guess which function generated the dump.
Make the core functions (doing the sampling) be ``noinline`` as well,
so that they always have valid frame.
2021-06-17 01:29:25 +02:00
Yuri D'Elia
97535ec0c1
Fix last commit
2021-06-15 22:10:08 +02:00
Yuri D'Elia
e6d520cf6e
Add test code for the stack overflow handler
2021-06-15 18:49:20 +02:00
Yuri D'Elia
928c7211ad
emergency handlers: always save SP _at_ the crash location
...
Save SP which is closest to the crash location, which simplifies
debugging. For serial_dump, write SP just before the dump.
For xfdump, save SP in the dump header.
This makes xfdump_dump and xfdump_full_dump_and_reset() equivalent for
stack debugging.
2021-06-15 11:47:27 +02:00
Yuri D'Elia
6de98f7b0d
Move inclusion closer to the usage point
2021-06-12 15:33:18 +02:00
Yuri D'Elia
050cf72e98
Move stack checking to the temperature ISR
...
Now that the stack_error function is truly minimal,
we can check for stack errors much more frequently.
Also move away stack_error from ultralcd to Marlin_main.
2021-06-12 15:23:33 +02:00
Yuri D'Elia
01934b89e9
xflash_dump is now always required in all variants
2021-06-12 15:13:32 +02:00
Yuri D'Elia
449510392d
Untangle a bit some recursive include mess
2021-06-12 15:09:03 +02:00
Yuri D'Elia
e28301f391
Report crash also in MK2.5, fix stack_error abuse
...
Rename EEPROM_CRASH_ACKNOWLEDGED to EEPROM_FW_CRASH_FLAG.
Use EEPROM_FW_CRASH_FLAG to always set the last crash reason, which
simplifies handling between the online/offline variants.
Make stack_error safe, by setting the flag and restarting immediately,
so that the error can be shown after restart.
2021-06-12 14:41:54 +02:00
Yuri D'Elia
bd57e00448
Implement an online crash dumper for MK2.5 boards
...
When XFLASH is not available, allow users to request _online_ crash
dumps by using D23 (since these require active user cooperation).
Once enabled, instead of just rebooting, dump memory directly to
the serial.
As similarly done with EMERGENCY_DUMP, we have two features that can be
enabled:
EMERGENCY_SERIAL_DUMP: enables dumping on crash after being requested
MENU_SERIAL_DUMP: allow triggering the same manually through the support
menu.
2021-06-12 13:37:20 +02:00
Yuri D'Elia
31f416fd5e
Rename dump_crash_source to dump_crash_reason
2021-06-10 17:35:49 +02:00
Yuri D'Elia
c375610668
Move "WDR dump" inside EMERGENGENCY_DUMP
2021-06-10 17:02:41 +02:00
Yuri D'Elia
63f870c089
Enable the "WDR reset" menu item in DEBUG_BUILD only
2021-06-10 16:30:59 +02:00
Voinea Dragos
1e786c7f55
WDR crash initial
2021-06-09 13:59:26 +03:00
Yuri D'Elia
c31109c750
Implement MENU_DUMP: offline memory dump from "Support"
...
If MENU_DUMP is enabled, a new entry at the end of the "Support" menu is
added that allows to dump memory for offline use.
This allows to trigger a memory dump at any moment during regular usage
(either idling or printing) and to recover the dump later even after a
hardware reset.
2021-06-08 16:56:58 +02:00
Yuri D'Elia
c089ac5341
Implement EMERGENCY_DUMP for offline analysis
...
If EMERGENCY_DUMP is defined, crash and dump using the new xflash dump
functionality instead of just continuing with an error message.
When an emergency crash is stored, the first restart after a crash
displays a message that debug data is available and to contact support
to submit the crash for analysis.
2021-06-08 16:42:43 +02:00
Yuri D'Elia
1a92f2e19f
Merge remote-tracking branch 'upstream/MK3_3.10.0' into fix_partial_redraw2
2021-05-04 10:49:24 +02:00
DRracer
eaa6801849
Merge pull request #3136 from leptun/PFW-1225_fix_open_file_from_sd_wrong_file
...
Fix menu_action_sdfile() check_file(filename) call
2021-04-29 16:34:01 +02:00