User avatar
nikolai.r
Posts: 717
Joined: Nov 09, 2016 8:32 am
Answers: 2
Location: USA - California
Contact: Send private message

MMU2 - Real Multi Material

Dec 30, 2018 7:02 am

This is the next step towards the real multi material printing
Short version:
This post processing script improves Slic3r gcode for better MMU handling and allows true Multi Material printing.

There is no harm to use it in Slic3r all the time. In case of single material print and multi materials with the same filament temperature, it doesn't modify anything.

If you're using Prusa MMU1/MMU2 and Slic3r 1.41 you will encounter an issue if the temperature differ between the used materials. Slic3r sets the new temperature between toolchanges only once after cooling and before unloading. This causing an issue in the transition from high temp filament to cold because it is being purged with cold temperature. This script fixes it.

Please try it and post your experience

Files for Download: PJR 11 Jan 2019 - Moderator edit: latest precompiled binaries link: https://raw.githubusercontent.com/worki ... 181231.zip

PJR 14 Jan 2019 - Moderator edit: YouTube video link:

User avatar
nikolai.r
Posts: 717
Joined: Nov 09, 2016 8:32 am
Answers: 2
Location: USA - California
Contact: Send private message

Re: MMU2 - Real Multi Material

Dec 30, 2018 7:03 am

Long version:

The logic behind this script is following:
  • It looks for tool changes and determines the transition (high->low, low->high)
  • It removes the existing temperature set
  • Placing the new temperature based on following strategy:

    Cold (200C) ==> Hot (255C)
    ==========================
    • Ram/cool
      -> Stay cool, do nothing. If needed, set lower temp but don't wait
    • Unload filament
      -> Set hot. We can heating up while loading. Save some time
    • Load filament
      -> Nozzle might still warming up. Load to nozzle for smooth loading process
    • Purge
      -> Before start purging, wait for destination temp
    • Print
      -> We are printing with the stabilized temp. No further intervention required
    Hot (255C) ==> Cold (200C)
    ==========================
    • Ram/cool
      -> We need to stay hot because hot filament is still in the nozzle. If needed, set lower temp but don't wait
    • Unload
      -> Stay hot, do nothing
    • Load filament
      -> Stay hot, do nothing. Load to nozzle for smooth loading process
    • Purge
      -> Before start purging, set cool temp. We can cool down during the purging process
    • Print
      -> Before start to print, wait for destination temp. Most likely temp will bounce pretty hard
The target is always to print with the temperature which is currently required by the filament in the nozzle. This allows to print any filament combinations with any temperature. High temperature difference leads only to longer waiting times.
Last edited by nikolai.r on Dec 30, 2018 7:16 am, edited 1 time in total.

User avatar
nikolai.r
Posts: 717
Joined: Nov 09, 2016 8:32 am
Answers: 2
Location: USA - California
Contact: Send private message

Re: MMU2 - Real Multi Material

Dec 30, 2018 7:03 am

Current state:
It's working for me like it should by the provided strategy. First I printed Yin/Yang symbol in PLA white and PETG black.
IMG_0439.jpeg
IMG_0439.jpeg (1.97 MiB) Viewed 760 times
It was a good test to see a PETG filament bleeding into the white PLA. Increasing the size of the purge tower in this case makes sense.

Second object was a Kobayashi Fidget Cube with white PLA base and black PETG hinges:
IMG_0440.jpeg
IMG_0440.jpeg (1.75 MiB) Viewed 760 times
The limitations of using PETG got obvious. The second hinges curled ab and the bad adhesion to PLA have done the rest. I had to stop it in the middle. Anyway, the first hinges are working fine and very smooth :D

For the third test I've created a test object to use PLA, PETG and ABS in one print.
The idea is to have the base in PLA, the windows in PETG and the tubes in ABS. So far I've printed only base in PLA and windows/tubes in PETG. This is my first result:
IMG_6049.jpg
IMG_6049.jpg (7.2 MiB) Viewed 760 times
As you can see one layer is missing due to hairy PETG. But it healed himself and printed without my intervention in 4 hours. I'm still fighting PETG in MMU. It was printed with 250C and I don't want to go lower as it will get brittle.

