3D Printed Pendulum Clock

A 3D printed clock in PLA. It has an 8 day runtime with an accuracy of 1-2 minutes per week.

Similar projects worth following
I have always had a fascination with mechanical pendulum clocks so I designed one to be printed on my Prusa MK3. There are a few other 3D printed clock designs on the web, but most seem to have runtimes of 12 hours or less. I wanted to see if it was possible to extend the runtime to several days with the ultimate goal of 8 days per wind. This design evolved over a six month period to achieve that goal. A video is at

The design has been posted to along with a complete set of build notes.

A pendulum clock is conceptually very simple.  A spring or falling weight provides energy to a swinging pendulum that swings at a constant rate.  A series of gears convert the pendulum motion into a display for the hours and minutes.  The challenge is to make everything work elegantly and accurately.  Designing this clock has been a spare time hobby of mine for the past 6-8 months.  I started with a basic sketch of the clock, then fit the gears so they would be relatively symmetrical.  

Involute gear profiles were designed using Gearotic and imported into TurboCAD for final adjustments.  One of the first experiments was to determine a good gear tooth size.  They needed to be large enough to print accurately, but not so large to exceed the capabilities of my printer.  I printed an assortment of gear sizes ranging from 10 dot pitch down to 40 DP and selected 20 DP as my favorite.  A 20 DP gear with 60 teeth will be 3" in diameter.  Smaller pitches were possible, but some of the teeth were slightly distorted.  I printed the gears in gold colored filament to get them to look like brass.

The next step was to design the overall gear train.  Most pendulum clocks share the same basic structure with slight differences in the gear ratios.  The basic requirement is that the minute hand should rotate once per hour and the hour hand should rotate once per 12 hours.  I used a traditional Roman numeral dial for this clock.

A pendulum swings at a constant rate depending on its length.  The constant rate is what helps the clock keep accurate time.  This clock uses a deadbeat escapement designed in Gearotic.  A traditional clock design with 60:8 and 64:8 gear ratios would need a 39" pendulum rod which seemed too long for this design, so I changed the gear ratios to allow for a shorter pendulum.  Three sets of gears with 54:12 ratios drive a 30 tooth escapement and a 17" pendulum with 5467.5 beats per hour.  This gives a balanced look but loses the ability to add a second hand.

The final component of the gear train is the weights.  A falling weight provides power to the minute hand which in turn pushes the pendulum.  An 8 day run time with 52" of drop means that the weight will drop 6.5" per day.  A pulley doubles the length to unwind 13" of cord per day.  A 1" winding drum will only rotate once every 6 hours.  Two gear sets divide this down to one rotation per hour of the minute hand.  The weight shell holds 4.5 pounds of lead shot to provide just enough power to keep the clock running.  Some of my initial experiments used a larger weight shell and a 3:1 divide ratio with only a 4 day run time.  I added steel bushings at several critical locations to reduce friction enough to use the 8 day gear set.

The clock frame consists of two major components.  The back frame integrates a metal keyhole hanger to hang the clock on the wall.  Standoffs push the clock body away from the wall for pendulum clearance.  The top of the frame has a robust support bar to prevent frame sag from the heavy weight shell.  This design could easily handle double the weight with no visible sagging.  The support bar also includes a convenient location to store the winding key.

The front frame integrates the dial and numbers into a single 3D print.  The first few layers are printed tan colored with pauses for the ivory colored dial and black numbers.  The same multi-layer technique is used to add gold highlights to the clock hands.  The front and back frame sections just barely fit diagonally on the MK3 print bed.  The pendulum is a two piece clamshell with a few pennies added for weights.  It pivots on two small ball bearings with the grease removed to lower the friction.  The pendulum rod was printed in two sections and epoxied together with a threaded rod sticking...

Read more »

Adobe Portable Document Format - 1.86 MB - 03/29/2019 at 04:53


  • 12 × 6x3/4" wood screws McMC 90031A151
  • 10 × 4x1/2" wood screws McMC 90031A110
  • 2 × 1/8x3/8x5/32 R2 bearing for pallet McMC 57155K349
  • 1 × 5/16" brass shaft for weight drum 2.7" length McMC 8953K138
  • 1 × 1/8" stainless rod 16" total length McMC 89535K16

