Skip to content

zruncho3d/DuelingZero

Repository files navigation

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.

alt_text alt_text

In a Dual Gantry printer, the two heads are fully independent. With no extra weight to drag around (vs an IDEX printer), and no complexity added to switch between heads (vs a toolchanger), Dual Gantry is a promising way to do more with a 3D printer.

Curious? Watch the first one print below!

alt_text (original v1 gantry shown)

What's Here?

Tons of content. On this page:

... and beyond, split into their own pages:

  • Parts: Parts list to build your own

  • Instructions: Instructions to print, assemble, and configure

  • Software: Two toolheads in one workspace, explained

  • FAQ: Common questions, answered

  • Archived v1: Prior design

Enjoy! I hope this project inspires you to build something new, whether a D0 or your own design. -Z

Releases

2023-09-16 v3 Gantry release and updates

This release moves to a completely-new, symmetric, nested belt path:

alt_text alt_text alt_text

The new Pandora's Box-derived gantry design, created in close collaboration with Desune on Discord, has far fewer unique parts, adds travel, and enables wider toolhead compatibility.

alt_text alt_text alt_text

Here's the side-by-side comparison from above, with v1 on left, and new v3 on right:

alt_text alt_text

Or, in reality:

alt_text alt_text

The printer looks a little different now, with internal spool holders!

alt_text alt_text alt_text

In short - this is a big update. This is what D0 should have always been.

Sometimes it's only through iteration and collaboration that you get to what feels right. The v3 gantry feels right. No weird strut, no flipped motors, smaller, more maintainable... all-around, better. See the comparison table on the Design page for more details on why.

Other improvements:

  • Boop support for perfect first layers every time, nozzle probing with Boop is now the default. There are no magnets to get loose in a heated chamber and no probe motions to configure anymore.
  • Better toolhead compatibility, including a Voron 0.2-compatible mount for the Voron Mini Stealthburner toolhead and many others.
  • Gantry board support for the GBB15 gantry board - enables super-clean, easy wiring with magnetic-attach covers.
  • Dual internal spool holders added, reducing the effective width.

Existing v1 builders: to upgrade, the main costs will be new rails, a few new extrusions, and Boop parts. There's nothing wrong with your v1 build; it will print fine. But if you want more travel and the benefits of Boop, a fresh rebuild with the new larger default frame size might make sense.

For earlier releases, see the Updates page.

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. 💪 (note: in theory; depends on firmware support)

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... and Dual Gantry is an interesting and new point in the broader space of 3D printer types that support multiple extrusion:

alt_text

Take a look at the table above, 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?

On the plus side, you don't have to design it (anymore). You don't need to program the firmware either (anymore): Klipper works (thanks to a collaboration with tircown) and RepRapFirmware supports two active gantries, out-of-the-box. The software base needed to make full use of the workspace, by implementing collision detection and avoidance, is the src folder here and explained in the Software section.

On the minus side, building it is roughly twice the work of a typical printer. There are added costs from the second gantry and toolhead. There are alignment challenges - including XY and YZ skew calibration - which are currently unknown. And like any multi-head printer, you'll have more tuning and slicer stuff to figure out.

If all that sounds daunting, this is not the printer for you. If being the first to figure these out sounds exciting, this may be your next printer!

How does this mod work?

Roughly... start with a Pandora's Box gantry. Turn it 90 degrees. Add extra bearing stacks and combine idlers with AB blocks. Duplicate it about the center. Flip it upside-down. Add off-the-shelf Boop and toolheads.

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 any V0 mod, the devil is in the packaging details: every mm matters.

Beyond the gantry, D0 heavily leverages off-the-shelf parts from these repos:

  • BoxZero ditches the V0 tophat
  • TriZero adds automatic bed leveling and enables XY scalability from a fully-supported bed
  • ZeroPanels add snap-in, quick-release panels
  • Boop adds highly accurate nozzle probing
  • Voron V0.2 provides a good toolhead default

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. Both have ZeroPanels.

Sample Builds

Let's be honest here... there's no such thing as a completely "stock" D0 build. If you can build this, you're going to pick the best parts for you, and the beauty of living within the V0/T0/Boop ecoystem - more than ever with the v3 gantry - is that you get this choice.

Two sample builds below should get you thinking. Make sure to check out Hex-Zero mod by Alexander Þór (on the DoomCube Discord) and HBO's T0 mods repo for alternate skirts and the Z joints, in particular. Also check out Desune's Dueling Boops repo for alternate skirts and gantry parts. For the latest, check #dueling-zero-dev on the DoomCube discord.

Zruncho's Red/Black Build

Originally V0.562, then the first Dueling Zero, and now with the v3 gantry:

alt_text alt_text

