gudnimg
d94f263843
Rename initsd() to mount()
...
Sync the Prusa firmware with Marlin 2.1 a little bit.
2023-12-09 10:50:30 +00:00
gudnimg
42855f9f13
Rename setroot() to cdroot()
...
This way the name is the same as Marlin 2.1
2023-12-09 10:50:30 +00:00
gudnimg
e0eb8b8a24
optimisation: if SD card fails to mount, do not set root directory
...
I noticed this on Marlin 2.1 side, it should apply here as well.
2023-12-09 10:50:30 +00:00
3d-gussner
1868839dc6
Fix cmake with tags starting with `t`
2023-12-05 15:42:47 +01:00
3d-gussner
69b35d37c3
Bump up version
2023-12-05 14:53:56 +01:00
3d-gussner
aa92375e62
Merge pull request #4523 from 3d-gussner/MK3_Improve_PP_Crash
...
Improve Host Power Panic and Crash
2023-12-05 14:49:33 +01:00
3d-gussner
18daa5a62e
Merge pull request #2423 from Panayiotis-git/MK3_M600_Issue-2415
...
LCD option to unload new filament on M600 (issue #2415 )
2023-12-04 17:03:38 +01:00
sarusani
e2aafc882c
Fix MSG_PRINT_PAUSED
...
MSG_PRINT_PAUSED used the lang declaration MSG_PAUSE_PRINT instead of MSG_PRINT_PAUSED
2023-12-03 10:16:16 +01:00
sarusani
60e311d74f
Change reprint MENU_ITEM_SUBMENU_P to MENU_ITEM_FUNCTION_P
...
There's no submenu -> don't show arrow
2023-12-03 08:46:48 +01:00
sarusani
4d9e084cf7
Rename lcd_reprint_usb_print to lcd_send_action_start
...
Sending action start can not only be used for reprints
2023-12-03 08:44:54 +01:00
sarusani
d267140ee6
Rename reprint_from_eeprom to lcd_reprint_from_eeprom
...
It sets the lcd_return_to_status() at the end, so naming should be consistent witch the other functions
2023-12-03 08:43:16 +01:00
Panayiotis-git
3da4407e4f
Repeat the M600 unload/load filament sequence - Fix translations
2023-12-01 21:13:24 +02:00
Panayiotis-git
8ceda27cda
Provide option to repeat the M600 unload/load filament sequence
2023-12-01 21:12:31 +02:00
3d-gussner
47b298782f
Set YES as default in Crash Resume message
2023-12-01 17:43:29 +01:00
3d-gussner
d36ea24c02
After reset or low bed temp recover HOST print as the HOST has to decide what to do
...
Only during SD print and a Reset + Low Bed temp the user has to confirm on LCD
2023-12-01 17:43:29 +01:00
3d-gussner
4bc6bc3f90
Improve USb power panic
2023-12-01 17:43:29 +01:00
3d-gussner
4dfc484265
Merge pull request #4207 from gudnimg/crashdet_cancel-fixup
...
`crashdet_cancel()` doesnt cleanup all variables when USB printing
2023-12-01 17:41:33 +01:00
gudnimg
4d9dc11510
power panic: pause the print, and wait for M79
...
"PRUSA uvlo" is the last g-code to be processed after the power panic
recovery. For host prints, we want to finish processing all these
g-codes and put the print in a paused state.
Currently I am using lcd_pause_print() but this may be simplified
later.
A new PrinterState is introduced PowerPanicWaitingForHost to
differentiate this paused state from the typical paused state.
In this new paused state the printer is waiting for the host to boot up
and send M79.
Once M79 is seen a new action is sent "// action:uvlo_recovery_ready"
It is up to the host software to then resume the print correctly. All
the needed information to resume the print is in EEPROM and can
be read by using the D3 g-code.
Change in memory:
Flash: +82 bytes
SRAM: 0 bytes
2023-12-01 16:16:39 +01:00
gudnimg
02c5da198d
Enable EEPROM_UVLO flag for host prints
...
Change in memory:
Flash: -30 bytes
SRAM: 0 bytes
2023-12-01 16:16:39 +01:00
gudnimg
ce24d917e6
power panic: Only send M24 for SD prints
...
For host prints, we don't want to send M24.
Change in memory:
Flash: +16 bytes
SRAM: 0 bytes
2023-12-01 16:16:39 +01:00
gudnimg
67c7ad1c99
power panic: improve file position recovery
...
- Only queue M26 for SD prints
- Add M110 to set gcode_LastN for host prints
- Remove one debug log to save resource (52 bytes)
Change in memory:
Flash: -14 bytes
SRAM: 0 bytes
2023-12-01 16:16:39 +01:00
gudnimg
665c01804c
power panic: remove redundant lcd_setstatuspgm
...
If recover_print was never called, then there should be
no need to call lcd_setstatuspgm(MSG_WELCOME) since
the status line was not modified by the power panic feature.
Change in memory:
Flash: -4 bytes
SRAM: 0 bytes
2023-12-01 16:16:39 +01:00
gudnimg
e2d0e9a2ee
power panic: remove redundant lcd update calls
...
lcd_show_fullscreen_message_yes_no_and_wait_P will
enable LCD update upon exit.
Change in memory:
Flash: -24 bytes
SRAM: 0 bytes
2023-12-01 16:16:39 +01:00
3d-gussner
096a1c9fe0
Change Reprint action message to comply to OctoPrint actions
2023-11-30 15:08:48 +01:00
3d-gussner
b37e39fdd9
Merge pull request #4427 from gudnimg/minor-stepper-opt
...
optimisation: stepper: make `dda_isteps_t` an array
2023-11-29 08:54:38 +01:00
3d-gussner
3216ef863a
Merge pull request #4149 from gudnimg/tone-opt
...
use `uint16_t` instead of `uint32_t` when writing to OCR4C register
2023-11-29 08:26:54 +01:00
3d-gussner
ff42510a5c
Merge pull request #4512 from jamesdehart/fix-spelling-temperature
...
Fix Spelling: temperature.cpp
@jamesdehart Thanks for the PR even a small community PR like this is very appreciated 🤗
2023-11-28 08:54:15 +01:00
3d-gussner
ba004d2fa8
Merge pull request #4514 from DRracer/current-tool
...
MMU2: Report current tool onto the serial
2023-11-27 17:13:49 +01:00
D.R.racer
67d7be2b2d
MMU2: Report current tool onto the serial
...
PFW-1546
2023-11-27 13:16:13 +01:00
D.R.racer
0462b7289a
MMU2: enlarge the Idler's SG_thrs range in Tune menu
...
Based on experience of mibehaving MMU2S units, a broader range seems to help more people in getting their unit to home properly.
Related to issue #4285
2023-11-27 08:57:28 +01:00
James DeHart
e2a60be029
Fix Spelling: temperature.cpp
...
While running the temperature calibration. I happen to notice the `estimate` was spelled `estimat`.
2023-11-25 15:28:18 -07:00
3d-gussner
9f9bb12eeb
Merge pull request #4419 from gudnimg/reduce-stack-m600-opt
...
M600: reduce stack usage
2023-11-24 05:39:26 +01:00
3d-gussner
d9d42a0678
Use of PrinterState for Reprint menu
2023-11-23 06:47:04 +01:00
Guðni Már Gilbert
e1e0b0afa1
Refactor code which resets crash detection setting
...
Add function crashdet_use_eeprom_setting
Change in memory:
Flash: -52 bytes
SRAM: 0 bytes
2023-11-22 21:19:43 +00:00
Guðni Már Gilbert
30d0da4698
Close SD file in print_stop instead of UnconditionalStop()
...
Change in memory:
Flash: -6 bytes
SRAM: 0 bytes
2023-11-22 21:19:17 +00:00
Guðni Már Gilbert
3ad40f0206
crashdet_cancel doesnt cleanup all variables when using Octoprint
...
I would think that this should behave similarly as when stopping
the print via the LCD.
Changed UnconditionalSto()p to not close the SD card file
if we're using Octoprint. Then there shouldnt be any file open.
Some of the variables which were not reset:
isPrintPaused
pause_time
saved_start_position
saved_printing_type
Bed heater may be left on?
Change in memory:
Flash: -28 bytes
SRAM: 0 bytes
2023-11-22 21:19:17 +00:00
Juan Francisco Estrada
0b4af3b97f
Fix: Reprint menu does not appear during the heating
2023-11-22 12:20:13 +01:00
Juan Francisco Estrada
73436e9351
Fixed Reprint from USB and from SD, some debug is needed
2023-11-22 12:20:00 +01:00
Juan Francisco Estrada
7130504fcf
Apply the reprint_pr_changes_diff2.txt provided by @3d-gussner
2023-11-22 12:18:59 +01:00
Juan Francisco Estrada
ce135a0976
Added support for reprint and streamed GCODE
2023-11-22 12:14:08 +01:00
Juan Francisco Estrada
532a5b3e2f
- Serial message --> /// action:reprint done
...
- Yes/no question --> Need to fix the bug related with the filename print --> if (lcd_show_fullscreen_message_yes_no_and_wait_P(altfilename, false, LCD_LEFT_BUTTON_CHOICE)==LCD_LEFT_BUTTON_CHOICE)
2023-11-22 12:14:00 +01:00
Juan Francisco Estrada
004169034a
Remove some MYSERIAL calls
2023-11-22 12:13:24 +01:00
Juan Francisco Estrada
ae5fbce6e7
Remove MYSERIAL.println code (debug purpose) and old commented code
2023-11-22 12:13:16 +01:00
Juan Francisco Estrada
a52d5430aa
Change to enquecommandf_P and enquecommand_P
2023-11-22 12:13:01 +01:00
Juan Francisco Estrada
e8a2d4c7e1
Reprint function integrated on 3.13v
2023-11-22 12:11:39 +01:00
3d-gussner
02459edcb6
Rebase fix
...
Add documentation
Whitespace
2023-11-22 08:21:52 +01:00
3d-gussner
d394645b69
Whitespace
2023-11-22 07:59:18 +01:00
3d-gussner
af79ac0714
Add `SetPrinterState(PrinterState::Idle);` after `lcd_commands_type = LcdCommands::Idle;`
2023-11-22 07:58:17 +01:00
3d-gussner
d5d77ee243
Cleanup documentation
2023-11-22 07:58:17 +01:00
3d-gussner
880d2f28bd
LCD menu only sends `// action:ready` or `// action:not_ready` via serial
...
Host has to send back state with `M72 S1|0` to keep printer and host in sync
Changed LCD menu messages to `Set ready` and `Set not ready`
Updated translations
2023-11-22 07:58:17 +01:00
3d-gussner
516ae1b952
Update state
2023-11-22 07:58:17 +01:00
3d-gussner
d3b98f30a7
Show Set Ready LCD menu only when M79 timer is running.
2023-11-22 07:58:17 +01:00
3d-gussner
514607318e
Add printer_state.cpp/.h
2023-11-22 07:58:17 +01:00
3d-gussner
d276695ce7
Set Ready
2023-11-22 07:58:13 +01:00
Guðni Már Gilbert
134e892d8e
Fix build failure
...
Another isPrintPaused was added by rebase
2023-11-21 18:40:28 +00:00
gudnimg
60cb089e96
Show statistics menu for USB/Serial prints
...
Change in memory:
Flash: -8 bytes
SRAM: 0 bytes
2023-11-21 18:38:40 +00:00
gudnimg
331ceaf044
M77: Save statistics when timer is stopped
...
For remote hosts, when the timer is stopped, then also save the statistics.
Slightly refactored save_statistics function by removing the parameters.
The function parameters are always the same.
Change in memory:
Flash: -40 bytes
SRAM: 0 bytes
2023-11-21 18:38:40 +00:00
gudnimg
a2e6cda37e
Fix build failure
2023-11-21 18:38:40 +00:00
gudnimg
a6de11059f
PFW-1206 Add M75-M78
...
Change in memory:
Flash: +240 bytes
SRAM: 0 bytes
2023-11-21 18:38:40 +00:00
gudnimg
423f98ff6e
Implement Marlin's print job timer
...
I changed the code a bit so it would compile
in Prusa Firmware.
The paused duration is no longer included in the
print time statistics.
Change in memory:
Flash: -122 bytes
SRAM: 0 bytes
2023-11-21 18:38:40 +00:00
3d-gussner
8b3373b9dc
Raise `END_FILE_SECTION` from 20000 to 30720 to prevent false positive `File incomplete. Continue Anyway?` messages.
2023-11-20 11:23:36 +01:00
3d-gussner
96094dc548
Don't pause with `S`et values
...
Update documentation
2023-11-20 07:30:07 +01:00
Guðni Már Gilbert
0d60a82c56
Don't reset pause_position on every M125
...
Change in memory:
Flash: -76 bytes
SRAM: 0 bytes
2023-11-20 07:30:06 +01:00
Guðni Már Gilbert
4a4c015ad8
M125: make pause_position static
2023-11-20 07:30:06 +01:00
Guðni Már Gilbert
2e12133716
M125: Code size optimisation
...
Change in memory:
Flash: -66 bytes
SRAM: -12 bytes
2023-11-20 07:30:06 +01:00
3d-gussner
498d99b84b
Code size improvments
2023-11-20 07:30:06 +01:00
3d-gussner
4dc87acf20
Fix issues
...
Check printer limits
Fix crash when pausing / paused
2023-11-20 07:30:06 +01:00
3d-gussner
43692b416b
Fix float
...
Thanks to @gudnimg for pointing out
2023-11-20 07:30:06 +01:00
3d-gussner
af054923a7
Add M125
2023-11-20 07:30:06 +01:00
3d-gussner
9fd478c9c2
Merge pull request #4173 from gudnimg/disable-heaters-gudni
...
optimisation: use `disable_heater()` in more places
2023-11-20 07:01:05 +01:00
3d-gussner
53c419f52d
Basic Printer name in EEPROM
...
- Output with M115 works
- ToDo
- LCD screen
- M550 gcode
- Detect length of EEPROM CUSTOM_MENDLE_NAME
2023-11-18 10:14:07 +01:00
gudnimg
cf0e0f3718
M600: use partial backup in RAM
...
To handle power panic in M600 we started saving
relevant data at the start of M600 gcode.
We are currently also saving the same data within
gcode_M600 which is saved on the stack. I propose
we just use the data already saved in SRAM to reduce
stack usage.
Change in memory:
Flash: -64 bytes
SRAM: 0 bytes
2023-11-17 19:25:56 +00:00
Guðni Már Gilbert
7e0df7f9d3
Merge pull request #4502 from gudnimg/gcode_reset_stepper_timeout
...
MMU: Remove gcode_reset_stepper_timeout
2023-11-17 09:27:49 +00:00
3d-gussner
f42d7e4ea0
Merge pull request #4495 from gudnimg/eeprom-table-cleanup
...
EEPROM: Formatting cleanup
2023-11-16 17:04:08 +01:00
Guðni Már Gilbert
e758b146be
MMU: Remove gcode_reset_stepper_timeout
...
This function was removed on the 32-bit side.
On the 8-bit the function was empty so it is safe
remove it.
2023-11-16 14:30:29 +00:00
Guðni Már Gilbert
4922bcd7b1
Merge pull request #4408 from gudnimg/PR2390
...
PFW-1097 M600: Fix filament change behavior when print is paused
2023-11-16 07:37:42 +00:00
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
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
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