Commit Graph

1662 Commits

Author SHA1 Message Date
Yuri D'Elia 128a23544d TM: Set the cal status bit when running `M310 A` directly
Running `M310 A` should set the TM calibration bit status if the
autotune procedure was successful.

Partially addresses #3891 and #3890, since running `M310 A F0` should
*still* count as valid calibration data and is not something that can be
replicated by using the LCD (which enforces self-test).
2023-01-16 07:33:23 +01:00
3d-gussner 5b8321d602 Move Z to top during Nozzle change 2023-01-16 07:27:59 +01:00
3d-gussner 6db58f09d0 Revert LongTimers to uint32_t in mmu.cpp to fix issues with MMU2 fw 1.0.6 2023-01-13 11:20:49 +01:00
Yuri D'Elia 8bd0d6aeb8 wizard: Ask about the sheet before doing Z calibration
Ask to install the sheet immediately after removing the test print.
This makes further messages less confusing.
2023-01-02 10:51:47 +01:00
Yuri D'Elia a8057e0d36 wizard: Disable temperature model during hotend testing
This avoids confusing error messages if the hotend is defective and
caught by selftest itself.

Rearrange Stopped state checks (saves 2 bytes)
2023-01-02 10:51:47 +01:00
Yuri D'Elia d8ae372309 wizard: Allow partial resuming after reset
Update the eeprom FW version as soon as migration is complete, to avoid
resetting the CALIBRATION_V2 variable at each reset.

Do not implicitly reset the calibration steps for WizState::Run: do this
only for the menu action.
2023-01-02 10:51:47 +01:00
Yuri D'Elia f158a75041 Unbreak build with !PINDA_THERMISTOR 2023-01-02 10:51:47 +01:00
Yuri D'Elia 0c583ff90a Handle CALIBRATION_STATUS_TEMP_MODEL 2023-01-02 10:51:47 +01:00
Yuri D'Elia 16de033504 Handle CALIBRATION_STATUS_SELFTEST 2023-01-02 10:51:47 +01:00
Yuri D'Elia 17b10167a0 Handle CALIBRATION_STATUS_LIVE_ADJUST 2023-01-02 10:51:47 +01:00
Yuri D'Elia d478aa5c5e wizard: Rewrite the wizard handling loop
Simplify status tracking:

- S::Restore to continue to the next logical wizard item
- S::Finish for a successful failure
- S::Failed to exit while showing a failure
2023-01-02 10:51:47 +01:00
3d-gussner 9fecc77c01
Merge pull request #3846 from 3d-gussner/MK3_3.12_XYZ_cal_fix
MK3_3.12: XYZ cal change message and add LCD ouput
2022-12-20 15:14:33 +01:00
3d-gussner e511996cd4
Merge pull request #3845 from 3d-gussner/MK3_3.12_tm_partial_lock
MK3_3_12: TM: Prevent lockout on invalid model values
2022-12-20 14:37:24 +01:00
3d-gussner eb9d58a6e0
Merge pull request #3826 from 3d-gussner/MK3_3.12_tm_default_state
MK3_3.12 TM: Provide full defaults for model data and enable it by default
2022-12-20 14:35:56 +01:00
3d-gussner 5a1743711c Change xyz cal message `up to 24 min.` instead `approx. 12 min.` 2022-12-20 14:34:25 +01:00
Yuri D'Elia 7bf8a64d38 Improve MSG_ACK_ERROR message 2022-12-19 10:50:50 +01:00
Yuri D'Elia 62d362f45f Also prevent longpress when Stopped 2022-12-19 10:50:34 +01:00
Yuri D'Elia 64eefa969b TM: Disallow preheat/filament actions when stopped
Require acknowledgement first

Fix cherry-pick mmu2 issue
2022-12-19 10:50:06 +01:00
Yuri D'Elia 5fc277469a TM: Allow to resume without a running print
If there is no running print, and the printer is Stopped, add a new
"Acknowledge error" menu entry to unlock the printer.

This simply calls lcd_print_stop(), which is identical in behavior to a
thermal error with a running print.
2022-12-19 10:48:40 +01:00
Yuri D'Elia 5e50a15c88 Do not show/call LCD status updates when unchanged
This mostly prevents useless serial noise
2022-12-19 10:48:12 +01:00
Yuri D'Elia 3b65aa06c5 TM: Clear the Stopped state when stopping the current print
We allow resuming from the LCD via start print and resume print,
it makes sense to clear the error on stop too.

For this reason distinguish whether the action is performed
automatically or manually (ie: interactively).

The error is only cleared when the command is run interactively.
2022-12-19 10:47:41 +01:00
Yuri D'Elia 94583c861b Rename print_stop() to lcd_print_stop_finish() for clarity 2022-12-19 10:47:26 +01:00
3d-gussner 263a4959d7 Fix `µ` character shown on translations
Fix cherry-pick issues
2022-12-16 15:58:29 +01:00
Yuri D'Elia f81b2a00c1 Restore the previous model state when performing a nozzle change
Do not force-enable the model if it was previously disabled.