Highlights of this particular build:

  • XY Motion and Toolhead
    • 2x Boop beta-4-based carriages with nozzle bed probing, plus rear threads for toolhead boards, using the same sensor option as Tap
    • 2x MiniSB toolheads
    • 2x Revo Voron hotends - V0.2r1 version
    • 4x StepperOnline Nema 14 (14HS20-1504S) stepper motors
  • Frame and Z
    • Rail-less Z motion (!) using printed Tri-Zero MGN7-compatible sliders with match fit to extrusions
    • Tri-Zero triple-belted Z with tool-less belt attachments
    • 3x Kysan 1124090 NEMA17 motors for Z
    • LDO 1515 V0 frame kit (Red) + MakerBeamXL 1515 (Black) w/500mm pieces cut to size
    • 300W AC 180x180 Prusa Mini size plate bed with textured and smooth PEI sheets
  • Electronics
    • Raspberry Pi 3B
    • SKR Pico controller boards for Z motion
    • 2x GBB15 gantry boards
    • 2x EBB42 toolhead boards
    • BTT U2C USB CAN board
    • Meanwell LRS-150-24 PSU
    • Mini 12864 display with Klipper adapter
    • 2x Fysetc PIS USB ADXL boards mounted to x carriages
  • Other
    • Panels: ZeroPanels v3 with optional midclips and rear-hinged top panel
    • Travel: 166mm x 180mm in XY, ~130mm in Z (not optimized!)
    • Filament: mix of KVP ABS flavors: Metallic Silver, Black, and Stellar Black.
    • PrinterExperiments code for easy Z nozzle alignment with a single command

This build is a bit too small to cover the full bed and support over-travel in all directions. For all new builds, a build the size of Desune's is recommended; more in the Parts section.

Desune's Silver Build

Highlights of this particular build:

  • XY Motion and Toolheads
    • 2x Boop beta4 with OptoTap v2.4.1 board (slightly modified for rear microswitch mounting)
    • 2x Dragon Burner v7 (modified for Boop clearance)
    • 2x Rapido v2 HF
    • 2x Orbiter v2 extruders with filament sensors
    • 2x MGN7H 300mm
    • 2x MGN9H 250mm
    • 4x StepperOnline Nema 14 (14HS20-1504S) stepper motors
    • 3x Cloudray Nema 17 (17CS04A) stepper motors
  • Frame and Z
    • Misumi 1515 extrusions (silver)
    • Rail-less Z motion sliders (modified to fit Misumi extrusions)
    • Triple-belted Z with custom Pandora'sBox-derived GE5C joints
    • 180x180 bed with 300W AC powered heater
  • Electronics
    • BTT Manta M8P v1.1 with CB1 v2.2 compute module
    • 2x BTT EBB36 v1.2 toolhead boards
    • 7x BTT TMC2209 stepper drivers
    • BTT TFT35 SPI v2.1 touchscreen
    • Meanwell UHP-200 PSU
    • CG 40A DA SSR
  • Other
    • ZeroPanels clips (modified for screw mount on Misumi extrusions)
    • Filament - eSUN ABS silver and black
    • Removable base panel for easy electronics access.
    • Outer Dimensions (without enclosure panels): L: 290 W:380 H:526mm Height includes electronics compartment and feet. Vertical extrusions are currently 450mm, however 50~100mm of extra height for umbilical clearance is recommended for maximum Z travel.
    • Maximum XY travel (approximate): X:188mm Y:194mm (with Dragon Burner toolhead)
    • Maximum Z travel (as configured with 200mm linear rails): 168mm

The parts for this specific build are available at Desune's Dueling Boops repo. They are extremely similar to Zruncho's parallel implementation; the two influenced each other during development. Definitely take a look, as you can mix and match parts from this one, including the updated skirts and bed pieces.

Learn more!

If you've read this far, great, but there's more good stuff.

There's lots more info beyond this README file, in the repo, split into multiple pages. And the V1 Archives section provides a view into the original design that you might find interesting.

Take a look around, or back to the What's Here section 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

  • Desune: designed Dueling Boops (the honorary v2 gantry) and co-designed the v3 gantry w/Zruncho.
  • MasturMynd: designed Pandora, which made this possible.
  • Tircown: made a single-Klipper-instance version possible, with his code and live debugging
  • Clee: saved the project with some hardcore hardware rescue with the STM GB01 chips
  • ToxGunn: diagnosed a stepper overcurrent issue and saved me more plastic and motors
  • Reviewers: thanks for providing feedback that helped make this clear and concise!
    • v3: Caza, Kevinakasam, Tircown, Sanity, Telxoid
    • v1: Red5, _xbst, where’sthelambSAUCE, BeastBc
  • 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!

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.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published