Commit Graph

8102 Commits

Author SHA1 Message Date
Guðni Már Gilbert 400722ec67
Merge pull request #4461 from gudnimg/lcd-opt-message
optimisation: simplify two LCD messages
2023-11-16 07:37:09 +00:00
D.R.racer 38104063d4 M702: fix documentation link 2023-11-15 09:14:44 +01:00
3d-gussner e74abb102a
Merge pull request #4494 from gudnimg/issue3122
Fix #3122
2023-11-12 17:42:10 +01:00
gudnimg 842d029f7e Replace unused EEPROM entry names with placeholders
_EEPROM_FREE_NRx_ make it a bit more clear this entry is free.
2023-11-12 16:21:34 +00:00
Guðni Már Gilbert 1e6460c344
Merge pull request #4479 from gudnimg/PFW-1523-2
PFW-1523 Add the `S` parameter to `M79`
2023-11-12 16:19:31 +00:00
gudnimg 077aa0a2b8 Minor wording changes 2023-11-12 16:09:15 +00:00
gudnimg 1fc1998874 EEPROM: Formatting cleanup
Mark unused bytes consistently

Add "Power Panic" into the Feature column for relevant bytes

Change "MMU2/s" to "MMU"
2023-11-12 14:39:52 +00:00
gudnimg ddbadf4874 Fix #3122
If the feedrate multiplier is changed while the print is paused
update the saved feedrate multiplier in RAM
2023-11-12 12:38:05 +00:00
Guðni Már Gilbert 53d7943a2c
Merge pull request #4474 from 3d-gussner/M709_v2
Add en- and disable MMU to M709
2023-11-12 09:35:43 +00:00
gudnimg 4e6b649865 PFW-1523 Only overwrite name if not SD printing 2023-11-11 16:56:14 +00:00
gudnimg af465da9e2 Add a comment 2023-11-11 16:53:56 +00:00
gudnimg 45880c252b Fix filament change behavior when print is paused
Reimplementing PR 2390
https://github.com/prusa3d/Prusa-Firmware/pull/2390
from @wavexx
2023-11-11 16:51:35 +00:00
3d-gussner 342d8e92ab Update doxygen M709 2023-11-11 12:20:58 +01:00
3d-gussner 0016b77827 Updated MMU serial status message
- Shown during bootup
- Shown on LCD menue MMU [ON|OFF]
- Shown using `M709`
- Shown when `Disable`d with MMU ERROR FW UPDATE NEEDED
2023-11-11 12:18:34 +01:00
3d-gussner e3392a763a Update doxygen for M709 2023-11-11 12:18:34 +01:00
3d-gussner b11c0024d1 Update requested changes 2023-11-11 12:18:34 +01:00
3d-gussner 69cb7add26 Add en- and disable MMU to M709
Add X42 to erase the MMU eeprom
2023-11-11 12:18:34 +01:00
3d-gussner a76e1290e8
Merge pull request #4437 from gudnimg/filename-powerpanic
PFW-1294: Don't attempt to find SD file when recovering USB print
2023-11-11 12:03:41 +01:00
gudnimg bcc7a16e1c PFW-1523 Trim trailing whitespace in util.h 2023-11-07 07:27:26 +00:00
gudnimg 890bfab946 PFW-1523 Update M79 description 2023-11-07 07:27:21 +00:00
gudnimg dc280b0d9e power panic: support any valid DOS 8.3 extension
When a SD file is selected to print
save the DOS 8.3 extension into EEPROM.

After a power outage, the correct file extension is then
selected instead of always assuming it's ".gco"

This allows users to recover ".g" files.

Change in memory:
Flash: +104 bytes
SRAM: 0 bytes
2023-11-05 16:46:54 +00:00
gudnimg 4c52d92d16 power panic: read whole directory name block from EEPROM
There is no need to read one byte at a time. We can simply
read the whole block in one go. This saves some flash memory.

Change in memory:
Flash: -18 bytes
SRAM: 0 bytes
2023-11-05 16:46:54 +00:00
gudnimg 21d0130626 power panic: simplify recovering SD filename
We can just read the whole EEPROM block since short filenames
are always null terminated. strcat_P will then apply the file extension
at the correct position.

Change in memory:
Flash: -24 bytes
SRAM: 0 bytes
2023-11-05 16:46:54 +00:00
Guðni Már Gilbert dec5e2c1b4 Refactor menu_action_sdfile 2023-11-05 16:46:54 +00:00
Guðni Már Gilbert 82cece95aa power panic: read EEPROM_FILENAME until \0 is seen
Also removed debug logs
2023-11-05 16:46:14 +00:00
Guðni Már Gilbert 977792961c power panic: only send M23 for SD prints
If the saved printing type was USB, then EEPROM_FILENAME
does not contain anything. The firmware should also
not be trying to open a file on a SD card which is maybe
not even mounted.

Change in memory:
Flash: +12 bytes
SRAM: 0 bytes
2023-11-05 16:46:13 +00:00
gudnimg 469f002179 optimisation: simplify two LCD messages
There is no need to restrict how often the message is rendered.
It was being restricted to render every 1 second. We don't do
this for most of the static menus. So I propose this 1 second period
be removed.

Tested on MK3S+

