Sunday, February 23, 2014

Introducing the Coherent Extruder: A 4 Color, 2 Motor Cold End

I have been closely watching the development of multiple nozzles and I've been especially excited by to the release of the Kraken by e3d which is a 4 color hot end. Looking forward, the main problem that I see with this push toward many filaments is figuring out how to drive it all. I found this blog did a great job getting all 4 colors working but the downside was that it required 4 separate motors and an expansion board to plug everything into.

In an effort to hopefully simplify this push toward driving an arbitrary number of filaments with two motors I designed a new extruder. This is a 2 motor extruder that is capable of independently driving 4 filaments by utilizing a single drive motor and a separate cam selection motor. Thanks to Fritzgutten's extruder which helped me think about utilizing cams for this purpose.

Here is a front view that shows two yellow cam selection gears that are driven by a motor on the right. The filament is fed in the top and comes out the bottom.

You'll notice that contrary to the original design of the Kraken, this is essentially a direct drive configuration. An internal piece routes the bowden tubes to directly under the hobbed bolt so that the filament is properly constrained after passing through the drive gear. The cooling lines are routed out via two holes on either side of the extruder.

Side view of the extruder mounted onto a Mendel Max 2.0 X-axis. Since its weight is about the same as two extruders, the wobbling isn't an issue for such a rigid frame. Even though it doesn't appear like it, the extruder does not fall over when rested on a table so it appears to be more or less balanced.

Here you can see two idlers (red) and the cam selectors (purple) that dictate which idler is engaged. One cam selector is obscured by the cam endstop that calibrates its position. When not engaged, the idlers sit gently against the filament.

The other side of the extruder shows the drive motor. Since the Kraken only drives 1.75 mm filament, the gear ratio is not super critical especially with beefy Nema 17 motors
Here you can see that the right cam selector gear has a second gear that is used to drive it with the motor. Due to the required spacing of the cams from the central hobbed bolt, it was necessary to have a second gear that the motor drove to allow the motor to be reasonably close to the rest of the extruder body. 

Here is a cutaway view of the hobbed bolt. Two hobbed sections are required along the length of the 8 mm bolt and two filaments are driven by a given hob on each side. The oversized holes on the bottom of the idler ensure that there is little force of the idler when not engaged. In the real version, the filaments would be guided toward the Kraken block via slots in the purple piece (I have a photo of this later in the post).

Here, the filament feeder top has been removed to be able to see down the extruder. 

Here are some pictures of it assembled!

 Here are the idlers in action! In this photo the lower idler is activated while the upper one is not activated.
Rotating the idler gear disengages the lower idler and activates the upper idler.

The nice thing about these cams is that the asymmetric part takes up a small enough angular profile that you could easily have 6 or 8 cams that wouldn't overlap at all.

This is what it looks like hooked up to the printer itself. 

An angled view into the extruder.

A cutaway that shows how the filament is fed through the extruder. The plastic tubing goes directly from under the hobbed bolt into the Kraken Block. 

I am pretty pleased with the performance of the extruder so far- it holds the filament extremely tightly when engaged and has almost no force otherwise so the other filaments don't budge. There are several caveats that will need to be addressed before this is printing up a storm. 

1) The Kraken itself is actually giving me some issues driving the filament. I am using PLA and even when heating it up to 250 C, the PLA requires a ton of force to get it through the hot end. I have previously used jHeads so it is possible that there is just a learning curve with a stainless steel hot end.

2) The firmware will need to be tweaked so that it can use a single motor and a selector motor to switch between the 4 filaments. Tweaking this in the gcode is pretty straightforward (just pause, move selector motor to new position, advance filament a little, resume print with new offset based on the position the new nozzle is from the old one). I am not sure what is involved with supporting it in Marlin or Repetier Firmware with Cura/Pronterface/Repetier Host Software.

3) An electronics expansion board needs to be built to support the additional thermistors and heaters. I have this worked out and I'll be publishing the schematics soon.


  1. Hi, awesome design, thanks for sharing and the article!
    It might be possible to adjust the extruder so that the selector motor is also selecting / switching between the heaters and thermistors. That might be easier if you use a board that doesn't support enough inputs or outputs.

  2. Interesting idea, so you are saying that you'd have mechanical switches that would connect or disconnect certain heaters? My electronics intuition is telling me that using mechanics to control electrical switches is not the most efficient route, but you are right that perhaps I could incorporate the switching electronics into the extruder so that you'd only connect 1 set of heaters and thermistors along with a selector pin.

  3. This is cool and all, but how are you controlling the cam stepper in software? Is this still in a completely manual stage?