View all 17 components

  • 1
    Design Details

    Here are some details about the clock design and gear ratios used.  Let's start with the naming convention used when designing the clock.  There are eight gear sets labeled mostly starting with the escapement labeled as gear 1.  I suppose the pallet could have been called gear 0, but I simply call it the pallet.  The rest of the gears are labeled sequentially towards the weight drum.

    Here is a diagram showing the clock gear connectivity and speed.  The weight shell has a pulley, so a 52" drop unwinds 104" of cord.  Gear 8 rotates once every 6 hours.  Each gear in the train rotates slightly faster, until it gets to the escapement rotating every 39.5 seconds.  Gear 5 and 6 form a secondary path for the minute hand to drive the hour hand.  There are two 18 tooth pinions on gear 4 with a friction fit to allow setting the time.  

    The gear thicknesses and clearances were defined using the following mockup.  Most gears are 0.2" thick.  Gears 7 and 8 have the most weight on them, so they were made thicker.  There are two 608 skateboard bearings supporting the weight of gear 8.  The escapement and pallet were also made slightly thicker to provide a larger wear surface.  The pallet has tiny ball bearings to support the weight of the pendulum.  I experimented with several different sized bearings and picked a size that allowed a pendulum to "free swing" the longest.  The load is significantly below their design limit so I am expecting them to last a long time.

  • 2
    Power Gear Assembly

    This section shows the process of assembling the gears into the frame.  There are a few preparation steps that need to be completed before assembly.  For now I will just leave it as "print everything and cut the axles to length".  More details to will be added later.

    The build in the next few sections shows a rough rendering of the clock in 3D form.  One of my long term goals is to learn photo-realistic rendering in TurboCAD to make the diagrams even better.

    Start with the back frame.  The standoffs and keyhole hanger should be attached to the back of the frame as the first step.  The picture below shows all of the axles in place, although they will get placed as each gear get added.  The standoffs are not shown, but they would position the frame 1" away from the wall to provide clearance for the pendulum.

    The gears should be assembled starting from the bottom gear to the highest to allow clearance.  Gear 4 with two 18 tooth pinions is the first one, followed by the ratchets, and the weight drum (after inserting a 608 bearing into the pocket).

    Oops, I just realized that the image above shows the 4-day weight train with a 44:34 gear ratio and a 1.1" winding drum.  After fine tuning the design, I was able to switch the gears to a 54:24 gear ratio and a 1" winding drum to provide an 8 day run time.  Swapping out the two gears is all that is needed to switch between modes.  The assembly instructions are the same.

  • 3
    Escapement Assembly

    The next step is to work towards the escapement.  Add gear 3, gear 2, the escapement, and the pallet.  The pallet shaft sticks out the back of the frame to attach the pendulum.  It also has two 1/8x3/8x5/32 bearings.  

View all 4 instructions

Enjoy this project?



CD1010 wrote 10/05/2020 at 01:38 point

Very nice work just wondering about your reasoning for ratios.

Ok,  I mapped out ratios as follows:  

in order of wheel to pinon linkage:

Escape 60 teeth, pinion 16

64 8

30 16

64 18   Minutes

48 12

54 12  -Hours.  

This gives me a 60  to 1 overall ratio vs your 91.  Also, i get seconds hand from escapement.

My pendulum would be 9.77 inches vs 17 for yours. 

Just wondering?  What do you think of that?  i would think lower ratio would require less weight to drive clock and less stress.  Also, shorter pendulum sounds good.  

Am i on to something here?

Your thoughts much appreciated.  i am no expert 

  Are you sure? yes | no

Steve wrote 10/13/2021 at 18:48 point

Sorry for the delay. The gear ratios would be 60:1 if the third gear is 64:16. It would work. There are an infinite number of other ratios that would also work. 60 escapement teeth would be a challenge unless it is made larger. It might be easier to keep it with 30 teeth, although the pendulum would need to be 39 inches long. I don't really know if the different ratios would need more or less power. Another thing is that the 3 gear sets between the minute hand and the escapement will make the second hand run counter-clockwise.

  Are you sure? yes | no

frank.m.russo wrote 03/20/2020 at 14:20 point

Would it be possible to get the 3d files Ia am using Solid works 2018

  Are you sure? yes | no

neiljenko47 wrote 09/05/2019 at 05:39 point

Just finished building it.

At the moment it is just a wall hanging because it doesn't work??

something seems to be wrong with the Pallet & escarpment.

  Are you sure? yes | no

Steve wrote 09/28/2019 at 15:57 point

Hopefully you have your clock working by now. The pallet and escapement are the most critical components. I have built three working versions of the clock, but all were printed on the same printer. It is possible that other printers have different characteristics. I recall that one of my clocks had a small amount of rubbing that was solved by gently moving the pallet arms apart. I may have also filed the pallet arms slightly. Another builder said that he printed the pallet and escapement at 99% scale for his clock. Only one side of the pallet should ever touch the escapement at any given time.

The other things to check for are excess friction in the drive train and pendulum. Remove the pallet and check that everything spins freely. My clock needs about 8.5 ounces on a single string (no pulley). It takes several minutes for the weight to drop to the floor in this mode. Also, check that the pendulum swings freely without the escapement. I think my pendulum swings for almost 20 minutes while the amplitude degrades from +/-5 degrees to nearly nothing.


  Are you sure? yes | no

neiljenko47 wrote 09/28/2019 at 20:48 point

Still only a wall hanging.

I think it is all in the drive train but finding exactly what it is, is the problem?

Do you mean instead of Pallet & weight & only about 8.5 ozs on line it should work its way down??

  Are you sure? yes | no

neiljenko47 wrote 10/26/2019 at 20:54 point

10 oz takes 35 min to drop 5ft all gears without pallet. What weight have you in pendulum at the moment i have about 4.5 oz & it stops swinging before 1 min.

  Are you sure? yes | no

