Mechanical · Volume 3

Gear Trains & Mechanical Reduction

Module, mesh, and ratio; the 12:1 and 60:1 reductions every clock hides; planetary (epicyclic) gearing in depth; and the craft of printing gears that mesh without binding

Vol 1 set out the four blocks every clock in this hub shares, and Vol 2 showed how a position — a hand swept around a dial — reads as a time. This volume is the bridge between them: it is the gear-engineering volume, and it answers the one question the planetary build exists to answer. A motor turns at one speed; a minute hand must turn at exactly one revolution per hour and an hour hand at exactly one revolution per twelve hours, locked to each other to a part in ten thousand. The thing that takes “one shaft spinning” and produces “two hands, correctly paced, sharing the same axis” is a reduction gear train, and on the collected clock that train is a 3D-printed planetary (epicyclic) gearbox. Everything here builds toward understanding that one flat, coaxial gearbox — but it starts with the spur-gear arithmetic the whole craft rests on.

A clock is, mechanically, almost nothing but reduction. There is no force to transmit worth speaking of — a clock hand weighs grams — so none of the strength-of-materials worry that dominates an automotive gearbox applies. What dominates instead is ratio accuracy (the hands must stay in step with the timebase indefinitely) and freedom from binding and backlash (a hand that sticks, then jumps, reads wrong). Those two concerns — exact ratios and clean, low-friction mesh — shape every number in this volume.

3.1 Spur-gear fundamentals

A spur gear is a disc with teeth cut parallel to its axis. Two spur gears mesh when their teeth interleave on a common line, and the whole of gear design is the geometry that lets those teeth roll past one another smoothly rather than scraping or jamming. Five numbers describe a spur gear; get them consistent between two gears and they will mesh.

3.1.1 Tooth count, module, and pitch diameter

The tooth count N is just how many teeth the gear has — the most important single number, because every ratio in the clock is a ratio of tooth counts and nothing else.

The module m is the size of each tooth, expressed as millimetres of pitch diameter per tooth:

m = pitch diameter / tooth count        →   d = m · N

The pitch diameter d is the diameter of the imaginary pitch circle — the circle on which two meshing gears effectively roll against each other without slipping. It is not the outside diameter (the tips of the teeth stand slightly proud of it) nor the root diameter (the valleys sit slightly inside it); it is the rolling line in between. Two gears only mesh if they share the same module — same tooth size — regardless of how many teeth each has.

Worked example, using the collected clock’s planet gear (N = 50). If the design uses a module of m = 1 mm:

d = m · N = 1 mm × 50 = 50 mm pitch diameter

The metric module is the modern standard; the imperial equivalent is diametral pitch (teeth per inch of pitch diameter), and an older measure is circular pitch — the arc distance from one tooth to the next, measured along the pitch circle:

circular pitch p = π · m = π · d / N

For the m = 1 mm planet gear, p = π × 1 mm ≈ 3.14 mm of arc between successive teeth. Circular pitch is the intuitive measure (“how far apart are the teeth”); module is the one the CAD tools and gear generators actually take as input.

3.1.2 Pressure angle and the involute tooth

The pressure angle is the angle between the line along which two teeth push on each other and the tangent to the pitch circles. The near-universal standard is 20° (an older standard was 14.5°). It is not a free choice you tune per gear — it must match between meshing gears, and it is baked into the tooth shape. A higher pressure angle gives a stubbier, stronger tooth that tolerates more centre-distance error; a lower one runs slightly smoother and quieter. For printed clock gears 20° is the right default and the value every gear generator assumes unless told otherwise.

The tooth flank is an involute curve — the path traced by the end of a string unwound from the pitch circle. The involute has one property that makes it the only tooth form worth using: as two involute teeth roll through mesh, the velocity ratio stays constant even if the centre distance is slightly off. That tolerance to centre-distance error is precisely what saves a 3D-printed gear train, where the printed bearing bores and plate holes are never perfectly placed — the involute keeps the ratio exact even when the shafts are a few tenths of a millimetre from nominal. This is §3.6’s recurring theme.

