CricketOne: the first stump
Owner decision, 31 Oct 2026: build one CricketOne stump first and order only its parts; the other five come after it works. This page is the order. It replaces the six-stump order in ORDER.md, which stays as a record.
Nothing has been bought. The carts are filled in the owner’s Chrome, and the owner checks out and pays.
Order 1: the chip and camera (placed 1 Nov 2026)
Placed by the owner on 1 Nov 2026, one of each:
- the OV9281 camera 2-pack and a 32 GB microSD, due Mon 2 Nov;
- one Raspberry Pi Zero 2 W, due Fri 6 Nov.
That is $147.98 before tax. The camera pack includes two 15 → 22-pin cables, so the separate ribbons were not needed. The headers wait for order 2, and any phone lead powers the Pi. The one Pi is used for programming now and then goes into the first stump.
Bring-up extras were also ordered on 1 Nov: a CanaKit 5 V 2.5 A supply, a Pi Zero heatsink and a microSD reader, $25.98 before tax. The owner already has a measuring tool.
The plan for the days they arrive: chip and camera bring-up (build/BRINGUP.md).
The cart as it was set up on 31 Oct is kept below for the record. The owner said: “I want to order chip and camera first and start programming, we can bring in more parts later”. So the order is split:
- order 1 is only what programming needs;
- order 2 is the rest of the stump, and waits for rev R (stump shell, bails and makers).
On 31 Oct these 6 lines were ticked (8 items, $278.33). On 1 Nov the owner had the other Amazon lines deleted, so order 2 must be added to the cart again from section 3 and section 7.
| Part | Qty | Price | Why |
|---|---|---|---|
| Raspberry Pi Zero 2 W | 2 | $85.00 each | One to program now, one for the stump. Every list-price shop was out of stock on 31 Oct 2026: Adafruit $19.05, PiShop $17.25, SparkFun $19.00. If one comes back before you pay, buy there and untick this line. |
| OV9281 global-shutter camera, 2-pack | 1 | $39.99 | The camera for the bench test B1 and the stump |
| 15 → 22-pin camera ribbons, 2-pack | 1 | $6.88 | The Pi Zero’s camera socket is 22-pin |
| SanDisk High Endurance 32 GB microSD | 2 | $22.99 each | One per Pi |
| Micro-USB leads, 5-pack | 1 | $7.49 | Power from any USB charger |
| 2.54 mm pin headers | 1 | $7.99 | Solder to the bench Pi to wire sensors later |
When it arrives, programming starts with:
- flashing Raspberry Pi OS Lite;
- the bench test B1 (120 fps at 1280 × 800 while encoding 720p);
- live video to a phone;
- 2D ball tracking.
The build guide’s software section has the install script.
1. What we are building
- One smart stump. It is the striker’s middle stump (computer name
stump-sm), because it has the most in it:- two bail grooves, with two Hall sensors;
- the full electronics;
- it is also the brain stump that makes the calls.
- Real size, rev Q. It stands 711.2 mm above the ground and is 38.1 mm across, with a solid 102 mm spike. Only the spike goes in the ground; the three cells sit above the grass.
- Its wall is a G-10 glass-epoxy tube (McMaster 6394A37), 0.73 times as stiff as an ash stump. It is a lab build: it is not wood, so it is not for sanctioned matches (Law 8.1). Production is bored English ash (row Q9).
- It stands between two plain ash stumps. Bails need a stump on each side, so we buy a set of ICC-size English ash stumps:
- two of them become the outer stumps of our test wicket;
- a third is the plain stump we compare ours against for weight, balance, how it flies when hit, and how it sounds;
- a spare is for practising the bore of the production ash stump.
- Two traditional ash bails (MCC Law 8.3), each drilled through both spigots for four small magnets.
- No umpire band. Calls show on the stump’s lights and tone, and in the CricketOne app on a phone.
2. What one stump can prove, and what it cannot
| Test | What it proves | One stump enough? |
|---|---|---|
| B1: camera bench test | The Pi Zero 2 W reaches 120 fps or more at 1280 × 800 with our camera, while it also encodes 720p video. This is the biggest open question (one user measured about 30 fps; Arducam claims 143). | Yes: it uses the spare Pi and camera, before the stump is built |
| Bail-off | Each Hall sensor sees the bail magnet leave its groove. Time it against a phone in 240 fps slow motion with bail_test.py (row R8). |
Yes |
| Call light and tone | Both light sticks and the piezo work through the G-10 light slots, and can be seen in sunlight. | Yes |
| Power and soak | The cells, fuse, charger (set to 3.6 V), boost and power monitor run the stump for 2 hours. soak.py logs the current, voltage, Pi temperature and throttle flags and judges them (row R8: about 2.9 W expected, est.). |
Yes |
| Tamper and security | Pulling the stack lifts the tamper switch; the secure element signs a test call. | Yes |
| Knock and drop | The motion sensor sees a knock; the stump comes through four falls (0.5 m onto a mat, falling over in turf, 0.5 m and 1.0 m onto turf) with the camera back, no reset, no tamper alarm and steady cells. drop_test.py judges each fall (row R9). Compare it with the plain ash stump. |
Yes |
| Weight and balance | It weighs about 1,012 g with its balance point at 295 mm, against about 515-609 g and 327 mm for ash (row Q14, est.). Weigh both, find their balance points on a knife edge, and compare with docs/DESIGN.md “### Q14”. | Yes |
| Live video to a phone | The app shows the stump’s live view over its Wi-Fi. | Yes |
| Ball in flight, 2D | The camera follows a thrown ball across its picture. | Yes, in 2D only |
| Ball in 3D, LBW, height and bounce | These need cameras at both ends of the pitch. | No: they wait for the other five stumps |
| Ball-cannon test T1 | Whether the stump survives a 40 m/s ball. t1_test.py runs the 93 hits and judges each one; a 240 fps phone film judges how fast it is thrown (row R10). |
Not yet: borrow or hire a bowling machine after the bench tests pass |
3. The parts, shop by shop
Order 2: not yet. Everything below except the six order-1 lines waits until programming is under way and rev R is settled. Section 7 lists what rev R changes on this list. Do not check out these carts yet.
The carts were rebuilt on 31 Oct 2026 from the six-stump carts:
- they are cut down to one stump with sensible spares;
- the umpire band’s parts are removed;
- the rev Q parts are added: the G-10 tube, the plain ash stumps, the drilling tools and the clear strip for the light slots.
Amazon (in the cart: 51 items, $861.49, free delivery)
Parts for the stump
| Part | Qty | Why |
|---|---|---|
| Raspberry Pi Zero 2 W (reseller, $85) | 2 | One in the stump, one with a header for the bench test B1 (and the spare) |
| OV9281 1 MP global-shutter camera, 2-pack | 1 | One in the stump, one for the bench. Its lens is 79° wide, against 70° in the design: about 2.9 pixels on the ball at 20 m instead of 3.3. B1 measures this. |
| 15 → 22-pin camera ribbons, 2-pack (GODIYMODULES) | 1 | The Pi Zero needs the 22-pin end |
| SanDisk High Endurance 32 GB microSD | 2 | One per Pi |
| TP5000 LiFePO4 charger board, 3-pack | 1 | One in the stump; spares. Set each one to 3.6 V and check it with a meter before any cell is connected. |
| ATM 3 A fuses (Bussmann ATM-3, 5) and inline fuse holders (3-pack) | 1 each | On the cell pack’s + wire |
| 74AHCT125 level shifters, 10-pack | 1 | 3.3 V to 5 V data for the call lights |
| 330 Ω resistors, 100 | 1 | On the light data line |
| SOT-23 adapter boards, 50 | 1 | For the Hall sensors |
| O-rings 28 × 1.5 mm NBR, 20 | 1 | Seal the cap and the base in the tube |
| ARCTIC TP-3 1 mm thermal pad | 1 | Between the Pi’s chip and the heat bar |
| Adhesive foam squares, 1/16 in | 1 | The 1.6 mm pad under the cap (no play in the stack) |
| M2 screw kit | 1 | Camera to its bracket |
| 2.54 mm pin headers | 1 | The bench Pi |
| FORTRESS Pro bails, English ash (pair) | 1 | The two drilled bails |
| FORTRESS County stumps, English ash, ICC senior 28 in (6 stumps + 4 bails) | 1 | Added in rev Q: the outer stumps, the plain reference stump, and spare bails |
| Clear polycarbonate sheet 12 × 12 × 1/8 in | 1 | Added in rev Q: the two 6 × 48 mm light-slot windows in the G-10 tube |
| USB-A to USB-C leads (5) and micro-USB leads (5) | 1 each | The stump’s charging lead, and power for the bench Pi |
Tools and supplies (about $336: remove any you already own). These are a Pinecil iron and its 65 W charger, solder, flux and wick, a multimeter, calipers, wire stripper, flush cutters, helping hands, a silicone mat, safety glasses and the mini saw with its mitre box. They also include a deburring tool, a pin vise with micro drills, the XTAR cell charger and a fire-safe battery bag. Epoxy, CA gel, VHB tape, zip ties, isopropyl alcohol, heat-shrink, 22 AWG wire and Dupont jumpers are in too, and so is the 6-port USB charger. Added in rev Q:
- a metric step-drill set, for the Ø10 camera hole and the Ø6 charging-lead hole in the G-10;
- needle files, for the cap-tab notch and the light slots;
- 3M 8210 N95 masks, because cutting glass-fibre makes fine dust.
You also need a power drill for the step drill. It is not in the cart.
Adafruit (in the cart: $83.00; shipping is calculated at checkout)
| Part | Qty |
|---|---|
| MiniBoost 5 V 1 A (4654) | 2 |
| LSM6DSOX motion sensor (4438) | 1 |
| INA219 power monitor (904) | 1 |
| NeoPixel Stick 8 (1426) | 3 (2 + 1 spare) |
| Piezo buzzer (160) | 2 |
| 26 AWG silicone wire, black, red, blue and green (2517, 2513, 2514, 2516) | 1 each |
| STEMMA QT cables, 50 mm (4399) and 200 mm (4401) | 3 and 2 |
| JST-PH 2-pin leads (261) | 3 |
| Kapton tape (3057) | 1 |
Batteryspace (in the cart: $75.92, ground shipping only)
- A123 ANR26650M1B LiFePO4 26650 with solder tabs (LFP-26650-A123-TB): 4 (3 in the stump + 1 spare).
DigiKey (cart still holds the six-stump amounts: change it before paying)
The page would not take quantity changes from the browser tool, so please set these yourself:
| Line | Now | Set to |
|---|---|---|
| Omron D2F-01 tamper switch (SW501-ND) | 15 | 3 |
| ATECC608 secure element (1528-4314-ND) | 4 | 2 |
| TI DRV5033AJQDBZRQ1 Hall sensor (296-47768-1-ND) | 15 | 4 |
| Omron B3FS-1000P keys (SW423CT-ND), for the band | 5 | delete |
That makes about $21 plus about $8.49 shipping. Choose USPS Ground Advantage ($4.99) if it is offered.
K&J Magnetics (in the cart: $5.76)
- D22-N52 magnets, 3 × 3 mm: 24. The two bails need 8; the rest are spares and test magnets (about $3 more than the minimum, left as is).
McMaster-Carr (log in, then type these into the order box)
| Part number | What | Qty |
|---|---|---|
| 6394A37 | G-10/FR4 tube, 1-1/2 in OD × 1-1/4 in ID (1/8 in wall), 42 in long: one 651 mm stump wall, plus an offcut for practice holes and the B1 wall coupons | 1 |
| 4634T44 | 6061 aluminium rod, 30 mm, shortest length: the 80 mm heat bar | 1 |
Both lines are in your McMaster order (31 Oct 2026): $193.06 before shipping and tax, delivering Monday. The G-10 tube is green, and may come up to 6 in longer than 42 in.
3D prints (Craftcloud: the upload there is rev Q and must be redone for rev R)
-
Rev R files (
build/cad/stl/, one stump). The rev Q upload in your Chrome is out of date; we re-upload these for order 2:Part PA12 Cap (middle), white 71.8 cm³ Base with spike (126 mm long) 75.8 cm³ Cell carrier (rev R: slimmer, with flanges and the pull-cord bar) 17.8 cm³ Middle carrier 13.4 cm³ Top carrier (rev R: Pi on four standoffs) 17.4 cm³ Block bails, blue: 3 (2 + 1 spare; replace the drilling collars) 3 × 9.7 cm³ PA12 total 225 cm³ Soft case: 3 split sleeves, TPU 95A, black (cells, middle, top) 20.8 + 16.3 + 19.7 = 56.8 cm³ -
To finish the quote:
- On Craftcloud, click Confirm & continue (USD, millimetres). That accepts Craftcloud’s terms, so it is your click.
- Choose SLS or MJF PA12, in white for the cap and base.
-
Estimate: about $90-150 plus $10-15 shipping (est., scaled from the 30 Oct quote of $437.64 for 1,342 cm³). Small orders pay each shop’s minimum, so check the cheapest US and China offers.
4. Cost
| Shop | Est. total |
|---|---|
| Amazon | $861.49 (about $525 without the tools) |
| Adafruit | $83.00 + shipping (about $10) |
| Batteryspace | $75.92 + ground shipping (about $25-35) |
| DigiKey | about $21 + $5-8.49 |
| K&J Magnetics | $5.76 + $6.50 |
| McMaster-Carr | $193.06 in the order (tube $160.94, rod $32.12) + shipping, billed after dispatch |
| Prints | about $100-165 (est.) |
| First stump | about $1,390-1,480 with tools, or about $1,050-1,140 if you have the tools (before tax) |
The two Pi Zero 2 W at the reseller price are $170 of this. At list price ($19.05) they would be $38, but every list-price shop was out of stock on 30 Oct 2026.
5. Owner steps to order
Order 1 (now):
- Open the Amazon cart.
- Check that only the 6 order-1 lines are ticked: 8 items, $278.33.
- Click Proceed to checkout, choose your 78717 address and pay.
- Paste the order number into the table at the end of this section.
Order 2 (later, after section 7’s changes):
- Amazon (cart):
- Remove any tool you already own.
- Check the 2 Pi Zero 2 W, the 1 camera 2-pack and the 1 stump set.
- Check out to Austin, 78717.
- Adafruit (cart): check the 13 lines ($83.00), then check out.
- Batteryspace (cart): check it shows 4 tabbed cells ($75.92), then check out with ground shipping.
- DigiKey (cart): set the quantities in the table in section 3, delete the B3FS line, then check out.
- K&J Magnetics (cart): check out with USPS ($6.50).
- McMaster-Carr (your order): both lines are in it ($193.06). Enter the delivery address and card, then click Place order.
- Craftcloud (craftcloud3d.com/en/upload):
- Click Confirm & continue.
- Choose SLS or MJF PA12 in white, and the cheapest shop you trust.
- Enter 78717 at checkout and pay.
- Paste each order number into the table below, so the lab runs can track deliveries.
| Shop | Order no. | Expected |
|---|---|---|
| Amazon | ||
| Adafruit | ||
| Batteryspace | ||
| DigiKey | ||
| K&J Magnetics | ||
| McMaster-Carr | ||
| Craftcloud |
6. Checked against every part of the design (rev Q)
| Element | In this order | Notes |
|---|---|---|
| Real stump size, nothing underground | G-10 tube 651 mm + printed cap and base with a solid 102 mm spike | The CAD checks 711.2 mm above the ground and 813 mm overall on every run |
| Wall and shock | G-10 tube; parts held solid; foam pad; thermal pad | Not polycarbonate (0.10 times as stiff as ash) |
| Bails, Law 8.3 | FORTRESS Pro ash pair + 8 N52 magnets + 2 printed drilling collars | Spare ash bails come in the stump set |
| Bail sensing | 2 DRV5033 Hall sensors on SOT-23 adapters (+2 spare) | Production moves to DRV5055 + ADS7142 (bail-off within 0.3 ms) |
| Computer and camera | Pi Zero 2 W + OV9281 + 22-pin ribbon + microSD | The production board is our own RV1126B board (row Q10) |
| Power | 3 A123 cells (+1), fuse, TP5000 at 3.6 V, INA219, MiniBoost | XTAR charger to balance the cells first |
| Calls shown | 2 NeoPixel sticks behind clear slots, piezo, 74AHCT125 | No band; the phone app shows each call |
| Security | ATECC608, D2F-01 tamper switch | Signs every call |
| Motion | LSM6DSOX | Knock and “stump hit” detection |
| Heat | 6061 heat bar + thermal pad, the bar’s round face on a TP-3 strip under Kapton, pressed on the bore through a window in the top sleeve (R16, drawn in R17) | As drawn the Pi would fail the 75 °C soak; with the bar to the bore about 54 °C at 25 °C air (sim/thermal-revr.mjs, est.) |
| Fit and keys | Printed keys, foam pad, O-rings | Checked in the CAD: turning any part 3° makes it hit its neighbour |
| Software | Install script, bring-up test, Raspberry Pi OS Lite | Build guide, section 6 |
| Testing it against a real stump | Plain ICC ash stumps | Weight, balance, flight and sound side by side |
Left out on purpose:
- the other five stumps, until this one passes;
- the Radxa ZERO 3W comparison board (only a reseller had it, at $69.99);
- a 1,000 fps reference camera (a phone’s 240 fps is enough for now);
- the charging case and sealed charge pads (P2);
- the ball cannon (borrow or hire one later).
7. Changes since the order
R151 how often a wet day has the sun out (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Simulation against climate records only: wet balls with the sun out are fewer than assumed and nearly all dew, so the bench starts with a misted ball (BRINGUP.md step 66). No cart change.
R150 a wet seam’s own lean (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Simulation only: water in the seam leans the ball too little to need its own correction; track2d.py gets a comment. No cart change.
R149 the film’s coat share from the wet highlight (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Simulation only: the wet ball’s highlight does not read the film’s coat share better than one figure, so WET_FULL stays 0.5; track2d.py gets a comment. No cart change.
R148 the day’s own wet fall (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Simulation only: the day’s own wet fall cannot be learned from the match, so WET_FALL stays one figure; track2d.py gets a comment. No cart change.
R147 how wet is the ball (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: track2d.py WetSize reads how wet the ball is from the shine window’s fall and sizes the wet correction. No cart change.
R146 a wet ball’s own lean (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: track2d.py gloss_term() adds a wet ball’s highlight on an over with a wet sign, and the told error carries 0.15 mm more. No cart change.
R145 a wet ball is not a new ball (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: track2d.py GlossCount ignores a duller ball before the new-ball time and asks the umpire about a wet one at it. No cart change.
R144 the new-ball term through match days (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: track2d.py GlossCount finds a new ball from the shine window and keeps the count for a replacement ball. No cart change.
R143 a shiny new ball and a real pink ball’s glow (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: track2d.py gloss_term() adds a new ball’s extra lean from its highlight. No cart change.
R142 the pink ball on a grey day (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: track2d.py part_needs() lets the orange camera lead the pink ball’s pitch looks under cloud. No cart change.
R141 one orange camera an end in the software (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: track2d.py tags the middle stump camera at each end as the orange one (CAM_BAND), with its own light limits and lean table. The first stump is the striker middle stump, and it keeps its camera module as bought. Nothing to add to the carts.
R140 the orange glass through dusk and match days (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- R139’s orange window disc is replaced: every stump keeps the clear window disc already on the list (chemically strengthened glass for stumps that take head hits, as before). In production, a 1 mm orange plate goes inside the middle stumps’ lens holders (sim/orange-r140.mjs). The first stump keeps its camera module as bought. Nothing to add to the carts.
R139 the red ball against a bright sky (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- The production window disc becomes orange glass (sim/sky-r139.mjs); the P1 stump keeps the clear Ø16 × 1.5 disc already on the list until BRINGUP.md 4d step 54 shows which filter the camera has. Nothing to add to the carts.
R138 the looks lost in the sun’s clip (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software and bench method only: window_exposure() in software/track2d.py (sim/clip-r138.mjs) halves one frame’s exposure where the ball’s window clipped; BRINGUP.md 4d step 53 uses a white board in full sun. Nothing to add to the carts.
R137 a low sun in front of a camera (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software and bench method only: in_sun_clip() and look_px() in software/track2d.py (sim/glare-r137.mjs); the head’s window and recess stay as they are (no hood fits inside the stump’s shape). BRINGUP.md 4d step 52 rolls balls with the sun in front of the camera. Nothing to add to the carts.
R136 the lean terms through whole match days (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Bench method and software only: ShineWindow and lean_k_ends() in software/track2d.py (sim/terms-r136.mjs); BRINGUP.md 4d step 51 adds two angles on the step 50 stand. Nothing to add to the carts.
R135 shrink the lean model’s own leftover (4 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Bench method and software only: lean_shape(), sun_c() and shine_term() in software/track2d.py (sim/model-r135.mjs); BRINGUP.md 4d step 50 reuses the step 45 stand and board and turns the stump on the lawn. Nothing to add to the carts.
R134 lower the clear-sky floor of the sun correction (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Bench method and software only: lean_k_fit(), stump_shadow_heading() and heading_fuse() in software/track2d.py (sim/floor-r134.mjs); BRINGUP.md 4d step 49 uses a board and the step 45 stand, plus a plain set of stumps on the lawn if one is to hand (no purchase). Nothing to add to the carts.
R133 the sun lean correction end to end on one match day (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: share_mean() in software/track2d.py averages the last 2 s of shadow reads (sim/day-r133.mjs), checked on an overcast bench day in BRINGUP.md 4d step 48 (no purchase). Nothing to add to the carts.
R132 keep the share between found shadows (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: share_hold() in software/track2d.py keeps the sun’s share between found shadows and moves it with the grass’s brightness (sim/hold-r132.mjs), checked on the bench lawn in BRINGUP.md 4d step 47 (no purchase). Nothing to add to the carts.
R131 find a shadow on the grass, finished (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the second shadow finder in sim/shadow-r131.mjs and software/track2d.py (ShadowFinder), checked on the bench lawn in BRINGUP.md 4d step 47 with a white top and a dark sweater (no purchase). Nothing to add to the carts.
R131 find a shadow on the grass, first version (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only, in simulation: a first shadow finder for the sun correction (docs/DESIGN.md “### R131”). Nothing to add to the carts.
R130 the sunny line, partial cloud and the pitch heading (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the sun correction now scales with how much sun gets through cloud, read from a shadow on the grass, and the app sets the pitch direction from a pitch outline on the phone’s map (docs/DESIGN.md “### R130”). Nothing to add to the carts.
R129 correct the lean toward the light (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the tracker takes out the shiny ball’s lean toward the sun from the clock, the place and the pitch’s heading (docs/DESIGN.md “### R129”). The bench step needs only a board to shade the ball.
R128 the ball’s highlight on the still step (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the bench noise step now swings the ball round on about 1.1 m of thread instead of holding it on a stand (docs/DESIGN.md “### R128”). A thread, a garden cane and two chairs are all it needs; nothing to add to the carts.
R127 measure the told centroid noise on the bench (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
b1_bench.py --stillmeasures the camera’s real centroid noise with the ball on a stand (docs/DESIGN.md “### R127”). A golf tee in modelling clay is all the stand needs; nothing to add to the carts.
R126 catch a fit told the wrong camera noise (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the bench reader gains a mark that catches camera noise the fit was not told, and drops one fragile mark (docs/DESIGN.md “### R126”). Nothing to change in the carts.
R125 bench pass marks for the B1 file (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the bench reader now gives a plain pass or fail with seven marks set from the simulation (docs/DESIGN.md “### R125”). Nothing to change in the carts.
R124 the B1 result file reads back (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the bench test writes one row per ball and a reader checks it on any computer (docs/DESIGN.md “### R124”). Nothing to change in the carts.
R123 the clutter margin on fresh balls (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: checked on 300 fresh simulated balls, the clutter reason now says the ball was on the edge and the clutter may have cost the call, and one broken estimate is floored (docs/DESIGN.md “### R123”). Nothing to change in the carts.
R122 did the clutter tip the call (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the stump now says “clutter hid frames” only when the clutter really cost the call, and otherwise gives the flight’s own reason (docs/DESIGN.md “### R122”). Nothing to change in the carts.
R121 say why a call is unsure (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: when the stump cannot make a sure call it now says why in plain words (for example “clutter hid frames” or “too few looks after the bounce”), on the umpire’s watch and in the app (docs/DESIGN.md “### R121”). Nothing to change in the carts.
R120 the last four cluttered balls (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Study only: the four cluttered balls that stayed unsure lost real frames to a sleeve or a second ball, and the stump rightly will not call them; no software change (docs/DESIGN.md “### R120”). Nothing to change in the carts.
R119 a guess that keeps the real looks (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the stump’s first rough guess of the flight now judges every camera look again each round, from loose to tight, so a sleeve or a second ball no longer makes it throw out real looks; more cluttered balls get a sure call (docs/DESIGN.md “### R119”). Nothing to change in the carts.
R118 win back sure calls under clutter (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: when a sleeve or a second ball makes the stump’s first guess throw out real looks with the false ones, the stump now puts back every look that sits on the fitted flight and fits once more, so more balls get a sure call (docs/DESIGN.md “### R118”). Nothing to change in the carts.
R117 a block of spoiled looks on one camera (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the stump now also checks how far its call would move if one camera’s looks over a twentieth of a second were left out together, so a sleeve or a second ball that spoils several looks at once makes the call honestly unsure (docs/DESIGN.md “### R117”). Nothing to change in the carts.
R116 a false look close to the ball (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the stump now widens its own error bar when one camera look has too much say in the call, so a false look sitting right next to the ball makes the call honestly unsure instead of wrongly sure (docs/DESIGN.md “### R116”). Nothing to change in the carts.
R115 a wrong look in the track (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the stump now throws out camera looks that are not the ball (a glint, a bird, a sleeve, a second ball) before it calls, so they cannot make a wrong call or cost most of the calls (docs/DESIGN.md “### R115”). Nothing to change in the carts.
R114 the first guess on the stump (3 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the stump now works out the fit’s starting point from its own camera looks, with the same calls on all 100 test balls and about 123 ms a ball for guess and fit on the Pi Zero 2 W (est.) (docs/DESIGN.md “### R114”). Nothing to change in the carts.
R113 the whole fit in the brain’s own code (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the whole ball-flight fit now runs in the tracker’s own Python around the C flight, with the same calls on all 100 test balls and about 70 ms a ball on the Pi Zero 2 W (est.) (docs/DESIGN.md “### R113”). Nothing to change in the carts.
R112 the flight step in compiled C (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the fit’s inner flight loop is now a small C file the Pi builds itself during set-up, giving the same calls about 86.1 times faster, about 61 ms a ball (est.), inside the 0.8 s budget (docs/DESIGN.md “### R112”). Nothing to change in the carts.
R111 the flight fit in the brain’s own code (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the ball-flight fit now flies all its trial paths together in numpy and gives exactly the same calls, but on the Pi Zero 2 W that is still about 5.2 s a ball (est.), so the next update moves its inner step into a small compiled C function (docs/DESIGN.md “### R111”). Nothing to change in the carts.
R110 the fit’s time on the brain (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the ball-flight fit takes a coarser 2 ms step and stops once a step gains almost nothing, so it does 7 times less work with no call moving more than 0.4 mm; on the Pi Zero 2 W the call should be ready in about 0.16 s a ball, 0.38 s at worst (est.), inside the 1 s it has (docs/DESIGN.md “### R110”,
sim/fittime-r110.mjs). One step added to BRINGUP.md 4d (step 28); it needs the boards already on order.
R109 the swing that changes in flight (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the tracker now follows a ball whose swing changes in flight, and its error estimate counts the small drift after the bounce, so a call’s error bar is honest (about 1 in 20 confident calls outside twice its estimate, as it should be) with no confident calls lost (docs/DESIGN.md “### R109”,
sim/swing-r109.mjs). One step added to BRINGUP.md 4d (step 27); it needs the two boards already on order.
R108 sure calls outside their own 2 sigma (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: each call’s error estimate now includes each camera’s small leftover tilt and clock error, so the few balls that one camera decides are called “unsure” instead of slightly over the 25 mm limit (docs/DESIGN.md “### R108”,
sim/sigma-r108.mjs). One step added to BRINGUP.md 4d (step 26); it needs the two boards already on order.
R107 a hole in the far track (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: when one small part of the far stump’s ball points (not the first or the last) is missing at the 0.1 s wait, the tracker now fits the parts that came and marks the hole in the ball message, instead of using its own end alone (docs/DESIGN.md “### R107”,
sim/hole-r107.mjs). One step added to BRINGUP.md 4d (step 25); it needs the two boards already on order.
R106 the ball points over the pair Wi-Fi (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: each stump sends its ball points to the other end in small parts while the ball is in the air, each part twice, with Wi-Fi power save off, and fits its own end alone if they are not all in 0.1 s after its own track (docs/DESIGN.md “### R106”,
sim/pairpoints-r106.mjs). One step added to BRINGUP.md 4d (step 24); it needs the two boards already on order.
R105 the far end’s roll over the pair link (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: each stump now sends its camera’s roll and its age to the other end in the pair beacon, unrolls its own ball points before sending them, and falls back to its own end’s points when the partner’s roll is missing or over 34 min old (docs/DESIGN.md “### R105”,
sim/pairroll-r105.mjs). One step added to BRINGUP.md 4d (step 23); it needs the two boards already on order.
R104 the tracker uses the roll (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the ball tracker now turns the ball’s points back by the camera’s roll from each re-aim, and a ball call is made unsure if the newest roll is over 34 min old (docs/DESIGN.md “### R104”,
sim/trackroll-r104.mjs). Without it, a sunny afternoon would put the sure calls about 36 mm off. One step added to BRINGUP.md 4d (step 22).
R103 the roll the re-aim cannot see (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the sun also tilts the camera sideways (a roll) that the far stump tops cannot show, and the far stumps themselves cannot read it, so each re-aim now reads the roll from the near popping crease on the ground (docs/DESIGN.md “### R103”,
sim/roll-r103.mjs). One step added to BRINGUP.md 4d (step 21); it needs only white tape and a green mat.
R102 how long a stored aim holds (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the sun bends the tube and turns the camera up to about 0.4° over a day, so the stump now re-aims every 60 s (every 10 s for 20 min after a cloud) and keeps an aim for 34 min after the last re-aim that saw the far tops, not 12 h (docs/DESIGN.md “### R102”,
sim/aimage-r102.mjs). One step added to BRINGUP.md 4d (step 20).
R101 a still crowd in poor light (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: longer looks on a later tap were tried and set nothing more, so the tap keeps its 30 frames; when a scorer’s taps are refused in front of a still crowd in poor light, the stump keeps the last aim stored that day, or says the ball calls stay unsure until an aim is set (docs/DESIGN.md “### R101”,
sim/stillcrowd-r101.mjs). One step added to BRINGUP.md 4d (step 19).
R100 the scorer’s second tap (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: a tap after a refused one, in front of a crowd, is stored only when two looks a second apart agree; after two refused taps the app says what to change; every crowd tap asks the scorer to confirm again (docs/DESIGN.md “### R100”,
sim/secondtap-r100.mjs).
R99 the taps still refused on our stumps in a crowd (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: when a tap in front of a crowd is refused, the stump waits a second for the crowd to move, looks once more and reads that look with the same agreement test, so fewer taps need a second try (docs/DESIGN.md “### R99”,
sim/retap-r99.mjs). One step added to BRINGUP.md 4d (step 17).
R98 one agreement test for every crowd cue (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: in a crowd, the tap reads the white heads and the blue tubes together across the tap and sets the far top only when they agree and no wicket fits a stump to the side, so deliberately wrong taps are refused (docs/DESIGN.md “### R98”,
sim/agree-r98.mjs). One step added to BRINGUP.md 4d (step 16).
R97 a mixed crowd behind the far wicket (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: in a crowd with both light and dark patches, the tap now reads the white heads and the blue tubes at several places across the tap and sets the far top only when they agree (docs/DESIGN.md “### R97”,
sim/mixedcrowd-r97.mjs). One step added to BRINGUP.md 4d (step 15).
R96 a light crowd or an umpire in white behind the far wicket (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: when white heads vanish on a light crowd or an umpire in white, the tap reads the far top from the edge where the white head meets the blue tube, a head-length under the top (docs/DESIGN.md “### R96”,
sim/lightcrowd-r96.mjs). Keep the head’s painted lower edge sharp and square on the first stump. One step added to BRINGUP.md 4d (step 14).
R95 tapping the far tops in the app (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: when the set-up cannot tell the far tops (a crowd and no sight-screen), the scorer taps the middle stump in the app twice (the second on a zoom), and the stump refines and checks the tap before storing the aim; with a crowd it shows the marks for the scorer to confirm (docs/DESIGN.md “### R95”,
sim/tap-r95.mjs). One step added to BRINGUP.md 4d (step 13).
R94 a crowd behind the far wicket with no sight-screen (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the set-up now checks that the three marks it found sit on three real stumps (their edges agree row by row) and that the background beside the wicket is not a busy crowd; otherwise it says “cannot tell” and the tops are tapped in the app (docs/DESIGN.md “### R94”,
sim/crowd-r94.mjs). One step added to BRINGUP.md 4d (step 12).
R93 the bail line’s floor in grey levels (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the set-up now judges the bails’ line against the picture’s own noise instead of a fixed brightness step, so plain wooden bails on a white sight-screen are still read in a picture held dark by a bright evening sky (docs/DESIGN.md “### R93”,
sim/bailfloor-r93.mjs). One step added to BRINGUP.md 4d (step 11).
R92 the set-up brightness against a bright sky (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the set-up now measures the brightness on the part of the picture where the far wicket can be and leaves out the sky, so a bright evening sky no longer keeps the picture too dark to find the far wicket (docs/DESIGN.md “### R92”,
sim/sky-r92.mjs). One step added to BRINGUP.md 4d (step 10).
R91 setting the aim in poor light (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
--set-aimnow brings the picture to its match brightness first (longer exposure, then gain), so the far wicket is found and re-aimed down to about 0.03 of daylight (was 0.1 as the set-up ran), and a knock during a long exposure still stores the right aim (docs/DESIGN.md “### R91”,sim/aim-r91.mjs). One step added to BRINGUP.md 4d (step 9).
R90 the red ball in poor light (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: as the light falls the camera now lengthens its exposure first (100 up to 800 µs) and raises its gain after, so a red ball is followed to about a twentieth of daylight (was a third), and each frame’s time is taken at the exposure’s middle (docs/DESIGN.md “### R90”,
sim/redball-r90.mjs). One step added to BRINGUP.md 4d (step 8).
R89 the light from the camera itself (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the camera’s gain now rises slowly as the light goes, and the stump measures the light on its own white far heads (docs/DESIGN.md “### R89”,
sim/light-r89.mjs). The red-ball light limit moves from 0.2x to 0.3x daylight (the real camera). One step added to BRINGUP.md 4d step 7; the B1 tests run with--no-gain-loop.
R88 when the light goes (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only: the stump measures the light every second and sends ball calls as unsure, reason “light”, when it is too dark to track the ball; the ball tracker’s threshold no longer lets noise pass as a ball under heavy cloud (docs/DESIGN.md “### R88”,
sim/light-r88.mjs). One dimmed-light step added to BRINGUP.md 4d step 7.
R87 our stumps on a black screen at dusk (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
clip_keeper.pyscales the white-top check with the light it measures, and the re-aim patch match now allows for the light fading (docs/DESIGN.md “### R87”,sim/bailline-r87.mjs). One black-card, dimmed-light step added to BRINGUP.md 4d step 7.
R86 a weak bail line in shade, at dusk and under floodlights (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
clip_keeper.py --set-aim autolooks again on more frames and with three agreeing looks when the bails’ line is weak (docs/DESIGN.md “### R86”,sim/bailline-r86.mjs). One dimmed-light step added to BRINGUP.md 4d step 7.
R85 tell the head’s edge from the top (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
clip_keeper.py --set-aim autouses the bails and the white heads to report the far stumps’ true tops on any sight-screen (docs/DESIGN.md “### R85”,sim/bailline-r85.mjs). One bench step added to BRINGUP.md 4d step 7.
R84 our heads on a white sight-screen (2 Nov 2026). No part, print or paint changes; order 1 and order 2 are unchanged.
- The heads stay white: a coloured head would warm the cap’s glue line, and a thin dark ring does not help the finder (docs/DESIGN.md “### R84”,
sim/heads-r84.mjs). One bench look added to BRINGUP.md 4d step 7.
R83 find the far stump tops by themselves (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
clip_keeper.py --set-aim autofinds the far wicket’s three tops, and BRINGUP.md 4d step 7 uses it (docs/DESIGN.md “### R83”,sim/stumptops-r83.mjs).
R82 the re-aim offset in the eyes (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
clip_keeper.pymeasures the camera’s aim shift from the far stump tops after a knock or a camera start and sends it to the cap check, and a bench step, BRINGUP.md 4d step 7 (docs/DESIGN.md “### R82”,sim/reaim-r82.mjs).
R81 the cap check joined to the match program (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- Software only:
stump.py,call_link.py(new POST /cap),track2d.py(ball height and speed at the stumps),clip_keeper.py(aim in the heartbeat), and a bench step, BRINGUP.md 4d step 6 (docs/DESIGN.md “### R81”,sim/stump-r13.mjspart F).
R80 can the stump tell a loose cap by itself (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- New program
software/capcheck.py(no hardware) and a bench step, BRINGUP.md 4d step 5 (docs/DESIGN.md “### R80”,sim/loosecap-r80.mjs).
R79 the screw lock re-checked (2 Nov 2026). No part or file changes; order 1 and order 2 are unchanged.
- The four M2 × 8 screws stay as they are (M2.5 was checked and left out: its larger countersink would sit 0.15 mm under the neck’s shoulder). BRINGUP.md 4b step 4 adds a thumb rock check on the cap before each match (docs/DESIGN.md “### R79”,
sim/heat-r66.mjs).
R78 the lock-screw holes (2 Nov 2026). Six files changed, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/collar.step/stl/collar.stlandhead-top.step/stl/head-top.stl(andcollar-side,collar-off,head-side-top,head-off-topwhen the outer stumps are ordered). The four M2 lock screws drop 0.6 mm to z 683.5, so their countersinks no longer run into the neck’s shoulder (docs/DESIGN.md “### R78”,sim/lockholes-r78.mjs). - Order note (CNC, add): “break the countersinks’ edge at the bore 0.2 mm; 0.4 mm radius in the key slot’s inside corners and on the neck’s shoulder”. No new parts.
R77 the vent hole off the back (2 Nov 2026). Three collar files changed again, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/collar.step/stl/collar.stl(andcollar-side,collar-offwhen the outer stumps are ordered). The vent hole, its flat and the vent now sit 40° round the collar from the back, toward the button side (the off collar is the mirror image), where a ball from the bowler bends the wall far less (docs/DESIGN.md “### R77”,sim/venthole-r77.mjs). - Order note (replaces R76’s “at the back of the bore”): “cut the vent flat 40° from the back toward the button side, with a Ø6.35 (1/4 in) keyseat cutter, 0.4 mm corner radius, in three passes, or by EDM; drill the Ø3 vent hole through the middle of that flat, tilted 15° down to the outside, and deburr both ends”. No new parts.
R76 the back wall behind the vent (2 Nov 2026). Three collar files changed again, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/collar.step/stl/collar.stl(andcollar-side,collar-offwhen the outer stumps are ordered). The vent flat now has the round ends a small cutter leaves (docs/DESIGN.md “### R76”,sim/backwall-r76.mjs). - Order note (replaces R75’s “one keyseat-cutter pass”): “cut the vent flat at the back of the bore with a Ø6.35 (1/4 in) keyseat cutter, 0.4 mm corner radius, in three passes, or by EDM; do not use a large Woodruff cutter, it cuts through the wall”. No new parts.
R75 the breather vent (2 Nov 2026). Three collar files changed, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/collar.step/stl/collar.stl(andcollar-side,collar-offwhen the outer stumps are ordered). The collar’s bore gets a flat 9.1 × 9.5 mm at the back for the vent (one keyseat-cutter pass from the open top), and the Ø3 vent hole now tilts 15° down to the outside (docs/DESIGN.md “### R75”,sim/vent-r75.mjs). In the order notes, say: “flat at the back of the bore is the vent’s seat, leave it smooth and unpainted inside”. - Add: Gore VE90308 adhesive ePTFE vent, 3.3 × 7.6 mm, sold as a pack of 50 (RS 283-6174, https://uk.rs-online.com/web/p/enclosure-ventilation/2836174, about $338 a pack, est.). Only needed before the soak and T5, not for B1; buy it with the rest of order 2 or after B1.
R74 rain in the bail groove (2 Nov 2026). Nothing changes in order 1 or order 2.
- No part or file changes. The Hall pockets are now potted with the cap’s DP8910NS (already on order 2 with its gun and nozzles, R65), not the LOCTITE 454 gel, and the same shot seals the four M2 lock screws; keep LOCTITE 454 on order 2 for the tack (docs/DESIGN.md “### R74”,
sim/rain-r74.mjs). Only the bench steps changed (BRINGUP.md 4b steps 4 and 7).
R73 the glue for the bail sensors (2 Nov 2026). Order 1 is unchanged; add one line to order 2 before paying.
- Add: LOCTITE 454 cyanoacrylate gel, 20 g (for example RS 514-616, https://uk.rs-online.com/web/p/glues/0514616, about $10-15, est.). One dot tacks each Hall sensor in its pocket before the cap is glued, and after the clamp the same gel pots the pocket over the solder joints (docs/DESIGN.md “### R73”,
sim/tack-r73.mjs). A gel, not a thin glue: a thin or light-cure glue runs into the wire hole. - No file or other part changes.
R72 the Hall wires stay loose (2 Nov 2026). Nothing changes in order 1 or order 2.
- Keep the 30 AWG silicone wire (Adafruit 2051) from R69: no small 3-core cable passes the Ø2.5 Hall hole and crimps into the GH plug (docs/DESIGN.md “### R72”,
sim/cable-r72.mjs). Only the bench steps changed (BRINGUP.md 4b).
R71 wider Hall holes (2 Nov 2026). Three cap files changed, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/head-top.step/stl/head-top.stl(andhead-side-top,head-off-topwhen the outer stumps are ordered). The two slanted Hall holes are now Ø2.5, not Ø2, so the print powder clears (docs/DESIGN.md “### R71”,sim/holes-r71.mjs). This replaces R70’s head-top files. In the order notes, ask the bureau to clear the Hall holes. - No parts change.
R70 slanted Hall holes (2 Nov 2026). Three cap files changed, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/head-top.step/stl/head-top.stlto the print bureau (andhead-side-top,head-off-topwhen the outer stumps are ordered). Each Hall hole now slants back about 26° from its pocket, so the wires leave the cap already behind the camera bracket’s plate and turn down gently (docs/DESIGN.md “### R70”,sim/wires-r70.mjs). The collar and bracket files are unchanged. - Wire length: cut each Hall wire 190 mm, not R69’s 170 (R69 counted from the cap’s ceiling, not from the Hall’s pocket). The 30 AWG wire R69 added is sold by length, so that line stays as it is.
R69 the Hall wires (2 Nov 2026). Order 1 is unchanged; add one line to order 2 before paying.
- Add: 30 AWG silicone wire, Adafruit 2051 (https://www.adafruit.com/product/2051), three colours (for example red, black and white), for the bail sensors’ wires. Three 26 AWG wires (OD 1.5 mm) do not pass the cap’s Ø2 Hall hole; three 30 AWG (OD 0.8 mm) do (docs/DESIGN.md “### R69”,
sim/wires-r69.mjs). - Keep the 26 AWG wire for the power wiring. No file changes.
R68 the pad and the gluing press on the longer plug (2 Nov 2026). Nothing to change in either order. The pad, the press cup and the clamp all still fit the R67 head; only the gluing steps change (glue on the plug, not in the bore: BRINGUP.md 4b).
R67 a longer cap plug for hot days (2 Nov 2026). Two files changed, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/head-top.step/stl/head-top.stl(the plug is now 11 mm, not 8) to the print bureau, andbracket.step/stl/bracket.stl(the crown top drops 3 mm, to z 677.5) to the CNC bureau or the bracket print. Old and new files do not fit together: an 8 mm plug leaves the pad loose, and an old crown stops an 11 mm plug 3 mm proud (docs/DESIGN.md “### R67”,sim/joint-r67.mjs). - No new parts. The collar file is the same as R66’s. The collar finish is white (R66 and R67: a blue collar drops the hot joint to ×0.89).
R66 the cap’s heat and a screw lock (2 Nov 2026). Two files changed, order 1 is unchanged; fix order 2 before paying.
- Re-upload:
build/cad-s/step/collar.step(four countersunk M2 holes at z 684.1; R78: now z 683.5) to the CNC bureau, andhead-top.step/stl/head-top.stl(four Ø1.6 tapping holes in the plug) to the print bureau. Older files have no lock holes (docs/DESIGN.md “### R66”,sim/heat-r66.mjs). - New, for order 2: a pack of M2 × 8 countersunk A2 stainless screws (ISO 7046-1 or DIN 965, four used) and an M2 tap with a 1.6 mm drill (about $15-25 together, est.).
- Ask the bureau: finish the collar white (paint or powder coat over the anodise) with the neck, bore lands and countersinks masked, or clear anodise; not blue. A blue collar runs the glue 21 K over the air in the sun, white 12 K.
R65 the adhesive for the cap bond (2 Nov 2026). No part in today’s carts changed, order 1 is unchanged; order 2’s bond-test kit is smaller.
- Order 2 bond test: 3M Scotch-Weld DP8910NS (first pick) and DP8010 Blue in 45-50 ml cartridges, one 50 ml 10:1 applicator gun and 10:1 mixing nozzles. DP620NS is dropped: it is 1:1 and would need a second gun, and its PA12 number is lower. Six coupons, not nine (docs/DESIGN.md “### R65”,
sim/bond-r65.mjs). - Ask the CNC bureau to mask the neck and bore lands from anodising if it can; otherwise the bench abrades them.
R64 a press cup for the cap clamp (2 Nov 2026). No bought part changed, order 1 is unchanged; order 2 gains one clamp.
- New, printed:
build/cad-s/press/stl/press-cup.stlandpress-foot.stl(PETG on the owner’s printer, 35 g and 20 g, no supports). They let a hand clamp seat the cap without touching the bail groove or the Hall pockets (docs/DESIGN.md “### R64”,sim/clamp-r64.mjs). - New, for order 2: one 6 in one-hand bar clamp (IRWIN QUICK-GRIP medium-duty 1964717 or similar, rated about 300 lb, about $10). Nothing in today’s carts changes.
R63 the squeezed pad (2 Nov 2026). The bracket file changed, order 1 is unchanged.
- Re-made:
step/bracket.step: the crown runs in to r 12.8 (was 13.8), so the whole squeezed silicone pad sits on flat metal (+0.57 g). If the 6061 bracket is quoted or ordered with order 2, send this file, not an older one (docs/DESIGN.md “### R63”,sim/pad-r63.mjs). - Pad cut: still OD 31.4, ID 27.6 with the compass cutter, now halved 3 mm behind the centre. Nothing new to buy; nothing in today’s carts changes.
R62 buyable silicone sheet and a clean half-ring pad (2 Nov 2026). No file changed, order 1 is unchanged; order 2 gains two small items.
- Order 2, silicone sheet: 50A silicone in 1.5, 2.0 and 2.5 mm (about 150 x 150 mm or the smallest sheet sold), only with the seller’s ASTM D2000 test report or batch certificate showing compression set B37 (22 h / 175 °C) of 25 % or less. Global O-Ring S50FDA (19.6 %) is the published example; the stocked sheets we found state 10 % or 30 % with no conditions, so ask before paying. 1/16 and 3/32 in alone will not do: the 2.0 mm sheet is needed (docs/DESIGN.md “### R62”,
sim/pad-r62.mjs). - New, for order 2: 0.1 mm and 0.2 mm PET or brass shim (a small sheet of each), to fill the gaps between the three sheets; and an OLFA CMP-1 compass circle cutter (about $11-15, e.g. https://www.talasonline.com/Olfa-Compass-Circle-Cutter-CMP-1) to cut the half ring at the drawn sizes. Hollow punches do not make this ring. Nothing in today’s carts changes.
R61 silicone pad or a wave spring (2 Nov 2026). No file changed, order 1 is unchanged.
- Order 2: keep the silicone 50A sheet (R59), but pick one whose datasheet gives compression set at 22 h / 175 °C of 25 % or less (ASTM D395 B). Even the worst published grade keeps 12-28 N on the camera bracket after a season (needs 3.2 N). A stainless wave spring is not needed: it would dent the printed cap plug and no catalogue part fits (docs/DESIGN.md “### R61”,
sim/pad-r61.mjs). Nothing in today’s carts changes.
R60 printed or aluminium camera bracket (2 Nov 2026). No file changed, order 1 is unchanged.
- Order 2: the 6061 camera bracket (
step/bracket.step) is needed before the bail-off test, not just for production. A PA12 print is only for B1 (or B1 runs with the camera on the bench and no bracket). A printed bracket’s feet flatten on the 0.5 mm collar lip under the silicone pad when warm, and it lets the camera tilt past the aim budget in a 4 g shake (docs/DESIGN.md “### R60”,sim/bracket-r60.mjs). Nothing in today’s carts changes.
R59 camera bracket pad (2 Nov 2026). The bracket file changed, order 1 is unchanged.
- Re-made:
step/bracket.step(the crown is 1.5 mm shorter, top at z 680.5). - New, for order 2: one sheet of silicone 50A, about 150 x 150 mm, in 1.5, 2.0 and 2.5 mm (or a pack of all three); a half-ring pad (OD 31.4, ID 27.6) is cut from it at assembly and sits on the bracket under the cap plug, so the camera cannot rock between re-aims (docs/DESIGN.md “### R59”; about $5-15 a sheet, est.). Nothing in today’s carts changes.
R58 turned collar with a drop-in camera bracket (2 Nov 2026). Maker files changed, order 1 is unchanged.
- Re-made:
collar.step,collar-side.step,collar-off.step(plain turned bore, a lip at z 647-649 and a key slot at the back; no corner pockets, no bracket inside) and the three caps’ files. New:step/bracket.step, the camera bracket as its own part (6061-T6, 3-axis, about 7.8 g, one part fits all three stumps; a PA12 print is enough for B1). - Order 2 line to add when the owner re-adds order 2: one camera bracket with the collar job (est. part of the collar’s $427-775 one-off, $94-204 each at 30, docs/DESIGN.md “### R58”). Nothing in today’s carts changes.
R57 collar making and cost (2 Nov 2026). No maker file changed: order 1 is unchanged. Keep holding the collar.
- Do not send
collar.stepfor a quote as it is. The two board-corner pockets inside the bore cannot be cut with standard tools, and the tilted camera bracket in the bore needs a 5-axis mill: about $850-1,710 for one collar (est., public price ranges,sim/collar-r57.mjs). - Order 2 cost line changes: the collar was “$40-90 a CNC job (est.)”; one collar is more like $430-775 (est.) even after R58 makes it a plain turned part with a drop-in bracket, falling to about $94-204 each at 30 off. Row R58 redraws it; the maker files follow.
- The board-corner pockets are only needed if the camera board measures wider than 24.03 mm on 2 Nov (BRINGUP.md section 2). docs/DESIGN.md “### R57”.
R56 aluminium camera section in the head (2 Nov 2026). Five maker files re-made, one new: order 1 is unchanged.
- Head = collar + cap + glass window. The 6061-T6 collar now runs up to z 690 and carries the window, the camera bracket and the board-corner pockets (
build/cad-s/step/collar.step, re-made; 112.1 g). The printed part is now a cap (dome, bail groove, Hall pockets, 8 mm plug):step/head-top.step, re-made (25.7 g). For later wickets,step/collar-side.stepis new (leg stump) andcollar-off.step,head-side-top.step,head-off-top.stepare re-made. - Window: chemically strengthened glass Ø16 × 1.5 over a straight Ø9 hole (×2.3 at 40 m/s). The printed resin disc stays fine for B1, bail-off, soak and drop.
- Before paying for order 2: the collar’s CNC job grows (longer part, two pockets cut behind the bore from the open top); ask for that in the quote, or wait for R57. Keep holding the collar and cap until lens-check prints PASS with the measured lens and board. docs/DESIGN.md “### R56”.
R55 a ball on the camera side of the head (2 Nov 2026). No file changed; order 1 is unchanged.
- Window disc: for any stump that will take head hits, order the Ø16 × 1.5 window in chemically strengthened glass, not the printed clear-resin disc (resin cracks on the first hard ball, ×0.19; glass ×1.54). The resin disc is fine for B1, bail-off, soak and drop.
- Head top and collar: keep holding both. Row R56 runs the aluminium collar up to z 690 so the window and the camera-board pockets are metal (a ball on the window would otherwise break the glue line and the printed skin, est.); the collar CNC job and the head-top print change with it. docs/DESIGN.md “### R55”.
R54 camera board numbers into the head (2 Nov 2026). Three files re-made: order 1 is unchanged.
build/cad-s/step/head-top.step(and head-side-top, head-off-top) are re-made: the two small pockets for the camera board’s corners are smaller, so the head’s wall outside them is 1.85 mm thick (was 0.95 mm). Same hold as R53: upload a head top only after lens-check prints PASS with the measured lens and board (fillboardWMm,boardHMm,boardDepthMm,cornerRMmin lens.json too). docs/DESIGN.md “### R54”.
R53 camera bracket set back (1 Nov 2026). One file changed: order 1 is unchanged.
build/cad-s/step/head-top.stepis re-made with the camera bracket, board pockets and lens seat 0.45 mm further back (drawn for the est. lens; the side and off tops too). Do not send any head top to the printer yet: after the 2 Nov calipers, fill lens.json and runnode lens-check.mjs(BRINGUP.md section 2). If it prints a FIX number, the head files are re-made with it; upload head-top.step only when it prints PASS. docs/DESIGN.md “### R53”.
R49 off-stump collar and bond test (1 Nov 2026). Two files changed: re-upload them before paying for order 2; order 1 is unchanged.
- Re-upload
build/cad-s/step/collar.stepto the CNC bureau: the core’s key notch moved from the side to the front (under the camera). Still one collar for the first stump (it is the middle stump). - Re-upload
build/cad-s/stl/sled-top.stlto the print bureau: its key moved to the front to match, so one core fits every stump. collar-off.stepis the mirror-image collar for an off stump (button at -x, tube drilled on the LEFT line). Not needed for the first stump.- Add to order 2 for the bond test (BRINGUP.md section 4b): 3M Scotch-Weld DP8910NS and DP8010 Blue in 50 ml cartridges (about $25-50 each, est.; R65 dropped DP620NS), one 50 ml 10:1 applicator gun (about $30-45, est.) and mixing nozzles (about $10, est.); one more 1-1/2 in × 12 in 6061-T6 rod for nine neck rings (about $20-30, est., https://www.mcmaster.com/products/aluminum-rods/); nine printed test caps. A 1/2 in torque wrench (20-150 N·m) and a strap wrench if you have none (about $40-70, est.). docs/DESIGN.md “### R49”.
R48 head collar and side button hole (1 Nov 2026). Two changes to fix in order 2 before paying; order 1 is unchanged.
- The tube’s one Ø6.5 hole moves from the back to the side: still 9.5 mm below the top, but on the right, a quarter turn from the front (
build/cad-s/step/tube.dxf, RIGHT line). Tell whoever drills it. The vinyl wrap’s Ø8 hole moves to the same place. - The head is now two parts. Do not print
head.stl(it is gone). Printbuild/cad-s/stl/head-top.stl(PA12, white) and get one collar machined frombuild/cad-s/step/collar.step(6061-T6, turn and mill, anodise; README in that folder). Add to order 2: one 6061-T6 round rod 1-1/2 in × 12 in (about $20-30, est., https://www.mcmaster.com/products/aluminum-rods/) and one CNC bureau job (about $40-90, est.), plus a two-part epoxy for the collar-to-top bond. The spare head becomes a spare head-top. docs/DESIGN.md “### R48”.
R47 head collar (1 Nov 2026). Keep holding the head prints (both kinds and the spare); nothing to buy yet. The metal sleeve R46 asked for does not fit: the spring-button pocket cuts through it and the O-ring groove would be left on 0.39 mm of plastic. The head’s own wall above the tube top is as weak as the spigot, so the fix is bigger than a sleeve: the lower head (spigot foot to 54 mm above the tube top) becomes one turned and milled 6061-T6 aluminium collar, with the printed top (camera bracket, window, bail groove, dome) bonded on it. Row R48 splits the head STL into the collar’s STEP and the printed top, and moves the button hole to the side of the tube (the back hole is now the weakest point), so the tube hole on tube.dxf also changes. Until R48: do not drill the tube and do not order the heads. Expected order 2 change after R48: one 6061-T6 rod 1-1/2 in × 12 in (about $20-30, est., https://www.mcmaster.com/products/aluminum-rods/) and a CNC bureau job for the collars (about $40-90 each, est.). Order 1 is unchanged (docs/DESIGN.md “### R47”).
R46 drop and ball test plan (1 Nov 2026). No part to add or remove yet, but hold the head print: add ONE spare head.stl to the Craftcloud cart and wait for row R47 before paying for the heads. The test plan found that a ball on the head would break the printed spigot that holds it on (from about 11 m/s, est.; an ash top survives 40 m/s by the same model). Row R47 decides whether the head gets a bonded 1-1/8 in metal tube sleeve in its spigot; if it does, the head STL changes and one short tube joins order 2. Both bench programs now take --rev s (docs/DESIGN.md “### R46”). Order 1 is unchanged.
R45 maker files (1 Nov 2026). No part to add or remove. Re-upload build/cad-s/stl/head.stl and head-side.stl: the sealed head’s key notch met the bore along a knife edge, now fixed. One change to the wrap. Rev S STEP and DXF files are in build/cad-s/step/ (the tube with its one hole, both heads, the base, the bail and the clear parts). Give tube.dxf to whoever drills the tube’s Ø6.5 hole. The vinyl wrap must have a Ø8 hole at the back, 9.55 mm below its top edge, over the button: wrapped over it, the head cannot be opened. Order 1 is unchanged.
R44 charging cradle (1 Nov 2026). The base print changed: re-upload build/cad-s/stl/base.stl (a 3.0 × 1.5 mm key groove at the back of its shoulder, so the stump only stands in the cradle the right way round). Order 2 adds: one pack of Adafruit P75-H2 crown pogo pins (10 pins, product 2429; a full cradle uses 12, the first stump’s socket 4), one Adafruit USB-C breakout, downstream (product 4090), and three 1.1 A radial PTC fuses (about $15-20 together, est.). Order 1 is unchanged. The cradle itself (build/cad-s/cradle/stl/cradle.stl, 240 × 160 × 109 mm) is a home print, not a Craftcloud print. Power it from a 5 V 3 A USB-C charger. docs/DESIGN.md “### R44”.
R43 (1 Nov 2026): the tube’s button hole is now Ø6.5, 9.5 mm below the top (was Ø6.4, 6 mm), and the button is the 3/16 in tall one. A hole 6 mm from the end could split the glass fibre in a hard pull. Tell the tube supplier the new hole. From the spring-button kit already in the cart, use the single-end button with a 1/4 in button, 3/16 in tall, for 1-1/4 in ID tube. Re-upload build/cad-s/stl/head.stl, sled-top.stl and case-top.stl (18 mm spigot, heat bar 3 mm lower). Keep a 5 mm hex key with the stump: it opens the head. Order 1 is unchanged.
R42 (1 Nov 2026): the clear window disc for the rev S head is now Ø16 × 1.5, not Ø18. The Ø18 disc stood 0.77 mm proud of the round head and sat on a 0.2 mm ledge; the new head (re-upload build/cad-s/stl/head.stl) holds a Ø16 disc flush on a 1.6 mm ledge. Order 1 is unchanged.
Rev S (1 Nov 2026) replaces the rev R shell for order 2. It is cheaper and needs no machining by us (DESIGN.md “## Rev S”):
- Tube: drop the McMaster G-10 tube ($160.94). Buy a plain glass-fibre tube 1-1/2 in OD × 1/8 in wall (Max-Gain pultruded), cut to 591 mm. It needs one Ø6.5 hole (letter-F drill) at the side, 9.5 mm below the top (R48: on the right, a quarter turn from the front), for the head’s spring button (R43): ask the supplier to drill it.
- Prints: re-upload the rev S set (
build/cad-s/stl/): head, base, three carriers, three sleeves, three bails. The rev R cap and drilling collars are not needed. - Add:
- a stainless V-spring tube button (6 mm);
- clear 1.5 mm polycarbonate: a Ø16 window disc (R42) and two 8.4 × 44 light strips;
- two nickel-plated charge pads and two spring pins;
- a JST-GH 6-pin lead;
- epoxy, to bond the base in;
- a printed vinyl wrap (
build/cad/wrap/cricketone-wrap.pdf, resized for 591 mm).
- Drop: the third A123 cell, the paint, the 2K clear coat, the M3 cap screw and its insert.
Carts filled for rev S on 1 Nov 2026 (the owner checks out; nothing is bought):
| Shop | What | Price |
|---|---|---|
| Max-Gain (mgs4u.com) | 2 × 1-1/2 in OD × 1/8 in wall pultruded tube, grey, 23.25 in stock length (590.6 mm, so no cutting; the CAD now uses it). One to build, one for the drop and ball test | $23.84 + shipping |
| Amazon | spring-button kit (7 sizes, to pick the one that fits); BSI-205 30-minute epoxy (bonds the base in); JST-GH 6-pin plug pairs (head to core); clear polycarbonate sheet 12 × 12 × 1/16 in (cut the window and two light strips from it with scissors, using build/cad-s/clear-parts-template.svg printed at 100 %) |
$45.86 |
| Craftcloud | rev S prints, all white or black: SLS PA12 from Unionfab (China, Nov 5-9): head, base, three carriers, three round bails, $136.46 with shipping, and import fees may apply. FDM TPU 95A from 3D For Me Studio (Kansas, Nov 5-10): three sleeves, $73.95. The clear window and strips were not printed: clear resin was a $77 minimum, so they come from the polycarbonate sheet | $210.41 |
Still open:
- The tube’s one Ø6.5 hole (letter-F drill), 9.5 mm below its top at the side (R43, R48: on the right, a quarter turn from the front; tube.dxf shows it). A hardware store or handyman does it in a minute; Max-Gain drills only on production runs.
- The charge pads and spring pins are now drawn with the charging cradle (R44, above). Until the cradle is printed, the first stump charges through the plug-in pack with the head off.
- The vinyl wrap is resized for 590.6 mm before it is printed, with a Ø8 hole over the button at the back, 9.55 mm below its top (R45).
Rev R’s notes below still describe the core, which rev S keeps.
A lab run that changes a part on this list writes it here first, so the cart can be fixed before paying.
R21 camera hole (1 Nov 2026). Two prints changed: re-upload build/cad/stl/case-top.stl and build/cad/stl/sled-top.stl before ordering prints. No change to order 1 or to the parts to buy in order 2: nothing to add or remove. Tilted 12° on its bracket, the camera board’s top corners reached through the TPU case, so case-top has a small window at each top corner and the camera bracket sits 0.4 mm further back. The tube’s camera hole stays Ø10 if Monday’s lens measures 7.5 mm or more above its board; if not, it is drilled out after the jig (Ø11 to Ø12.5, table in BRINGUP.md section 2), with nothing to buy.
R20 day one on a fresh Pi image (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. software/setup.sh now also installs cmake, build-essential and python3-dev, builds the secure-element library on its own (a failure only warns), and keeps ~/setup-log.txt, which day1.sh sends back. Pull the latest software before copying it to the Pi. docs/DESIGN.md “### R20”.
R19 heat bar end screws (1 Nov 2026). Order 2 changes: add 2 x M3 x 16 stainless (A2-70) socket cap screws (ISO 4762 / DIN 912) and an M3 hand tap with a 2.5 mm drill (about $8-12 together, est.). The top carrier print changed again: re-upload build/cad/stl/sled-top.stl before ordering prints. Order 1 is unchanged. The top carrier now has a printed bridge 0.2 mm past each end of the heat bar; a screw through each bridge into a thread tapped in each end of the bar holds it on its seats, so a ball on the front can no longer bounce it onto the small top seats (R18: about 35-41 MPa, now under 18 MPa, est.). Build guide section 6, step 2; docs/DESIGN.md “### R19”.
R18 heat bar hold (1 Nov 2026). The top carrier print changed: re-upload build/cad/stl/sled-top.stl before ordering prints (and case-top.stl from R17). No change to order 1 or to the parts to buy in order 2: nothing to add or remove. The top carrier now has cheeks at both ends of the heat bar and a small lug at each corner of each end; cut the bar to 80.0 mm (0 to -0.2). Row R19 may change sled-top once more (the top seats in a front hit), so the prints are best ordered after it.
R17 heat bar in the CAD (1 Nov 2026). The case-top print changed: re-upload build/cad/stl/case-top.stl before ordering prints. No change to order 1 or to the parts to buy in order 2: nothing to add or remove. The top sleeve now has a 16.6 x 81 mm window at the front (z 504.5-585.5) for the heat bar’s pad strip. The top carrier (sled-top.stl) is unchanged: the new bar sits on the same seats. The bar is cut from the same 30 mm rod (4634T44) with three flats (16 x 11.5 x 80, 37.2 g); the strip is cut from the same TP-3 sheet and covered with one layer of the Kapton tape already in order 2, so it slides in. Build guide section 6, step 2; docs/DESIGN.md “### R17”.
R16 heat (1 Nov 2026). No change to order 1 or to the parts to buy in order 2: nothing to add or remove. Two things are made differently, so wait for row R17’s new STL before ordering prints: the heat bar is cut 16 x 11.5 x 80 from the same 30 mm rod (4634T44) with its front face left round, and a 16 x 80 strip from the same ARCTIC TP-3 sheet is stuck on that face; the top sleeve (case-top) gets a 16 x 80 window at the front, z 505-585, so the strip touches the tube wall. As drawn before, the Pi would reach about 81 °C in the 2-hour soak in a 20 °C room and fail it. Owner choice: ordinary or IR-reflective blue paint (in the sun, ordinary blue keeps the cells under 55 °C only up to about 29 °C air). DESIGN.md “### R16”.
R15 lens calibration (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. software/setup.sh now also installs python3-opencv. Before B1.15, print the 13 x 9 chessboard of 30 mm squares on A3 at 100 %, glue it flat to foam board, put it on a stand 0.5-0.6 m from the camera and run python3 lens_cal.py --capture (software README step B1.0; docs/DESIGN.md “### R15”).
R14 day-one set-up (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. software/setup.sh now installs every library the programs import and turns on I2C and SPI; run python3 preflight.py after the reboot and before B1 (software README step 3). Name the Pi’s user pi in Raspberry Pi Imager.
R13 match program (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. The bench programs are joined for a match as three services (software/stump.py, software/systemd/): only clip_keeper.py opens the camera, and the bails and light run apart from it, so a camera fault never stops a bail-off call (docs/DESIGN.md “### R13”).
R12 signed calls and the phone link (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. The ATECC608 already in order 2 (I2C 0x60) now signs every call into a hash-chained log the phone checks (software/call_link.py); until it arrives the bench Pi signs with a key file and marks its calls “bench”. setup.sh installs python3-cryptography and cryptoauthlib. Finding: the Pi Zero 2 W cannot boot securely, so this stump is for tests, not matches (docs/DESIGN.md “### R12”).
R11 clip keeper (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. The stump now keeps a 10 s clip and a 120 fps review strip around every call (software/clip_keeper.py); setup.sh installs ffmpeg. The SanDisk High Endurance 32 GB card in order 1 stays: clip_keeper.py --sd-test checks it writes 18.6 MB/s or more on the Pi (docs/DESIGN.md “### R11”).
R10 ball-hit test T1 (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. T1 now has a program (software/t1_test.py, build/GUIDE.md step 11). Writing it found that guard.py would have missed every ball hit (a hit is about 1 ms, the Pi reads every 2.4 ms); it now uses the motion sensor’s own wake-up flag, which sees every one. The films need a strip of tape and the plain ash stump beside ours (docs/DESIGN.md “### R10”).
R9 knock and drop test (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, no print changes and no new wire. The knock and drop test now has a program (software/drop_test.py) and four steps with pass marks set before the build (build/GUIDE.md step 10). The motion sensor runs at 6.66 kHz and catches each landing itself, because the Pi’s own reads miss most 2-3 ms landings on turf. The flat drops onto turf (D3, D4) go past the cells’ rated shock, so they come last. DESIGN.md “### R9”.
R8 bail-off and soak programs (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove, and no print changes. The bail-off and soak tests now have programs (software/bail_test.py, software/soak.py) with pass marks set before the build; the bail timing uses a phone filming at 240 fps. The first stump draws about 2.9 W at full rate (est.), so the 2-hour soak uses about a quarter of the cells. DESIGN.md “### R8”.
Q15 Hall tamper and heat bar (1 Nov 2026). No change to order 1 or to the parts to buy in order 2. Three printed parts changed shape, so re-upload them before ordering prints: the base (a post for the Hall tamper switch), the cell carrier (a fork that holds the tamper magnet and keys the base) and the top carrier (seats for the heat bar). Run node build/cad/cricketone-p1-cad.mjs for the new STL files. The spare DRV5033 and one spare magnet are the tamper pair (as Q13 said); the Hall switch goes to GPIO 26. DESIGN.md “### Q15”.
Q14 mass and balance (1 Nov 2026). No change to order 1 or order 2: nothing to buy, add or remove. The first stump comes to about 1,012 g (1.73 times ash) with its balance point at 295 mm, and a ball throws it at about two thirds of an ash stump’s speed. Weigh it beside the ash stump. In T1, pass mark 5 now compares its thrown speed with the Q14 prediction instead of with ash (docs/DESIGN.md “### Q14”).
Q13 shock proof (31 Oct 2026). No change to order 1 or order 2: nothing to buy, add or remove. The build uses parts already in order 2: Kapton tape over both camera ribbon latches and the microSD card, and one spare DRV5033 Hall switch (3 of the 4 now used) with one spare 3 × 3 mm magnet (9 of the 24) as a solid-state tamper sensor beside the D2F. The heat bar must sit in its carrier slot, not on the Pi. Drop tests are on turf or a mat, never a hard floor. DESIGN.md “### Q13” has the T1 pass marks.
Q12 camera hole (31 Oct 2026). Order 1 is unchanged. Order 2: re-upload sled-top (the top carrier). Its camera bracket now holds the camera board further forward, so the lens reaches to 1.1 mm behind the wall. Before, the Ø10 camera hole in the G-10 tube cut about 89 % of the view’s edge (sim/b1-revq.mjs). The tube, its Ø10 hole at 616 mm, the drilling jig and the maker files stay the same. Measure the lens with calipers first (build/GUIDE.md, bench test B1 step 5): if it stands less than about 7 mm proud of the board, the hole grows instead (docs/DESIGN.md “### Q12”).
Rev R7 vinyl wrap (31 Oct 2026). No change to order 1 or order 2. The wrap (build/cad/wrap/cricketone-wrap.pdf) is an option to the paint and stripes; a sign shop prints and cuts it. The wrapped test stump is 38.40 mm, 0.3 mm over Law 8.2, which is fine for lab tests; production tubes will be 37.6 mm.
Rev R6 cap mould (31 Oct 2026). No change to order 1 or order 2: the first stump keeps its printed PA12 cap. The mould (build/cad/cap-mould.mjs) is for later stumps.
Rev R5 drilling jig (31 Oct 2026). Order 2 only, and only prints: add jig-top, jig-mid and jig-foot (191 cm³, PETG on the lab printer or PA12 at the bureau; build/PRINT.md) and 4 zip ties (4.8 mm, any). Nothing to buy changes; order 1 is unchanged.
Rev R (owner review, 31 Oct 2026). These change order 2:
- Bails are printed as blue block bails (3 in PA12), from the owner’s picture. The FORTRESS Pro ash bails are no longer needed: untick them. The stump set’s 4 ash bails are enough for spares and comparison. The 24 K&J magnets are still needed.
- Soft case: 3 TPU 95A sleeves are added to the prints (56.8 cm³). The carriers are re-cut, so re-upload all print files.
- Pull cord: add 2 mm Kevlar cord, about 1 m (Amazon, about $8, est.).
- Cap screw: add M3 brass heat-set inserts and M3 × 6 countersunk stainless screws (one kit each, Amazon, about $10-15 together, est.). Use your soldering iron to set the insert.
- Battery connector: the cell carrier now unplugs from the middle carrier. Use the JST-PH 2-pin leads already in the Adafruit cart, or an XT30 pair.
- Look: add blue spray paint, cyan printed vinyl stripes and a 2K clear coat (stump shell, bails and makers). About $40-60 (est.).
- Stump wall:
- keep the McMaster G-10 tube for the first stump;
- also get one pultruded fibreglass tube of the same size from Max-Gain (about $6-53 depending on length), so row R3 can drop-test both before production.
- The McMaster order is not placed yet: leave it until order 2.
8. After the parts arrive
Follow the build guide:
- Day 1: the incoming check.
- Days 2-3: bench test B1.
- Then build the one stump:
- cut and open the G-10 tube (step drill, files, dust mask);
- the cap, the base and the three carriers;
- test the stack before closing it;
- stack and close;
- a 2-hour soak.
- Day 8: the bails.
- Write each result into DESIGN.md. If the stump passes, order the other five, with any fixes this one taught us.
9. Parts audit (3 Nov 2026)
After the Radxa camera short, every pair of parts that connect was checked against the maker’s own documents and a known-issues search. Rule from now on: no part goes in a cart until its pairs are checked here.
| # | Pair | Verdict | Fix |
|---|---|---|---|
| 1 | Pi Zero 2 W ↔ pack 15 → 22 cable ↔ OV9281 | OK, with care | dtoverlay=ov9281 and camera_auto_detect=0 (Arducam); Pi Zero contacts face the board. The camera listing names no maker, so check the cable is same-side and meter 3V3 to GND on the camera before power. Real fps on the Zero 2 W is bench test B1. |
| 2 | Camera in the CAD | Mismatch | The CAD draws an Arducam B0411 (25 × 24); the pack’s camera is unbranded. Measure it (board, lens Ø, lens reach) before the head is printed. |
| 3 | Radxa ZERO 3W ↔ camera | Wrong | See BRINGUP 3b: bottom-contact socket on our board, no OV9281 overlay. Bench only. |
| 4 | Radxa power | OK | USB-C 1 (OTG), 5 V 2 A or more; the CanaKit 3.5 A is fine (Radxa). Never power it from the USB 3 port. |
| 5 | Heatsinks | Wrong (5519A) | The 5519A that came is a finned copper block, not the 55 × 19 × 2 plate sellers list: measure it. The Geekworm C296 is 64 × 29 × 10, bench only. |
| 6 | Pi 5 V on GPIO pins 2/4 | Risk | Allowed, but it skips the Pi’s own fuse and protection. Never plug USB in while the boost feeds the pins; keep the 3 A fuse. |
| 7 | Pololu U3V40F5 | OK | 1.3-5 V in (2.7 V to start), about 2.3 A out at 3.2 V (est.), no reverse protection. Its board is 15.2 × 15.2 × 5.6 mm, not 15.2 × 17.8 as the CAD has it. Add reverse-polarity protection. |
| 8 | TP5000 | Risk | Comes set to 4.2 V, and sources disagree on which way the pad goes for 3.6 V. Meter 3.6 V with no cell on every board; keep it at 1 A. |
| 9 | A123 26650 pack | Wrong: no protection | The cells are unprotected and the boost runs down to 0.8 V, so nothing stops over-discharge. Add a 1S LiFePO4 protection board (about 2.5 V cutoff). Balance both cells on the XTAR before paralleling. Section 7 says 3 cells (+1); the rev S CAD has 2: settle it. |
| 10 | INA219 | Risk | ±3.2 A. Fine for the cells’ current if the load is 1-1.5 A; check the real Pi draw on the bench before trusting the 2.5 A figure. |
| 11 | Micro-Fit and JST-GH | Risk | Micro-Fit 43645 and 43640 mate but need 43030/43031 terminals and a crimp tool: buy pre-crimped pigtail pairs instead. Amazon wire-to-wire “GH” pairs are clones at 28 AWG: buy both halves from one seller and test the latch. |
| 12 | Hall sensor, secure element, motion sensor, lights | OK | DRV5033 is open-drain: add a 10 kΩ pull-up to 3.3 V (or the Pi’s internal one). 74AHCT125 on 5 V is the right level shift for the NeoPixels. |
| 13 | Max-Gain tube | OK | 1-1/2 in OD, 1-1/4 in ID; measure the ID on arrival. |
| 14 | O-ring 28 × 1.5 | OK | About 20 % squeeze in the CAD gland; ±0.25 mm of tube ID moves it about ±8 %. |