Skip to content
IEMI Labs
FootballOne

Our own circuit boards, in the goal posts and crossbar

One board we design for every post of the smart goal, and one for each crossbar, with every chip soldered on them. The post board is a spine standing up the inside of the 120 × 100 aluminium post, the same board in all four posts: the RV1126B brain, a pitch camera head tilted down at the area, a global-shutter goal-line camera head folded to the inside face, four cells, the call lights and the security chip. The crossbar board carries an ESP32-S3 module that reaches the referee’s wrist unit. No bought computer boards, plugs, ribbons or adapters inside, only latched leads through the crossbar and a capped charge socket.

Stage 1 of 6 done: shape and placementNot yet ready to manufactureUpdated 4 November 2026 · rev A-0

The board in 3D

Every part at its real size, in its real place. Turn it, zoom in, switch between the boards in the goal post and laid flat, and click any part to see what it is. The chip bodies are simple blocks until each part's own 3D model is added.

Loading the 3D board…

Drag to turn · scroll to zoom · right-drag to move · click a partDrag to turn · tap a part

Where everything is in the goal

Goal-line cameraeach post, 2,000 mm

An OmniVision OV9281 global-shutter camera chip at 120 frames a second on a small head folded to the post’s inside face, 10° down, its lens just inside a Ø12 window: the ball on the line from the middle to the far post and up to the crossbar, and the goal line 16.5 m beyond. A 120 km/h shot is frozen to 16.5 mm.

Pitch cameraeach post, 2,340 mm

A Sony IMX415 8 MP camera chip on a head tilted 15° down behind a Ø20 window: the goal area, the penalty mark and the area line, for the keeper calls, encroachment and the goal-kick countdown.

Brain, radio and securitypost spine

The RV1126B with its memory and a copper block to the back wall (the post is the heat sink), Wi-Fi and Bluetooth on a tab behind the Ø20 radio window, the security chip that signs every call, a motion chip for hits and tilt, and under the crossbar joint the tamper switch and the latched microSD card with our software.

Power and call lightspost spine

Four 18650 cells in one row with a thermistor, a 2 A charger from a capped socket in the back face, eight LEDs on each face under light guides to the clear slots, and the sounder under the horn holes. In the home left post a short tab carries the wrist unit’s charge pads into the dock tray.

Crossbarcrossbar centre

An ESP32-S3 module that reaches the referee’s wrist unit anywhere on the pitch and the other goal over BLE long range, a motion chip for crossbar hits, one cell, and the junction where both posts’ leads meet.

The goal-post and crossbar boards laid flat, both sides, every part at its real size

Laid flat: the goal-post spine with its pitch head, line head, antenna tab, top tab and pads tab (flexes drawn short), and the crossbar board. Tap the drawing to open it full size.

Design review: checked before we order

Every board-level number FootballOne's jobs depend on, checked against its target with the source of each number, using the rules every one of our boards shares (products/_shared/board-rules.mjs). Fixed means a lesson changed this board; to prove means it passes on paper and is measured on rev A before boards are ordered.