witc wrote 05/12/2019 at 16:39 point


I have just built it and replaced the stainless tubes for ball-bearing. Unfortunately there is still enough friction, because clock stops after 15 -30 seconds (even if I used 1.4 kg weight without pulley). Hope I will solve it soon :-) 

  Are you sure? yes | no

Steve wrote 03/29/2019 at 04:48 point

I just posted the design to

I reworked a few of the components and added some build notes.  The complete print time is almost 90 hours.

  Are you sure? yes | no

Saddamik_1 wrote 03/09/2019 at 21:49 point

Beautiful work. 

  Are you sure? yes | no

Alex Hammer wrote 03/02/2019 at 15:02 point

This is a wonderful design! I'd love to take up the challenge of making one for my school. I read the wonderfully detailed descriptions. Forgive me if I've missed it, but are the STL files available?

  Are you sure? yes | no

Steve wrote 03/02/2019 at 15:38 point

I am hoping to get the STL files posted in the next few weeks. They need a bit of cleanup and completion of the build notes.

  Are you sure? yes | no

Alex Hammer wrote 03/28/2019 at 17:52 point

Thanks! I'll keep an eye on this thread. I finally have my Prusa dialed-in and ready to go :)

  Are you sure? yes | no

jjohnson873 wrote 02/27/2019 at 19:37 point

I'm very interested in downloading the STL files so I can begin to make the gears.  Will you have several gears made with one STL file?

  Are you sure? yes | no

Steve wrote 02/27/2019 at 20:10 point

Each gear will be a separate STL file.  I could pack them all in a single STL to fit my Prusa MK3, but then it might not fit a Creality Ender 3.  Separate files gives the user the most flexibility.  And each gear is slightly different.  Multiple gears have 54 teeth with 12 tooth pinions, but the pinion is at a different height.  It becomes a different file.

  Are you sure? yes | no

raiderj wrote 02/27/2019 at 16:09 point

I'd love to see a kit that you could buy for this!

  Are you sure? yes | no

Steve wrote 02/27/2019 at 17:50 point

That is an interesting idea.  I might put a hardware kit on Tindie, since it is cheaper to buy parts in bulk and the clock only uses 1-2 pieces of a few components.  I have great intentions to get the STL files posted soon.

  Are you sure? yes | no

raiderj wrote 02/27/2019 at 18:30 point

I don't have a printer (although would like to get one in the future). I suppose another option would be to get them printed through a service too. Either way, clock mechanisms are really cool. Props to you for all the hard work that you're sharing!

If you could make an Antikythera machine THAT would be really cool :-)

  Are you sure? yes | no

Nathan Atkins wrote 09/24/2020 at 20:52 point

Have you thought any further about a hardware kit?  A buddy of mine and I have printed all the parts for 2 clocks, but once we started looking into the parts it was a tad overwhelming (and a little expensive), so now we have a bag of printed parts that we have held on to for quite some time now.  Thanks

  Are you sure? yes | no

Sophi Kravitz wrote 02/21/2019 at 13:57 point

Gorgeous design, love that you showed us the gear ratios!

  Are you sure? yes | no

arobertson6 wrote 02/18/2019 at 19:17 point

Wow - Nice work!!!  I love this.  I would love the opportunity to print it.  

  Are you sure? yes | no

fabian wrote 02/17/2019 at 14:08 point

What You thing about 

Is possible run arduino or esp with e-ink screen in this same idea? 

Imagine router only using gravity ;)

  Are you sure? yes | no

ericcherry wrote 02/13/2019 at 23:26 point

Awesome looking work! I look forwards to getting the chance to print one of my own once you've shared with us.

  Are you sure? yes | no

Steve wrote 02/13/2019 at 23:57 point

Thanks for the positive comments.  I can't make any promises on the time frame for posting the design.  It is a bit too complex to just throw out some STL files and say "good luck".  I want to write up some assembly notes and clean up a few minor design details first.

  Are you sure? yes | no

ericcherry wrote 02/14/2019 at 01:48 point

I'll be waiting and watching! I've been casually (really casual) researching how to make the anchor and escapement. Biggest hurdle I've come across is finding some decent documentation on the geometry of drawing them. Been fun, some mild trial and error, mostly error. For a 700+ year old invention they are still difficult guarded castles to get into!

  Are you sure? yes | no

Steve wrote 02/14/2019 at 03:18 point

I know what you mean about the hidden info, Ericcherry.  I let Gearotic handle the escapement design, but still ended up modifying it slightly.  The pallet arms worked better when they were lengthened slightly.  At least a 3D printer makes is easy to do iterative experiments.

  Are you sure? yes | no

Lee Wilkins wrote 02/13/2019 at 17:11 point

Great aesthetic! 

  Are you sure? yes | no

Steve wrote 02/11/2019 at 16:45 point

Thanks, it has been keeping me busy for a while.

  Are you sure? yes | no

Lutetium wrote 02/11/2019 at 15:58 point

Nicely done!

  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