MakerBot Print is our newest print-prepration software, which supports native CAD files and STL assemblies,
allows you to interact with all your printers via the Cloud, and many other exciting new features.

Download Now

Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

Nema 17 Stepper 5:1 Planetary Reducer

by jag May 11, 2011
Download All Files

Thing Apps Enabled

Please Login to Comment

sweet this will save me $40

Can this work with a Titan Extruder from e3D?

Comments deleted.

very cool, and exactly what i need for my robot. hope you don't mind if i remix it?

any chances that you have a 5:1 ratio gearbox for nema 23?

where to get a 6mm screw ? we only have M6,M7,M8 Screws in Germany with other dimensions.

Guess you sorted this out. M6 = 6mm ish. it is actually a bit smaller but thats how its made

Printed at 0.2 with a 4mm nozzle, have found the gears bind too much, i cant turn them by hand ? i really have to push fit the gears in, any way to reduce the planetary gears at all ?

You could try adjusting the scad file to increase the clearances but if it is really hard to turn it may be an over extrusion problem or strings in the teeth of the gears.

Thanks for the reply,
Ive checked and cleaned all the teeth on the planetary gears and they are clean and free from any stings, i will look into adjusting the scad files thanks

Do you have the same product for a 10:1 reduction ?

Comments deleted.

10:1 would be pushing it for the same size housing. That would be a lot of teeth. There is code in the openscad for making dual stage versions that could have much higher ratios.

The sun gear in the STL single files and the full print file render the teeth with no support in Slic3r. I don't see recent posts so perhaps I will check the OpenSCAD.

Do you mean no infill? The sun gear shouldn't need any supports. If it isn't putting infill in the teeth, it is a problem with the slicer. It may be that you have to reduce the number of perimeter loops (if you have more than one). Or reduce the width of the extrusion.
Some slicers have problems filling very small areas (like the triangle in a gear tooth) and just leave a void.

I needed to slow down the nema 17 steppers for my project but they become very jerky at slow speeds, this gearbox is ideal as I can keep the motors spinning relatively fast and get very smooth output. Thank you very much for making this available.

does anyone know how to make real internal gears? not only a cut out of a normal gear..

What bearings do I need to get to build this?

You mentioned 2x 683ZZ in the updates but there's no mention of any bearings in the assembly instructions and no parts list.

I really want to build one of these. :)

(Need the 1:5 reduction to have more torque on a NEMA17 project)

6 683zz bearings (2 for each planet)

1 606 bearing for the output shaft

Thanks. I'll fetch them today, then print the parts this weekend and test it on my NEMA 17.

Here's a video of the one I made. Almost no backlash, less than a step. Really great job on the design.


Great video! Thanks for posting it.

Here's the planetary gears in action on my new spherebot. I was able to inscrease the resolution by 2.5 and now it has the holding power to use an engraver.



Love it! It's cool to see it actually installed in something. Isn't it 25 times more resolution (5 on each axis)?

Your scad file doesn't work properly with the new version of OpenSCAD. I don't know what is wrong but the sun gear no longer renders with teeth. I had to revert to an older version of OpenSCAD (2010.05), probably the version you had when you built this.

Weird, it seems to behave with the version I'm running right now (2011.06)

I'll have to take a look at it. The version of the openscad file is slightly different than the one here.

This is what the sun gear looks like on my 2011.06 version. http://i.imgur.com/ZFdkE.jpghttp://i.imgur.com/ZFdkE.jpg

The planetary gear works though. I'm guessing this might be a openscad problem and not a problem with your file. Are you running windows?

No, I'm running Mac OS. It could also be a change in the gear library. I'm running a pretty old version.

I don't know where you bought your 683ZZ bearings, but I found that many places were charging a lot more than I wanted to pay. I found that the 683ZZ are found on a t-rex 600 model helicopter and can be purchased at your local hobby store 4 for $6.

That's better than I paid. I think I got 10 for $24.95 from http://vxb.comvxb.com

Good to know. I probably had some laying around since I have the carcass of a t-rex clone in my basement...

Wonder what it would take to modify the scad to work with nema 23 steppers... :)

NEMA is standardized size....you could just scale it up to fit
NEMA provides a forum for the development of technical standards that are in the best interests of the industry and users, advocacy of industry policies on legislative and regulatory matters, and collection, analysis, and dissemination of industry data. In addition to its headquarters in Rosslyn, Virginia, NEMA also has offices in Beijing and Mexico City.

NEMA 17 motor drawing

NEMA 23 motor drawing

PDF NEMA 11 - 34

I'm new to reprap, but it should be as simple as printing it at as close to 135.294% of the original as possible.

scaling would increase the size of the shaft holes as well, so the bolts, etc wouldn't fit. I see the openscad files are listed. I'll have to take a look at them and see if they can be modified for nema 23. I plan on using this for another project (non-stepper) anyway. :-)

Yeah, apparently the scaling didn't work...

Have you considered rotating the motor mount by 45 degrees to make accessing the fastening screws for both motor and gearbox easier to access?

I was just thinking about that. I was trying to be cute and keep the whole thing within the footprint of the stepper motor. It would be an easy modification to make...