Fix cherry-pick issue lcd_show_fullscreen_message_yes_no_and_wait_P
2022-12-15 06:42:21 +01:00
Yuri D'Elia f194bb1242 wizard: Allow finishing the calibration through menus
If the wizard is interrupted during model calibration, allow the
menu to mark "temperature model" calibration as complete.
2022-12-15 06:32:56 +01:00
Yuri D'Elia 4ce808c98b wizard: Rework the thermal model calibration logic
- Correctly sequence the enqueued commands in order to check for the
  real calibration result.
- Perform autocalibration with self-check enabled.
- Only save/continue the wizard if autocalibration succeeds.
2022-12-15 06:32:14 +01:00
Yuri D'Elia 6d83a494d6 selftest: Handle thermal errors in lcd_selfcheck_check_heater
- Simplify lcd_selfcheck_check_heater loop
- Check for/abort on Stopped (indicating a thermal failure).
2022-12-15 06:32:01 +01:00
3d-gussner a1da5ed1ad Add Nozzle change menu to FARM mode under Settings
Fix cherry-pick issue
2022-12-06 11:28:21 +01:00
3d-gussner b2b8fee015
Merge pull request #3790 from 3d-gussner/MK3_3.12_Nozzle_change
Fix yes no for Nozzle change
2022-11-30 17:59:34 +01:00
3d-gussner 12fc82fc36 Fix yes no 2022-11-30 16:16:57 +01:00
3d-gussner b5b4e4d335
Merge pull request #3789 from 3d-gussner/MK3_3.12_Nozzle_change
Mk3 3.12 nozzle change
2022-11-30 15:51:17 +01:00
3d-gussner 7a42af1ba6 Update internal translations
Fix G28 W
2022-11-30 15:23:31 +01:00
Alex Voinea ade8a87a3f fullscreen message: use \n to force the next word on the next line
Useful for printing short URLs since those contain punctuation characters, which get treated at the end of a word under usual circumstances
2022-11-30 15:23:07 +01:00
Alex Voinea 8261712635 Fix recursion 2022-11-30 15:22:42 +01:00
3d-gussner d87f499443 Nozzle change menu
Fix cherry pick
2022-11-30 15:20:44 +01:00
3d-gussner 6d7d5d4ef3 Fix typo
Add Norwegian translations thanks to @OS-kar
2022-11-22 08:31:12 +01:00
3d-gussner 696117e73b Fix cherry-pick 2022-11-20 11:14:06 +01:00
3d-gussner f8edad2fba Unhack selftest hack during wizard 2022-11-20 11:05:45 +01:00
Alex Voinea 0f70665e44 XYZ calibration fixes 2022-11-20 11:05:26 +01:00
Alex Voinea 7e9d9ade5c Fix wizard serial messages 2022-11-20 11:03:06 +01:00
3d-gussner 7fe1a50899 Inital Temp Model cal wizard 2022-11-20 11:02:38 +01:00
Alex Voinea 478a9a6cec MK2.5: unblock planner after plan_abort_hard() 2022-11-11 09:17:17 +01:00
3d-gussner de562800ca Fix Long-press cherry-pick from https://github.com/prusa3d/Prusa-Firmware/pull/3737
Fix eeprom documentation
Update pot and po files as pre-release task
Bump up to FW 3.12.0-RC1 and build number +2 (+1 commit + 1 merge)
2022-11-07 10:37:43 +01:00
Guðni Már Gilbert e9b7763af6 Fix long-press LCD inactivity timeout
Fixes #3715

When a long-press is triggered, the LCD inactivity timer
needs to be restarted. This is done with lcd_timeoutToStatus.start()

This also fixes situations where a long-press is triggered, and the timer
times out immediately (because it was not reset properly)

Change in memory:
Flash: +8 bytes
SRAM: 0 bytes
2022-11-07 10:11:35 +01:00
3d-gussner 4785eedc06 Fix typo
Add lcd_setatatus_serial to output lcd status message and serial at the same time
2022-11-02 10:19:16 +01:00
3d-gussner 67877acbf6 Fix MK25/S builds 2022-10-28 05:39:42 +02:00
3d-gussner 6d358187ff Temp Model cal. menu 2022-10-28 05:39:14 +02:00
3d-gussner 1b08776873 Change fan RPM display to 5 digits
All credits to @ WarrenSchultz for initial PR https://github.com/prusa3d/Prusa-Firmware/pull/3656
2022-10-19 07:01:54 +02:00
3d-gussner 162ab4538f rename `Extruder fan` to `Hotend fan`
Fix cherry-pick issues
2022-10-19 07:01:07 +02:00
Yuri D'Elia 6bee4fec8d Remove unneeded lcd_finishstatus() 2022-09-23 14:55:03 +02:00