Anyway, this script helps me to print even with different types of PLA (190C vs 220C). My plan is to bring it into Slic3r at some point. This python script is just a proof of concept and much easier to modify. Any contribution is very welcome!

User avatar
nikolai.r
Posts: 717
Joined: Nov 09, 2016 8:32 am
Answers: 2
Location: USA - California
Contact: Send private message

Re: MMU2 - Real Multi Material

Dec 31, 2018 8:13 pm

Next test looks very promising.
  • Polyalchemy PLA 205C
  • Makergeeks PLA 220C
  • 400+ tool changes
  • ~18 hours print time
  • No user intervention
Came out of the printer like this, no clean up:
IMG_6055.JPG
IMG_6055.JPG (6.88 MiB) Viewed 698 times
IMG_6057.JPG
IMG_6057.JPG (5.6 MiB) Viewed 698 times

flaviu.i
Posts: 122
Joined: Feb 04, 2018 8:53 pm
Location: Bavaria
Contact: Send private message

Re: MMU2 - Real Multi Material

Jan 01, 2019 9:16 pm

Very interesting. And it is a shame that people still have to use scripts with the mmu2. 1.42 alpha has nothing new for the mmu2 regarding that matter. (At least we have tree support now :roll: )

User avatar
nikolai.r
Posts: 717
Joined: Nov 09, 2016 8:32 am
Answers: 2
Location: USA - California
Contact: Send private message

Re: MMU2 - Real Multi Material

Jan 01, 2019 11:10 pm

flaviu.i wrote:
Jan 01, 2019 9:16 pm
Very interesting. And it is a shame that people still have to use scripts with the mmu2. 1.42 alpha has nothing new for the mmu2 regarding that matter. (At least we have tree support now :roll: )
It's fine. I fully understand PR need to publish the next big thing (SL1) and most of the devs are most likely tied to this project.
The good thing is that the Software and Firmware is stable and open source. So it's easy to read, understand and modify. I assume to polish everything and implement additional features will happen during 2019.
This script is just a proof of concept which is easy to modify and adjust. I'm pretty sure it will make it's way into the main brunch of the Slic3r.

Kolous
Posts: 65
Joined: May 15, 2016 5:19 am
Contact: Send private message

Re: MMU2 - Real Multi Material

Jan 02, 2019 4:05 pm

Thank you for publishing your script. This might fix my issues with BVOH supports. Will try it next weekend and post feedback.
Btw. can you post link where you downloaded the fox? It looks great.

User avatar
GenCab
Posts: 16
Joined: Nov 10, 2016 4:58 pm
Location: Dallas,TX,USA
Contact: Send private message Website

Re: MMU2 - Real Multi Material

Jan 02, 2019 4:53 pm

Thank you for your time, effort, and for sharing. Good write up as well.
Mistakes happen. It's what you do next that counts .

Current Printers
Original Prusa i3 MK2.5 +MMU2
Ultimaker Original +
Ender 2

User avatar
nikolai.r
Posts: 717
Joined: Nov 09, 2016 8:32 am
Answers: 2
Location: USA - California
Contact: Send private message

Re: MMU2 - Real Multi Material

Jan 02, 2019 5:39 pm

Kolous wrote:
Jan 02, 2019 4:05 pm
Btw. can you post link where you downloaded the fox? It looks great.
Sure thing: here it is

User avatar
Brad
Posts: 20
Joined: Nov 05, 2016 4:50 am
Answers: 1
Contact: Send private message

Re: MMU2 - Real Multi Material

Jan 06, 2019 6:02 am

Thanks for posting this solution for temperature problems when printing with materials that require different temperatures. This is the exact problem that I have been having and so am eager to try it out.

Having never set up a post-processing file in Slic3r, exactly what are the steps to configure Slic3r to call the Windows executable (not eager to install Python) and then use it? Once Slic3r is configured, does one just "Slice now" and then "Export G-code..." like normal?

Thanks in advance!

- Brad

Return to “General discussion, announcements and releases”

Who is online

Users browsing this forum: michael.j36 and 2 guests