Commit Graph

6184 Commits

Author SHA1 Message Date
3d-gussner
2f8b2dcad4 Add LCD output during xyz calibration 2022-12-20 14:30:06 +01:00
Yuri D'Elia
650c76e88d TM: Force initialization after reset 2022-12-20 07:06:37 +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
3c1c2fd2ca Use menu_set_block() in ThermalStop()
Set a menu block for fatal thermal errors instead of abusing
lcd_return_to_status() to kick the user out of the menus.

This now allows a thermal model error to be recoverable through menu
access.
2022-12-19 10:48:26 +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
a551536386 TM: correctly mark repeated anomalies 2022-12-19 10:47:58 +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
Yuri D'Elia
d37a2a173a Parenthesize IS_SD_PRINTING defensively 2022-12-19 10:47:10 +01:00
Yuri D'Elia
de20fc6a5a Replace two expressions with cmd_head 2022-12-19 10:46:58 +01:00
Yuri D'Elia
5ab0dcb4c5 Allow M310 to bypass the Stopped state for recovery
Since M310 cannot change the heaters, allowing M310 S0 (and changing
parameters) allows to recover a usb-controlled printer which has been
locked-out due to bad model settings.
2022-12-19 10:46:45 +01:00
Yuri D'Elia
42125b4bb2 Keep a pointer past the line number in cmdqueue
This allows to skip line numbers transparently and perform faster
checks on the actual command to process.
2022-12-19 10:46:33 +01:00
Yuri D'Elia
c890c9e8b0 TM: Do not lockout the menus on thermal errors
This prevents the ability to run gcode from the SD card.

In a thermal error with faulty values, and without serial access, this
is the only way to process an M310 instruction and recover.
2022-12-19 10:46:17 +01:00
3d-gussner
d59dfc7bc7 Remove unused community translations 2022-12-16 16:08:55 +01:00
3d-gussner
4c8afd8550 Shorten French translation
Fix cherry-pick issue Remove new MMU2 messages
2022-12-16 15:58:29 +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
4438aa4909 TM: reset fan measuring state when changing speed
Ensure that fan checks are reset and use the new speed at each step of
the calibration.

This also gives extra time to the fan to ramp-up from a cold start,
when a fancheck could previously start right *after* the speed change.

Should fix #3791
2022-12-16 15:31:34 +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
41be93735c eeprom: Document new calibration state 2022-12-15 06:32:35 +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
Yuri D'Elia
d2019b70f2 Remove M999 remnants
This was already removed in fc10ca3146
but got reinstated by mistake in the mmu2 merge.

Also remove another incorrect Stopped usage.
2022-12-15 06:31:18 +01:00
Yuri D'Elia
c7812063d9 TM: Restore all original values if autotune fails
- Ensures repeated autotune attempts with self-check can't succeed due
  to different starting conditions.
- Allows for a simpler workflow during selftest and wizard if autotune
  fails.
2022-12-15 06:29:24 +01:00
Yuri D'Elia
f6c16455bb TM: Store only the last autotune result state
- Remove tm::valid and temp_model_valid as it's a duplicate of the
  calibrated() state.
- Add temp_model_autotune_result() for future use.
2022-12-15 06:29:10 +01:00
Yuri D'Elia
dac73c9582 TM: Set default resistance levels for MK3/MK3S
Provide average calibrated values for all fan levels for MK3/MK3S
variants and enable the model by default.

This ensures the calibration step is not skipped unless explicitly
disabled.

Force-clear fan values during autotune to restore the previous
calibration behavior, as fan resistance levels can be too big and
prevent the autotune-with-selfcheck to fail.
2022-12-15 06:28:57 +01:00
Yuri D'Elia
d84231f2d5 Fix potential buffer overflow in LCD messages 2022-12-15 06:28:46 +01:00
Yuri D'Elia
6a3d82e492 TM: Remove unnecessary display comments
Favor code readability
2022-12-15 06:28:22 +01:00
Yuri D'Elia
1e19eedf26
Merge pull request #3806 from 3d-gussner/MK3_3.12_Fix_M862.4_strict
MK3_3.12: Fix `M862.4` with [strict] mode
2022-12-12 13:04:12 +01:00
Yuri D'Elia
a6eff8f8a5 Simplify firmware/gcode version comparisons
Fix cherry-pick issue
2022-12-12 12:43:13 +01:00
3d-gussner
be668c89af
Merge pull request #3808 from 3d-gussner/MK3_3.12_Nozzle_change_community_translations
MK3_3.12: Nozzle change community translations
2022-12-07 07:19:53 +01:00
3d-gussner
571895412d
Merge pull request #3804 from 3d-gussner/MK3_3.12_Shorten_French
MK3_3.12: Shorten French translation
2022-12-06 16:02:49 +01:00
3d-gussner
732fb9dbfc
Merge pull request #3803 from 3d-gussner/MK3_3.12_FARM_Nozzle_change_menu
MK3_3.12: Add Nozzle change menu to FARM mode under Settings
2022-12-06 16:02:15 +01:00
3d-gussner
9f22478c35 Update lang/po/Firmware_no.po
Co-authored-by: OS-kar <104255741+OS-kar@users.noreply.github.com>
2022-12-06 15:58:44 +01:00
3d-gussner
8f1c11b016 Update Swedish translation 2022-12-06 15:58:22 +01:00
3d-gussner
1b659c5ded Update Nozzle change community translations 2022-12-06 15:57:34 +01:00
3d-gussner
49506b5348 Fix M862.4 with [strict] mode
Max 8 falvor versions

Fix cherry-pick issues
2022-12-06 13:31:44 +01:00
3d-gussner
62eee7ddff Shorten French translation 2022-12-06 11:31:18 +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
6062a507d9
Merge pull request #3770 from 3d-gussner/MK3_3_12_Temp_model_cal_wizard
PFW-1434: MK3_3.12 Temp model calibration during wizard
2022-11-30 15:34:01 +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