rbricheno / DuelingZero

Dueling Zero - a Dual Gantry V0 mod. Enable dual-color, dual-material, and even multi-part printing... with the same speed and quality as single-extruder printing.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dueling Zero - a Dual Gantry V0 mod

Two extruders. No compromises.

Enable dual-color, dual-material, and dual-part printing... with the same speed and quality as single-extruder printing.

Mod a Voron Zero or build one fresh!

D0 is the only open-source, fully-documented, reproducible-by-anyone Dual Gantry printer out there.

It's real, and it prints.

As of July 2023, there are at least 5 built or mostly-built examples, with active development.

alt_text

alt_text

alt_text

Reality:

alt_text alt_text alt_text

Renders:

alt_text alt_text alt_text

Release History

2023-07-03: a little update: interest is growing!

In mid-2023 the interest has been picking up, as more people learn about the printer. Community development includes Desune's Dueling Boops variant, Chadonka's gantry board mounts, and more stuff that should be released shortly.

Zruncho's back on it, too. Tri-Zero spinoffs, like ZeroPanels v3, have been tested first on Dueling Zero. Watch this space carefully for major updates to documentation and design...

Also: Klipper code is more easily found here now, as well as on the SOFTWARE page here.

2022-08-20: Alpha-1

This first release covers everything you need to build and run your own Dueling Zero: CAD, STLs, DXFs, sample firmware configs, smart avoidance code, G-code streaming code, instructions, and a parts list... everything but an illustrated manual. But if you're reading this, you almost certainly don't need a manual, anyway.

To make it easy for anyone to grok this crazy Dual Gantry layout - and learn about its opportunities and challenges, both in hardware and software - this README walks through the software and the design.

Enjoy! There's a lot of content here, and I hope you enjoy it as much as I did bringing this concept to life. -Z.

Join the Reddit thread on r/VoronDesign for any comments, questions, or kudos.

Table of Contents

There's a ton of detailed content in this repo, beyond this README.

  • Overview: Why Dual Gantry?

  • Software: Two toolheads in one workspace, explained

  • Parts: Parts list to build your own

  • Instructions: Instructions to print, assemble, and configure

  • Design: Get inside the designer's head. Mostly renders! An easy read

  • FAQ: Common questions, answered

Overview

What’s a Dual Gantry printer?

Dual Gantry is a rare 3D printer type with two toolheads moved by two completely independent XY motion systems:

alt_text

Yes, you’re seeing double, with black and silver toolheads in a dual-CoreXY motion configuration.

Why a Dual Gantry printer?

In general, a second hotend adds enormous flexibility - to support two colors, two materials (typically support + main), and two nozzle sizes, in one print, with no color-bleed issues, cross-contamination, or wasteful purging. Sounds good, right!

Well, that second hotend, if mounted on a single toolhead, can get in the way of print quality, as it drools filament when not in use - and the toolhead is now custom. 😦

So along comes IDEX, short for Independent Dual Extrusion, which adds a second, independent toolhead on a shared axis (typically the X axis). Sounds better, right?

No drool, plus something cooler: one printer can now print two identical parts simultaneously, in mirror or duplicate modes. 💪

Open-source IDEX designs include Voron-derived ones, like Zruncho’s Double Dragon, Eddietheengineer's Tridex, and Ankurv’s IDEX Switchwire. There's also the Muldex, and there's no shortage of commercial examples, too: Sovol SV04, FlashForge Creator Pro, BCN Sigma, Jadelabo J1, and many more.

But that second toolhead comes at a cost: moving mass, which has effects on print speed (max accel) and quality (typically, ringing artifacts). 😐

Simplify, then add lightness - famous quote from Colin Chapman at Lotus

Whether building a fast race car or a fast printer, physics can't be ignored.

You can mitigate the moving mass somewhat, by using a lighter toolhead, typically with a remote Bowden extruder, but Bowden extruders introduce their own tuning challenges.

With Dual Gantry, you get a no-mass-added gantry for the common case of single-extruder prints. Unlike an IDEX, here, each toolhead is truly independent and can move in X and Y on its own - potentially to print two completely different objects at once!

There’s no hit to max acceleration or potential for ringing caused by dragging around a heavy second toolhead on a longer rail all the time.

Sure, you can't print more than two colors, like a multi-material unit or toolchanger can, but everything in engineering is tradeoffs. As Nero says:

Multimaterial... sucks. OK? There’s no way to do it right. So either you spend money, time, or waste. No matter what you do, you're gonna be dealing with that.

Dual Gantry is in an interesting point in a larger space. Medium money, medium time, minimal waste. It fits within a broader space of 3D printer types that support multiple-extrusion, where the number of toolheads, hotends, and extruders varies:

alt_text

Take a look here, or at this other helpful categorization. This diagram is not comprehensive, but gives a sense for the depth of the design space, and especially, the rarity of everything not on the far left side (typical single-extruder printer). For some interesting points in the design space, there's only one commercial example!

(Please file an issue on GitHub if you know of any significant omissions.)

What’s the catch?

If it sounds too good to be true... it probably is. 🤷

