Harmonic Drive for Neo 550

How It works

I had some time on my hands today, so I decided to take on a project I’ve been wanting to do for a while; a Harmonic Drive that would be feasible for an FRC robot. The design I came up with has a gear reduction of 125:1 and uses a GT2 3mm pitch timing belt in place of a traditional flex spine. In theory this design’s gear ratio could easily be changed by swapping the belt out for a different size. Due to the nature of a Harmonic Drive, this design would have basically zero backlash. It also isn’t back drivable, which could be a good or bad thing depending upon the application.

While there are definitely advantages to this design, there are a couple drawbacks. The biggest disadvantage is the time and precision needed to machine the multitude of complex parts needed. There also is the 25 tooth GT2 belt that would be very difficult to source as it is not a normally stocked size.

If you don’t quite understand the mechanics behind a Harmonic Drive, I recommend watching THIS video, it does a great job explaining the core mechanics!

Critics, comments, and questions are more than welcome!

If you would like, you can check out the CAD for the module HERE.

-Trevor Glasheen, Alumni


Am I seeing this right, that the belt rotates at the output speed? If so, how do you get the rotation from the belt to an output shaft?

1 Like

If you have a 3D Printer files and STLs here https://grabcad.com/library/frc1989-harmonic-planetary-about-70-1-1

A pic of the parts

you will need some 8mm ID, 16mm od bearings as Hobby King sells them or others like MR 688 series And either some M8 or 5/16 bolts as axles with locknuts The parts also enclude a winch that connects with a 1/2in hex shaft to the output

All the white parts should be printed in Nylon - preferably 910 but bridge will work too. The orange parts out of something hard like HIPS, ABS, PLA. To drive it use a NEO or CIM (we used a CIM for initial tests. We did not test it yet under heavy load. The planetary in the center doubles as the elliptical bearing. Make sure your extrusion is dead on. You should be able to print it on most printers that have a heated bed and can get hot enough (all metal hotend) to do Nylon


Geetwo is right. Generally the biggest cost/drawback to a harmonic drive in industry is the transfer to the output gear/shaft.

The output gear is more the shape of a cup (not just a belt). The walls of the cup have the teeth. This transfers down to the bottom of the cup which is connected to the output shaft. So imagine trying to machine or deep draw a cup with teeth. High cost. (also, while the walls are flexible, the output needs to be rigid.

In your design you have belt which makes up the flexible half of the cup. Figure out how to attach that to the bottom of the cup and you’ll have a working drive.

I like that people are actively working on this though. With the NEO550, you may be able to slap a couple of shims to the casing and use THAT as your input.

1 Like

It looks like the output is a second circular spline engaging the same flex spline as the stationary spline, but the two circular splines differ in tooth count by some small number. This is different from a normal harmonic drive, but it seems like it could work. As the wave generator moves the point of mesh around the axis rotation, the points at which the teeth on the two circular spines align advances to match, which spins the output. I would imagine It requires some slop in the design to get the flex spline to engage two different circular splines, but there are plenty of FRC applications that can tolerate that.

possibly different in execution, but certainly similar in effect.

The packaging of this looks great!

I’m curious how you got to a ratio of 125:1 If using a 25T belt as the flex spline I would expect the circular spline to have 2 more teeth than that, at 27T. (Generally all harmonic designs use a circular spline with 2 more teeth than the flex spline.) This would lead to a ratio of 12.5:1. Your CAD appears to have 30T on the circular spline which would give a theoretical ratio of 5:1. I would expect that the difference in the number of teeth on the belt and number of teeth on the circular spline being an odd number would cause issues as the teeth diametrically opposed each other should be engaged at the same time, with the difference being odd on one side the wave generator bearings will be pushing on a tooth, the other a groove.

It also isn’t back drivable, which could be a good or bad thing depending upon the application.

Keep in mind harmonic drives ARE back-drivable. In many of their applications the back-driving functionality is critical.

1 Like

It is an interesting idea after taking a closer look at the model. The ring gear and the output gear would have to have a different tooth count otherwise the belt will just spin in place.

Two issues I see with this approach (but I think it’s definitely worth testing and seeing if you can get to work)

  1. The ring gear and the output gear are different sizes (even if by one tooth count)
    The flexibility of the belt MAY be able to compensate for this with a “cone” shaped roller?
  2. With two different tooth counts there will either be a lot more friction as the mismatched tooth “drops” into place or a complete tooth skip. (not sure the best solution for this, but lots of testing would be needed here)

If you’re sticking with the 5 mm pitch belts, they do make a 25 mm wide belt.

You may be able to create a round “clamp” that acts as the rigid bottom of the cup. Create a ring gear that’s the same tooth count as the belt with a circular wedge that will screw down into the bottom of the cup. Only capture the last 5-10 mm of the belt in this and see if you have enough flex to create circular spline with 2 more teeth than the belt.

I’m definitely following this thread to see what all you come up with.


I work with Harmonic Drives on a regular basis. I think one note of caution might be appropriate: You’re designing a strain-wave reduction system. Harmonic Drive is trademarked, patented, and actively defended.

Now this is a really interesting concept! I wonder how well putting a set of rollers around the casing, and using the inverted-belt variety of strain-wave reductions would work. Something similar to this type maybe?


This is really cool. If you are up for experimenting, there are varying grades of TPU that can be adapted in a couple of ways.

  • If the load is light enough, you can actually print a custom belt (and/or increase belt width to make it stronger).
  • If you need a custom semi-flexible coupler, TPU can help there as well. Adjust the # of perimeters to increase/decrease stiffness.
  • If you find your Nylon has layer separation, but you can’t solve it due to other printing constraints - TPU has the strongest layer adhesion of all ‘standard’ filaments.

This thing is fabulous.