Moosteria
Because you never need to get moosterical.
Friday, May 08, 2026
The Antikythera Mechanism 6: Jupiter, and Beyond The Infinite
Thursday, April 09, 2026
The Antikythera Mechanism 5: Back Gears
The back gears lie between the large b1 gear and the outputs on the back, consisting of the Metonic and Saros spirals and the Callippic, Olympiad and Exeligmos dials. There are two slightly different versions of the configuration, from the Freeth 2012 and 2021 papers. I used the more recent one, which differs from the other only in swapping the position of the gears on the n-axis. The back gears are better supported than the planet gears, as most of them are on axles running between the midplate and the backplate. However, as we will see, there are some issue with the stability to deal with.
The following diagram, S20 from Freeth 2021's supplement, shows the arrangement of the gears.
Some co-axial sets of gears such as f1 and f2 can often be combined into a single printed object. The f-axis is also an example of an axis with no output. The diagram shows its axle as not extending to the backplate. By extending it and adding a spacer, we can make it more stable. Similar considerations apply to the h and p axes. The m axis can't be extended in this way as there isn't enough space around n3. Some axes extend through the midplate, for example d and m. For these, the gears are printed as separate objects, connected by a hexagonal extrusion on one which engages with a hexagonal socket on the other. I experiments with setting the size of the extrusion the same as the socket and 0.1mm smaller. Very close tolerance like this are a bit of a guess with 3D printing. Different printers, slicers and filament may end up with the fit being a bit different. If they don't fit, they can be sanded down until they do, and if they are too loose, they can be glued. I have this value set as a variable in Fusion, so it can be changed across all the parts that use it. I also noticed that the fit varies from one orientation to another. When I initially printed the m1 and m2/3 gears, they fit was quite loose, but rotating them 30 or 60 degrees relative to each other gave an adequately tight fit. In the end all the gears with hex joins seemed to work fairly well, but for the m and d axes, I allowed for a M3 screw to help hold them together, if it should be needed.
The axes which come through the backplate to form the output have a hex socket on the end, which a pointer will plug into. Most of these axes consist of two parts: the gear with an extended hub meeting up with the midplate, and an axle plugging into the gear and extending through the backplate. The n-axis is a bit different due to an extra gear, and the i-axis has the axle going to the midplate rather than the backplate due to the tight space. In some cases, I added a ring round the axle of hub to keep it stable. Here is an example of the entire n-axis in cross section to illustrate:
In this version, the hub of gear where it passes through the midplate is printed. In a later revision, I replaced this with a dowel pin.
Both the midplate and the backplate are large, much bigger than will fit on my print bed. The design by FizzyChickens splits these into smaller pieces which are clipped together and glued. It's still a lot of material to print, and large flat pieces like this are prone to warping. I decided on a different design, where I made a skeleton with just the necessary fixing points and enough mechanical support to make them rigid. These still have to be printed in two large parts, plus a circular bracket on top and two smaller brackets. The result is quite robust and also takes a lot less print time. Here is what it looks like:
A few M3 screws hold it together. Alternatively, it could be glued, maybe using M3 screws temporarily to keep everything aligned until the glue takes effect. There are two small brackets, intended to go underneath the frame. I later got rid of these as I don't think they are needed and they take up valuable space. The external back panel will need to be made from a complete panel. Maybe laser cutting it would be best.
The e3 gear is too large to fit on the print bed. Initially, I intended to split it up the same way that I split the large gear in the Swingtime clock, by dividing it in half and gluing the parts together with metal pins to help the alignment. The e3 gear is attached to another large gear called e4, and this is small enough to print as a single piece. So I decided to split e3 in two and attach it to e4 with screws along the spokes, plus a few extra ones on a tab. I arranged the position of the split so that it does not divide the hub in two, which makes for smoother movement. The three pieces look like this:
Did it work?
More changes
Saturday, March 28, 2026
The Antikythera Mechanism 4: Superior Planets Prototype
The prototype for the superior planets (Saturn, Jupiter, Mars and the true sun) uses similar design principles to the inferior planets. It's hard to video it in operation as there are parts that won't stay in place until it is combined with the front plate and the inferior planets. You can see the pin for the Mars gear slipping out its slot. I'll use a longer one in the final version.
The video shows first the Saturn and Jupiter trains and then the Mars and true sun ones. In the assembled version they will be linked by the sp1 gear. The superior planet plate is truncated so it will fit on the print bed. For the final version, I'll need to either find a larger printer or split it into parts.
There is only one new design element here: the use of an axle to hold the pair of eccentric gears used for the epicyclic motion, for example like this in the Jupiter gear train with the axle highlighted:
The two circular hole are for screws to hold the axle to the superior plate, and the remaining hole is for a dowel pin on which the eccentric gear will run.
I used black non-silk PLA for some parts of the prototype. Getting the dowels pin in is much harder with this filament, probably due to slight differences in how much the filament expands or squishes when printing and because it is less slippery than silk PLA. I filed out the holes in some cases to make pins fit more easily.
Next, to the back gears, a larger and more complex part of the mechanism.
Tuesday, March 24, 2026
The Antikythera Mechanism 3: Inferior Planets Prototype
The inferior planets mechanism is a part of the Antikythera mechanism which models the motion of Mercury and Venus as seen from Earth, as well as the mean position of the sun and part of the information about the phase of the moon. This part of the mechanism was not found amongst the recovered fragments and so has to be hypothesised from the required motion and some hints provided by fixings on the parts that were recovered. There are several versions, with the most recent one in Freeth's 2021 paper. The previous version was also proposed by Freeth, in a 2012 paper.
I decided the make the inferior planets mechanism as a prototype for the design. I cut some corners, in particular only printing part of the large b1 gear and printing short versions of the tubes which will ultimately carry the output pointers. Here is a very shaky video:
It moves fairly smoothly, so the dimensions and tolerances are about right. Some things I want to change or experiment with:- the two dark coloured gears in the middle are wrong. After printing them and the b1 fragment, I noticed that they should have a tube which runs through b1 and is fixed to a (not yet implemented) back plane. See Freeth 2021 supplement section 6.2.6 for details.
- the idler gears attached to the "strap" (upper plate) wobble too much.
- co-axial gears such as the purple and grey mercury gears (called mer1 and mer2, following Andronis) can be joined in a simpler way.
- some of gears can probably be made thinner. My version is scaled from the original by roughly a factor of 2 in the XY plane, but I needed to almost triple the Z direction size. Freeth reports the strap and b1 as an estimated 16.2mm apart while my version has them 41mm apart. I'd like the reduce this.
- there are a few places where the mechanism is sticky. I need to see if this is due to printing or a design issue. I have done very little to clean up the parts and reduce their friction, so it's more likely the former. A couple of places where there really was interference have already been corrected.
Reducing wobble
Second prototype
Saturday, March 21, 2026
The Antikythera Mechanism 2: Design Principles for 3-D Printed Version
I plan to have a go at making a 3-D printed adaptation of the Antikythera Mechanism. See the previous episode for background.
A side note: from now on when I want to refer to the original mechanism, I'm going to refer to it as the HAM (Historical Antikythera Mechanism), to save some typing.
My guiding principles for the design are:
- make something that works well.
- stick the original mechanism for the overall configuration, but not for the precise dimensions.
- make practical decisions guided by the limitations and advantages of 3-D printing.
For example, the HAM used gears with triangular teeth. It is a consequence of the tools available when it was made. Triangular teeth don't print well and there are better modern alternatives. Another example: the gears of the HAM, as measured from the imaging data, use a variety of different module values. The gears are if we change the modules to more consistent values, with some consequent changes to the geometry.
Another way of saying this is that I am aiming for functional equivalence with the HAM rather than strict adherence. So now here is a list of some design considerations. The notes here were made at a fairly early stage in the design and some of the details were changed later.
Choosing the gear sizes
The largest gear in the HAM is referred to as b1. This name, along with the others that I'll use below comes from the Freeth 2012 and 2021 papers. The gear has 223 teeth and an outside diameter of 65mm, giving it a module of 0.578. For an involute gear, the teeth would be about 1.3mm from base to tip. Teeth this small won't print well and are likely to be fragile, and it would be better to scale it up. One option is to fit the whole gear on the bed, constrained by the 210mm dimension, another is to split the gear in two and fit the diameter on the bed, constrained by the 250mm dimension. Splitting a gear into parts and then gluing them together (or some other way of attaching them) does work. I gave some information in a previous blog post, and did it in my build of the Swingtime clock.
Here are some numbers for different choices:
- Fit to bed. Module = 0.93, diameter = 209, tooth depth = 2.09, scale = 1.61.
- Split and fit half to bed. Module = 1.1, diameter = 247.5, tooth depth = 2.475, scale = 1.90.
- Split and fit on a diagonal of the bed. Module = 1.156, diameter = 260.1, tooth depth = 2.601.
The last one is tricky. With a bit of careful positioning, you can a gear split in two fit on the Prusa print bed like this:
Gear teeth profiles
The gear teeth in the HAM are triangular. It is the easiest shape to make with hand tools. However, it is not an efficient shape for transferring power through the gear train, and triangles do not print very accurately. The alternative choices are to use involute gears teeth or cycloid gear teeth. Involute gear teeth are the most common type. Cycloid gear teeth are commonly used in clocks due to lower friction and wear. They can also print better, as the sides of the teeth are more or less parallel for most of their length.
I don't think it makes a lot of difference in this design. My design tool is Autodesk Fusion, which has an add-in for generating involute gears. There isn't one for cycloid gears (though I have recently found, but not tried, a third party one), and alternatives such as Rainier Hessmer's program for generating SVGs are not very convenient to use. I'll use involute gears.
There are a few places where HAM uses a crown or contrate gear, that is a normal gear driven by another one at 90 degrees to it and with teeth standing upright. The modern alternative is bevel gears. This won't work in all cases, as sometimes the angle of the bevel makes the teeth intrude into the interior of the gear. The 223-tooth b1 gear has additional posts attached to it, and the beveled teeth came too close to them in a prototype. In such cases, a crown gear can be used with involute teeth.
Laying out the gears
- tangent constraints for gears that mesh.
- coincident constraints for gears on the same arbor.
- horizontal and vertical constraints for some gears that should be aligned, for example the centers of the b1 gear and the arbors of the Metonic and Saros pointers.
- a few distance constraints for the eccentric epicycle gears. The distances came from the formulae in Freeth 2021.
- the angle of the "strap", a small platform mounted on b1, which Freeth says is at 11 degrees.
Here is the gear tester:
Miscellaneous practical issues
Arbors and connected gears
Tubes
Part thickness, hubs and bushes
Discs and spokes
Fasteners
Print settings
- more perimeters, to add extra strength. Sometimes this makes the slicing look less good, for example little blocks in the gear rim.
- aligned seams. It easier to locate the seams and then file them down when they are aligned.
- Arachne slicer in most cases.
- scarf joint seams if they are too obvious.
- maybe extra top and bottom layers for strength.
- 25% infill, cubic or gyroid.
- elephant’s foot reduction increased to 0.25mm or 0.35mm. It's important to get no elephant's foot where gear engage; sometimes I see it with the standard setting.
Thursday, March 19, 2026
The Antikythera Mechanism 1: Introduction
The Antikythera mechanism is an artifact from ancient Greece, discovered in a shipwreck off the coast of the island of Antikythera in 1901. Investigations and analysis have shown that it is an analogue model of the solar system, used to predict positions of astronomical bodies and eclipses, together with a calendar and with several additional indicators. There are many popular and scholarly publications about it on the web. Two good introductory articles are the one in Wikipedia and Tony Freeth's article in Scientific American from 2022. The heart of the mechanism consists of several gear trains, ultimately driven by a single crank. A person would have turned this crank, and the gear trains translate it into the motion of various outputs: the Metonic cycle (a sun-moon calendar), the Saros cycle of possible eclipses, the positions of the planets, sun and moon as seen from Earth, the phase of the moon, and others. Of the many videos on the web, I recommend Freeth's one and Jo Marchant's Darwin lecture.
The scholarly research is wide ranging, and the parts of it that I find most interesting are the ones which deduce the mechanical characteristics. There is a great deal of detective work. CT scans and image processing have allowed the size and configuration of many of the gears to be determined, although some parts of the mechanism are damaged or missing entirely. Comparison of gear ratios with astronomical cycles led to an understanding of what parts of the mechanism are for. A "user manual" in the form of inscriptions on the external surfaces of the mechanism provides further information about its purpose and operation. In some of the more recent work, hypotheses have been put forward for the missing parts of the mechanism, notably the gears that drove the planet positions, by looking at possible mechanisms and deducing what would fit the physical constraints of the surviving parts. Some of the research has been largely settled for a while, such as the gear trains for the Metonic and Saros cycles, while other parts have been updated more recently, such as the planet mechanism. The astronomical model is centered on Earth, and so it has to account for the motions of the planets, sun and moon as seen from Earth. They appear to speed up and slow down and even to reverse direction. This motion can be modelled to some degree of accuracy with two gears, one off center with respect to the other, coupled by a pin and slot. The references above give more detail.
(Fragment A recovered from the Antikythera shipwreck. Image attribution: Giovanni Dall'Orto., Attribution, via Wikimedia Commons)Several published papers include detailed diagrams of the gear trains and tables listing the number of teeth and size of the gears (or equivalently, their modules). Two of Tony Freeth's articles are particularly useful:
- Freeth, T. and A. Jones (2012) The cosmos in the Antikythera Mechanism. ISAW Papers 4, available at http://dlib.nyu.edu/awdl/isaw/isaw-papers/4/. Includes gear schematics. There are measurements for the planet gear trains, but not for the Metonic/Saros part of the mechanism.
- Freeth et al. (2021). A Model of the Cosmos in the ancient Greek Antikythera Mechanism. Nature (Scientific Reports). https://www.nature.com/articles/s41598-021-84310-w. Presents a revised version of the planet mechanisms. The supplement (linked from the same page) has videos showing the assembly, and a table with the sizes of many of the gears. A very valuable resource.
There have been a number of projects to reproduce the mechanism, either as computer models or actually manufactured. Michael Wright made a replica in the 1970s, and Mogi Vincentini made a computer model from it. Freeth has used computer models to illustrate his published papers and to show that his proposed mechanism fits together. There is a lengthy series by Clickspring in which he builds a replica using original tools; at the time of writing it is not yet complete. A bronze version was made by Nicholas Andronis. He has also made a scaled up wooden version. Spencer Conner has another version made out of brass. He made a number of changes to modernize the design. There is a 3-D printable version, for which plans can be purchased, and a rather magnificent wooden version. I have also seen videos generated from other CAD models which may or may not have been made physically, and a 3-D printed version which even goes so far as to reproduce the damage to the casing.
There are plenty of YouTube videos with misleading information. It did not come from aliens or time travel. It's not an ancient mystery. It is an archaeological relic and scientific enquiry by thoughtful people has elucidated its structure and functioning. If you see a video which is an episode of someone's podcast or which employs AI, you should probably skip it. Unless you like that kind of thing, of course.
Dr. Andronis's site at https://www.amclock.net/ deserves further mention. He has detailed instructions and engineering drawings for his bronze version. The instructions include assembly and operating instructions, and many notes on practical issues such as adjusting the size of the parts to make them fit. He includes a table giving the tooth counts and sizes of all the gears, pulling together information from multiple sources. There are a couple of errors: some entries in the table quote the diameter of a gear under a column marked as radius and then also have an (incorrect) radius which is half of this, while others have the correct values; and there is one gear which I could not find on the engineering drawings, but can be reconstructed from the table.
I have been looking for a substantial new 3-D design and printing project, and the Antikythera mechanism is it. At the time of writing, I have prototypes for most of the mechanism, but still have a way to go before it operates smoothly. Perhaps I will succeed, perhaps it will end up in the Closet Of Abandoned Projects. What I want to make is a functional reconstruction: it should work, and use modern design techniques when that makes it work better, even if this means departing from the original mechanism in appearance.
The manual on Dr. Andronis's site says Warning: The only thing you learn from designing and building Antikythera Mechanisms is how to build a better Antikythera Mechanism next time. Well, perhaps, but as in many of my previous projects, the journey may turn out to be the destination.
Tuesday, November 25, 2025
Printing holes for a snug fit
I often want to design and print parts which fit on a metal shaft with a diameter of a few millimetres. 3D printers don't accurately print holes. The diameter of the hole in the printed part is typically less than designed for, due to factor such as the plastic squishing and expanding horizontally or the plastic expanding as it leaves the nozzle. If the part is intended to run freely on the shaft, it's not a problem. Just drill the hole out, for example with a pin vice, and maybe sand or file it if needed. I have also tried using a reamer to improve the finish, though I am not sure it makes any difference.
It is a little more of a challenge to make parts with holes that provide a snug fit. This would be for the case when you want to the part to be rigid, or at least firm, on the shaft. You can design the part with a hole for a set screw. I have often done this with 2mm and 3mm screws. I usually design the part with a hole 1.8 or 2.8mm for the screw and then use a M2 or M3 machine screw. It generally works quite well. I have had less success using grub screws. I think their thread isn't deep enough to cut into the plastic. Tapping the hole works. It is still not always a satisfactory solution as some parts don't have a good surface for placing a hole or for getting a screwdriver. Think of a gear with a hub the same height as the teeth, for example. Also, there are cases where you want a fit that will hold under normal use, but where the part can move on shaft if enough force is applied.
I decided to try experiments with a few different ways of making a snug fit. In each case, the shaft is a nominal 4mm in diameter and made from stainless steel. The measured size was about 3.95mm. Usually I find steel shafts are slightly under the nominal size and brass shafts are slightly over. The obvious method is just a simple hole, which I did at 4.0, 4.1 and 4.2mm diameter. I also used a 6mm hole with ribs in it. The ribs are 0.4mm wide. You have to use the Arachne slicing algorithm for them. Finally, tried a 4.0mm hole with a 10mm by 1mm cut out. The designs look this like:
Slicing for the ribbed version shows that there will be a single line of filament:
















.jpg)