Change in memory:
Flash: -168 bytes
SRAM: -8 bytes
2023-11-05 12:57:28 +00:00
gudnimg ed376009aa PFW-1523 Force inline unquoted_string constructor
Saves 36 bytes of flash
2023-11-04 20:57:31 +00:00
gudnimg 20a2216623 PFW-1523 Implement S parameter for M79
Change in memory:
Flash: +112 bytes
SRAM: +3 bytes
2023-11-04 20:38:50 +00:00
gudnimg cdb559040c PFW-1523 Refactor parsing quoted strings
My plan is to re-use this function in M79
in a later commit. The firmware doesn't
have a dedicated parser like Marlin 2.1
so this is my attempt to not duplicate the parsing of a quoted string in G-codes

Change in memory (MK3S+ Multilang):
Flash: -50 bytes
SRAM: 0 bytes
2023-11-04 17:45:14 +00:00
3d-gussner fca93b00e9
Merge pull request #4471 from gudnimg/issue-4470
MMU: Set PAUSED_FOR_USER state on MMU error screen
2023-10-31 08:36:53 +01:00
3d-gussner 3ffe7bf406
Merge pull request #4460 from gudnimg/PFW-1523
PFW-1523 Add a new timer for Prusa Link
2023-10-30 11:23:46 +01:00
3d-gussner 6be5cb3732
Merge pull request #4472 from gudnimg/mmu-menu-regression
Fix regression in MMU enable menu
2023-10-30 08:59:15 +01:00
gudnimg 8fcfdf31c4 PFW-1523 Implement M79 timer for PrusaLink
The idea is to have the host ping the printer periodically with a M79 to
enable certain features/UI. Using the usb_timer is not a good solution
for this as it depends on seeing a 'G' character

The LCD code, or whatever code is implementing the new functionality
will need to include host.h and check whether M79_timer_get_status()
returns 0 (timer not running) or 1 (timer is running).

I created a new file for the code host.cpp which we can use to expand
host related functionality and not clutter Marlin_main.cpp further.

Change in memory:
Flash: +104 bytes
SRAM: +5 bytes
2023-10-29 16:33:45 +00:00
gudnimg 645b11e643 Fix regression in MMU enable menu
Fixes a regression introduced in https://github.com/prusa3d/Prusa-Firmware/pull/4454
2023-10-29 16:17:03 +00:00
gudnimg 287e340117 MMU: Set PAUSED_FOR_USER state on MMU error screen
Setting this state notifies PrusaLink/PrusaConnect
that the printer is waiting for user input (attention).

Change in memory:
Flash: +12 bytes
SRAM: 0 bytes
2023-10-28 19:31:32 +00:00
Guðni Már Gilbert 3b10c6130e
Merge pull request #4466 from gudnimg/eeprom-optimisations
Optimise EEPROM access in a few places by reading/writing larger blocks
2023-10-27 21:12:13 +00:00
Guðni Már Gilbert 3297429ca7 TM: Optimise EEPROM read and writes 2023-10-25 17:37:04 +00:00
Guðni Már Gilbert e207945154 MBL: optimise EEPROM read/writes 2023-10-25 17:36:15 +00:00
Guðni Már Gilbert e7f56118d1
Merge pull request #4454 from gudnimg/mmu-sync
MMU: Backport code changes from 32-bit firmware
2023-10-23 06:31:06 +00:00
Guðni Már Gilbert 82e0124cb4 mmu: remove isErrorScreenRunning()
No change in memory
2023-10-19 18:32:42 +00:00
Guðni Már Gilbert d56f2bc57e mmu: remove obsolete EEPROM comments 2023-10-19 18:32:42 +00:00
Guðni Már Gilbert 62b90fde28 mmu: remove ResetOnExit
No change in memory
2023-10-19 18:32:42 +00:00
Guðni Már Gilbert 7b9e707709 mmu: add ResetCommunicationTimeoutAttempts
Adding __attribute__((noinline)) saves 14 bytes of flash

Change in memory:
Flash: +34 bytes
SRAM: 0 bytes
2023-10-19 18:32:42 +00:00
Guðni Már Gilbert ef33db9a71 mmu: add DisableMMUInSettings
power_on should not be modifying
EEPROM_MMU_ENABLED. The code is never
executed unless it's already been set.

Only disable EEPROM_MMU_ENABLED through Buttons::DisableMMU

Change in memory:
Flash: -18 bytes
SRAM: 0 bytes
2023-10-19 18:32:42 +00:00
Guðni Már Gilbert cd3372dc92 mmu: formatting 2023-10-19 18:32:41 +00:00
Guðni Már Gilbert 12a3051c50 mmu: Add CheckErrorScreenUserInput
Due to differences in 8-bit FW I had to implement two new get functions

* GetCommandInProgress
* GetLastErrorCode
2023-10-19 18:32:41 +00:00
3d-gussner 7bc7e7a7e8
Merge pull request #4448 from sarusani/nl_typo
Fix typo in Firmware_nl.po
2023-10-19 17:10:19 +02:00
3d-gussner abd8a43cfc
Merge pull request #4456 from leptun/update_diacritics
Update enabled diacritics
2023-10-19 17:08:53 +02:00
Alex Voinea 1528294450 Update enabled diacritics 2023-10-19 13:07:49 +02:00