Commit Graph

44 Commits

Author SHA1 Message Date
3d-gussner 45a223a1f9 Remove White spaces 2024-05-20 19:09:03 +02:00
Guðni Már Gilbert 62b90fde28 mmu: remove ResetOnExit
No change in memory
2023-10-19 18:32:42 +00:00
D.R.racer ec4740fe53 Clean-up ProgressCodes and ErrorCodes parameters throughout the code 2023-09-18 10:51:32 +02:00
gudnimg e0269d6f6a Explicitly using Buttons namespace
This change sync the code a little bit with the 32-bit FW

No change in memory
2023-09-03 12:41:39 +00:00
Guðni Már Gilbert fc18f4c5d7 PFW-1522 Implement filament change screen
Change in memory:
Flash: +116 bytes
SRAM: +1 byte
2023-08-18 14:27:39 +02:00
Guðni Már Gilbert 1cda696e14 PFW-1530 Add Tune to Selector screen and more
- Rename "Idler" to "Sensitivity"
- Implement ReadRegisterInner() as a way to read register in blocking contexts such as manage_response()
This allows us to show the current EEPROM value on the printer's LCD
2023-08-14 09:34:55 +02:00
Guðni Már Gilbert 5f60eaff85 PFW-1530 Initial prototype
Add a 'Tune' option to HOMING_IDLER_FAILED error

This will open a menu which allows
the user to change the stallguard threshold
from the MMU error screen

Change in memory:
Flash: +334 bytes
SRAM: +1 byte
2023-08-14 09:34:55 +02:00
D.R.racer ffb6a2ae0c Generalize description of MMU MCU power errors
as requested in Prusa-Error-Codes PR#97

There will be more separate sources of MCU power errors in the future and reporting each of them separately doesn't make much sense
- especially when the only thing a user can do about it is to check the connectors.

So based on this, the error title has changed a bit (we are not using the full text description in 8bit FW)