No check fails25 pass · 5 fixed by the review · 8 to prove before we order · 0 failDesign review of 4 November 2026
AreaCheckOur boardTargetStatus
CameraGoal-line camera: a size 5 ball (0.22 m) at the far top corner at 7.3 m
M8 2.8 mm lens, about 69° across: about 18.6 px per degree across 1280 px. Goal or no goal along the line from each post to the far post; the far end of the goal line (24.0 m, out for a goal kick or corner) still gets 10 px. A 120 km/h shot moves 28 cm between frames, so the line is crossed between two frames and the ball's track is fitted to both.
32 px≥ 20 pxpasses
CameraGoal-line camera: smear at 119 km/h, 0.5 ms exposure
A global shutter freezes the whole frame at once.
16.5 mm≤ 1/3 of the ball (73 mm)passes
CameraGoal-line camera: frame rate the calls need
A standard mode of the OV9281.
120 fps at 1280 × 800chip: 120 fps at 1280 × 800, 180 fps at 640 × 400passes
CameraGoal-line camera: data rate vs its 2-lane link
23 % spare on the link.
1.23 Gbps (10-bit)≤ 80 % of 1.6 Gbpspasses
CameraPitch camera: the ball (0.22 m) on the penalty-area line far side at 18.8 m
M12 3.2 mm lens, about 70° across: about 54.9 px per degree across 3840 px. Keeper handling, penalty encroachment, the 8-second keeper hold and the goal-kick countdown: people and a slow ball in the area, so 15 fps is enough and leaves the image processor room for the goal-line camera.
36.8 px≥ 20 pxpasses
CameraPitch camera: smear at 36 km/h, 2 ms exposure
A rolling shutter skews a fast target: check the readout time.
20 mm≤ 1/3 of the ball (73 mm)passes
CameraPitch camera: frame rate the calls need
A standard mode of the IMX415.
15 fps at 3840 × 2160chip: 30 fps at 3840 × 2160passes
CameraPitch camera: data rate vs its 4-lane link
65 % spare on the link.
1.24 Gbps (10-bit)≤ 80 % of 3.564 Gbpspasses
CameraImage processor load, all cameras
2 cameras into one image processor.
247 Mpx/s≤ 360 Mpx/s (RV1126B ISP)passes
CameraCameras in step for timed calls
Each post sees the far half of the line; a ball near the middle is seen by both, and their frames are timed on one clock. A real-time (PREEMPT_RT) kernel is asked for in the quote (lesson: sync).
both cameras on one RV1126B timer pin; both posts' line cameras on a frame-sync pair through the crossbar leadevery line camera of a goal fires togetherpasses
CameraAI engine time per frame
The ball model runs on a crop around the line; the pitch camera's models share the engine. Measured on the dev kit.
3 TOPS for two camerasball model inside the 8.3 ms frame at 120 fps; person and pose model at 15 fpsto prove on the dev kit
BatteryRun time, 4 cells, worst case (aged to 80 %, 5 °C)
A 10-hour tournament day (8 h of play, est.) uses 25 Wh: 2.7 W for 8 h (matches and training: RV1126B, both cameras, every call on, Wi-Fi to the phones), 0.3 W for 2 h (between matches: motion and the radio awake), through a 90 % converter. 4 × Samsung INR18650-35E, counted at 3.35 Ah (lesson: battery).
12.2 h≥ 10 hpasses
BatteryRun time, 4 cells, new, 20 °C
New cells at room temperature.
17.4 h≥ 10 hpasses
BatterySpare run time, worst case
Room for the estimate to be wrong.
22 % over 10 h≥ 20 % (the draw is an estimate until rev A)passes
BatteryCharge time
TI BQ25672 class 2 A charger with power path, from the sealed charge socket (lesson: charge).
7.7 h from flat at 2 A; 9 h overnight puts back 100 % of a daya full day back overnight (9 h)passes
BatteryPeak current from the cells
Inside the cells and the converter.
1.89 A at 2.65 V≤ 32 A (4 × 8 A)passes
BatteryEach pack has its own protector
The charger only stops charging; a short or a flat pack needs its own cut-off, at the thresholds of its chemistry (lesson: cellguard).
2 protectors (U4, U34) for 2 chargersshort, over-current and over-discharge cut-off on every packpasses
BatteryCharging held outside the cells' temperature range
Lithium cells must not be charged when cold or hot (lesson: charge).
thermistor on the pack, read by the charger0–45 °Cpasses
HeatRV1126B temperature, full sun, 35 °C air, white post
The white powder-coated aluminium post reflects most of the sun: about 12 K over the air on the back wall (est.). 2.2 W through a copper heat block and gap pad from the processor to the post's back wall (4 K/W, est.).
56 °C≤ 85 °C (rated)passes
HeatCell temperature, full sun, 35 °C air, white post
The cells stand 1.6 m up inside the white tube, about 9 K over the air (est.). Charging holds above 45 °C (thermistor RT1) (lesson: sun).
44 °C≤ 60 °Cpasses
ShockClocks rated for the shock
A shot hitting the post or crossbar at up to 120 km/h, a goal dropped while being moved into its sockets (est.; DESIGN.md "Impact"). Quartz crystals are not rated for that; MEMS oscillators are rated to 50,000 g (lesson: clocks). Change: Y1 and Y2 are MEMS oscillators from the start (lesson: clocks).
MEMS oscillatorsevery clock rated for 1500 gfixed by the review
ShockBall-grid chips
Underfill and flexible-termination capacitors are asked for in the quote; the drop tests on rev A prove them (lesson: underfill).
underfill under U1, U10, U5no cracked joints after the drop and hit teststo prove on the dev kit
SoftwareStarts our software from the microSD card, no setup
Owner requirement: power it from its own supply and our software runs from the card. Each post board boots from the card under its crossbar joint (the eMMC holds no system copy (it ships empty, so the card always starts first: Rockchip tries the eMMC before the card); the quote asks for U-Boot and a device tree from Rockchip's RV1126B SDK); the maker flashes our small loader into the crossbar's ESP32-S3, which starts our program from its card. Updates are signed and never run during a match. Change: J2 and J33 are hinged, latched microSD sockets on every board from the start (lesson: sdcard).
microSD socket with a hinged, latched lid (Amphenol 101-00660 class), fitted on every board: our software starts from the card; microSD socket with a hinged, latched lid (Amphenol 101-00660 class): the ESP32-S3 loads our program from the cardcard socket fitted on every board, latchedfixed by the review
SoftwareCard power switch and protection
A card that hangs must be restarted by cutting its power, not the whole board; the card slot is the one place a person touches the electronics (lesson: sdstart). Change: U90, U92, U91, U93 added (4 Nov 2026, CricketOne card-start review).
2 power switches and 2 ESD arrays for 2 card socketsevery socket: switched card supply, ESD on all 6 linesfixed by the review
SoftwareThe card wins the start
Rockchip's start order is SPI flash, eMMC, card, USB: a written eMMC starts before the card. Proved on the dev kit: power on with a card in and the eMMC empty (lesson: sdstart). Change: eMMC ships empty and the loader reads the card first (4 Nov 2026; it used to say the eMMC kept a copy, which would have started instead of the card).
eMMC shipped empty; our loader reads the card firstthe processor starts from the card every timefixed by the review
SoftwareCard grade
Consumer cards wear out and fail hot; the image is read-only with a separate data partition. Proved: 1,000 power cuts during writes on rev A (lesson: sdstart).
industrial pSLC microSD (Kingston Industrial or Swissbit S-56u), −40 to 85 °Crated for the heat, cold and writesto prove on the dev kit
SoftwareClip buffer for an unsure call
The rest of the memory holds Linux, the program and the AI model (lesson: clip).
6.7 s of 8-bit 120 fps video in 40 % of the 2 GB memory≥ 3 spasses
RadioWi-Fi/BT module clock
The AP6256 runs from its own 37.4 MHz reference clock; a wrong or missing clock means no Wi-Fi or Bluetooth at all (lesson: wificlock).
37.4 MHz MEMS oscillator (Y2)37.4 MHz next to the AP6256, MEMS (shock)passes
RadioWi-Fi and BLE from each post
A Ø20 window in an aluminium post is a narrow opening; the range to the touchline and the far goal is measured on rev A in a real post. Antenna outside the metal: the Ø20 PC radio window in the aluminium post's pitch face (lesson: enclosure). Measured on rev A (lesson: antenna).
chip antenna on a tab 4 mm behind the outer face of the Ø20 radio window in the pitch facecertified AP6256 module; coaches' phones on the touchline and the other goal 100 m awayto prove on the dev kit
RadioCrossbar BLE long range to the referee wrist unit
BLE coded PHY (long range); the window faces the back of the goal, so the signal to the pitch passes round the frame. Measured on rev A. Antenna outside the metal: the Ø20 PC radio window in the crossbar (lesson: enclosure). Measured on rev A (lesson: antenna).
ESP32-S3 module antenna end at the Ø20 radio window in the crossbar's back facethe wrist unit anywhere on a 100 m pitch; the other goalto prove on the dev kit
LayoutFast lines on a solid ground plane
The layout rules go to the maker in the quote; the routed board's design rule check (0 copper errors, every keep-out kept) and the maker's impedance coupon prove them (lesson: planes).
RV1126B memory; 3 camera MIPI links (100 Ω pairs); USB (90 Ω); antenna feed (50 Ω, keep-out on every layer); card lines (length-matched, no vias under the socket)ground on inner layer 1, supply on inner layer 2, no vias in pads, impedance lines routed firstto prove on the dev kit
MoistureConformal coating
The goals stand outdoors all season: rain, dew, irrigation and line-marking paint; the windows are bonded and the charge socket capped. Asked for in the quote (lesson: moisture).
coatedcoated, sensors, sockets and antennas maskedpasses
FitBoard inside the product CAD, every part checked in 3D
The board is checked on its own; the rev T CAD run places it in the product and checks every part in 3D (lesson: fit3d).
not yet in the product CADnothing touchesto prove on the dev kit
CameraEvery goal call in its camera's view
Ball on the line from the middle to the far post and up to the crossbar, the goal line 16.5 m beyond the far post, the keeper's feet on the line, the penalty mark, the area line and the goal-area corners are all in view from where the chips sit (pitch lens front at y 44.5, z 2335; line lens front at x 55.5, z 1998).
goal-line camera worst 18.6° up or down; pitch camera worst 12.1°inside each field of viewpasses
CameraEach lens through its window (lesson: window)
The goal-line camera sat 1.22 m up looking level: on our own board its head would have been a metre of camera lanes from the processor. It moved up to 2.0 m and tilts 10° down, and still sees the ball on the ground at the middle of the line. The pitch window grew from Ø16 to Ø20 for the M12 lens. Change: CAD rev T: goal-line window 1,220 to 2,000 mm, pitch window Ø16 to Ø20, radio window Ø20 and charge socket hole added in each post, dock tray 1,000 to 1,500 mm (4 Nov 2026).
pitch: the Ø20 window leaves 47.4°, the lens wants 35° down; goal line: the Ø12 window leaves 41.4°, the lens wants 33° downno vignetting over the callsfixed by the review
LinkBetween the posts over the crossbar lead
Each post runs its own models; only the results go over the lead, so both posts' calls land in one signed log on the home left post.
tracks and calls at 120 Hz (about 0.2 Mbps) and an unsure call's clip on request (about 8 Mbps for 2 s)≤ 25 % of the 50 Mbps the THVD1450 runs over 8 m of lead, apart from a clippasses
BatteryCrossbar board run time, worst case
ESP32-S3 with BLE long range and the motion chip; the left post charges it over the lead, so it only drains if the lead is cut.
46 h on one cell (0.15 W, est.), topped up from the left post's 5 V all day≥ 10 hpasses
BoardSpine length
Longer than most phone-size boards but close to the PoolOne spine (835 mm); the quote asks for the longest panel and the bow-and-twist limit.
92 × 760 mm, 8 layers, rigid with four flex tailsinside the maker's panelto prove on the dev kit

Before we order the first boards, we prove these on the RV1126B development kit or in the rev A tests:

  1. AI engine time per frame
  2. Ball-grid chips
  3. Card grade
  4. Wi-Fi and BLE from each post
  5. Crossbar BLE long range to the referee wrist unit
  6. Fast lines on a solid ground plane
  7. Board inside the product CAD, every part checked in 3D
  8. Spine length

Where the design stands

  1. 1Shape and placementdone

    The goal-post spine with its pitch head, line head, antenna tab, top tab and pads tab, and the crossbar board, all 66 parts placed at their real size inside the oval bore, every call checked from where the chips sit, and KiCad design rule check (0 violations).

  2. 2Schematicnext

    Every wire between the chips, from the V1, S1 and C1 core circuits.

  3. 3Footprintsnext

    The exact solder pads under each chip.

  4. 4Routinglater

    Copper tracks on all layers, the camera lanes along the head flexes.

  5. 5Files for the makerlater

    Gerbers with copper, drill, mask, paste, the rigid-flex drawing and the assembly parts list. These go to the board maker.

  6. 6Rev A boardsafter CricketOne

    Made, assembled and tested on our fixture.

Design files (rev A-0)

These are the stage 1 files: the board's shape and where every part goes. A board maker needs the stage 5 files to build it.

Who can make it

The goal-post board is one 8-layer spine, 760 mm long, with five 2-layer pieces on flexes; the crossbar board a 4-layer board. They need a maker who builds long, narrow rigid-flex boards. We plan three quotes once the stage 5 files are ready: two from China for price, and one from the US for speed.

MakerWhereRigid-flexHDI / layersAssemblyFit for us
PCBWayfirst quoteShenzhen, Chinayes, 6 to 16 layersHDI up to 32 layers, 0.35 mm BGA pitchyes, turnkey, incl. BGA and X-rayBest fit for rev A: the rigid-flex board and its assembly in one order
NextPCBsecond quoteShenzhen, ChinayesHDI, 6 to 32 layersyes (PCBA)Second quote, to compare price and lead time
ALLPCBChina (a network of partner factories)yes, through partner factories1 to 30 layersyesThird quote; check which factory builds it
JLCPCBShenzhen, Chinano (flex only: 1, 2 and 4 layers, up to 490 mm)HDI added Sep 2026yes, incl. BGANot for the one-piece board today. Good for the test fixture, simple boards, and the fallback of separate rigid boards joined by soldered flex
Sierra Circuits (ProtoExpress)US quoteSunnyvale, California, USAyesyesyes, in-house, incl. BGA; turnkey in about 5 daysUS option: fastest turn and engineering help, at a higher price
CirexxSanta Clara, California, USAyesyesyes (turnkey or consigned)Second US option
Advanced CircuitsAurora, Colorado, USAyescheckyesUS quick-turn; check its rigid-flex assembly
EpecNew Bedford, Massachusetts, USAyescheckyes; also builds battery packsUS option that can also make a certified LiFePO4 pack

From each maker's own capability pages, checked 3 November 2026. Limits change, so each quote confirms them for our exact stack-up.

Full design notes

All 66 parts, what is on each board, every connection, heat, power, the factory test, cost and timeline.