Gears are hard

Nearly two years ago, I decided to 3D print a mechanical calculator.
This project is extremely in character for me. I love old technology, and especially mixing old and new technology (like sending digital data via ham radio).
When you want to 3D print something, there are different levels of how sane you can be. The sanest option is to find a design on a site like Printables or Thingiverse that someone else made. Ideally, one that consists of as few parts as possible.
When I looked at the available 3D calculator designs, there were everything from simple ones with just a few gears, to modular ones based on historic designs (like Blaise Pascal’s calculator), all the way up to a 3x scale replica of the Curta Type I, the most advanced mass-produced mechanical calculator before electronic calculators took over the market.
There were two main features I wanted: a modular design, and a simple design. Unfortunately, the only modular design was modeled after Pascal’s calculator, and not very simple at all.
So, I decided to take the less sane option and design one from scratch. I did not realize how big of a challenge I was jumping into.
My first design was straightforward:

Design #1
The two gears each had 10 teeth. One gear (blue above) would let you read out a number from a dial. The other (orange) would have an extra nub on a single tooth, which would serve to carry a sum into the next decimal place. The posts the gears sat on would be tilted, so only that extra tooth would make contact with the next gear.

I was having trouble getting the correct angles, when I realized there was a more elegant solution. By flipping every second set of gears upside down, they’d be lined up naturally.
![]()
When I printed the first prototype, I discovered that the gears I had made in TinkerCAD were not interlocking and turning correctly. There was way too much of a gap between the teeth:

The advantage of 3D printing is that it lets you fail quickly. I realized I needed to know more about how gears were designed.
It turns out that there is an optimal gear tooth shape that was discovered in the 18th century, potentially by Leonard Euler. They’re called “involute gears”, and they transmit force along a straight line between gears of any number of teeth.
![]()
Involute gear teeth
There are plenty of CAD libraries to generate custom involute gears. I found a good one, and designed a ten-toothed gear. After a few iterations to test the fit, I had my first full draft print:

Also note the lightweight base design
But this version still had a big problem I hadn’t foreseen. I had presumed that when one tooth of a ten-toothed gear fully passed through a gap in a second ten-toothed gear, both gears would turn one tenth of the way. As it turns out, this is completely wrong.

Notice that the gears have turned through two teeth, not just one
So it was back to the drawing board. Eventually, I found the appropriate bit of trigonometry and determined that I could use a gear with 30 teeth of a specific size, with the carry tooth turning its partner gear by exactly 3 teeth. To make the design easier, I also decided to have the carry tooth stick out from the rest of the gear. This meant the carry gear needed to be printed with supports, but the support would be small and easy to break off after printing.

This design kinda worked. The main issue left was that the gears kept slipping upward on the posts. My first solution was to use little c-clips on top, which worked okay, but wore out over time. Still, I was satisfied enough to declare the project finished.

About a year and a half later, I decided to come back to the project and make an improved version with a better fastener. After trying and failing to build a system that screwed together, I settled on a version held together with pegs that rotate into place. This version has held up for the last couple of months, so I’m ready to share it with others.

3D model of final version.

Side view. I will add a photo when I return home.
You can find the model and print instructions on my Printables page here.
Coming Soon: Fiction: A Leap of Logic