Figure 1 — 1 — Anatomy of a spur gear: the pitch circle (rolling line) with outside and root circles either side of it, one involute tooth flank called out, the 20° pressure-angle line, and the modul…
Figure 1 — 1 — Anatomy of a spur gear: the pitch circle (rolling line) with outside and root circles either side of it, one involute tooth flank called out, the 20° pressure-angle line, and the module shown as pitch diameter divided by tooth count. Two gears in mesh share a module and a pressure angle; their pitch circles touch at the centre-distance line. Diagram: project original.

3.1.3 Mesh, centre distance, and gear ratio

When two external spur gears mesh, their pitch circles touch, so the distance between their shaft centres is half the sum of their pitch diameters:

centre distance C = (d₁ + d₂) / 2 = m · (N₁ + N₂) / 2

For a sun (N = 10) meshing with a planet (N = 50) at m = 1 mm:

C = 1 mm × (10 + 50) / 2 = 30 mm between the sun and planet shaft centres

The gear ratio is the ratio of driven to driver tooth counts — equivalently, how many times the driver turns for one turn of the driven gear:

gear ratio i = N_driven / N_driver = ω_driver / ω_driven

A small gear (driver) turning a large gear (driven) is a reduction (i > 1): the output turns slower and, were torque the point, harder. A 12-tooth pinion driving a 60-tooth wheel gives i = 60 / 12 = 5, a 5:1 reduction. Crucially, the ratio depends only on tooth counts, never on module, diameter, or pressure angle — those govern whether the gears physically fit and mesh, but the timekeeping ratio is pure integer arithmetic. That is why clockmakers think in tooth counts first and everything else second.

3.2 Why clocks are reduction machines — the 12:1 and 60:1

A clock dial is a set of nested, fixed ratios. State them as revolution rates and the required reductions fall straight out:

Table 1 — required reductions fall straight out

HandRateRelative to next-faster hand
Seconds1 rev / minute
Minutes1 rev / hour60:1 down from seconds
Hours1 rev / 12 hours12:1 down from minutes

So a complete three-hand clock hides two reductions in series: a 60:1 from the seconds shaft to the minute shaft, and a 12:1 from the minute shaft to the hour shaft. In a traditional movement these live in two named places:

  • The going train is the gear chain from the power source (a weight or mainspring) through the escapement to the seconds/minute arbor — it both steps the speed down and carries the escapement that counts the oscillator. (The electromechanical clocks in this hub replace the escapement-and-oscillator with an RTC and a stepper, Vol 4–5, but the reduction job is identical.)
  • The motion work is the small, separate 12:1 reduction that takes the minute-hand shaft and drives the hour hand concentrically around it. Classically it is two pairs of gears — a 1:3 and a 1:4, multiplying to 1:12 — turning behind the dial. This is the exact job the collected clock hands to its planetary gearbox, which produces the whole 12:1 in a single flat, coaxial stage instead of two offset pairs.

The collected planetary clock has no seconds hand — it shows hours and minutes only — so it needs only the 12:1 motion-work reduction, and that is the reduction its epicyclic set provides. The 60:1 appears here for completeness and because the sibling Aviation build does drive a seconds gauge: its three NEMA-17 steppers each sit behind their own gear reduction (Vol 4), and the seconds gauge needs the 60:1 step from minutes that a single-hand-per-stepper design folds into firmware rather than gears.

3.3 Planetary (epicyclic) gearing in depth

A planetary or epicyclic gear set is the elegant answer to “give me a large, exact reduction in a flat package whose input and output share one axis.” It has four kinds of member, three of which can rotate about the common centre:

  • a central sun gear (external teeth), S teeth;
  • two or more planet gears (external teeth), P teeth each, that mesh with the sun on their inner side and the ring on their outer side, and orbit the sun;
  • a carrier (sometimes “spider”), which holds the planet axles and rotates as the planets orbit;
  • an outer ring gear, also called the annulus, R teeth cut on its inside.

Because the planets mesh the sun and the ring simultaneously, the three rotating members (sun, carrier, ring) are not independent — fix any one, drive a second, and the third is determined. That is what makes the set so compact: one stage does what a multi-shaft spur train needs several offset gears to do, and the input and output come out on the same centre line — exactly what a clock face wants, where the hour and minute hands must share the central axis.

