Geared Stepper Motor

I was trying to find a cheap geared stepper motor and found the 28BYJ-48 a number of places online and from the specs it seemed to fill the bill. 64 steps to the motor and 64X gear reduction 4096 steps per revolution. I received it and wired it up and ran it for the better part of three days with various programs. I kept finding that a full revolution was somewhere between 4072 and 4080. Maybe I was slipping with acceleration and deceleration??? Slowed everything down. No change. Finally I cracked the geartrain open and found the following gear teeth counts 9, 9, 10, 11, 22, 26, 31, and 32. If you calculate this out it is: (22X26X31X32)/(9X9X10X11) = 63.68395... Multipied by the 64X motor that is 4075.7728.. steps per revolution not 4096!!! I was expecting an integral number of turns to return to zero. If you reduce this to the lowest common denominator ( 283712/4455) it means I have to go 4455 revolutions to get back to zero degrees! I'm disappointed that it's not an integral number of steps to get 360 degrees. It was cheap but now I'm looking for a stepper motor that is actually an integral number of steps per 360 degrees. I'd like to find a stepper motor that's >1000 steps/revolution [u]and[/u] returns to zero every revolution. Any ideas?



Use an 1.8º/step motor and use micro-stepping with an external driver, that or built a drive-train using timing belts and pulleys.

You could calculate the number of actual steps from theoretic steps using:

  unsigned long actual_steps = theoretical_steps * 283712 / 4455 ;

and then you'll only ever be 1/4000 of a revolution out (which is less than the 1/1000 requirement).

It is indeed an annoying gear ratio!

I'm trying to make a second hand ( that is [u]not[/u] constant speed but is 1 RPM). It will therefore make many revolutions over time. I will have to do a time correction because not all delays of code will be accounted for. I don't want to make a position correction also. I could but it will eat up a lot of code space.

@Stolfa - Are you sure about this? Any updates? My test results differ from yours.

This is the correct way to calculate the overall ratio? (22X26X31X32)/(9X9X10X11) = 63.68395 Maybe the formula is correct, but the counting is wrong? It's off by 1/2% from 64:1. That's 2 degrees every revolution. It's suspicious that the experimental results vary between 4072 and 4080. If it were skipping steps the results would be >4096.

Ouch, gear ratios should be given as exact, otherwise its a misleading spec. Particularly important for stepper motors...

Microstepping doesn't give the accuracy you might expect, under load 1/4 of a step movement is to be expected at max torque. Microstepping gives smooth motion and much less noise/vibration and risk of mis-stepping, but only somewhat more accuracy and only at light loads and only if the motor poles are accurately positioned....

I believe 64:1 is the exact answer according to my tests. I wish we could all be in agreement. Anyone disagree with 64:1?

I have been goofing around with two of these motors for the last couple of days. I couldn't figure out what I was doing wrong because 4096 steps went just over one revolution. I wrote a sketch that manually steps the motor using the 8 step sequence found here:

After much trial and error, i came up with approximately 4076 steps per shaft revolution. (Eyeballing it) Which is close to what Stolfa said.

I will run it for 1000+ revolutions and see if it is a few degrees off, which I am pretty sure it will be. 20 degrees off in 4 million steps isn't too bad though...

It is the REALLY TEDIOUS speed that is bugging me.

Edit: I ran it for 4076000 steps and it is ahead of my zero mark by about 5 degrees, not the 20 degrees that your calculations say.

Also, ( 283712/4455) can be reduced to 25792/405. Not that it matters much...

I too was not successful in attaining accuracy with this geared stepper. I tried many values at a painfully slow stepping rate with a perhaps .5 oz. load. Could never get it to be at it’s rotational starting point after feeding it values of 4096 and various values either side of that. Very nice powerful little guy, especially considering it’s motor/driver package price and availability. - Scotty

So that's 2 people that show 4076 steps. Another user where his results vary. Maybe they have a different model or manufacturer? Maybe there are making a mistake? Does anyone else measure exactly 4096 steps per turn like me?

I can see this thread has been read about 1200x. Only 2 people with these funny results?

I have two of these motors and will set up a test the next few days. Want to make a turntable for a 3d scanner so it would be really helpful if i could return to zero....

Thank you for verifying. I'm sure you will find no problems and be able to return to zero.

Did you try it?

Uau, I was testing a 28BYJ-48 and I observed the same behaviour: a full turn was not 4096 steps (using half-step excitation mode), but something closer to 4076.

I carried out several tests running 100 turns (in order to adjust the decimals) and I calculated a gear box ratio of 63,6828125 ... Obviously, the calculations of Stolfa are quite more precise, and answers one doubt I had about my experiments: why was the ratio so strange?

Finally, I would like to ask all you an additional question about this motor: I have two of them and in both of them the shaft have some play (clearence) of about 7.25º, what also render this motor as usefulness for precision works :-(

Have someone also realized that in his motors?

PD: This motor is mainly used to move the doors of the aircond machines ... in this scenario high precision is not a must ...

According to Stolfa the motor requires 64*((22*26*31*32)/(9*9*10*11)) steps for a full revolution. This fraction simplifies to 1650688/405. Therefore 405 turns are needed to get back to the initial starting position.

Having played around with this stepper for a couple of days, my results show an inconsistent undershoot similar to the previous posts. Maybe this could be a power supply problem ? Perhaps any future posters could post the type of supply they are feeding ULN2003. For my part, I was using 2 paralelled 9V (PP3) batteries.

For high-precision geared motors anti-backlash gears are normally used (where spring-loaded gears remove all the slack in the mechanism).

Adding a hi-res shaft-encoder after the gearbox would allow accurate positioning without needing to worry about slack or the precise gear ratios...

I just received a new 10-pk of these 28BYJ-48 5VDC stepper motors and tested one to see if maybe a different manufacturer would use a slightly different gear ratio, some being 4096:1 and some being 4075.7728... I set the stepper motor sketch up so that it rotates for 4076 steps, pauses for 3 seconds, then repeats; a period of about 15.3 seconds. Depending on which ratio is in the gear box it either exceeds a revolution by 0.22271 steps or it is short a revolution by 20.2271... steps. If the gear ratio is 74075.7728.. the paused point of the shaft will precess one revolution in 79 hours. If the gear ratio is 4096:1 then the pause should precess in the other direction and make one revolution in 51 minutes. Right now it's on course for about a 79 hour precession. There may be another source of these motors with a 4096:1 ratio. If you know of one; let me know.


I can't believe there are so many motors that are not 4096:1. Why? Does anyone else have the 4096 ratio?