Also, update perform the related changes in PO files + add (machine generated) translations.
2023-07-20 12:32:30 +02:00
3d-gussner b5bd9ebc63
MK3 sync Prusa-Error-Codes (#4238)
* Sync PEC `FINDA_DIDNT_GO_OFF` to `FINDA_FILAMENT_STUCK`

* Sync PEC `FSENSOR_DIDNT_GO_OFF` to `FSENSOR_FILAMENT_STUCK`

* Sync PEC `PULLEY_STALLED` to `PULLEY_CANNOT_MOVE`

* Sync PEC `SELECTOR_CANNOT_MOVE` update text

* Sync PEC `IDLER_CANNOT_MOVE` update text

* Sync PEC `PULLEY_WARNING_TMC_TOO_HOT` to `WARNING_TMC_PULLEY_TOO_HOT`

* Snyc PEC `RestartMMU` to `ResetMMU`
Also related text

* Sync PEC `SELECTOR_WARNING_TMC_TOO_HOT` to `WARNING_TMC_SELECTOR_TOO_HOT`

* Sync PEC `IDLER_WARNING_TMC_TOO_HOT` to `WARNING_TMC_IDLER_TOO_HOT`

* Sync PEC `PULLEY_TMC_OVERHEAT_ERROR` to `TMC_PULLEY_OVERHEAT_ERROR`

* Sync PEC `SELECTOR_TMC_OVERHEAT_ERROR` to `TMC_SELECTOR_OVERHEAT_ERROR`

* Sync PEC `IDLER_TMC_OVERHEAT_ERROR` to `TMC_IDLER_OVERHEAT_ERROR`

* Sync PEC `PULLEY_TMC_DRIVER_ERROR` to `TMC_PULLEY_DRIVER_ERROR`
Also releated text

* Sync PEC `SELECTOR_TMC_DRIVER_ERROR` to `TMC_SELECTOR_DRIVER_ERROR`
Also related text

* Sync PEC `IDLER_TMC_DRIVER_ERROR` to `TMC_IDLER_DRIVER_ERROR`
Also related text

* Sync PEC `PULLEY_TMC_DRIVER_RESET` to `TMC_PULLEY_DRIVER_RESET`

* Sync PEC `SELECTOR_TMC_DRIVER_RESET` to `TMC_SELECTOR_DRIVER_RESET`

* Sync PEC `IDLER_TMC_DRIVER_RESET` to `TMC_IDLER_DRIVER_RESET`

* Sync PEC `PULLEY_TMC_UNDERVOLTAGE_ERROR` to `TMC_PULLEY_UNDERVOLTAGE_ERROR`

* Sync PEC `SELECTOR_TMC_UNDERVOLTAGE_ERROR` to `TMC_SELECTOR_UNDERVOLTAGE_ERROR`

* Sync PEC `IDLER_TMC_UNDERVOLTAGE_ERROR` to `TMC_IDLER_UNDERVOLTAGE_ERROR`

* Sync PEC `PULLEY_TMC_DRIVER_SHORTED` to `TMC_PULLEY_DRIVER_SHORTED`
Also related text

* Sync PEC `SELECTOR_TMC_DRIVER_SHORTED` to `TMC_SELECTOR_DRIVER_SHORTED`
Also related text

* Sync PEC `IDLER_TMC_DRIVER_SHORTED` to `TMC_IDLER_DRIVER_SHORTED`
Also related text

* Sync PEC `PULLEY_SELFTEST_FAILED` to `MMU_PULLEY_SELFTEST_FAILED`
Also related text

* Sync PEC `SELECTOR_SELFTEST_FAILED` to `MMU_SELECTOR_SELFTEST_FAILED`
Also releated text

* Sync PEC `IDLER_SELFTEST_FAILED` to `MMU_IDLER_SELFTEST_FAILED`
Also related text

* Sync PEC fix MMU_MMU
Update MMU MCU UNDERPOWER

* Sync PEC `FIL_ALREADY_LOADED` to `FILAMENT_ALREADY_LOADED`
Also related text

* Add Prusa Error Codes check script

* Remove `:` at FINDA and FSENSOR as it is in other tiles

* Sync
FSENSOR_DIDNT_TRIGGER
MSG_DESC_SELECTOR_CANNOT_MOVE
MSG_DESC_IDLER_CANNOT_MOVE
MSG_DESC_FW_UPDATE_NEEDED
FILAMENT_ALREADY_LOADED

* Add MMU UNKOWN_ERROR PEC
2023-06-21 07:34:17 +02:00
Guðni Már Gilbert e2b58d8724 Don't translate the more button 2023-03-19 16:50:42 +00:00
3d-gussner 8b49d241d2 revert BTN_MORE non-translated 2023-03-15 07:03:41 +01:00
3d-gussner 235c4ae943 Do not `MSG_BTN_MORE` translate 2023-03-14 08:26:39 +01:00
DRracer e787111922
Add MMU error code: MCU_UNDERVOLTAGE_VCC (#4069)
+ read bandgap voltage periodically
+ correct wording of ERR_ELECTRICAL_MCU_UNDERVOLTAGE_VCC (as requested in Prusa-Error-Codes PR#81)
2023-03-08 15:42:25 +01:00
D.R.racer c826ae989f Remove Done button on FINDA-related MMU error screens
Follows the requirements from Prusa-Error-Codes yaml definition.
Saves a fwe bytes as well as the button switch() statement got simplified.

PFW-1494
2023-02-10 14:38:18 +01:00
D.R.racer 3ddc2cf86d Add ResetMMU and DisableMMU buttons to specific error screens
- MMU not responding/Communication error: add DisableMMU
- MMU FW update needed: add ResetMMU

Flash: +8B
RAM: +0B
2023-02-08 06:48:11 +01:00
D.R.racer d2f3835b2c Fixup after review 2023-01-31 09:35:22 +01:00
D.R.racer ec1d12d929 Introduce FILAMENT_EJECTED + tune Eject operation + inc. MMU ver. 2.1.6 2022-12-30 14:23:44 +01:00
D.R.racer d4f0f363cd Fixes from tests
- introduce Cut Filament
- limit retries try-unload
- fix waiting in "Load to extruder failed" error screen
- add LOAD_TO_EXTRUDER_FAILED error definition
2022-12-30 14:23:44 +01:00
Guðni Már Gilbert fb530ce543 PFW-1454 Send button to MMU on MMU SELFTEST FAILED screen
Fixes an issue where the button on the MMU error screen doesn't do anything
when MMU SELFTEST FAILED is rendered
2022-12-04 11:04:00 +00:00
D.R.racer 6059398004 Introduce MMU Error: INSPECT_FINDA (FINDA_FLICKERS) 2022-11-17 07:58:11 +01:00
3d-gussner 7c009cadb8 Bump up Revision to ALPHA1 6051
Temporary fix for MSG_BTN_MORE
pre-release pot and po update
2022-11-04 10:21:39 +01:00
3d-gussner f4a2c1c794 Update translations
Fix button msg
Update Dutch `F. jam detect`
2022-10-25 10:29:35 +02:00
D.R.racer 6eab0dda59 Add parentheses - be more explicit in error codes' masking and comparison 2022-10-11 15:51:01 +02:00
D.R.racer ebb79351a7 Add preliminary support for MMU_SELFTEST_FAILED error messages 2022-10-11 15:51:01 +02:00
Yuri D'Elia 398a4bf403 cleanup: Do not return const values from functions
This generates a warning under -Wextra, since in most cases a const
value doesn't prevent buggy code (as copies are allowed) while
preventing some optimizations (such as move operations) to take place.
2022-09-30 12:55:47 +02:00
Guðni Már Gilbert 25a7dc8397 Fix: Filament Already Loaded only has two buttons 2022-09-17 16:36:09 +02:00
Guðni Már Gilbert 15a8c8fe37 Fix: Unload Manually did not send any button to the MMU 2022-09-17 16:36:09 +02:00
Guðni Már Gilbert 9b4a621275 Fix: Fsensor errors only have one reset button 2022-09-17 16:36:09 +02:00
3d-gussner 89a03c1f0d MMU2/lang: Update translatable strings to match our extraction macros 2022-09-16 19:02:04 +02:00
D.R.racer f18721bee3 Fix unintentional typo 2022-09-16 10:22:38 +02:00
D.R.racer c412f062c8 Perform 3xRetry automatically
This is a draft PR showing the potential 3x retry implementation on the printer's side.
It is much less code and looks more reliable than the same functionality in the MMU FW.

Still, more work needs to be done:
- [ ] Button is sent to the MMU even before returning from the parking position
- [ ] Then the button is sent again
- [ ] Then the printer runs out of retryAttempts

We need to find a better spot to check for "automatic" retry and issuing of the buttons
2022-09-16 10:22:38 +02:00
VintagePC f155c7664d Add missing CheckUserInput calls, fix bad array entry for FW_update 2022-09-16 10:22:38 +02:00
VintagePC 888a37450b Fix wrong return 2022-09-16 10:22:38 +02:00
VintagePC 73c486cc2f - Fix DisableMMU button on FW incompat
5823c14
- Implement eeprom var, fix reset
2022-09-16 10:22:38 +02:00
D.R.racer 236098dbca Make init MMU error screens send buttons (Idle mode) 2022-09-16 10:22:38 +02:00
D.R.racer 5082da78d2 Convert button on LCD into button for MMU
- Dependent on current MMU error being processed
- Includes rename of LEFT_BUTTON_CHOICE -> LCD_LEFT_BUTTON_CHOICE (and right, middle as well) to avoid confusion with MMU buttons' ordering
2022-09-16 10:22:38 +02:00
D.R.racer 8a92865969 Update MK3S to match MMU PR#168
- new progress and error codes
- remove #error from mmu2_power.cpp as it makes no sense
- remove temporary error translation code
2022-09-16 10:22:37 +02:00
D.R.racer 87ed42ba9b Fix FW update needed button order 2022-09-16 10:22:37 +02:00
D.R.racer 68b007c759 Fix compile-time conversion MMU2 ErrorCode -> Prusa-Error-Code
and hide some of the implementation details into mmu2_error_converter.cpp
which makes the code in mmu_reporting.cpp much easier to read.
2022-09-16 10:22:37 +02:00
D.R.racer c28354bf92 Update error codes + constexpr FindErrorIndex
Beware - requires avr-gcc 7.3!
2022-09-16 10:22:37 +02:00
Guðni Már Gilbert dcebad21c8 Add missing spaces to ErrorCode messages
Such that:
MMU2:E=32766ErrorTitleTextDescription
Becomes:
MMU2:E=32766 ErrorTitle TextDescription

Also simplified the process of combining ErrorTitle and TextDescription
into the msg buffer by using snprintf. This is saver since we only
use dstSize in one place instead of two.
2022-09-16 10:21:53 +02:00
Guðni Már Gilbert 6fab95f145 Fix PROGMEM read in ErrorCode message
This could cause the printer to crash. The Serial Stream would show
a garbled string.

Also included in this commit:
* The buffer size is increased from 64 bytes to 192 bytes.  We need to
take into account the length of the ErrorTitle and ErrorDescription.
* Fix overwrite in ErrorCode message buffer.
2022-09-16 10:21:53 +02:00
D.R.racer 87d9f9aba7 Introduce MMU errors + their texts 2022-09-16 10:21:53 +02:00
D.R.racer 2e293e90a0 MMU2 interface overhaul
First port of the new MMU2-printer interface into 8bit FW.
2022-09-16 10:21:53 +02:00