Universal Gearless Extruder

From Open Source Ecology
(Redirected from D3D Extruder)
Jump to: navigation, search


A Flexible Gearless Extruder is one of the distinguishing features of OSE's D3D Universal 3D printer of 2019, which is being introduced as the standard extruder for D3D Pro, Pro 2, and Pro 3 in early 2020.


OSE History

We have experimented with various extruder designs since 2016 - see 3D Printer Genealogy. We started with the common MK8 Extruder in 2016. The MK8 is a simple, gearless design, but it works only with 1.75 mm filament. Further, it is a design that one buys commonly off-the-shelf, and it requires some machining if one is to build it in a DIY fashion. Further, we could not find any well-documented, open source versions at the time.

Given that the Prusa printers were exploding as a popular, open source brand at the time - we switched to the Prusa i3 MK2 Extruder. You can read more notes on our experience at Extruder Improvements from MK8 to Prusa i3 MK2 Extruder. We modified the Prusa i3 MK2 for a larger, 8-mm distance sensing probe - as we are interested in large prints and less risk of the height sensor hitting the prints. You can view our design details at Prusa i3 MK2 OSE Mod. While it seemed that the current, open source design from the most popular hobby printer company may be the best design - we found the choice to be terrible. We could not prevent the Prusa i3 MK2 from persistent clogging. The only way we succeeded was by disabling retraction all together, which meant lowering of print quality. This choice was particularly troubling because we ran a workshop in 2018 based on the Prusa extruder, leaving many of the participants frustrated.

We switched to the E3D Titan Aero - the same as our poster-child Lulzbot 3D printer company was using in their more industrial-grade (compared to Prusa) printers. This change meant a switch to the most well-known, open source leader in 3D printer extruders - E3D. Lulzbot's Jeff Moe succeeded in getting E3D to open source their designs, which meant that we were consistent with our philosophy of using open source parts. Further, the Titan Aero was a decent design for printing with flexibles. Since OSE plans on 3D printing rubber tracks and sprockets for tractors, effective rubber printing is critical for OSE's industrial productivity on a small scale. The Titan Aero features an integrated hot end heat sink, meaning that the long, finned heat sink of the common E3D V6 or J-Head design is not needed. Simply put - E3D V6 or J-Head can't print efficiently in rubber: you have to slow the print rate way down in order to do it. The shorter the distance between the extruder drive gear and the heat break - the faster the print rate. The Titan Aero was the best 3 mm design for sub-industrial grade printers on the market at the time.

In 2019, OSE created an improved design with a filament path even shorter than that of the Titan Aero. We have reduced the distance between the drive gear even further to about 28 mm, from Titan Aero's 44 mm! See Universal Gearless Extruder Design. The implications are the ability to print with softer flexibles, and to print faster with flexible filaments. As of mid 2020, we offer the Universal Gearless extruder as the standard on all of our 3D printers.


  • Simple design - Direct drive, meaning no gear-down that adds to complexity and long-term risk of wear. Limited machining is required. Anyone who has a 6 mm tap hole can build the full extruder from scratch.
  • Open design - both in terms of Libre Hardware and easy-to-access filament path. The filament path from the filament entry aperture to the heat break aperture is completely visible. This means - by design - the filament path to the hot area is clog-proof. The tensioner can be removed with only one readily accessible screw. The fan is out of the way of the filament path - located below so that you can see exactly what is happening to the filament. This means literally zero down time due to extrusion problems. No more cursing as you disassemble the entire Titan Aero extruder and waste 15-30 minutes of your precious time.
  • Rubber-Optimized 3 mm extruder. Shortest distance in the industry between the drive gear and heat break out of all 3 mm extruders (28 mm for Universal Gearless vs 44 mm for Titan Aero, 70+ mm for E3D v6, and similar for J-Head). This means the highest-performing 3mm extruder for not only standard filaments - but also for flexible filaments.
  • Optimized for both 1.75 mm and 3 mm filament. Use 1.75 mm without any change, and still get excellent results. To optimize for 1.75 mm, Just loosen 2 readily-accessible bolts to switch to a heat sink with a 1.75 mm heat break.
  • Interoperatble with E3D Heater blocks - such as the Volcano and Supervolcano
  • Ships stock with the Volcano heater block for printing about 3x faster than the more common E3D V6 heater blocks.


  • The more powerful 72 oz in stepper motor makes for a heavier weight than extruders with geardown and smaller stepper motors, requiring a solid and robust printer frame.
  • As of version v20.05.02, a custom heat break would be useful to bring the heat break entry point 4 mm closer to the drive gear. We have not done this yet as we are still using stock (COTS) heat breaks
  • We have yet to make this a machining-less design - a clamp-on threadless design - where instead of being threaded in, tubes are clamped on. J-Head does not currently use threads, just press fit. We want Design-for-Disassembly, so we do not use press fit but clamp-in instead.


  • side-by-side comparison to Titan Aero for max print rate with flexible materials - compare the fastest extrusion rates for rubber, using 1.2 mm nozzles, with and without retraction


See full source in FreeCAD, D3D_Universal_3D_CAD#Printer_Extruder_-_Universal_Gearless_Extruder

Build Instructions

Production Engineering

Zip folder - FreeCAD + gcode files - File:Heatsinks.zip

Power Tapping

Have you considered power tapping, say by using a corded drill? What are your thoughts on that?

It can be done but the trick with tapping is to tap square. That's hard to do with a hand tool. The 6mm tap is a pretty rugged but with smaller ones it's also easy to break the tap. The hand tapper gives more control while keeping everything square. If I was going to be doing this on a regular basis, I'd invest in a power tapping head for the mill. If the cnc machine is set up for coordinated motion with an encoder on the spindle and ability to move very slowly (mine isn't) you can do rigid tapping. They even make custom tooling that incorporates a drill bit with a tap. You can drill and tap without a toolchange. That kind of tooling is expensive but you make up for it with enough volume.

How long did the actual bandsawing take per heatsink, and the later steps per operation, roughly?

cycle times are hard to say. Only counting machine time...

  1. bandsaw...maybe 30-40 seconds per block. I'd start one on the saw while I loaded one on the mill so I could keep both machines busy.
  2. oseheatsink1.ngc ... ~ 45s including flipping the block.
  3. oseheatsink2.ngc ... ~ 15s
  4. oseheatsink3.ngc ... ~ 20s
  5. oseheatsink4.ngc ... ~ 90s
  6. oseheatsink5.ngc ... ~ 45s
  7. hand tapping .. 30s
  8. duburring and sanding ... 60s

I got pretty efficient moving part to part but it still worked out to about 8 hours of active time.

Note: above adds up to 5.75 minutes each, or about 10 hour total.

Path Workbench in FreeCAD

Basically I'd use Path to set up the origin datum for the part so it matched the touchoff on the machine (top/back/left corner) Then I did a simple drilling op to get the coordinates and drilling move. This is one line of gcode per hole with parameters for speed, peck depth, dwell, etc. I post-processed that file to get the gcode but then I hand-edited it for running in bulk. The issue here is that starting and stopping the spindle is slow. I wanted to move the spindle out of the way but leave it running while I switched parts. That meant wrapping most of the gcode execution in a loop with an optional stop block. That's a really unique requirement and I've never seen the need to generate a looping block like that from a Path job. While I stood there mindlessly feeding parts, it gave me time to think about whether this might make a good feature someday. We'll see.