3d-gussner
8d1be264e5
Thanks to @gudnimg pointing out duplicate if statements that are covered by the top-level if statement.
2024-03-27 17:44:50 +01:00
3d-gussner
9e8aadd8af
Revert split if statements
...
Kept few as these get too long
2024-03-27 10:15:07 +01:00
3d-gussner
52275322a2
Remove redundant check
2024-03-20 08:41:29 +01:00
3d-gussner
9f8115639a
LCD menu
...
- Hide menus during recovering
- Un-/Load filament with FSensor active only show Load OR Unload depending on FS sate
- Host
- Reprint only shown when M79 timer is active
- Resume only shown when M79 timer active
- Stop print always shown when printing, paused and recovering
2024-03-13 17:43:00 +01:00
3d-gussner
16aa2e7834
Hide LCD menu "Reprint" during power panic recovery
2024-03-13 17:43:00 +01:00
3d-gussner
88b77ecce2
Add bool printer_recovering
2024-03-13 17:42:59 +01:00
3d-gussner
517900c3fe
Add DEBUG_PRINTER_STATES
2024-03-13 17:42:59 +01:00
3d-gussner
f9bdb8b8aa
Add DEBUG_EEPROM_CHANGES
2024-02-27 08:56:18 +01:00
3d-gussner
727a82bb3d
Fix Stop print to send host action when host print is active
2024-02-05 08:14:10 +01:00
3d-gussner
6682237c7a
Merge pull request #4582 from gudnimg/PFW-1552
...
PFW-1552 and PFW-1544: Fix issue with MMU unload when a print is stopped with a cold nozzle
2024-02-01 06:22:49 +01:00
3d-gussner
ffeda98894
Add power panic recovery to active state
...
Fix M79 send only recovery action when power panic recovery is pending
Fix rebase issues
2024-01-29 13:07:48 +01:00
3d-gussner
d1b88e1684
Don't show `Print from SD` when host print is paused
2024-01-29 13:07:48 +01:00
3d-gussner
c9aba688e3
Saving few bytes by removing spaces in `//action:` host commands. Thanks to @sarusani pointing out inconsistent documentation.
...
Renaming `MSG_OCTOPRINT_*` to `MSG_HOST_ACTION_*` as it is used also with PrusaLink and other host printing solutions
Fix rebase issues
2024-01-29 13:07:48 +01:00
3d-gussner
fda30f82c8
Don't show `Set Ready`when not idle
2024-01-29 13:07:48 +01:00
gudnimg
abcb1017f3
PFW-1553 fix regression where SD card file is not closed when stopping paused print
...
When a print is paused, card.sdprinting is set to false. Instead we can check
if the SD card has been mounted and try to close the file.
The closefile() method will check internally whether or not the file is open.
2024-01-27 15:21:08 +00:00
gudnimg
f022567239
PFW-1522 Fix an issue where MMU unloads while nozzle is cold if print is stopped
...
In the case of a Fan Error, the print is paused. If the nozzle is allowed to cool for a while before the print is stopped via the LCD, then the MMU will try to unload with a cold nozzle.
This can happen with ANY recoverable thermal errors.
In this commit I attempt to fix all scenarios. Including PFW-1544 where the nozzle is cooling down when the print has finished normally.
PFW-1544
PFW-1552
Change in memory:
Flash: +74 bytes
SRAM: 0 bytes
2024-01-27 11:54:54 +00:00
gudnimg
c0b76dd5cf
cleanup: move st_synchronize under the if statement
...
If the if statement is not true, then the st_synchronize call is not useful
The raise_z call above the if statement does not need it since it always calls st_synchronize (blocking move)
No change in memory
2024-01-27 10:47:23 +00:00
3d-gussner
b80965731f
Merge pull request #4421 from gudnimg/sd-card-mount-opt
...
cleanup: Don't set root directory if SD card fails to mount + 3 renames
2024-01-22 09:11:19 +01:00
3d-gussner
02b91dc2cb
Merge pull request #4563 from 3d-gussner/MK3_Quick_nozzle_change_menu
...
Add nozzle diameter change to main menu for REVO builds
2024-01-19 14:26:18 +01:00
3d-gussner
13fb11889e
Minor cosmetic changes voted by community
2024-01-12 07:20:33 +01:00
gudnimg
adf2ecabc1
Fix pause indicator when print job timer is not used
...
Fixes #4554
Change in memory:
Flash: +50 bytes
SRAM: +1 byte
2024-01-11 19:30:30 +00:00
3d-gussner
d5a5835059
Add nozzle change to main menu when QUICK_NOZZLE_CHANGE is defined
...
Add Nozzle diameter to Info screen when printer inactive and QUICK_NOZZLE_CHANGE defined
Solves #4488
2024-01-11 07:36:51 +01:00
3d-gussner
8d50d29776
Merge pull request #4553 from sarusani/shutdownHostLCDEntry
...
Add Shutdown host to LCD Menu
2024-01-11 07:33:16 +01:00
3d-gussner
f18fc2bbce
Fix Pause->Tune->Auto Home layer shift
2024-01-09 11:07:29 +01:00
sarusani
59093107fd
Add #ifdef HOST_SHUTDOWN
2024-01-06 00:45:06 +01:00
sarusani
49f9d7abdc
Add Shutdown host to LCD Menu
...
Add "Shutdown host" entry to LCD menu if printer is not active and host is connected.
2024-01-06 00:45:06 +01:00
3d-gussner
db044163f9
Unify Selftest messages
2024-01-04 11:18:07 +01:00
gudnimg
9bd043c83b
Move restore_file_from_sd out of power panic file
...
This function is not specific to power panic. Some printer models
do not have power panic enabled.
This change fixes a build failure
No change in memory
2023-12-30 12:19:51 +00:00
gudnimg
ceec54f026
reprint: reduce duplicate code
...
restore_file_from_sd function now supports any
filename extension. If a print was finished (to allow reprinting) then the
EEPROM filename and extension should always be valid.
Change in memory:
Flash: -312 bytes
SRAM: 0 bytes
2023-12-30 12:06:46 +00:00
3d-gussner
15a3fb998c
Merge pull request #4541 from sarusani/actionReadyOpt
...
Remove leading M118 from "action:ready" & "action:not_ready"
2023-12-19 15:02:09 +01:00
sarusani
2c4474b1dd
Remove leading "M118"
2023-12-16 12:51:17 +01:00
sarusani
e5d6d72d23
Add #ifdef
2023-12-15 14:09:46 +01:00
sarusani
1407f29362
Prevent oozing after filament load
...
Retract 10mm of filament after loading
2023-12-14 14:20:46 +01:00
gudnimg
40786a24e0
Rename "cardOK" to "mounted"
...
Sync the Prusa firmware a little bit with Marlin 2.1
2023-12-09 10:52:26 +00:00
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
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
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
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
3d-gussner
096a1c9fe0
Change Reprint action message to comply to OctoPrint actions
2023-11-30 15:08:48 +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
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
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
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
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
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
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
3d-gussner
e74abb102a
Merge pull request #4494 from gudnimg/issue3122
...
Fix #3122
2023-11-12 17:42:10 +01: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
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
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
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
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
Guðni Már Gilbert
dec5e2c1b4
Refactor menu_action_sdfile
2023-11-05 16:46:54 +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
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
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
3d-gussner
fe9a8cf8ac
Fix PF-build.sh with new cmake
...
Same as MK3_3.13.2 branch
2023-10-17 15:36:54 +02:00
gudnimg
466e562360
PFW-1542 Don't allow starting SD print if there is a fan error
...
Apply same conditions as on "Resume print" feature.
Starting a SD print should not be possible if there is an active hardware error
2023-10-15 12:17:36 +00:00
Alex Voinea
7e88e49b4e
Fix tilde in message
2023-10-03 08:19:48 +02:00
Alex Voinea
3e15a24be7
Fix sheet rename resetting characters to blank
2023-10-03 08:19:48 +02:00
Alex Voinea
9dbbb12a13
Fix frame start for non-menu screens
2023-10-03 08:19:48 +02:00
Alex Voinea
8e25e1b164
Allow all diacritics in the sheet name
2023-10-03 08:19:48 +02:00
Alex Voinea
4736a1624f
First working implementation
...
Fix cherry-pick conflict
2023-10-03 08:19:48 +02:00
Alex Voinea
e9f74b2678
Remove unnecessary lcd_home() calls
2023-10-03 08:19:48 +02:00
Alex Voinea
580b27e394
Use lcd_home() wherever possible
...
Fix cherry-pick conflict
2023-10-03 08:19:48 +02:00
3d-gussner
f392fae996
Fix cherry-pick conflict 2
2023-10-03 08:19:48 +02:00
Alex Voinea
100a8e3b33
Dynamic characters initial
...
Fix more hardcoded characters
Finally optimize the lcd printf with custom characters
FontGen.py script
Add arguments and action
Fix build
Fix conflicts
2023-10-03 08:19:48 +02:00
gudnimg
016db6a6e8
Hide menus more consistently when the printer is busy
...
lcd_calibration_menu: Remove redundant if (!isPrintPaused). The menu
is never called unless this condition is true.
eeprom_switch_to_next_sheet: Don't show this menu if the printer
is busy doing work!
Do not allow these menus to run while a print is paused or
when we're recovering a print:
- Preload to MMU
- Load to Nozzle
- Unload filament
- Eject from MMU
- Cut filament
- Autoload filament
- Settings
- Calibration
2023-09-23 15:42:03 +00:00
gudnimg
06d34b4398
Fix an issue where print can't be stopped under specific circumstances
...
There is a bug where if the printer is recovering a print, it run a
blocking loop to restore the extruder and bed temperatures.
But if a Fan error is triggered in this loop, then the user can't
abort the print via LCD.
If the fan error resolves on its own the 'Resume print' menu will
appear in a few seconds. But if not, then the user can't resume the print
(which is normal). But with the bug above the user can't abort the print either!
The problem is essentially isPrintPaused variable is cleared too early.
We should wait until the print is completely restored first.
Steps to reproduce:
1. Start a print
2. Pause the print
3. Wait for extruder temperature to fall at lest 180°C
4. Click 'Resume' print
5. While heating, stop the hotend fan and wait for a few seconds until an error is raised
6. Observe issue => 'Stop print' menu item is gone!
PFW-1542
2023-09-23 14:18:52 +00:00
Guðni Már Gilbert
6187b7eecf
optimisation: use disable_heater() in more places
...
Change in memory:
Flash: -84 bytes
SRAM: 0 bytes
2023-09-16 14:26:09 +00:00
3d-gussner
2e70697fa7
Merge pull request #4183 from leptun/mbl_print_area
...
MBL print area
2023-09-13 10:28:08 +02:00
3d-gussner
0aa380b931
Merge pull request #4206 from gudnimg/sd-card-menu-opt
...
optimisation: `menu_item == menu_line` is always true in `menu_item_sddir()` and `menu_item_sdfile()`
2023-09-13 07:49:43 +02:00
3d-gussner
73118dd4e2
Merge pull request #2474 from vintagepc/#2161-tune-x-y-rehome
...
Add X-Y home to tune menu if print is paused
2023-09-13 07:49:23 +02:00
vintagepc
b7daac3b70
Direct home instead of G28
2023-09-12 18:41:14 -04:00
vintagepc
b75e3b5233
facepalm commit
...
... I somehow managed to lose a bracket. DERP.
2023-09-12 18:33:27 -04:00
vintagepc
ebc6663210
Add auto-home to tune menu
2023-09-12 18:33:27 -04:00