§M7 ended by asking whether the sawtooth actually moves anything. That question is not electrical. It's a fight between forces, and a stick-slip motor only runs if two inequalities hold at once [first_motion_playbook.md §2]. During the slow ramp, the friction between the foot and the track has to beat everything that resists the slider, µN > F_drag, where µ is the coefficient of friction at the contact and N is the normal force pressing the foot onto the track. During the flyback the opposite must hold, with the foot leaving so fast that friction loses to the slider's inertia, m·a_flyback > µN. Too little friction and the stick phase slips. Too much friction, or too much drag, and nothing moves at all. Every part in this chapter exists to win one of those two inequalities, and each part gets its own section: the rail I retired, the rail I built, the screw I turned into an instrument, the printed flexure, and the two surfaces that actually touch.
The rail I retired
The slider needs to move along exactly one axis and no others, so the obvious first move was to buy that constraint. I bought an MGN12H miniature linear rail with its matching bearing block, the standard answer for small linear motion. Industrial parts have industrial assumptions, though. A caged-ball block is built for machines that push it with real force, and its price for precision is drag: seals, retainers, and preloaded balls all add friction before the payload contributes anything.
For this motor, drag is the direct enemy. The only forward force available is friction at the foot, at most µN, with N counted in single newtons here (that week's notes put the entire available budget at roughly 0.3–0.5 N [design_notes §18, 2026-07-09]). The block's breakaway force, the static friction that must be overcome before it moves at all, turned out to be more than the drive could supply [project CLAUDE.md §2].
I didn't give up on it immediately. I tried Krytox grease and bearing oil in the block, and I bent the ball-retainer wires outward so the balls could recirculate more freely. The notes from that week add that the first setup ran two blocks on one rail, and flag the two-block over-constraint itself as a prime roughness suspect [builder, 2026-08-06; design_notes §18, user report 2026-07-09]. The measurement that kept judging these attempts was a tilt test, because breakaway force is easy to measure with gravity. Raise one end of the rail until the loaded slider first slips, and F_break = m·g·sinθ. Even after the modifications, the block only broke loose at a steep tilt, around twenty-something degrees, by my recollection [builder, 2026-08-06; design_notes checked 2026-08-10: §18's 2026-07-09 entry prescribes the tilt test and a ≤0.13 N pass bar, but no measured angle was ever logged, so the recollection is the only record]. For scale, a motor whose entire drive force is a fraction of a newton cannot afford a rail that needs that kind of push to start moving. The MGN12H was retired.
One honest hindsight belongs here, because §M7 earns it. At the time I treated the rail's friction as the problem, and it wasn't. The drive electronics weren't delivering what I believed they were (half the voltage the documents claimed, and later a suspect channel) [builder, 2026-08-06; §M7]. But retiring the rail was still the right call, for a reason that §M10 makes precise. The motion I was hunting was invisible to the eye, so I couldn't tell which suspect was guilty. When you can't identify the culprit, you remove every suspect you can afford to remove. A high-drag rail was an affordable removal.
Rail v2
The replacement came off my own printers, a custom rail whose slider rides on bearing bolts, rolling in V-grooves printed directly into the rail body. Two groove sets share the work. The groove on the bottom carries gravity. The groove on the side carries the lateral force the actuator pushes back with. The preload has to react somewhere, and the side groove is that somewhere (§M2's diagram shows both).
The logic of the design is to keep only what the physics requires: rolling contact instead of sliding contact, point-ish contacts on hard bearing surfaces instead of a sealed, caged, preloaded block, and no seals or retainers, nothing that adds drag without adding function at these loads. And because rail and slider are printed, every dimension is adjustable in CAD (groove angle, bolt spacing, running clearance), all of it in hours per iteration. The fit-tolerance discipline of measuring real clearances and designing to them came from §M4c's resin work and carried over to this machine's fits.
The idea itself arrived by subtraction. I asked what the rail fundamentally had to resist and got two answers: gravity, and the preload. Two forces, two angled V-grooves, one aimed at each. I sketched it before I modeled it, and once it existed on paper it just made sense [builder, 2026-08-06].
How much better is it? My recollection is that the new rail breaks away at roughly a one-degree tilt, which would be an enormous improvement, but that number lived in an unrecorded conversation and appears in no project file, so it is officially unverified. The re-measurement is specified (tilt test, five repeats, slider mass measured by water-displacement balance, F_break = m·g·sinθ) and has still not been done. The bench day it was booked for went to the motion diagnosis instead (§M11). Until it happens, "about 1°" is a memory, not a measurement, and this write-up treats the two differently on purpose. The rail also gets leveled until the slider shows no self-creep in either direction before any data run counts, because a rail with this little drag will follow any tilt the bench gives it.
Replication note. The rail body and slider carriage are FDM prints off the A1 mini, while the preload bracket prints in resin as part of the flexure body (§M5's ledger has the printer-by-part list) [builder, 2026-08-07, correcting an earlier draft line that called these SLA parts]. Add off-the-shelf bearing bolts and that's the whole bill. Model files ship with the release.
The preload screw as a measuring instrument
Stick-slip physics runs on N, the normal force pressing foot to track, and both inequalities above contain it. So N can't be "hand-tight." It has to be a number you can set, repeat, and sweep.
The mechanism is minimal, and all of it is printed into the flexure body that holds the stack. A circular seat holds a coil spring, and a screw bears on the spring's far end. Turn the screw inward and the spring compresses. The compressed spring pushes the flexure, and with it the stack, so the foot presses against the alumina track. Hooke's law does the bookkeeping, and design_notes §18 holds the actual numbers. The spring in service (≈Ø9.4 mm, from the parts assortment) measured k = 0.79 N/mm on the digital scale with calipers, and the screw advances 1.0 mm per turn. Run the arithmetic (0.79 N/mm × 1.0 mm ÷ 8) and you get 0.0988 N per ⅛-turn tick, which is exactly where the 0.099 N figure below comes from [design_notes §18]. The same section records why this is a spring at all. The leg is roughly 1 MN/m stiff, so a rigid position-set screw would turn 2 µm of print or assembly error into 2 N of preload error, one hundred percent of the working target. The rule is force-controlled preload, never position-controlled. One bench habit keeps the number honest. Always approach a setting from the tightening direction, because thread backlash makes the loosening direction read wrong [design_notes §18].
The number that turned this from a knob into an instrument is simple. One ⅛-turn tick of the screw changes N by 0.099 N (Measured, design_notes §18, calibrated 2026-07-10). Just as important is the zero. N = 0 is defined by a paper-strip touch-point procedure (the preload where a paper strip at the contact just stops sliding free), so every preload in this project is counted in ticks from a repeatable reference rather than from feel [project CLAUDE.md §2]. That's what makes §M12's planned speed-versus-N curve a curve at all. N = 0.2 → 2.5 N walked in 2-tick steps is only meaningful because a tick is a calibrated 0.099 N. It also named a condition the motor kept insisting on. Every travel this machine has produced, the provisional July run and the confirmed reversal pair in §M11 alike, happened with the foot barely touching, at or near N = 0. That is worth being able to name rather than guess at, and §M11 is candid that the July setting was not one I could put a number on at the time.
The flexure, version one
The part I call the flexure is doing three jobs. It holds the stack (a printed pocket and a clamping screw, no adhesive [builder, 2026-08-06]), it carries the preload hardware just described, and it ends in a printed foot that couples the stack's motion into the track. It's resin (§M4's printers), it's deliberately simple, and it is not yet a flexure in the textbook sense of an optimized compliant mechanism. Version one had one requirement, transmitting the stack's ~2 µm stroke faithfully enough to produce motion. It did (§M11), and I'm resisting the urge to pretend it was ever cleverer than that [builder, 2026-08-06; model files: flexure_leg_v1.scad / flexure_leg_v1.stl / flexure_leg_v1_sketch.svg].
The clever version was on paper when this chapter was written. A lever-amplification study (amplifier_leg_v2_report.md) worked through printed-lever geometries against resin's real stiffness and fatigue behavior and ended with a GO recommendation at an amplification of A ≈ 3.5, roughly three and a half times the stroke at the foot for the same stack. It came off the paper on 2026-08-11 and has been the hardware since, which is the postscript's story rather than this section's. Resin-specific optimization (compliance tuned to the material's modulus and creep, with §M4's tolerance data as design inputs) is exactly the "3D-printed SSPA" territory from §M1's gap statement. Phase 1's job was to earn the right to that work by making version one move.
The contact surfaces
Everything above sets up one tiny place, the contact patch between foot and track.
The track is an alumina plate, hard, flat, and cheap in small pieces. The committed sliding partner is a 2 mm silicon-nitride (Si₃N₄) ball seated in the foot, a bearing-grade ceramic pair chosen for wear behavior. Silicon carbide was considered and rejected because it abrades the alumina track. The goal is a contact that survives rather than one that machines its own groove [design_notes §16 via project CLAUDE.md §2].
Through the whole first-motion hunt, though, the ball stayed in the drawer. The foot was bare printed resin, dome tip on alumina, and that pairing existed for one reason. Resin galls within minutes of macroscopic sliding, which is precisely why the ball was bought, and I didn't want to spend the ball's pristine surface (or risk galling transfer) on the messy trial-and-error phase. At micrometer slip distances the resin foot seemed an acceptable stand-in. The August bench record says how that reasoning held up. A freshly printed dome moved the slider twice and then went dead within the same session, and neither flipping the alumina plate nor installing a factory-clean one brought it back [run log 2026-08-11]. Two plate changes with no effect point at the foot, and design_notes §16 had already named the mechanism. The ball went into its socket in mid-August and has been the contact since [run log 2026-08-20]. One leftover remains. The µ_s tilt-coupon test was written for the resin contact (three printed bumps standing in for three balls) and needs rewriting for the ball before it runs.
Budget
| Quantity | Status today |
|---|---|
| Preload resolution | 0.099 N per ⅛-turn tick, Measured (design_notes §18, 2026-07-10). Zero defined by paper-strip procedure |
| Rail v2 breakaway | "~1° tilt", recollection only, unverified. Re-measure still pending (tilt ×5, water-balance mass) |
| MGN12H breakaway (retired) | tilt ≈ twenty-something degrees, builder recollection 2026-08-06. §18 of design_notes prescribes the test but logs no angle |
| µ_s, foot-on-alumina | not yet measured. Tilt-coupon test was planned for resin bumps, needs rewriting for the ball |
| Contact pair | Si₃N₄ ball on alumina since mid-August 2026. Resin dome through the first half of August (worn out within sessions, run log 2026-08-11) |
| Flexure gain | 1× through 2026-08-10 (flexure_leg_v1). The A ≈ 3.5 lever (amplifier_leg_v2_report, GO) has been the hardware since 2026-08-11 (see the postscript) |
That table is the state of the mechanics. One calibrated number, four quantities I have not measured, and a plan for measuring each of them. A month ago I would have been embarrassed by it. §M10 is about why I no longer am, because it's the story of learning that in this regime, knowing which numbers you don't have is the difference between an experiment and a ritual.
Postscript (2026-08-20)
This chapter describes the July configuration, and August promptly renovated it. Three updates, kept here as a dated postscript rather than a rewrite. The A ≈ 3.5 lever left the paper and has been the hardware since August 11. The Si₃N₄ ball left the drawer and has been the contact since mid-August, after the resin dome proved to be a consumable exactly as §16's galling note predicted. And the section above about clamping the stack in a printed pocket gained a hard lesson. The stack seat must be rigid, and printed tolerance decides whether it is. The Korea-printed Sunlu flexure gripped the stack tightly and moved. But the gray reprints ran a looser fit, the stack wiggled in its seat, and the whole stroke died in that lash, a failure §M4's tolerance chapters describe in the abstract and this motor demonstrated in hardware. The original board's author, told of the symptoms, put it in one line. Printed parts are soft and absorb the stack's motion. The follow-up design work (rigid magnetic stack coupling, steel contact track) is §M11–M12's story.