Figure 2 — 2 — An epicyclic set labelled: central sun (S teeth), three planets (P teeth) on the carrier, and the internal-tooth ring/annulus (R teeth). The fundamental relationship ωring·R + ωsun·S =…
Figure 2 — 2 — An epicyclic set labelled: central sun (S teeth), three planets (P teeth) on the carrier, and the internal-tooth ring/annulus (R teeth). The fundamental relationship ω_ring·R + ω_sun·S = ω_carrier·(R + S) is shown alongside, with the three standard clock configurations (ring fixed / carrier fixed / sun fixed) called out. Diagram: project original.

3.3.1 The fundamental equation

The kinematics of every epicyclic set reduce to one relationship between the three angular velocities, weighted by tooth counts:

ω_ring · R + ω_sun · S = ω_carrier · (R + S)

The planet tooth count P does not appear — the planets are idlers; they set where the parts physically sit but not the speed relationship. From this one equation every configuration below is just a matter of setting one term to zero.

3.3.2 The three standard configurations

(a) Ring fixed, sun drives, carrier output — the reduction the clock uses. Set ω_ring = 0:

ω_sun · S = ω_carrier · (R + S)
→  ω_carrier / ω_sun = S / (R + S)
→  reduction i = ω_sun / ω_carrier = (R + S) / S = 1 + R/S

This is the standard high-reduction planetary arrangement: drive the small sun, hold the ring, take the slow output off the carrier, with reduction 1 + R/S. Note again that P is absent — the ratio is fixed entirely by the sun and ring tooth counts.

(b) Carrier fixed (sun drives ring, or vice-versa) — the set as a simple gear pair. Set ω_carrier = 0:

ω_ring · R = −ω_sun · S
→  ω_ring / ω_sun = −S / R

With the carrier locked the planets become plain idlers; the sun drives the ring through them at ratio −S/R (the minus sign means the ring turns the opposite way). This is the lowest-reduction mode and rarely what a clock wants, but it is the sanity check: with the carrier held, the epicyclic set degenerates to an ordinary external-to-internal gear pair.

(c) Sun fixed, ring drives, carrier output. Set ω_sun = 0:

ω_ring · R = ω_carrier · (R + S)
→  reduction i = ω_ring / ω_carrier = (R + S) / R = 1 + S/R

A modest reduction (since S < R, the term S/R is small) — useful when the ring is the convenient input, but it cannot deliver the deep reduction configuration (a) gives.

3.3.3 Why planetary suits a clock face

Three properties make the epicyclic set the natural choice here, and all three matter for a flat clock dial:

  1. Coaxial in and out. Sun, carrier, and ring all turn about one centre, so the minute input and the hour output emerge on the same axis the hands must share — no offset motion-work pairs cluttering the back of the dial.
  2. Compact and flat. One stage gives 1 + R/S, which is large for a thin gearbox; a spur train reaching the same ratio needs multiple stages and more depth.
  3. Load (and here, position error) shared across planets. Three planets split the contact between sun and ring across three mesh points 120° apart. In a clock there is no real load to share, but the symmetry keeps the sun centred and averages out per-tooth printing error — the train runs more smoothly than a single mesh would.

The cost is assembly fussiness: for n equally-spaced planets the tooth counts must satisfy the assembly condition (S + R) / n = integer, or the planets will not all drop into mesh at equal spacing. The collected set, with three planets, gives (10 + 110)/3 = 40, a whole number — so the three planets space evenly at 120°. (See §3.4.)

3.4 The collected clock’s planetary set — worked numbers

The collected PlanetaryGear clock (Looman_projects) chose its tooth counts to land the motion-work 12:1 exactly, and the build documents them directly.1 The designer’s naming: S = sun teeth, R = ring teeth, P = planet teeth.

S = 10   (sun  — coupled to the MINUTE hand, the input)
R = 110  (ring — held stationary)
P = 50   (planet — three of them, on the carrier coupled to the HOUR hand)

The reduction (configuration (a), ring fixed, sun drives, carrier output):

i = 1 + R/S = 1 + 110/10 = 1 + 11 = 12   →  exactly 12:1

So one turn of the sun (minute hand) advances the carrier (hour hand) by exactly 1/12 of a turn — the motion-work ratio, delivered in one flat coaxial stage. Equivalently, in the designer’s own form, the carrier-to-sun speed ratio is:

ω_carrier / ω_sun = S / (R + S) = 10 / 120 = 1/12

The planet tooth count is set by geometry, not by the ratio. For the planets to mesh the sun on the inside and the ring on the outside at a common module, the tooth counts must satisfy:

