FootballOne board: request for quote
From: IEMI Labs, [email protected] · Date: 4 November 2026 · Reference: IEMI-FO-GP-A
We are asking for a turnkey quote: finish the design of our goal-post board and crossbar 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/footballone-boards.
1. The board
Two boards for a pair of goals. Goal-post board (four per pair, one design for every post): an 8-layer 92 × 760 rigid spine standing up the 114 × 94 oval bore of a 120 × 100 × 3 aluminium goal post, with the RV1126B on side B under a heat block to the back wall, 2 GB LPDDR4X, 32 GB eMMC, MEMS clocks, AP6256 Wi-Fi/BT, security and ID chips, ISM330DHCX motion chip, two THVD1450 (link and frame sync), BQ25672 class charger and BQ27220 gauge, four soldered 18650 holders with a thermistor, a sealed M8 charge socket, a latched 6-circuit crossbar lead, 16 call-light LEDs (8 on each face), sounder; a 20 × 20 pitch head with the Sony IMX415 and an M12 lens holder, tilted 15° down; a 16 × 16 line head on a 90 mm flex with the OmniVision OV9281 and an M8 lens holder, tilted 10° down; a 16 × 16 antenna tab; a 40 × 30 top tab with the tamper switch and the latched microSD; a 20 × 8 pads tab (fitted in the home left post only). Crossbar board (two per pair): a 4-layer 200 × 80 board with the ESP32-S3-WROOM-1 module, ISM330DHCX, security and ID chips, BQ24074 charger, one soldered 18650 holder with a thermistor, two THVD1450, two latched 6-circuit leads and the latched microSD.
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 |
|---|---|---|
| U1 | Rockchip RV1126B, 3 TOPS NPU, ISP, two MIPI CSI-2 ports (IMX415 and OV9281), on side B under a heat block to the back wall | spine |
| HB1 | Copper heat block 16 × 16 with a 1 mm gap pad from U1 to the post’s back wall: the aluminium post is the heat sink | spine |
| U10 | LPDDR4X 2 GB (6 s of goal-line video for an unsure call, both camera pipelines) | spine |
| U5 | eMMC 32 GB (shipped empty, so the card always starts first; our loader on the card reads the card first; keeps the call log, match clips) | spine |
| U3 | Rockchip RK806 class PMIC for the RV1126B rails | spine |
| Y1 | MEMS oscillator 24 MHz (SiTime SiT8008 class) | spine |
| U2 | Microchip ATECC608B, UDFN-8: signs every call, keeps the append-only log key | spine |
| U9 | ID EEPROM 2 kbit (product, board version, serial, which post, calibration) | spine |
| TP1 | Factory pads: USB (RV1126B), serial console, boot, reset, rails, current sense | spine |
| LS1 | Magnetic sounder 12 × 12 SMD under the horn holes in the back face (the goal horn), with a printed sound tube to the wall | spine |
| GK1 | Printed sound tube from the sounder to the horn holes, with a mesh | spine |
| LP2 | Printed clear light guide from the 8 back LEDs to the back light slot | spine |
| J1 | Sealed M8 4-pin panel socket with a screw cap (Binder 718 class, IP67), soldered to the spine and through the Ø10 hole in the back face: 12 V from the club’s charger overnight, the screw lock holds it on a knock | spine |
| U7 | Level shifter for both call-light data lines (3.3 to 5 V) | spine |
| U6 | AMPAK AP6256 Wi-Fi 5 + BT 5 module: the access point for the coaches’ phones and the link to the other goal; its antenna behind the radio window | spine |
| Y2 | MEMS oscillator 37.4 MHz for the Wi-Fi/BT module (SiTime SiT8008 class) | spine |
| AE1 | Dual-band Wi-Fi/BT chip antenna on a 16 × 16 tab folded flat just behind the Ø20 radio window in the pitch face, fed over its flex (the post is aluminium; the windows are its only radio openings) | atab |
| U11 | ST ISM330DHCX 6-axis motion chip: post and crossbar hits, a goal that tilts or is lifted from its sockets | spine |
| U14 | TI THVD1450 RS-485 transceiver, 50 Mbps: tracks, calls and clips on request to the crossbar and the other post | spine |
| U15 | TI THVD1450 on the frame-sync pair: both posts’ line cameras fire on one clock | spine |
| J3 | Molex Micro-Fit 3.0 vertical header, 6 circuits, latched: 5 V for the crossbar board, ground, the RS-485 pair and the frame-sync pair, up through the joint into the crossbar | spine |
| U4 | 12 V input from the charge socket with TVS, fuse and reverse block; TI BQ25672 class 1S charger with power path, 2 A (NTC input); TI TPS63020 3.3 V buck-boost; 5 V boost for the LEDs and the crossbar; TI BQ2970 1-cell Li-ion protector + dual N-FET on the pack (short, over-current, over-discharge cut-off at 2.8 V) | spine |
| U16 | TI BQ27220 fuel gauge: battery left, shown in the app | spine |
| RT1 | NTC thermistor 10 k, 0603, on the cell row, read by the charger so charging holds outside 0–45 °C | spine |
| BT1 | Keystone 1042 SMT holder for one 18650 cell (Samsung INR18650-35E), standing up the post, first of four | spine |
| BT2 | Keystone 1042 SMT holder for one 18650 cell (Samsung INR18650-35E), standing up the post, second of four | spine |
| BT3 | Keystone 1042 SMT holder for one 18650 cell (Samsung INR18650-35E), standing up the post, third of four | spine |
| BT4 | Keystone 1042 SMT holder for one 18650 cell (Samsung INR18650-35E), standing up the post, fourth of four | spine |
| U12 | Sony IMX415 8 MP camera chip, 3840 × 2160, 4-lane MIPI to the RV1126B: the goal area, the penalty area and the keeper | phead |
| L1 | M12 holder and a 3.2 mm lens, about 70° × 40°, its front just inside the Ø20 pitch-face window | phead |
| U13 | OmniVision OV9281 1 MP global-shutter camera chip, 1280 × 800 at 120 fps, 2-lane MIPI to the RV1126B: the ball over the line, frozen at 120 km/h | lhead |
| L2 | M8 holder and a 2.8 mm lens, about 69° × 46°, its front just inside the Ø12 inside-face window | lhead |
| SW1 | Omron D2F-01, plunger up, pressed 0.5 mm by the crossbar’s underside when the joint is bolted | ttab |
| J2 | microSD socket with a hinged, latched lid (Amphenol 101-00660 class), fitted on every board: our software starts from the card; reached when the crossbar is unbolted | ttab |
| 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 | ttab |
| 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 | ttab |
| TP2 | Two gold pads 6 × 6 in the dock tray floor: charge the referee wrist unit from the post’s cells (fitted in the home left post only) | pads |
| U31 | Espressif ESP32-S3-WROOM-1-N8R8: BLE long range to the referee wrist unit and to the other goal; antenna end at the back-face radio window | xbar |
| U32 | ST ISM330DHCX 6-axis motion chip at the crossbar centre: crossbar hits and sag, the goal tilting | xbar |
| U33 | Microchip ATECC608B: signs what the crossbar relays to the wrist unit | xbar |
| U39 | ID EEPROM 2 kbit | xbar |
| BT31 | Keystone 1042 SMT holder, 18650 (Samsung INR18650-35E), along the bar | xbar |
| RT31 | NTC thermistor 10 k, 0603, beside the cell | xbar |
| U34 | TI BQ24074 1 A charger from the left post’s 5 V (NTC input), TI TPS63020 3.3 V buck-boost; TI BQ2970 1-cell Li-ion protector + dual N-FET on the pack (short, over-current, over-discharge cut-off at 2.8 V) | xbar |
| U35 | Two TI THVD1450 transceivers: the RS-485 bus and the frame-sync pair run straight through from post to post, the ESP32-S3 listens on the bus | xbar |
| J31 | Molex Micro-Fit 3.0 vertical header, 6 circuits, latched | xbar |
| J32 | Molex Micro-Fit 3.0 vertical header, 6 circuits, latched | xbar |
| J33 | microSD socket with a hinged, latched lid (Amphenol 101-00660 class): the ESP32-S3 loads our program from the card; reached through the bolted end cap | xbar |
| U93 | microSD ESD and filter array, 6 lines (TPD6F003-class), with 22 Ω series resistors on CLK, CMD and D0–D3 and the card-detect line | xbar |
| U92 | 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 | xbar |
| TP31 | Factory pads: USB (ESP32-S3 native), boot, enable, rails | xbar |
| D1 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D11 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| D2 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D12 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| D3 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D13 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| D4 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D14 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| D5 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D15 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| D6 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D16 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| D7 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D17 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| D8 | RGB LED with driver, 5050 (WS2812B class), under the pitch-face light guide | spine |
| D18 | RGB LED with driver, 5050 (WS2812B class), under the back light guide | spine |
| LP1 | Printed clear light guide from the 8 pitch LEDs to the pitch-face light slot | spine |
Each part’s size, side and position is in footballone-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, U10, U5, and flexible-termination capacitors near the board edges (the product takes shocks of about 1500 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: goal-line camera OV9281 at 1280 × 800, 120 fps; pitch camera IMX415 at 3840 × 2160, 15 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.
- Goal-line camera: OV9281 streams 1280 × 800 at 120 fps with no lost frames over 10 minutes, and a frame of a test chart is saved; the frame-sync input triggers frames.
- Pitch camera: IMX415 streams 3840 × 2160 at 15 fps with no lost frames over 10 minutes, and a frame of a test chart is saved; the frame-sync input triggers frames.
- Radios: U6 (AMPAK AP6256 Wi-Fi 5 + BT 5 module); U31 (Espressif ESP32-S3-WROOM-1-N8R8): each joins or answers a test station.
- Sensors and outputs, each read or driven in turn: LS1 (Magnetic sounder 12 × 12 SMD under the horn holes in the back face), U91, U93 (microSD ESD and filter array), D1–D18 (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 (matches and training about 2.7 W, between matches about 0.3 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 | 4 and 8: 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: 25 pass, 5 fixed by the review, 8 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 and BLE from each post
- Crossbar BLE long range to the referee wrist unit
- Fast lines on a solid ground plane
- Board inside the product CAD, every part checked in 3D
- Spine length
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]