Commit Graph

6057 Commits

Author SHA1 Message Date
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