Multimaterial Y joiner

by Zemistr Aug 8, 2018
Download All Files

Thing Apps Enabled

Please Login to Comment

This is such a fantastic idea, thank you! I have a question, which I'm sure has been asked before: has anyone used this with Simplify3D? Won't the gcode the generator creates be compatible with it? I have zero experience with Cura and it would be so much easier if I could use S3D. It does have a setup wizard for dual extrusion and I'm wondering if I can set it up for use with this excellent solution.

I made manual only for Cura because it was simple to set it up. I'm now building new printer for tests and there I will test also this joiner. When it's done, I want to record new manuals and create a new version of the generator for Cura 4+, S3D and PrusaSlicer 2+. ;)

This is my plan.
Reality is that I'm busy and because of work (and two kids) I have time only late night and honestly, I'm dead late night. :D
Hope soon I will have the possibility to work on it and publish new things. :)

Hi Zeman, really awesome work. Also very complete with the models, code and tutorials and all! Seeing by the number of likes and comments everyone is excited about this.

Is there any online guide on how to connect an extra extruder to your printer mainboard? And does the firmware need to be changed? I have an Ender 5 and would like to try your multimaterial solution.

It probably cant do colormixing right, since there is only room for 1 filament in the stock hot end?

Hi :)
You need a motherboard with two extruders. SKR 1.3, MKS GEN L or similar. In firmware, increase the number of your extruders and comment out SINGLENOZZLE. ;)
Color mixing isn't possible since you can fit only one filament to the hotend.

Great thanks for the extra info.

Very nice, what is the electrical connector you are using ? Very clever :)

Hi, I'm using JST SM connectors

Comments deleted.

why cura export garbage in gcode instead of extruder change script?

somthing like this:
G1 F1800 X89.741 Y116.328 E0.05042
G0 F7200 X89.176 Y116.328
G1 F1800 X88.669 Y115.822 E0.02382
M82 ;absolute extrusion mode
M83 ;relative extrusion mode
M82 ;absolute extrusion mode
G90 ; absolute positioning
G1 X30 Y170 F8000 ; move ON the waste block
G1 X30 Y190 F3000 ; move on position

By any chance, I had this problem when I select the Flavour Reprap mode.....
If it helps....

Can you please post some pictures of how the fields look like in Cura?

Looks like bug in Cura?
Which version do you have?

Cura 3.6 and 4.0.
today i tried to use this script once more with those models:
this model cura save without errors: http://www.thingiverse.com/thing:3472324
those models have garbage in code: https://www.thingiverse.com/thing:21773, https://www.thingiverse.com/thing:2834906

Flexi Dinos Remix
Traffic Cone (Dual Extrusion)
by CocoNut
Dual color - fast and easy calibration squares

Right now I don't have this Y on any of my printers, so I can't try to print. :(

you doesn't need to print it, cura export gcode file with garbage instead of extruder change script

Hey, sorry for the delay.
I became a father for the second time, so I had other priorities. :)

I tried probably the same as you, but everything was OK.
I have an idea...

Try to remove "↓↓↓" and "↑↑↑" from the GCode setting. ;)

Hello !
First of all, thank you for your great work!
All I have to do now is operate my machine in dual color, with your help.
Because I have a problem I can't find the origin of!
I'm working on an Ender 3, with a Duet3D Wifi card (so pure RepRap)
Everything works when printed, right up to the tool change. The machine extrudes the right amount of filament (140 mm for me too), but immediately retracts 140 mm!
I searched all over the place, but I couldn't find the bug!
I have done many tests, and I have the problem every time, unless I run the extruder start code alone.
If you want, I can provide you with a video and the source files I use... All you have to do is give me a way to contact you privately.
Friendly: Florent

Hi :)
Right now I'm busy. You can try to contact me via Messenger fb.me/Zemistr ;)
If you can, send me what you have and I will try to have a look. ;)

Dear Martin,
I come back to you, about this wild retraction for which I had asked for your help...
There was indeed a problem, entirely related to the Duet3d card, which I only discovered after hours of testing, research, etc.!
A small problem, which I hadn't detected: in fact, in these lines of the extruder startup code:

  • G1 E138 F5000
  • G1 E7 Y-40 Y-40 F500
    the extrusion was done in ABSOLUTE mode!
    As a result, the filament returned 7mm from the last zero point!
    I thought the machine was going back completely, for x reasons, but in fact I couldn't see that it was only retracting 131 mm!
    I think this may interest Duet3d owners like me, and avoid them to look for a problem that has a simple solution: add an M83 at the beginning of the EXTRUDER START code (1 and 2).
    I post this solution on Thingiverse, in addition to this message, for all intents and purposes.
    Thank you again very much for your attention...
    Sincerely: Florent

