Commit Graph

4687 Commits

Author SHA1 Message Date
3d-gussner
8aaf77a6da Change to Thermal model
Add prusa.io/tm-cal link
and update all TM related translations
2023-02-08 18:34:11 +01:00
3d-gussner
c9722c2b63
Merge pull request #3956 from wavexx/tm_cal_check_312
TM: Check for PC parameters more carefully (3.12)
2023-01-27 14:57:41 +01:00
Yuri D'Elia
8ee084944a wizard: Return to status after calibration 2023-01-27 14:55:51 +01:00
Yuri D'Elia
68372c0c0e wizard: Do no set "Self test OK" as an alert message
Alert messages are intended to persist above "info" messages, thus
preventing further calibration status updates to be shown (such as
thermal model calibration).

Just set the message as a regular status message.

Fixes #3892
2023-01-27 14:55:51 +01:00
Yuri D'Elia
4e3152dc1d wizard: Disable TM warnings during calibration
During calibration model warnings are possible/normal. This is
apparently leading some into thinking the hotend might be faulty
and abort the calibration with a hard reset.

Disable warnings/beeps during calibration.

Rely on the error threshold only.
2023-01-27 14:55:37 +01:00
Yuri D'Elia
6058de4ae0 TM: Do not restrict autotune temperature
Fix a wrong type that prevents running TM autotune at temps >127
2023-01-27 14:55:27 +01:00
Yuri D'Elia
36c3814dc2 TM: Check for PC parameters more carefully 2023-01-26 23:47:17 +01:00
3d-gussner
d8ae7cbe11 Revert inverted "Running wizard ..." message
Update build number +1 for PR + one for merge
2023-01-20 09:13:19 +01:00
3d-gussner
149ecb857c Version changed (3.12.1 build 5684) for FW3.12.1 2023-01-19 16:36:26 +01:00
3d-gussner
cf08422672 Version changed (3.12.1-RC1 build 5682) for FW3.12.1-RC1 2023-01-17 09:49:56 +01:00
Yuri D'Elia
4a3644052d TM: Fan measuring state reset unification
Add resetFanCheck() to reset the fan measuring state as it's needed in
several places and save some flash space.
2023-01-16 08:43:23 +01:00
Yuri D'Elia
16922c2643 TM: Restore extruder autofan state when stopping/resuming
During thermal errors all fans are set to full speed.

When the print is resumed or stopped *and* the thermal error is gone,
also restore the autofan state.

Fixes #3893
2023-01-16 08:43:23 +01:00
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
Yuri D'Elia
7adfd0c670 wizard: Do not complain about missing calibration if model is disabled
This fixes #3891 without having to set the calibration bit, meaning
that if the model is later re-enabled without a real calibration, a
prompt is shown as expected.
2023-01-16 07:31:57 +01:00
3d-gussner
5b8321d602 Move Z to top during Nozzle change 2023-01-16 07:27:59 +01:00
Alex Voinea
fffb15cc81 Fix MK2.5 softReset()
Disable the watchdog early in the program

More documentation for pins file

retrigger build

fix watchdog not getting disabled on user app boot

Fix interrupts not enabled during setup()
2023-01-13 15:41:54 +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
3d-gussner
fd678bc8ec Version changed (3.12.0 build 5672)
5670 +1 for the commit +1 for the merge
2023-01-10 09:55:46 +01:00
Yuri D'Elia
54356f8d97
Merge pull request #3880 from wavexx/m300_s0_m312
Make M300 S0 pause like Marlin (3.12)
2023-01-02 19:24:02 +01:00
3d-gussner
cfed4bcd19 Fix few values 2023-01-02 15:18:43 +01:00
Yuri D'Elia
3c4373c0c3 Remove extra delay after critical sound
This delay doesn't exist for the tone generator, so remove it from the
pure version as well.
2023-01-02 14:27:46 +01:00
Yuri D'Elia
805e71e504 Make M300 S0 pause like Marlin
Follow Marlin's behavior and simply insert a delay for the requested
duration when using M300 S0.

When S is not specified, use the default tone instead.

Fixes #3856
2023-01-02 14:27:38 +01:00
3d-gussner
46a979271d Update calibration status v2 documentation 2023-01-02 11:22:47 +01:00
Yuri D'Elia
f68479fc38 TM: Mark more internal functions as static 2023-01-02 10:52:20 +01:00
Yuri D'Elia
5a89f6934a TM: Also clear the status flags when disabling the model
Disabling the model during a warn/error condition will also stop
updating the warning/error flag, keeping the printer in an error state.

Clear all flags as well when changing model settings.
2023-01-02 10:52:20 +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
fbfacd76a4 wizard: Resume the wizard for missing calibrations during upgrades
Instead of checking for explicit versions, resume the wizard if some
(new) wizard is missing.

This handles both the old SELFTEST check, the new thermal model
and any future check in the same fashion.
2023-01-02 10:51:47 +01:00
Yuri D'Elia
05f37edad5 Read version data from progmem in eeprom_fw_version_older_than 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
b2f3f476c4 Handle CALIBRATION_STATUS_{Z,XYZ} 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
16033b40b4 wizard: Rewrite the fw upgrade check logic
- Handle the conversion from the V1 calibration status to the V2 bitmap
  for all past FW versions.
- Allow to run the wizard in "Restore" mode (for example during upgrade
  or service prep) to complete any missing steps.
- Fix service prep to use the above feature by clearing the appropriate
  calibration bits.
- Remove exceptions for FW 3.2.0.4 which can now be handled cleanly.
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
Yuri D'Elia
8a43aa0024 wizard: Remove unused wizard stages
Remove PreheatPla/IsPla, as we currently always explicitly ask for the
material type.
2023-01-02 10:51:47 +01:00
Yuri D'Elia
6285951eac Simplify altfan override initialization 2023-01-02 10:51:47 +01:00
Yuri D'Elia
612e9d9303 Replace calibration state with a new calibration bitmap
- Move calibration status/declarations to util.h
- Allows to query the status of each step independently without assuming
  any order
- Allows to extend the calibration with new steps transparently
2023-01-02 10:51:47 +01:00
Yuri D'Elia
4ff245c7ee eeprom: Fix EEPROM_HEAT_BED_ON_LOAD_FILAMENT debug offset in docs 2023-01-02 10:51:47 +01:00
Yuri D'Elia
670bca47da Simplify FW eeprom version checks
- Generalize force_selftest_if_fw_version() so we can check when upgrading
  between arbitrary FW versions.
- Do not call update_current_firmware_version_to_eeprom() prematurely
  when forcing self-test (if a reset happens before self-test completes,
  the check would be incorrectly skipped on the next run).
2023-01-02 10:51:47 +01:00
Yuri D'Elia
a18f28715d backport: Stub LCDButtonChoice for LCD_LEFT_BUTTON_CHOICE 2023-01-02 10:51:47 +01:00
Yuri D'Elia
3f86636bb6 backport: Sync new offsets from MK3 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
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