P = (R − S) / 2 = (110 − 10) / 2 = 50

This is the same statement as “all three gears share one module and the planet bridges the gap between sun and ring.” Check it as centre distances (at an illustrative m = 1 mm):

sun–planet centre  C = m·(S + P)/2 = 1 mm × (10 + 50)/2 = 30 mm
ring–planet centre C = m·(R − P)/2 = 1 mm × (110 − 50)/2 = 30 mm (equal)

Both come to 30 mm, so the planet shaft sits 30 mm from the centre whether you measure from the sun or back from the ring — the set is geometrically consistent. (The actual module is whatever the designer’s CAD gear plugin used; the ratio — 12:1 — is independent of it, so these centre distances are illustrative of the method, not build-exact dimensions.) The build notes that “the number of teeth on the planet gear doesn’t matter for the gear ratio” — a direct restatement of §3.3.1’s point that P is absent from the ratio.1

Assembly check: (S + R)/n = (10 + 110)/3 = 40, an integer, so the three printed planets seat evenly at 120° — the build uses three planets exactly for this reason.

3.5 From motor steps to one hand revolution — the full drivetrain

The planetary set delivers the 12:1 between the hands, but something still has to turn the minute hand at one revolution per hour. That is the stepper motor and a belt pre-reduction ahead of the gearbox. The full chain, motor to hands:

1.8°/step stepper  →  GT2 20T→60T belt (3:1)  →  SUN gear = minute hand
                                                  └─ planetary 12:1 → CARRIER = hour hand
Figure 3 — 3 — The collected clock's drivetrain as a block chain: a 1.8°/step NEMA stepper (200 steps/rev) drives a GT2 20-tooth pulley, a 400 mm belt carries it to a 60-tooth pulley (3:1 reduction) …
Figure 3 — 3 — The collected clock's drivetrain as a block chain: a 1.8°/step NEMA stepper (200 steps/rev) drives a GT2 20-tooth pulley, a 400 mm belt carries it to a 60-tooth pulley (3:1 reduction) on the minute-hand shaft, which is the sun gear of the planetary set; the carrier output runs the hour hand at a further 12:1. Reductions annotated at each stage; the A3144 hall sensor homes the train once at start-up. Diagram: project original.

3.5.1 The GT2 belt pre-reduction

GT2 is a 2 mm-pitch timing-belt standard; the tooth count of a GT2 pulley is its circumference in 2 mm steps, and a toothed belt transmits the ratio with no slip — exactly what a clock needs. The collected build uses a 20-tooth pulley on the motor and a 60-tooth pulley on the output shaft, joined by a 400 mm belt:1

belt reduction = N_driven / N_driver = 60 / 20 = 3   →  3:1

So the minute-hand shaft (the sun) turns once for every 3 turns of the motor.

3.5.2 The stepper resolution

A 1.8°/step stepper takes:

steps per motor revolution = 360° / 1.8° = 200 steps/rev

Through the 3:1 belt, one revolution of the minute hand therefore costs:

steps per minute-hand revolution = 200 steps/rev × 3 = 600 steps

The minute hand turns once per hour (3600 s), so the motor steps at:

time per step  = 3600 s / 600 steps = 6 s/step
angle per step = 360° / 600 steps   = 0.6°/step  at the minute hand

The clock literally ticks every 6 seconds, advancing the minute hand 0.6° each time — a step resolution comfortably finer than a viewer reads off a minute dial (Vol 2’s resolution discussion). The hour hand needs no separate drive: it comes off the carrier at 1/12 the minute rate automatically, so the overall reduction from motor to hour hand is:

motor → hour hand = 3 (belt) × 12 (planetary) = 36:1
steps per 12-hour hour-hand revolution = 600 × 12 = 7200 steps

3.5.3 What the firmware does with that

The Arduino does not free-run a “tick every 6 s” loop blindly — it reads the DS3231 RTC each cycle, computes where the hands should be for the current time, and steps the motor the difference, so the display is slaved to the RTC rather than to step-counting drift (Vol 5). On power-up it runs a homing routine: it turns the train until the A3144 hall sensor detects the 5 mm neodymium magnet carried on a gear, establishing a known zero, then steps to the RTC’s time.1 Homing is what makes the open-loop stepper trustworthy — without an absolute zero, a missed step or a power blink would leave the hands reading a fixed offset forever. (Hall homing and stepper drive are Vol 4; the RTC and counting logic are Vol 5.)