Have you considered adding a mounting flange to the gearbox? That way the stepper could be attached to the gearbox, the gearbox to a level surface, and two problems are solved at once.

it remind me the 4 speed tamiya remote control truck in the 70's :-D

Currently printing, so more feedback to come.

Working with the STL provided.

The planets seem to be upside-down, they have a serious overhang as a result.
The planet carrier seems to have a geometry error, with the inset for the head of the center bolt returning to a 6mm hole for the last 1mm or so. Again, creating a nasty overhang.

Looks w
onderful though ;)
Pics of it in silver PLA to follow. And if the print looks workable I'll order some 683 bearings!

Ahhh... now I understand. Everything (practically) has some sort of nasty overhang.

You naughty man. You know you don't leave STL's full of nasty overhangs laying around without some sort of warning. You never know who might come along and try and print it!

Sorry :) It is a "Work in Progress" though.

The planets are like that so you can put a bearing on either side of it so it's captive. It does ok with ABS, just a few threads hanging.

On the carrier I guess I could have made the hole thing thinner and gotten rid of the recesses for the nuts, then it could have been printed with the hex hole up.

Most of the time I worry about overhangs and try to minimize them or put support or 45s in. I was too busy concentrating on just getting this thing working that I didn't worry about it ;)

I added a warning ;)


Much better!
Overall its really pushing the limits of resolution. I don't think that I can get much finer detail without going to a smaller nozzle though. Might be handy to have seperate STL's of the sun and planets though, they might be more printable with different settings (that would make the
other bits weaker).

I've had great luck with the 0.4mm nozzle. I've been printing it at .25 layer height and .5w (2 w/t).

I've also been printing it with all of the extra shells turned off to avoid the hollow gear teeth like you got.

I've uploaded all of the parts separately. I'll have to think about how to get rid of some of the overhangs...

Thanks for trying!

I'll gave things a try... for the planet gears, you can probably get away with just a 1mm or so decrease in radius of the hole, a bump basically. Otherwise you can just turn the holes into slots. That way it can just bridge from one side to the other, rather than trying to draw a circle in mid-air.

The main body of the unit has some awfully thin walls... once it gets above the teeth I can see through the PLA (although PLA is more translucent than ABS). And have you though about removing the taper at the bottom of the body? Right now I don't think theres space to get the sun in with bolts attached, or are you using set screws?

I was thinking along the same lines for the planets. Or even a square in the middle would work better than necking down the cylinder. A slot would probably work better.

The main body does have thin walls. It could easily be made bigger, I was just making it the same size as the stepper motor and making the gears as big as possible so that the sun gear doesn't get even smaller.

I was thinking that it would be cool to print the main body in natural PLA and put colored planets in so you could see them :)

I have thought of removing the taper. I might remove the taper but still leave for fingers sticking out to locate the gearbox to the pilot boss on the stepper motor but allow some slots to fit a bolt through. I ended up scrounging some set screws but it would be easier if you could use bolts.

How is the fit of the gears?

I'll try to make some modifications and upload a new version soon.

You shouldn't need anything to help locate the gearbox onto the stepper, the bolts will do that just fine.

The gears fit, its a little rough. I can't be any more help till I get a better quality print, and I need to order some bearings!

Finally got some bearings (but only re-printed the cover). Need to get some m3 setscrews but things seem to work!

I had some trouble with the set screws. I found some in my parts bin that were the right size but they were too short. I ended up using the set screws with a piece of 3mm filament behind them so that the set screw was pushing the filament onto the shaft of the motor. It worked as a temporary solution. I think I'll adjust things so you can use a regular old M3 screw instead...

That would be great! Although I'm off to the hardware store today so I might grab some setscrews anyway... assuming they have them in metric :(

Might have to also look for some M3 nylocks.

New version uploaded.

The holes for the bolts/nuts cut into the internal gear a bit but I don't really think it is a problem. I could make the gears a bit smaller but to maintain the 5:1 ratio the sun gear might get too small to have the shaft protruding through it. This wouldn't be a problem with a stepper with a shorter shaft but with the makerbot steppers, the shaft has to go all the way through (unless the hole assembly was made about 11 mm taller.

It seems to be able to handle the torque. I could get the stepper to miss steps by grabbing on to two of the screws protruding from the carrier. There was no way I was going to stop it grabbing the 6mm bolt though. Maybe tomorrow I'll actually test the torque with a scale.

Here is a movie of it in it's current state:


There is a little bit of runout in it. I think this might be from some little blobbies on the ends of the planet's teeth. It should go away when it's bolted together. I need to get a longer 6mm bolt for the output shaft....

I'm going to change it so you can bolt the housing to the motor and th
en insert nuts in the housing so you can then use screws through the cover to attach it to something else (an extruder maybe?).

Beautiful work! :-)

How much backlash are you getting when you reverse the stepper's direction?

Thanks! I can't really detect any backlash. I was turning it with my hands and trying to feel when the output shaft started turning in relation to the input, it really seemed to be pretty immediate. I'll hopefully print another version today that I can actually bolt to the motor.

