AthleticsOne board: request for quote
From: IEMI Labs, [email protected] · Date: 4 November 2026 · Reference: IEMI-AO-FP-A
We are asking for a turnkey quote: finish the design of our finish-post board (and the small starter-unit board), make it, assemble it, test it, and deliver boards that are ready to run. When a board arrives, we power it from its battery, put in our microSD card, and it starts our software. We do no setup, soldering or configuration.
All files are in the design pack (zip). The board, part by part: iemilabs.com/build/athleticsone-boards.
1. The board
One rigid-flex board up each finish post: a base section in the steel base box (charger, protection, gauge, boost, tamper), a cell flex to the four cells, a riser into the post, the brain (RV1126B pressed on the track-face wall), a radio section behind the radio window (ESP32-S3, Wi-Fi/BT, and on the home post LTE-M, lightning and NFC), the camera head and a top section with the black-top temperature chips. Both posts carry the same board; the away post leaves the home-only parts unfitted. The starter unit is a separate small ESP32-S3 board with a mic, a flash diode and a charger.
The outline, sections and placement of all 68 parts are fixed (KiCad 10 file, design rule check: 0 violations), each checked against our mechanical CAD. Please keep the outline and part positions, and tell us if anything must move.
2. Parts
| Ref | Part | Where |
|---|---|---|
| U30 | TI BQ24074 1-cell Li-ion charger, 1.5 A, power path, VQFN-16 | base |
| U31 | 1-cell Li-ion protector (TI BQ2970 class) + dual FET | base |
| U32 | Battery gauge, coulomb counting (MAX17260 class) | base |
| U33 | Charge input: 20 V TVS, reverse protection, fuse | base |
| U34 | TI TPS61023 boost, cells to 5 V (lamp LEDs, sounder) + inductor | base |
| U35 | Load switch: the V1 core is on only while a race is armed (S1 controls it) | base |
| J1 | M8 3-pin A-coded female PCB socket, rear mount through the base end wall (screw-locked charge lead) | base |
| J4 | Two sealed brass feedthrough pins through the base top to the dock pads (charge + / −) | base (home only) |
| RS1 | Current-sense resistor for the gauge, 2512 | base |
| SW1 | Omron D2F-01 tamper switch, pressed by a boss on the bolted base floor plate | base |
| TP2 | Factory pads: cell voltage, charge current, gauge I2C | base |
| BT1 | Nickel-strip pad, cell pack + (4 × Samsung INR18650-35E in parallel) | celltab |
| BT2 | Nickel-strip pad, cell pack −, with the pack thermistor beside it | celltab |
| U1 | Rockchip RV1126B-P, FCCSP-409, 0.65 mm pitch; thermal pad to the track-face wall | brain |
| U2 | LPDDR4X 8 Gbit ×32 (1 GB), 200-ball FBGA | brain |
| U3 | Multi-rail regulators for the RV1126B (core, NPU, logic, DDR, 1.8/3.3 V) + inductors | brain |
| U4 | Buck-boost 2.7–4.2 V cells to 3.3 V (TPS63020 class) + inductor | brain |
| U7 | ST LSM6DSOX motion sensor | brain |
| C1 | RV1126B decoupling field (under the chip) | brain |
| U10 | eMMC 5.1 8 GB industrial, 153-ball FBGA; shipped empty (the processor tries the eMMC before the card, so an image here would win): our loader on the card is set to read the card first | brain |
| J2 | microSD socket with a hinged, latched lid (Amphenol 101-00660 class), fitted on every board: our software starts from the card | brain |
| U90 | microSD card power switch (TPS22917-class load switch, 3.3 V, driven by the card power-enable pin) with a 10 kΩ discharge resistor: a stuck card can be power-cycled | brain |
| U91 | microSD ESD and filter array, 6 lines (TPD6F003-class), with 22 Ω series resistors on CLK, CMD and D0–D3 and the card-detect line | brain |
| TP1 | Factory pads: USB 2.0 (writing software), debug serial, boot, rails, current sense | brain |
| Y1 | 24 MHz MEMS oscillator (SiTime SiT8008 class, rated to 50,000 g; a quartz crystal is not rated for the shock) | brain |
| Y2 | 32.768 kHz MEMS oscillator for the clock (SiTime SiT1533 class, shock-rated) | brain |
| U8 | Microchip ATECC608B security chip, UDFN-8 | brain |
| U9 | ID EEPROM 2 kbit | brain |
| U5 | AMPAK AP6256 Wi-Fi 5 + Bluetooth 5 module (certified); the post-to-post link | brain |
| U11 | Wi-Fi 37.4 MHz MEMS oscillator (SiTime SiT8008 class, shock-rated; the AP6256 runs from 37.4 MHz, not 26 MHz), 32 kHz from the processor and RF match | brain |
| U40 | Espressif ESP32-S3-WROOM-1-N8R8 (certified): heat band, lightning clock, taps, gun wake, starter-unit link | mid |
| U41 | Quectel BG95-M3 LTE-M / NB-IoT modem, LCC (alerts to the trainer’s phone off-site) | mid (home only) |
| U42 | MFF2 eSIM, soldered (no SIM socket) | mid (home only) |
| U43 | ScioSense AS3935 lightning sensor IC, MLPQ-16 | mid (home only) |
| L1 | Coilcraft MA5532-AE 500 kHz lightning antenna (the AS3935 reference part) | mid (home only) |
| U44 | NXP PN5321A3HN NFC reader, HVQFN-40 | mid (home only) |
| U45 | NFC antenna matching network (EMC filter + caps) | mid (home only) |
| FER1 | Ferrite sheet 40 × 40 × 0.3 between the loop and the aluminium track face | mid (home only) |
| LS1 | Magnetic sounder 12 × 12 SMD under the tone holes | mid |
| Q1 | Sounder driver FET | mid |
| U46 | Level shifter for the call-lamp LED data line | mid |
| TP3 | Factory pads: ESP32-S3 USB, boot, enable | mid |
| MK1 | Infineon IM69D130 digital MEMS mic, bottom port over the start-side port (PTFE membrane) | mictab (home only) |
| LH1 | M8 × 0.35 lens holder with a 2.8 mm lens (about 66° × 44° on the OV9281, est.) | head |
| U20 | OmniVision OV9281 global-shutter camera chip, 1280 × 800 at 120 fps | head |
| U21 | Camera LDO 2.8 V (analog) | head |
| U22 | Camera LDO 1.8 V | head |
| U23 | Camera LDO 1.2 V | head |
| Y20 | 24 MHz MEMS oscillator for the camera (SiT8008 class, shock-rated) | head |
| U50 | Analog Devices MAX31865 RTD reader, TQFN-20 (black-top temperature) | top (home only) |
| PT1 | Solder pads for the PT1000 element bonded inside the black-anodised top | top (home only) |
| U52 | Sensirion SHT45 humidity and temperature chip, DFN 1.5 × 1.5, behind the vent | top (home only) |
| U60 | Espressif ESP32-S3-MINI-1-N8 (certified): hears the gun, sees the flash, sends the start to the home post | starter |
| MK2 | Infineon IM69D130 digital MEMS mic under the shell’s mic port (printed sound tube) | starter |
| D20 | Vishay BPW34 photodiode under the flash window (printed light pipe) | starter |
| U61 | Microchip MCP73831 LiPo charger, SOT-23-5 | starter |
| BT3 | Pads for the leads of a 500 mAh LiPo protected cell (its own protector board: over-charge, over-discharge, short) | starter |
| SW3 | Tactile switch under the printed button | starter |
| D21 | Status LED under the button ring | starter |
| J5 | Two spring pins through the shell floor onto the post’s dock pins | starter |
| D1 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
| D2 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
| D3 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
| D4 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
| D5 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
| D6 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
| D7 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
| D8 | RGB LED with driver, 5050 (WS2812B class), behind the opal lamp slot | mid |
Each part’s size, side and position is in athleticsone-board-parts.csv in the pack. Ask before you substitute a part.
3. Scope of work
- Schematic from Rockchip’s RV1126B reference design and Espressif’s ESP32-S3 hardware design guide and our block list. We review it before layout.
- Layout in our outline and placement: the RV1126B memory and power routing, impedance-controlled MIPI and USB, and RF for every antenna keep-out. Lay the fast lines on a solid ground plane (inner layer 1, supply on inner layer 2; on a 2-layer section the whole bottom is ground under the module), with one via beside each ground and supply pad and no vias in pads unless you quote filled and capped vias (IPC-4761 type VII); no copper or vias in the antenna keep-out on any layer, none under the card socket; route the impedance lines first (camera MIPI pairs 100 Ω differential, USB 90 Ω, antenna 50 Ω) and add an impedance test coupon. Include the stack-up proposal and DFM, and a rigid-flex drawing (bend lines, stiffeners, coverlay).
- Fabrication of the rigid-flex board.
- Sourcing of all parts.
- Assembly, both sides, with X-ray inspection of the ball-grid parts. Underfill under U1, U2, U10, U5, and flexible-termination capacitors near the board edges (the product takes shocks of about 1000 g). Conformal coating (IPC-CC-830), with the sensors, sockets, connectors and antennas masked.
- Board support package: U-Boot and a Linux device tree for this layout from Rockchip’s RV1126B SDK, with a real-time (PREEMPT_RT) kernel and the cameras’ frame-sync inputs. A Rockchip SDK image must start from the microSD card. Camera drivers: finish camera OV9281 at 1280 × 800, 100 fps. Flash our ESP32-S3 image (we send it). We add our own software on top.
- Test of every board to the acceptance list in §5, with a test report per serial number.
- Deliverables: KiCad (or Altium) source, Gerbers, drill, pick-and-place, BOM, stack-up, test procedure and reports, and the BSP source.
4. “Ready to run” on delivery
This is the most important part of the job:
- Every board arrives assembled, programmed and tested.
- We put our microSD card in (J2, a hinged, latched socket) and power it, and it starts. No soldering, no jumpers, no settings, no flashing.
- The ID EEPROM is written with the serial number and board revision.
- The security chip is provisioned per the steps we will send.
Please quote both battery options:
- A: cells fitted. 4 × Samsung INR18650-35E soldered to the pack pads, protection checked, charged to storage level, and shipped as cells in equipment (UN3481). Please tell us your rules for this.
- B: cells not fitted. A short, polarised battery lead and plug on the pack pads, plus one charged pack per board. Nothing else to do on our side.
5. Acceptance tests (each board, with report)
- Current-limited first power-on: no short, idle current within the agreed limit.
- Rails: every power rail within ±3 %.
- Boot: starts the Rockchip SDK image from the microSD card to a shell over the debug UART; the eMMC is detected and can be written.
- Finish camera: OV9281 streams 1280 × 800 at 100 fps with no lost frames over 10 minutes, and a frame of a test chart is saved; the frame-sync input triggers frames.
- Radios: U5 (AMPAK AP6256 Wi-Fi 5 + Bluetooth 5 module); U11 (Wi-Fi 37.4 MHz MEMS oscillator); U40 (Espressif ESP32-S3-WROOM-1-N8R8); U41 (Quectel BG95-M3 LTE-M / NB-IoT modem); U44 (NXP PN5321A3HN NFC reader); U60 (Espressif ESP32-S3-MINI-1-N8): each joins or answers a test station.
- Sensors and outputs, each read or driven in turn: SW1 (Omron D2F-01 tamper switch), U7 (ST LSM6DSOX motion sensor), U91 (microSD ESD and filter array), U43 (ScioSense AS3935 lightning sensor IC), LS1 (Magnetic sounder 12 × 12 SMD under the tone holes), MK1 (Infineon IM69D130 digital MEMS mic), U50 (Analog Devices MAX31865 RTD reader), U52 (Sensirion SHT45 humidity and temperature chip), MK2 (Infineon IM69D130 digital MEMS mic under the shell’s mic port), D20 (Vishay BPW34 photodiode under the flash window), U61 (Microchip MCP73831 LiPo charger), SW3 (Tactile switch under the printed button), D21 (Status LED under the button ring), D1–D8 (RGB LED with driver).
- Battery: charges from the charge input at the set voltage; protection cuts off at low voltage and on a short; the gauge reads charge; the thermistor reads.
- Power: the draw in each state of our day (race armed about 2.6 W, between heats about 0.25 W), so we can check our design review: at least 10 hours, cells aged and cold.
- Heat: the RV1126B temperature after 1 hour at full load in a 35 °C room, against our estimate.
6. Quantities and timing
| Item | Quantity |
|---|---|
| Rev A boards | 2 and 6: please quote both |
| Budget prices | for 100 and 1,000 boards |
| Quote wanted | within two weeks of this request |
| Boards wanted | please give your lead times for design, fabrication and assembly |
7. Our design review
Before we order, every board-level number is checked against its target: 18 pass, 5 fixed by the review, 6 to prove on rev A, 0 fail. The full review is on the board page and in the pack. Rev A must let us measure:
- AI engine time per frame
- Ball-grid chips
- Card grade
- Wi-Fi between the two posts
- Fast lines on a solid ground plane
- The two posts agree on time
8. The design pack
Download the design pack (zip): this request, the KiCad 10 board, a 3D model (STEP), side A and side B drawings (PDF), the parts list, placement, the board outline and drawing layers as Gerbers, and the design review.
Questions: [email protected]