The tooth counts above are build-exact (the designer states S = 10, R = 110, P = 50 and the GT2 20T/60T pulleys);1 the m = 1 mm module and the 30 mm centre distances in §3.4 are illustrative of the method, since the build specifies the ratio rather than the module.

FIGURE SLOT 3.5 — A photo of a printed planetary gear set laid out flat: the small central sun, the three identical planets, the large internal-tooth ring, and the carrier plate that holds the planet axles — ideally the collected clock’s own printed/laser-cut set. To be fetched license-clean via the Photo Helper in the figure pass (Openverse/Commons for a generic printed planetary set if no owner photo is used); credit verbatim.

3.6 Printing gears — the craft

The collected set was originally laser-cut from 5 mm acrylic, but the project ships STL files so the gears can be 3D-printed instead, and a printed gear train is the more common maker path.1 Printing gears that mesh cleanly is a craft of tolerances; the involute does most of the work, but five things decide whether the train glides or grinds.

3.6.1 Layer height vs tooth-profile fidelity

A gear printed flat (axis vertical) builds the involute flank out of stacked perimeters in the XY plane, where the printer is most accurate — so the profile is governed by nozzle width and XY resolution, not layer height. Layer height then only sets how cleanly the tooth face (the flat top and bottom of the gear) comes out. A 0.2 mm layer height is fine for clock gears; the involve curve is reproduced by the XY motion regardless. Two or three perimeters with no sparse infill near the teeth keeps the flanks solid.

3.6.2 Clearance, backlash, and why a little is good

The single most important number is the XY clearance — how much smaller to make the tooth than nominal so a mating tooth fits the gap. A 3D printer lays plastic slightly wide of the toolpath, so a gear printed to exact dimensions meshes tight and binds. A typical allowance is 0.2–0.4 mm of backlash (clearance measured at the mesh). Backlash is the small free play before a tooth catches its mate when motion reverses; in a clock the train turns one direction, so backlash costs nothing in accuracy, and a little backlash beats binding every time — a binding gear stalls the stepper or skips steps, which does show as wrong time. The original designer printed a test gear, checked the fit, and adjusted the hole size in the planet gear until the planets ran free on their axles — exactly the right method, since the correct clearance depends on the specific printer and material.1

Figure 4 — 4 — Clearance and backlash on a printed mesh: two teeth shown with the nominal involute outline and the as-printed (slightly fattened) outline, the backlash gap called out between the load…
Figure 4 — 4 — Clearance and backlash on a printed mesh: two teeth shown with the nominal involute outline and the as-printed (slightly fattened) outline, the backlash gap called out between the loaded and trailing flanks, and a note that 0.2–0.4 mm of backlash clears the over-extrusion while a little play beats a binding mesh. Diagram: project original.

3.6.3 Material choice

  • PLA — easy to print, stiff and dimensionally stable; teeth hold their profile well. The default for a low-load clock gear, and what most printed clocks use. Brittle and creep-prone under sustained load, but a clock applies neither.
  • PETG — tougher and more wear-resistant, but slightly slippery and prone to stringing that fouls fine teeth; it also tends to print a touch oversized, so it needs more clearance. A good choice for the load-bearing carrier or a gear that sees a press-fit.
  • Nylon — the wear/friction champion (it is nearly self-lubricating) and the traditional choice for driven gears, but hygroscopic and fussy to print. Overkill for a clock, where loads are tiny.

For this clock, PLA throughout is the sensible default; reserve PETG for any part that takes a screw or a press-fit bearing.

3.6.4 Orientation, friction, and break-in

  • Flat vs on-edge. Print gears flat (axis vertical). On-edge printing lays the layer lines across the teeth, and a tooth then fails by splitting along a layer line under side load. Flat printing puts the layers parallel to the gear face, so each tooth is a stack of solid perimeters — far stronger in the direction teeth are loaded.
  • Chamfer and de-burr. A small chamfer on the tooth tips and a pass with a hobby knife to clear the first-layer “elephant’s foot” stop teeth from catching on burrs.
  • Break-in and lube. Run the train by hand, then under power, to wear in the high spots; a dry lube (PTFE or graphite) reduces friction without the dust-attracting mess of oil. Avoid thick grease — it adds drag the small stepper does not need to fight.