You don't have to design it (anymore), but you still need to build it, which is roughly twice the work of a typical printer. Plus, compared to a typical single-extrusion, single-toolhead 3D printer, there are added cost, complexity, and alignment challenges.

The main reason you probably have never seen a Dual Gantry 3D printer: firmware support.

Support for two gantries with one control board is a good start:

  • RepRapFirmware: supports two active gantries, out-of-the-box.
  • Klipper: thanks to a collaboration with tircown, there's a PR available now.
  • Marlin: no.

... but to get full motion out of a shared-workspace printer, you really want active collision detection and avoidance.

Code in this repo enables a functioning printer with full bed-travel usage, for any firmware.

See the Software section for a full explanation, with diagrams, pics, and explanations.

How does this mod work?

Start with a trusted, tested Voron Zero CoreXY gantry. Turn it 90 degrees.

Duplicate the copied gantry, then flip it, and make the two crossbars share the same rails.

Flip the XY joints upside down. Voila!

alt_text

That’s the core idea.

In practice, though, there are quite a few additional bits to design to make it work. And like with any V0 mod, the devil is in the packaging details: every mm matters.

Each gantry is heavily customized vs a regular V0, to make an underslung low-side gantry (left, in black) as well as an underslung high-side gantry (right, in silver). Beyond these new gantry XY joints, there’s some extra work to relocate the endstops and add a high-side strut; something needs to directly resist the forces of the tensioned belt. Oh, and the belts can't pass through a motor on the high side, so you have to figure that one out, too.

Fortunately, most of the other needed parts can be repurposed or at least derived from other designs.

D0 Alpha-1 heavily leverages off-the-shelf parts from the BoxZero and TriZero mods, plus a few custom parts and custom panels.

If you're not familiar with these mods, here's a pic, showing a Plus50-size Tri-Zero + BoxZero printer (170x170 bed motion), next to a V0-size (120x120 bed motion) Tri-Zero + BoxZero.

TriZero adds automatic bed leveling and enables XY scalability.

BoxZero ditches the tophat.

Is it real?

Yes.

The first D0 build from Zruncho puts a Tri-Zero Plus50 Z setup below the two twisted-90-degree BoxZero gantries above, using a V0-derived frame.

Highlights of this particular build:

  • XY Motion and Toolhead
  • Frame and Z Motion
    • Rail-less Z motion (!) using printed MGN7 sliders - new in this printer
    • Tool-less, removable-in-seconds sealed enclosure with Technologic-style ZeroPanels
    • Tri-Zero triple-belted Z (simple, low-cost, and fast) with tool-less belt attachments
    • LDO Red 1515 V0 frame kit, with added MakerBeamXL 300mm, 200mm, and end-joined 50mm pieces
    • AC 180x180 Prusa Mini size plate bed with textured and smooth PEI sheets
  • Electronics
    • 2x EBB42 toolhead boards
    • BTT U2C USB CAN board
    • LRS-150-24 Power Supply
    • Raspberry Pi Zero 2 W
    • 2x SKR Pico controller boards
    • Mini 12864 display with Klipper adapter
  • Other
    • Travel: ~170mm x 165mm in XY, ~130mm in Z (but... completely unoptimized)
    • Frame: 360 x 280 x 480 in XYZ. Enclosure, feet, and displays add a bit to this.
    • Filament: mix of KVP ABS flavors: Metallic Silver, Black, and Stellar Black.
    • PrinterExperiments code for easy Z nozzle alignment with a single command
    • More F623 bearings than you’ve ever seen on one printer. So many!

Learn more!

If you've read this far, great, but you haven't gotten to the good stuff.

There's 10x the info beyond this README file, in the repo, split into multiple pages.

Take a look around, or up at the Table of Contents above.

Links

Dual Gantry

They do exist. Others have built printers or similar CNC devices with at least two gantries operating in a single shared workspace:

There are also a bunch of posts online with people conceptualizing the concept, dating back years. The benefits/drawbacks are relatively straightforward to understand, though not widely known. For a few builds, there are mentions online, but no reference to a video of the machine printing, or a link to learn more.

Please raise an issue for this repo to update the list of links if you come across one! There’s no pretense of true originality here.

Related

Credits

  • Tircown: made a single-Klipper-instance version possible, with his code and live debugging
  • Reviewers: Red5, _xbst, where’sthelambSAUCE, BeastBc: thanks for providing feedback that helped make this clear and concise.
  • Clee, Red5, Kyrios, Leopard, EddieTheEngineer, and others: initial conversations proved motivating - that this wasn’t completely insane. Thanks!
  • Nemgrea: none of this would have happened without a solid base.

Support

The best place to ask questions and see the latest is on the DoomCube Discord, where many Printers For Ants builders hang out. Go to the #dueling-zero-dev thread in the #tri-zero channel. Put your build log in the #build_logs showcase forum there too!

There's also a Reddit thread on r/VoronDesign for any comments or questions.

About

Dueling Zero - a Dual Gantry V0 mod. Enable dual-color, dual-material, and even multi-part printing... with the same speed and quality as single-extruder printing.

License:GNU General Public License v3.0


Languages

Language:G-code 96.0%Language:Python 3.4%Language:GAP 0.5%