-
-
Notifications
You must be signed in to change notification settings - Fork 19.6k
Update Prusa MMU3 #27719
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: bugfix-2.1.x
Are you sure you want to change the base?
Update Prusa MMU3 #27719
Conversation
4740567 to
e57267d
Compare
4354891 to
efa1758
Compare
103a8f4 to
8954ea0
Compare
8a7cb5e to
d3687d9
Compare
6457bf6 to
cfcc8ab
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR updates the firmware support from MMU2 to MMU3 by aligning error codes, status messages, configuration checks, and button operations with the updated Prusa MMU3 specifications. Key changes include:
- Updated error titles and descriptions in language_en.h to match MMU3 error semantics.
- Revised configuration validation and register mappings in SanityCheck.h and registers.h.
- Updated button operation definitions and error code handling in buttons.h, mmu3_error_converter.cpp, and mmu3.cpp.
Reviewed Changes
Copilot reviewed 10 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| Marlin/src/lcd/language/language_en.h | Adjusted error message identifiers and descriptions |
| Marlin/src/inc/SanityCheck.h | Updated error messages to include MMU3 in configuration checks |
| Marlin/src/feature/mmu3/mmu_hw/registers.h | Fixed register mapping value formatting |
| Marlin/src/feature/mmu3/mmu_hw/progress_codes.h | Revised progress code definitions |
| Marlin/src/feature/mmu3/mmu_hw/errors_list.h | Updated error codes and comments |
| Marlin/src/feature/mmu3/mmu_hw/error_codes.h | Removed deprecated FILAMENT_CHANGE error code |
| Marlin/src/feature/mmu3/mmu_hw/buttons.h | Updated button operations, deprecating unused definitions |
| Marlin/src/feature/mmu3/mmu3_reporting.h | Adjusted enum type for command progress representation |
| Marlin/src/feature/mmu3/mmu3_error_converter.cpp | Modified error code mapping to reflect MMU3 changes |
| Marlin/src/feature/mmu3/mmu3.cpp | Removed obsolete error checks and added clarification comments |
Files not reviewed (1)
- Marlin/src/feature/mmu3/mmu_hw/check-pce.sh: Language not supported
Comments suppressed due to low confidence (1)
Marlin/src/feature/mmu3/mmu_hw/buttons.h:44
- [nitpick] If the commented-out button operations (Load, Eject, Tune) are no longer needed, consider removing them entirely to avoid confusion.
//Load = 5, //
|
Reminder: Not sure on the status of |
3791e7d to
6ea4a16
Compare
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
52b6b2e to
dc3c883
Compare
52532da to
06c6c47
Compare
Description
Basically, since this was originally MMU2 stuff, I've updated to the correct MMU3 stuff
MSG_|TITLE_, andDESC_- language_en.hNote
Originally, this code was taken from prusa3d/Prusa-Firmware/tree/MK3/Firmware/mmu2 + files included from the previous Firmware directory, updated last by #26635 as to work with MMU3.
However, this repo has support for MMU2S
The two share a common firmware - in their Releases, one asset is
MMU2S_MMU3_FW3.0.3+896.hexand from the README file:
Maybe @eoyilmaz or @thinkyhead or someone else can review this,
but perhaps
HAS_PRUSA_MMU2Sis closer related toHAS_PRUSA_MMU3- I mean according to @prusa3d thats what it seems likeFurthermore
I am unsure of a few things, such as the ButtonOperations
According to prusa3d/Prusa-Error-Codes, there has been some removed from
enum class ButtonOperationsin button_operations.h . Things likeSkipwas added, andMoreInforemoved. So I'm not so sure how to deal with this in the remaining files. I leftMoreInfo, because some things do use it, I just dont know how or if it (still) works for the printer/MMU side, or was meant only for MMU2Also, in the updated mmu-error-codes.yaml, it seems button options like
Tuneand such were dropped so I'm wondering how that works on the Prusa's side.Requirements
Benefits
Configurations
Related Issues
Just wanted to point this out
not sure if this needs change, but
apparently a couple things have been declared but are unused:
two_choicesbutton_op_middle