Do you need to use the Titan extruder or is the standard Ender 3 metal one also good to go.

For sure you need two extruders. :)
The extruder can be any you want. ;)

I've bought everything. Last question, do you need to have both loaded for only printing in 1 color?

Noup :)
Just one filament is loaded at the time. The second one is parked and waiting for its time. ;)

Yes I mean, when there's is in the second one no filament at all. With the NF TC01 both have to be loaded only when you want to print with 1 color.

You are not right. ;)
I have tested NF TC01 (actually this one https://www.aliexpress.com/item/32909662664.html) a lot and trust me... It's basically the same as mine Y joiner. ;)

I have tested also this one (https://www.aliexpress.com/item/32860651879.html) and yes... there was a problem with filament leaking out, in the case, that there was just one filament loaded in. ;)

Wow fast reply, Okay I'm going to buy everything and creating it. This is ideal if you also want to upgrade to all metal hot-end. With the NF TC02 it's not possible.

I’m not sure what program you use for CAD (I use Fusion 360), but would you be able to add the .step or .f3d (Fusion archive - if you have Fusion)? I am looking to make a 3-4 way joiner for my printer

Sorry, I didn't see the comment. Probably I can send you .step files :)

How are you going to send them to me?

Sorry, I forgot. I will send you in a message. Give me few minutes.

Hi guys,
what about extruders?
Do both have to be of the same brand?

Hi ;)
Nah, depends on you. Just set correct steps values in your firmware and you are ready to go. ;)
I had one Titan extruder from Trianglelab and one from ... dunno.
One was around 438 steps. The second one around 480. :|

Can you please send me the stl of mount of motor of extruder that you use ?? Thanks

Check my other designs ;)

Do you have to have an all metal hotend? I want to try to add this to my stock Ender 3

I think you have a bug at the second extruder start code...

My waste block is at X320 and Y290 and the "move on position" line results in:

"G1 X305 Y29030 F3000 ; move on position"

It looks like you append always the waste block size to the Y position.

Thank you very much for reporting the error! It's fixed! <3

Comments deleted.
Comments deleted.

Gooood, so everything is ok? :)

yeah, was my fault. I didn't set the relative extrusion. This option is really important :D

I could marry u for this awesome part

Lemme ask my wife... :D

Hi! Is there a version for M6 fittings? That would be very helpful.

Great job! :)
Just question... are you able to put the PTFE tube through these "fittings"? :|

Comments deleted.

Unfortunately no :|

The video links in the online generator page link to "how to assemble it" not to "how to use it".

Thanks! I'll fix it asap.

Is anyone using this with an all metal heatbreak? My heatbreak keeps clogging up.

Try to modify your PTFE tubing as is on the picture attached below. ;)

I used 1.9mm tubing all the way from the extruders, to the y-joiner and from the y-joiner to the all-metal-heatbreak.
I have now switched to a wide-bore heatbreak with the same 1.9mm PTFE tube, and no more jams. I think the all-metal-heatbreak is simply not suitable for frequent swaps.

It's also suggested not to do big retractions during printing with this kind of heat break... :(

It's possible that the filament got stack because of the fast temperature change between hot and cold. :|


Hi that's a GREAT JOB and I have been focused on your desigin for a long time. It helps me a lot.

A little question: How can you keep fixation of the bottom PTFE tube? It won't fall out?

Hi and thank you :)

About the bottom PTFE. I have the bottom PTFE tube long exactly how it's needed. So there is no way the tube can go out. :)
I also made new Direct version of the Y joiner ;)
I'm working on video manual and just now I prepared my set-up to record a video, how to install the Y joiner on Ender-3. :)

Added a new direct version without a bottom pneumatic connector.

You are the men!

I'm back from holiday and I'm working on a video manual.
I hope to finish everything by the end of next week. I'm really busy and I have just a few hours every day after work before sleep...

Little update :)


Test print of a new version of "Online G-Code generator" for filament change for my "Multimaterial Y joiner". Right now I'm using Ender-3 and Cura 3.6. Print was 17 h long and the printer made 788 changes without any problems.

Working hard on a new version of the "Online G-Code generator" :)

Great file and great tools! When I get it working it works well but I do have a slight problem.

When it is time for my filament to do the long retract for change, it doesn't retract at all. I made sure prevent long extrusion is disabled in marlin, as well as making sure I'm using relative settings in Cura (both 3.6 and 4.0 beta have produced this) Do you have any tips?


