prusa3d / Prusa-Firmware-Buddy

Firmware for the Original Prusa MINI, Original Prusa MK4 and the Original Prusa XL 3D printers by Prusa Research.
Other
1.17k stars 229 forks source link

[ENHANCEMENT] MK3.9/MK4 + MMU3 Filament Change menu should ask which input #4270

Open rcmaniac25 opened 4 weeks ago

rcmaniac25 commented 4 weeks ago

Printer model

MK4 + MMU3

Describe the enhancement

I saw in PrusaSlicer (2.8.1) that there's a normal layer swap but upon right clicking, I saw I could request changing a specific MMU3 input. After inspecting the gcode, I saw that what it actually did was a M601 followed by a M117 that told me with extruder to replace the filament on.

Upon returning to my printer at that point, I saw the printer had paused (as expected of M601). I wanted to change input 2, it was currently loaded with input 5. I did not see a message so I didn't realize it was waiting for me to change filament. Once I remembered, I went into the menu and selected change filament.

Instead of getting an option for which input to change, it unloaded input 5 and asked me to load the new filament. I manually unloaded input 2 (just pull out the filament), and then using a screw driver I guided the filament through the path back into input 2.

I would like, just like #4254, to get an option for which input to change rather then what is currently loaded.

Expected functionality

Ideally, the automated approach that I was originally expecting (requires PrusaSlicer to also update)

  1. The printer pauses
  2. It unloads current filament from the extruder
  3. It moves to the selector input to change and asks for me to unload the filament (and has a cancel feature, so I can continue using that filament)
  4. After confirming unload, it sets up the MMU3 and asks me to load the new filament
  5. I load the new filament, it ensures it has been loaded into the MMU3
  6. It continues printing

More direct to the ticket:

  1. Printer pauses
  2. A text dialog, possibly with confirmation, tells me to change the filament of a specific input
  3. I go to the menu and choose "Change Filament"
  4. It asks me which input I want to change, and has a back button too
  5. I chose an input
  6. It unloads whatever filament is loaded in the extruder
  7. It moves the selector to the requested input
  8. It asks for me to unload the filament (and has a cancel feature, so I can continue using that filament)
  9. After confirming unload, it sets up the MMU3 and asks me to load the new filament
  10. I load the new filament, it ensures it has been loaded into the MMU3
  11. I request the print continue
  12. It returns to the current input and reloads the filament, asking me to confirm it's loaded
  13. Once confirmed, it returns to it's paused state
  14. I can choose to resume printing