This is getting there! I just did another print. The mesh is great. It's not to tight. Without the stepper installed I can turn the gearbox just with the friction of my finger against the bottom of the sun gear.

I need to adjust the depth of the bearing pockets in the planets, when it's tightened down, the gear is rubbing against the carrier instead of just the bearing. I haven't installed it on a stepper yet though.

Late to the party but, this is fantastic. Hope it really works under load. What a boon. Next, print a stepper motor? Too bad they get so hot....

Thanks! My printer has been giving me a little trouble lately so I haven't been able to test it lately. I just got the bearings in yesterday so hopefully I can test it out soon.

I figured I could maybe put an arm of a known length on it and use my kitchen scale to test the torque output.

I just uploaded a new version, I haven't printed it yet. I will soon.

It should now leave enough room for the internal gears now that I have modified the involute gears library.

It also has support for multistage gearboxes now. We'll see how that works after I try out a single stage one.

So, now you should be able to get 625:1 reduction in about 89 mm of length (plus the stepper).

Does anyone who has fooled around with the involute gears modules know how I would go about increasing the clearance at the tip of the gear?

If you subtract a gear from a something with no backlash and clearance and then nest inside it the same gear but with a backlash and clearance value, you can see that the tips of the teeth are touching the outer gear in all but the most extreme settings. If you crank the backlash up really high, it starts to eat away at the tip a bit but that doesn't happen until you get pretty high. I could just clip the ends of the teeth off the gear but that seems kind of like a hack. Any ideas?

dont know if this is what you were asking about... but copy/pasted this involute code into my code:


i am no expert but when i change 'clearance' the tooth seems to get shorter....

Public Domain Involute Parameterized Gears

I'm using the gears involute_gears library that is part of mcad


The clearance in that library seems to affect the root diameter, not the outside diameter. Perhaps the library you used behaves differently.

Parametric Involute Bevel and Spur Gears

Not sure, but isn't there a provision for negative clearance and/or backlash for what you are trying to do?

There is but neither of those seem to affect the tip clearance, just the sides of the teeth. If I scale the gear by 1% before I subtract it from the housing, it seems like it would help but it doesn't seem like the "right" thing to do as it changes the pitch a tiny bit.

Right, read up on it, and clearance only affects the 'bottom' of the tooth profile, not the tip.

Beautiful! Curious, do you print with 3mm MK6? I'm not loving my 1.75mm right now. Strings etc...

Thanks! It is with 1.75mm filament and a stepper extruder. It's my filament drive though.

I have the reversal speed set at 45 and the times at 70
amp; 75

It's pushing back a little too early and there is a little blob before it is supposed to start extruding but its not too bad. I would rather that than have voids in the gears.

I just did a test with it actually attached to a stepper. The gear mesh is a little too tight and causes some binding in spots which makes the stepper miss steps. I think I also need to reduce the height of the planets a bit so they aren't rubbing on the bottom and sink the bolt head in a little further so it isn't hitting the planets.

I just uploaded an updated openscad file. The stl files are still the original ones, I haven't regenerated them yet.

Wow you totally read my mind, I'm working on a turntable for 3D scanning and last night I was thinking of making a planetary gear attachment like this to make a very slow turning bed. It would be great if you made your scad script configurable to allow for higher reduction. (at the expense of widening the housing to fit it in)

It's configurable right now, you just have to mess around with the teeth on the sun and the annular gear. I haven't really played with it much other than getting 5:1 working.

I could try making a wider version. I was kind of working on getting it working at all and then I figured I'd neaten it up and make it more configurable. There are a few hard coded values scattered in there but most of it is configurable at the top.

You just have to look at the output and make sure it isn't trying to make a gear with a half tooth. There is no error checking.

Great! :) :) :)

Is it possible to use for Extruder?
I'm wondering strength of gears.

That was my intention. It seems like it should be strong enough once I figure out the bearings in the planets. The torque should be divided between the 3 planet gears so they should each only be handling a 3rd of it (unless I'm completely wrong, I'm not engineer)

You will have to turn up the current quite high... although I'm basing that on my 7(ish):1 gears and I imagine that this type of gearing will be more efficient. The higher the gearing the better though. Otherwise you end up with a hot stepper and that's not good.

I'm tempted to try scaling this up... any idea how high a ratio you can manage within the 100mm2 footprint of a makerbot?

Nice design by the way ;)

Probably about 10:1

The real gains in ratio would be if I made a 2 stage version. It doesn't seem like it would be very hard to make them stack or to have to stages in one case by just putting another sun gear on the planet carrier and then having another set of planets above it.

I could even get back a little of the extra height because the motor shaft could go through the first carrier. I might look into that. I'll have to get this one running with a bit less friction first though.

I'm changing the design to use 2 3mm x 7mm x 3mm bearings in the planets.

That way they can hold onto the planet gears and glue won't be necessary. I also might try to fit in some sort of frame supporting the other side of the planets to help them stay in position.

I'm so following this 8-)

Great design!

looks good. :)

Can't wait to see how much it handles and what the backlash is. :)

This is full of win :)