Hi :)
It's possible, that your extruder motor is not strong enough or the driver is not giving enough current. I'm working on a new version of the G-code generator. Unfortunately, my office is under construction and it will take some time. I hope I will be able to publish the new version as soon as possible.

(Cura 3.6 has kinda strange behaving during dual extrusion...)

Thanks for you work! Would it be possible to provide the source 3D file? I'd like to make some changes, and working with the STL is not easy.

Hi :)
Yes, no problem. I will send you DM. ;)


Thanks for your job.
There are a little bug in generator.
In : Start Extruder G-code ---> G1 X30.8 Y14419.2 F3600 ;move ON the waste block (Y value is faulty)


Can you provide values what you have used?
Are you using the beta version of the G-Code generator or the old one?

Comments deleted.

Ok, i have test the beta version.
I have Safari.

If i change only waste Y, i reproduce the bug.


It's fixed and I am also working on totally new version ;)

I see :|
I will have a look at it. I will tell you when is fixed. ;)


Code is fixed.

I test now with CURA 3.6.


Cura 3.6? I still have some problems with this version so I am preparing a new version of the G-Code generator fixing a lot of problems... ;)

Yes. First test, with your start G-code, i have a big over extrusion !!!

If i erase it, no problem but filament must be in the nozzle.


How to use it
3) Before/After printing

Before and after printing the filament has to be retracted to the "starting position"!

Hi, nice design.

Did you modify firmware of printer ? (or firmware settings) I use marlin.

I prepared design like this long time ago but didnt finish firmware change on my printer.

Thx for answer.

Just change a number of EXTRUDERS and uncomment SINGLENOZZLE. ;)

To je prima že si tu dva Pražaci povídaj anglicky - mile mně překvapilo že tu jsou Češi ... :D - Lets continue with english.
Which firmware you use ? I use Merlin.

Here is a lot of Czech people. ;) I don't know Merlin... At least not a firmware for 3D printer with this name... :D I'm using a last version of Marlin. ;)

Comments deleted.

Have you tested with simplify 3d?

Noup, I do not have the license... :(

Brilliantly simple! (If anyone's interested, I have done a variation on it here: https://github.com/RepRapLtd/Filament-Y)

I'm sorry sir, I just saw your comment and I have no words.
It's amazing, that you spend your time to see my Y joiner, remix it and also added under RepRapLtd!
I'm surprised and impressed!

Thank you, sir!

PS: I saw you moved the Filament-Y :)

I prepared a new version of the Online G-code generator but I do not have my printer with me right now.
Is here someone who wants to be a beta tester? :)

If yes, here is a link https://zemistr.github.io/multimaterial-y-joiner-gcode-generator/beta.html
I have not tried it yet so please, try it and let me now how it works. <3

Comments deleted.

Thanks A LOT for this design, I've tried many of those splitters, no good results, except for yours. So, I made a video specially for (in french).
You made my day !
If you want to look at the video, here it is https://youtu.be/fVF3f2kPgZM

Thanks for your contribution to the community of 3d printers

Dominic (aka Le GueroLoco)

I want to add this to my Anycubic i3 Mega but I think have to switch out the board that support 2 steppers, can anyone clarify this for me. Thanks

I think you will need a new board...
Just check, if you see E0 and also E1 on your board. If yes, probably you are able to have 2 extruders.

The Online G-code generator is out. :)
Just try it and if something, let me know. ;)


I'm preparing a simple online G-code generator for this purpose. ;)
Until Friday I will add a link to it. ;)

wait your V2 results

I just added V2 of GCode files ;)
It's an untested version!

I will run tests tonight but I hope everything will be OK. :)

Which Gcode code to use for Cura?
And how do I insert those codes?

You have to put only the content of these files to Cura. There is a Printer setting where you can set 2 extruders and add the content.

As is written in the description. :)

nice design (y) . I hope I will try it on my HEVO.
Only one remark - it could be better to write that the g-code is related to Slic3r. Not every slicer has options you wrote and not everybody use Slic3r :-)

I added a video, how to set slicer "Slic3r Průša edition" ;)

Hi and thank you!
Slowly I will try also other slicers so I can add a manual, how to set them properly.
I am using Cura and I am very satisfied with it.

Werst Du eine Frau, würde ich dich glatt küssen ;-).
Sogar mit GCODE einfach super.
Danke, so etwas habe ich gesucht.

If you were a woman, I would kiss you smoothly ;-).
Even with GCODE just great.
Thanks, I was looking for something like that.

You are welcome! :)
I also added a manual, how to set it properly. ;)

Where can I find the manual you made?

Hi, check the "Thing Details" tab section "How to use it" ;)