Tool Changing? Bah! Just Add A Second Gantry

What’s a dual gantry 3D printer? It’s a machine with two completely independent XY motion systems, with two independent hot ends, sharing the same build platform. That might be a little hard to visualize, so head over to [Zruncho 3D]’s Dueling Zero project and get a good look at what what a dual gantry machine looks like.

Dual gantry differs from IDEX, which doubles the amount of moving mass on an axis.

Let’s take a moment to quickly cover the different ways to create multi-filament prints before we dive into what’s different with Dueling Zero. One way to print in multiple filaments (for example, multiple colors) is to swap filaments between a single print head, which is what the Prusa MMU and the Bambu AMS do. However, the main tradeoff is that the filament swapping process can be time-consuming. Another option is IDEX (Independent Dual EXtruder) which has two separate hot ends on the same axis. The main downside there is that an IDEX printer has essentially doubled the moving mass on the axis, which limits speed and can affect print quality. Then there’s toolchanging printers like the Prusa XL, which swap entire heads as needed but have a much higher cost.

The Dueling Zero instead adds a completely independent second gantry, so it has two print heads (like an IDEX) but thanks to the mechanical design it acts much more like a single-extruder 3D printer in terms of print quality and motion control. Speed and acceleration aren’t limited by added mass, either, which is good because slow printers are rapidly falling out of style.

We love how clean and finished the design is. At its core, [Zruncho 3D]’s dual gantry mod (designated D0) is based on the Voron Zero design. Dueling Zero is, to our knowledge, the only open-source and fully documented dual gantry printer out there, which is pretty wild. Watch it in action in the short video, embedded below.

17 thoughts on “Tool Changing? Bah! Just Add A Second Gantry

  1. Ok. So maybe light gold and dark gold were a poor choice for this demonstration, and a multicoloured cylinder is not really compelling, but the gantries seemed to move as they were supposed to.

  2. One nice extra feature of IDEX printers is mirror mode and copy mode, where they print two of something at the same time.

    Since they share a y axis, they can’t do two completely different parts.

    This printer has independent x and y axis.

    So, if the firmware (can be made to) supports it, it ought to be able to do two independent prints.

    It will lose some time if one print has a much bigger layer than another. Unlike mirror mode, they’ll end up waiting on each other. Still would be pretty cool.

    1. If the two prints are using the same material, then you don’t need to dedicate one head to each print, and indeed it doesn’t have to be two “separate” prints. You can just print whatever you want, and split each layer into two equal-time paths, cutting the print time in half.

      It might be tricky to coordinate the two gantries’ respective keepout areas, but as long as you can split paths wherever you want, I think it’s a solvable problem.

    2. Yep, between the choices with multiple heads, it’s all tradeoffs. Mirror and dupe modes (just like IDEX) should be possible with Klipper here, but I haven’t tested it yet, and the kinematics are a single-file Klipper addition.

      There’s some discussion on the repo of how to potentially use the new support for multiple simultaneous streams of G-code that come with RRF v3.5, but that functionality requires newer Duet hardware. It would be cool, and that’s a differentiator for dual gantry vs anything else – high utilization, even if not always 2x gain.

      https://github.com/zruncho3d/DuelingZero/blob/main/SOFTWARE.md

  3. Personally I’ve never thought dual gantry the best solution, the build volume loss generally seems greater than tool changing. And if you put tool changing in you can suddenly get more tools and swap tool types entirely more easily – want a laser cutter, a vinyl cutter, milling head you probably just need to swap the tool in. (though obviously there are machine loading considerations as well – a great fast printer is probably not sturdy enough to take the tool pressure of ‘real’ milling operations).

    All that said it does look like a very neat solution, and if works as neatly as it seems to for somebody that only wants a decent 3d printer that can handle exactly 2 filaments it is ideal. And for many folks that probably is the ideal FDM printer – supports in a different material and the option of rigid and flexible at once for mechanical reasons.

    1. There’s an argument that this is really an HA (High Availability) printer.

      If anything happens to the first head, the second could continue things mid-print, and if you’re just not in the mood when the first head has an issue, the second can easily be switched over to. It’s also great for toolhead-dev activities, as you can do A/B comparisons on the same machine, without time-heavy toolhead changes. Yes, you could have a second printer, but the cost and space would be higher and you’d have more to manage.

      From 1 to 2 toolheads there are real benefits (multi material, supports, colors, HA, 2x speedup, combine mode) – but I think from 2 to N that benefit is pretty small. Yes, you can do multiple colors, but that’s about it in practice.

      1. I agree that would be a good use for this platform. Though I wonder how many folks have the need for high availability that wouldn’t usually be better served by just having a second printer. Yes that still has drawbacks for continuing a print when head 1 fails for some reason, assuming the printer/user notices its borked without disaster so a continuation is possible. But on the whole with the reduction in build volume to footprint and added costs of a platform like this being not that far from a whole new printer either…

        However I’d suggest 3 is the ‘magic’ number of hotends myself – easy remove support material and two grades of plastic with varied mechanical properties for the technically demanding users, and 3 colour is often enough for the stuff people seem to be printing in colour where two rarely will be – usually seems to be a base colour and at least 2 but sometimes more accent colours desired.

        So with 2 heads you will I think wish for an extra often enough you’d notice, but with 3 I don’t think it would come up much. However the loss of even more build volume to accommodate even more entirely independent tool heads doesn’t seem like a good idea – I’d suggest at that point it is time to put two hotends in each head – as long as you put the materials you are most likely to alternate directly between on the different carriage you should be able to retract and cool the 3rd or 4th nozzle that is now unused over the part enough while the other head was moving to avoid the drips in most cases. Though I know from experience two nozzle on one carriage are a pain to set up, in this case I’d suggest it could be worth it.

      1. It depends on how you define the loss. Regardless the printer will be less volume efficient with a second gantry so for a given volume the usable print volume will be smaller.

  4. I’ve thought several times that if I was to start over again building my Mendel90 I would replace the base sheet with a box and move all the electronics inside it. Then

    I would lengthen the base so that it extends as far back behind the gantry as it does in front and I would lengthen the Y-axis bars to match.

    Then I could place a second Z, X and extruder assembly on the back side.

    I don’t know about Klipper. I do see that Marlin already seems to have support for such a setup.

    1. While as stated above I mostly agree, there is a time and place where this is the best method for the usecase. So not quite ‘definitely better’, just probably better for many situations.

      1. That is actually a very good idea and something I might look into further now so thank you.

        One gantry for low force applications like 3D printing and laser cutting and a heavier duty gantry for milling or drilling.

        Considering my toolchanger build (when I get round to it) was going to use a BTT octopus with CAN bus toolheads, it was going to have plenty of spare stepper drivers. Three for the Z axis for the bed, two for core xy for a gantry and that leaves another 3 steppers so adding a second gantry isn’t a problem.

        I wonder if mixing types of gantry would be a good idea, use a core XY for the light and fast head and then use a lead screw driven gantry for the heavy head.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.