3.6.5 DXF vs STL — two file types, two machines

The collected set ships both formats, and they are not interchangeable:

  • STL files are 3D triangle meshes — the gears and other 3D parts (Sun_gear, Planet_gear, Ring_gear, Carrier_back, Hour_hand, Minute_hand), sliced and 3D-printed.
  • DXF files are flat 2D vector profiles — the outlines for laser-cutting the case and plates (Clock_front, Clock_back) from sheet acrylic or wood, the medium the original designer actually used for the gears too. Every part in the set (Sun_gear … Clock_back) is provided in both, so you can print the gears or laser-cut them, and laser-cut the flat plates either way.

Build the gears from the STLs on a printer; cut the case from the DXFs on the laser. (The full file walk-through is Vol 9; the build sequence is Vol 6.)

3.7 Sidebar — design your own gear clock

If you want a movement nobody else has (Vol 1’s Path 4), the tools are mature and free:

  • Gear generators. Browser tools and CAD plugins generate involute spur and internal (ring) gears from three inputs — module, tooth count, pressure angle (use 20°) — and export STL or DXF directly. For epicyclic sets, generate the sun, planet, and ring at the same module and let P = (R − S)/2 set the planet.
  • FreeCAD / Fusion 360. Both have involute-gear workbenches/add-ins (FreeCAD’s Gear workbench; Fusion’s SpurGear script). The collected Aviation build’s bodies are FreeCAD, so the toolchain is already in this hub.
  • The GT2 belt standard. For a stepper pre-reduction, stay on GT2 (2 mm pitch) — pulleys and 400 mm-class belts are cheap and standard, and the ratio is just driven/driver tooth counts, as in §3.5.1.

Rules of thumb, distilled from this volume:

  1. Pick tooth counts for the ratio first (i = 1 + R/S for the planetary motion work), then choose a module so the set physically fits your face.
  2. Check the assembly condition (S + R)/n = integer for n planets before you commit.
  3. Print a test gear, measure the fit, and tune clearance to 0.2–0.4 mm of backlash for your printer and material before printing the full set.
  4. Print flat, lube dry, and accept a little backlash — a clock turns one way, so play is free but binding is fatal.
  5. Slave the hands to the RTC, then home once — let the timebase, not step-counting, define the time (Vol 5), and give the train an absolute zero (Vol 4).

3.8 References

  • ISO 53 / ISO 54 (involute spur-gear tooth profile and modules) and the standard 20° pressure angle — the geometric basis of §3.1.
  • Cross-references in this series: Vol 1 (the three threads and the planetary anchor build), Vol 2 (how a hand’s position reads as a time; resolution and parallax), Vol 4 (stepper drive, microstepping, and A3144 hall homing — the actuator ahead of this train), Vol 5 (the DS3231 timebase and the counting logic that paces the steps), Vol 6 (the build sequence), and Vol 9 (the file-by-file walk-through of the PlanetaryGear STL/DXF set).

Footnotes

  1. Looman_projects, “Planetary Gear Clock,” Instructables (held in this hub as 02-inputs/PlanetaryGear/Planetary Gear Clock.pdf + the full STL/DXF set). Step 1 documents the gear design: ratio target 1:12, S = sun teeth, R = ring teeth, P = planet teeth, with i = S/(R + S) and the constraint P = (R − S)/2; the build’s numbers are S = 10, R = 110, P = 50 (“they seem to be on the edge of what is possible since there is very little clearance between the planet gears, but it works”). The supplies list gives the drivetrain: any 1.8°/step stepper with 5 mm axle, a GT2 400 mm belt, GT2 60-tooth and 20-tooth 5 mm-axle pulleys, 5×16×5 mm bearings, and an M5×50 threaded rod; the electronics are an Arduino, an L293D stepper driver, a DS3231 RTC (CR2032-backed), an A3144 hall sensor with a 5 mm neodymium magnet for homing, buttons, a 10 K resistor, a 100 µF capacitor, and a 5 V 2 A supply. Step 1 also notes the gears were laser-cut from 5 mm acrylic with the STL files included for 3D printing, and that a test gear was printed and the planet hole size tuned for fit. Step 5 describes the firmware: read the RTC, compute hand position, home against the hall sensor at start-up, and step the difference. 2 3 4 5 6 7