Low cost worm gear drive for 3D printer Z axis

A low cost worm gear drive that prevents a belt-lifted bed from dropping when motor power is cut.

Similar projects worth following
I recently set out to design a lower cost alternative to the expensive ($140) 30:1 worm gear drive that powers the belt-lifted Z axis in my 3D printer, UMMD. This is the result- a 3D printed gearbox with steel gears, a NEMA-17 motor, and an 8mm output shaft. It has a 40:1 gear ratio and with 40 tooth GT2 drive pulley(s) provides 100 full steps per mm resolution.

This worm gear box is 3D printed ABS and uses a 40:1 worm gear set purchased via aliexpress for $20 shipped to the US.  The rest of the parts, including a couple F608zz or R2280HH bearings, an 8mm shaft, and a NEMA-17 motor will cost about $20 if you don't already have them in your junk box.  

The $40 cost for the drive unit compares favorably with the $140  OnDrives Rino 30:1 worm gear drive used in UMMD.

A complete Z axis will require the worm drive unit, 2x KP08 pillow blocks (@$2.50 each), 2x 40 tooth GT2 drive pulleys (@$4 each), and a pair of flanged pulleys, conveniently made from 4x F608zz bearings (@$2 each), and some steel or glass core GT2 2mm pitch belt (about $5/m), guide rails and bearings, and miscellaneous hardware.

Advantages of a worm gear driven belt-lifted Z axis include no bed drop when motor power is cut, high resolution, ability to lift heavy loads with a small motor, no backlash in the motion, no Z wobble.

View all 11 components

  • Failure is always an option.

    Mark Rehorst04/08/2018 at 13:09 0 comments

    I wish I could say otherwise, but this project looks like a failure, at least for high accuracy positioning.  It's works great for torque multiplication and appears to have pretty good precision, but a 3D printer Z axis needs both precision and accuracy.

    There's a problem visible in the video below: when the Z axis is moved in 1 mm intervals, every other step is right on and those in between are a little off. 

    UMMD 40:1 worm drive precision testing and belt stretch under load from Mark Rehorst on Vimeo.

     I managed to repair the extruder and ran a test print yesterday and got Z ribbing every 2 mm, most likely because of a problem with the worm gear which spins 1 revolution for every 2 mm of Z axis movement.

    I don't think there's anything that can be done to fix this.  I'll be putting the Rino back into the machine today.

  • Update 2: first load tests in printer

    Mark Rehorst04/06/2018 at 23:07 0 comments

    I installed the printed gearbox in UMMD last night and ran the first test:  lifting 4 kg at 10 mm/sec (the bed and support assembly weigh 3.5 kg):

    First test of printed worm gear box in UMMD from Mark Rehorst on Vimeo.


    1600 usteps/mm

    100 full steps/mm

    40:1 gear reduction

    3 kg cm NEMA-17 stepper

    40 tooth drive pulleys

    2 mm pitch GT2 belt

    Gearbox printed in two pieces.
    This is one generation earlier than the one in the video, but it was printed the same way.
    Gearbox installed in UMMD
    This the gearbox installed in UMMD's Z axis. The motor is a 3 kg cm holding torque, 40 mm long NEMA-17 unit running at 1A. At 10 mm/sec the motor is spinning at 300 RPM. A lower inductance motor might be able to spin a bit faster.

    More tests to come...

  • Update 1: first tests

    Mark Rehorst04/06/2018 at 23:05 0 comments

    I assembled it and connected to a stepper driver.  While it was running I attempted to prevent rotation by holding a pair of 40 tooth pulleys with my hands.  I couldn't stop it.  This thing will be able to lift a decent amount of weight.  

    I was thinking of building a structure to test it, but after looking at options, decided the easiest thing to do would be to pull the Rino out of UMMD and replace it with this gearbox.  When it finishes printing (rev 3, now), I'll install it in UMMD and run some tests.  UMMD currently uses HTD-3M belts - I'll be replacing them with GT2.

    Planned tests include lifting capacity, precision and accuracy tests to be made by bolting a gauge to the printer's frame and letting the bed bump the probe.  I'll also run some speed tests.  At 40:1 the maximum speed may be less than the Rino's 20 mm/sec.

View all 3 project logs

Enjoy this project?



Daren Schwenke wrote 05/02/2019 at 01:16 point

The concept is sound.  You just need to figure out where the execution went wrong.

  Are you sure? yes | no

Terry Bogayong wrote 04/29/2019 at 15:17 point

I just stumbled upon this project and it looks interesting.  I'd like to try this in my new build.  But I see the last post in this discussion was in March 2018.   Is anyone still working on this?  Did it work?

  Are you sure? yes | no

Mark Rehorst wrote 05/01/2019 at 14:57 point

It failed miserably.  The gear quality was poor and resulted in banding in the prints every 2 mm.  Check the updates.  I have seen others are now trying it with different gear sets, hoping to find a low cost set that will deliver high print quality.

The Rino works very well...

  Are you sure? yes | no

Gravis wrote 03/28/2018 at 15:04 point

I'm confused about how this thing actually moves.  Is it gripping the post that goes through it?  Is there supposed to be a belt that connects to it?  It honestly just looks like you wind up with a gear in an enclosed structure that turns but does nothing.

  Are you sure? yes | no

Mark Rehorst wrote 03/28/2018 at 16:01 point

The worm gear on the motor shaft turns the disc gear which is affixed to the 8mm output shaft. You will use one or two GT2 pulleys mounted on the shaft to drive belt(s) that lift the bed in a 3D printer. See:

One reason belt driven Z axes are not more common is that the bed (or X axis) will drop like a rock when you cut Z axis motor power. The worm gear drive is irreversible which prevents the weight of the bed from back-driving the motor when the motor power is cut, which means the bed doesn't drop. The gear reduction also multiplies the motor torque making it capable of lifting a lot of weight, while also increasing Z axis resolution.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates