Reference Electronics · Volume 9
Bill of Materials — Part Numbers, Sources and Dated Prices
The breadboard kit, the reference carrier board and the emitter bar, every line with its manufacturer part number and, where a seller's page could be read, a price dated 2026-10-18

9.1 How to Read These Tables
Every price is as shown on the named seller’s own product page on 2026-10-18, in US dollars unless stated, at the smallest quantity break the page offered. Prices move; a dated price is a sanity check, not a quote.
DigiKey, Mouser and TME refused automated reading of their product pages on 2026-10-18, and the browser extension that would have read them was not connected. Their links are given so that a buyer can check, but no price was captured from them, and the tables say “not captured” rather than guessing. LCSC, Adafruit, DFRobot, Waveshare, GUN4IR, OSH Park and supermagnete pages could be read. TI’s own store showed the DRV5056A3 out of stock with no price on 2026-10-18.
No part here is listed without a reason. Each active part, connector and protection device is argued against its alternatives in the “Why this, and why not the others” section of the volume that picks it: the microcontroller in Volume 2 (2.6), the camera in Volume 3 (3.9), the Hall sensor and connectors in Volume 4 (4.6, 4.8), the output stages in Volume 5 (5.12), the emitters in Volume 6 (6.7), and the Pico’s mounting in Volume 8 (8.2).
Passive components (resistors and capacitors) are specified by value, package, tolerance and rating rather than by a manufacturer part number. Any mainstream part meeting the specification will do, and the part number is best chosen from the library at capture time. Every active part, connector and protection device has a manufacturer part number.
9.2 The Brief’s Budget, Checked
The brief this build started from quoted “About US$50 to $60 in parts”, taken from “a late-2024 forum report in probably AUD”, with a Pico at $4 and the camera at $35 to $40. Against the sellers’ pages on 2026-10-18:
- the Pico at $4.00 (Adafruit, out of stock that day) is unchanged;
- the camera is the problem, not because of its price ($23.55 at DFRobot) but because DFRobot was not selling it that day; the first gun uses a camera harvested from a genuine Wii Remote on a $4.50 community carrier PCB as a bench stopgap, and the kit camera is the PixArt PAJ7025R3 at €14 a sensor from a sample kit, with production by quotation (Volume 3, decision D18);
- the forum figure did not include a gate driver, a TVS, a current-sense resistor, connectors, or a PCB. The breadboard kit below is close to the forum’s scope; the carrier board adds to it.
9.3 BOM A: Breadboard Kit
For the first bench session (Volume 7), following panel A of Volume 5’s figure and the community patterns, with the reference board’s pull-down values.
Table 1 — 9.3 BOM A: Breadboard Kit
| Ref | Qty | Part | Manufacturer / MPN | Seller and link | Price (2026-10-18) |
|---|---|---|---|---|---|
| MCU | 2 | Raspberry Pi Pico | Raspberry Pi SC0915 | Adafruit 4864 | $4.00 each (out of stock) |
| MCU | 3 | Raspberry Pi Pico 2, A4 stepping (check the chip marking; decision D19, Volume 2) | Raspberry Pi | SparkFun DEV-26124 | $5.75 each (in stock) |
| MCU, D25 trial and kit-camera route 2 | 1 | ESP32-S3-DevKitC-1, N16R8 | Espressif | Adafruit 5336 (N8R8) | $19.95 for the N8R8 (out of stock); N16R8 from other sellers, not captured |
| CAM, stopgap | 1 | Wii Remote IR camera, harvested from a genuine Nintendo Wii Remote (bench stopgap only, decision D18) | — | used market | not captured |
| CAM, kit | 1 kit | PixArt PAJ7025R3 sample kit, 5 sensors (and the R2 kit for the bench comparison) | PixArt | CODICO GmbH | €70.00 per kit of 5 |
| CAM PCB | 1 order | Wiimote IR Sensor - Inline (Panel) v1.2, 0.8 mm (eatnooM) | OSH Park shared project | OSH Park | $4.50 total shown |
| CAM alt | — | IR positioning camera, only if one turns up (not sought) | DFRobot SEN0158 | DFRobot | $23.55 (“Notify Me”) |
| HALL | 2 | Linear Hall sensor, 15 mV/mT at 3.3 V (SOT-23, on an adapter) | Texas Instruments DRV5056A4QDBZR | TI / DigiKey / Mouser | not captured |
| HALL alt | 2 | Digital Hall switch for stock firmware | Texas Instruments DRV5023 (SOT-23) | TI / DigiKey / Mouser | not captured |
| MAG | 10 | Disc magnet 5 × 2 mm, N52, axial | supermagnete S-05-02-N52N | supermagnete | €0.31 each at 10 (incl. VAT) |
| Q | 1 | N-MOSFET, TO-220, logic level | Infineon IRLZ44NPBF | DigiKey / Mouser | not captured |
| Q alt | 1 | N-MOSFET, TO-220, 30 V | Infineon IRLB8721PBF | Adafruit 355 | $2.25 (out of stock) |
| Q2 | 1 | N-MOSFET for rumble | AOS AO3400A (SOT-23; on an adapter) | LCSC C20917 | $0.098 each (5+) |
| D | 2 | Schottky, 40 V 3 A | SS34 (Slkor) | LCSC C408258 | $0.0402 each (20+) |
| TEMP | 1 | Temperature sensor | Analog Devices TMP36GT9Z | Adafruit 165 | $2.75 |
| C | 1 | 1000 µF 35 V low-ESR | any | — | — |
| REG | 2 | Regulated-current H-bridge for the bench version of the carrier’s stage (on an HSOP-8 adapter) | Texas Instruments DRV8251ADDAR | DigiKey / Mouser / LCSC | not captured (a search result put DigiKey near $2.25 at 1; unverified) |
| R | 4 | 4.7 kΩ, 100 Ω, 220 Ω (×3) | any ¼ W | — | — |
| C | 4 | 100 nF ceramic | any | — | — |
The IRLZ44N is in this kit with the caveat argued in Volume 5: its datasheet does not guarantee its resistance at 3.3 V of gate drive, so stage 4 of the bring-up measures it.
9.4 BOM B: Reference Carrier Board
The proposed board of Volume 8. Reference designators follow that sheet.
Table 2 — 9.4 BOM B: Reference Carrier Board
| Ref | Qty | Function | Manufacturer / MPN | Seller and link | Price (2026-10-18) |
|---|---|---|---|---|---|
| U1 | 1 | MCU module | Raspberry Pi Pico (SC0915) or Pico 2 (A4) | Adafruit / SparkFun, as above | $4.00 / $5.75 |
| U4, U5 | 2 | Regulated solenoid stages (Volume 5, 5.12; D13) | Texas Instruments DRV8251ADDAR (HSOP-8, exposed pad) | TI product page / DigiKey / LCSC | not captured (DigiKey near $2.25 at 1 per a search result; unverified) |
| Q4 | 1 | Port-stage interlock (D16) | AOS AO3400A (SOT-23) | LCSC C20917 | $0.098 each (5+) |
| Q2 | 1 | Rumble MOSFET | AOS AO3400A (SOT-23) | LCSC C20917 | $0.098 each (5+) |
| D3 | 1 | Rumble flyback | SS34 (Slkor) | LCSC C408258 | $0.0402 each (20+) |
| U3 | 1 (DNP) | 5 V buffer for NeoPixel data | Texas Instruments SN74AHCT1G125 | DigiKey | not captured |
| HALL | 1 | Hall trigger, on the trigger board | TI DRV5056A4QDBZR (or DRV5023 for stock firmware) | TI / DigiKey / Mouser | not captured |
| MAG | 1 | Trigger magnet | supermagnete S-05-02-N52N (5 × 2 mm, N52) | supermagnete | €0.31 (10+) |
| J2, J3 | 1 each | Buttons, D-pad | JST PH 7-pin and 5-pin (B7B-PH-K-S, B5B-PH-K-S) | LCSC | not captured |
| J1, J4, J5, J8, J16 | 5 | Hall trigger; pump / pedal; NeoPixel; TMP36 ×2 | JST B3B-PH-K-S(LF)(SN) | LCSC C131339 | $0.042 each (10+) |
| J7 | 1 | OLED | JST B4B-PH-K-S(LF)(SN) | LCSC C131334 | $0.0458 each (10+) |
| J6 | 1 | Stopgap camera, five-way (with WII_CLK) | JST B5B-PH-K-S(LF)(SN) | LCSC | not captured |
| J17 | 1 | Kit camera, six-way SPI (fit J6 or J17) | JST B6B-PH-K-S(LF)(SN) | LCSC | not captured |
| SJ1 to SJ3 | 3 | Camera-option solder jumpers (Volume 3, 3.11) | three-pad solder jumper, on the board | — | — |
| CAM-B | 1 | PAJ7025R3 muzzle breakout: the module, 10 µF + 100 nF, 33 Ω series footprints | own PCB; footprint from alextrical/PAJ7025-KiCad-Library, checked against PixArt’s drawing | — | — |
| J10 | 1 | Rumble motor | JST B2B-PH-K-S(LF)(SN) | LCSC | not captured |
| J13, J15 | 2 | Solenoid; ejection-port actuator | JST B2P-VH(LF)(SN), 3.96 mm, 10 A | LCSC C160315 | $0.0627 each (10+) |
| U1 socket | 2 | Low-profile sockets for the Pico (Volume 8) | 1 × 20, 2.54 mm | — | chosen with the shell height |
| J12 | 1 | Solenoid supply in | panel DC jack, rated for the solenoid current | — | chosen with the shell |
| F1 | 1 | Fuse | value from one stage’s measured peak current (D16) | — | open (Volume 8) |
| C4 | 1 | Bulk | 1000 µF, 35 V, low-ESR polymer | — | — |
| C1 | 1 | Camera decoupling | 1 µF, 50 V, X7R | — | — |
| C (VM) | 2 | At each DRV8251A VM pin | 100 nF, 50 V, X7R, 0603 | — | — |
| C2, others | about 8 | Decoupling | 100 nF, 50 V, X7R, 0603 | — | — |
| C3 | 1 | VBUS bulk at rumble | 100 µF, 10 V | — | — |
| R_IPROPI | 2 | Current-mirror resistors, one per stage | 750 Ω, 0.1 %, 0603 | — | — |
| R_A, R_B, trimmer | 2 sets | VREF set point, one per stage (I_TRIP = VREF / 1.18 A per V) | values per coil; trimmer footprint | — | — |
| R (pull-downs) | 3 | SOL_CMD, EJECT_CMD, RUMBLE gate | 4.7 kΩ, 0603 | — | — |
| R (series) | 3 | SOL_CMD, RUMBLE (100 Ω); EJECT_CMD (1 kΩ, for the Q4 interlock) | 0603 | — | — |
| R (SPI) | 3 | CS, SCK, MOSI series (PixArt build) | 33 Ω, 0603 | — | — |
| R1, R2 | 2 | Camera pull-ups | 2.2 kΩ to start, 0603 | — | — |
| R (NeoPixel) | 1 | NeoPixel data series | 330 Ω, 0603 | — | — |
| R, C (Hall) | 1 + 1 | Trigger filter at U1 | 1 kΩ and 10 nF, 0603 | — | — |
| R, C (DNP) | 16 + 16 | Input filters | 1 kΩ and 10 nF, 0603 | — | — |
| CAM | 1 | Stopgap camera: harvested Wii Remote sensor on the eatnooM carrier | — | OSH Park (PCB) | $4.50 (PCB order) |
| CAM, kit | 1 | PAJ7025R3, from the sample kit (BOM A) | PixArt | CODICO GmbH | €14.00 each (€70.00 / 5) |
| PCB | 1 | The carrier itself, four layers (D20) | prototype board house | — | not captured |
| TEMP | 2 | Temperature sensors (solenoid, port actuator) | Analog Devices TMP36GT9Z | Adafruit 165 | $2.75 each |
Captured-price subtotal for B (single board, smallest breaks): Pico $4.00, two AO3400A (rumble and interlock) $0.196, one SS34 $0.040, five 3-pin PH $0.210, one 4-pin PH $0.046, two VH $0.125, the camera carrier PCB order $4.50, two TMP36 $5.50: about $14.62, plus a magnet at €0.31 and, for the kit camera, €14.00 a sensor. (Wave 2’s $14.85 included the discrete stage’s SS34 and SMBJ33A clamps, which the regulated stage does not need; the wave-1 figure of $30.89 included a $23.55 SEN0158.) The two DRV8251A drivers, the Hall sensor, the remaining connectors, all passives, the fuse, the jack, the sockets and the carrier PCB itself are not in that figure. LCSC minimum order quantities (5, 10 or 20 pieces) mean the actual spend for the captured parts is higher than the per-board figure.
9.5 BOM C: Emitter Bar
Four points, three LEDs each.
Table 3 — 9.5 BOM C: Emitter Bar
| Ref | Qty | Part | Manufacturer / MPN | Seller | Price (2026-10-18) |
|---|---|---|---|---|---|
| LED | 12 (+4 spare) | IR emitter, 940 nm centroid, ±30° | ams OSRAM SFH 4547 (ordering code Q65111A1141) | Mouser 720-SFH4547 | not captured |
| Variant 1: R | 4 | 5.6 Ω, 0.5 W | any | — | — |
| Variant 1: supply | 1 | USB 5 V adapter, 1 A | any | — | — |
| Variant 2: CCR | 4 | 100 mA constant-current regulator | Diodes Inc. AL5809-100P1-7 | Mouser 621-AL5809-100P1-7 | not captured |
| Variant 2: CCR alt | 4 | 90 mA | Diodes Inc. AL5809-90P1-7 | LCSC C156312 | $0.2709 each (5+) |
| Variant 2: supply | 1 | 9 V to 12 V adapter, 0.5 A or more | any | — | — |
| 850 nm, kit bar | 12 | IR emitter, 850 nm, ±27° (for the PixArt kit camera, D18; the 940 nm bar suits the stopgap only) | Vishay TSHG6400 | Vishay distributors | not captured |
9.6 Off-Board Items
Table 4 — 9.6 Off-Board Items
| Item | Notes | Where it is chosen |
|---|---|---|
| Solenoid | a “6 to 12 V” class coil, roughly 5 to 12 Ω, on the 24 V-class rail under regulated current (D13, D14; SR-3); the bench shortlist is decision D15 | Solenoid Recoil |
| Solenoid supply | 24 V brick, GST60A24 class, sized for one stage (D16, D17) | Power Supplies |
| Rumble motor | ”5 V gamepad rumble motor” per OpenFIRE; current to be measured | Volume 7, stage 3 |
| Buttons | microswitches (pump, magazine release), 6 × 6 mm tact switches, 5-way switch; the trigger is the Hall sensor above | Controls and Inputs |
| Ejection-port actuator | not chosen; driven by the second stage (J15) | Moving Ejection Port |
| Combined cable | USB and solenoid supply out through the magazine base plate (decision D6) | Volume 8; MP7 Donor Build |
| Harness wire | 22 AWG twisted pair for the solenoid (OpenFIRE’s floor is 24 AWG); 26 to 28 AWG for signals | Volume 5 |
| OLED (optional) | SSD1306 128 × 64, I2C | OpenFIRE README |
| Donor or shell | MP7 Donor Build |
9.7 Ordering Notes
- Buy spares of the cheap parts that die first. A second Pico, extra MOSFETs and extra SFH 4547s cost little against a lost bench session.
- Order LEDs from one lot. The SFH 4547 comes in three brightness bins spanning a factor of four, and its datasheet says each packing unit holds one bin (Volume 6).
- Check marketplace parts on arrival. Camera modules and MOSFET modules from marketplaces vary; compare against the datasheet figures in this dive before installing them.
- Substitutes. For U4 and U5, another driver needs regulated current with slow decay while holding, a coast or equivalent fast decay at the end, inputs with pull-downs, and a supply rating with margin over 28 V plus the brick’s over-voltage band; the DRV8874 fails the last (Volume 5, 5.12). For the discrete breadboard stage: any 60 V N-MOSFET with RDS(on) specified at 10 V, a threshold under about 2.5 V and an avalanche rating; any low-side driver with TTL-threshold inputs and a VDD range covering 12 V; a TVS whose clamping voltage stays under the MOSFET’s rating with margin. Volume 5 gives the reasoning for each.
- The kit camera is a quotation, not a basket. The sample kits (5 sensors, €70.00) cover the bench. Production quantities of the PAJ7025R3 come by quotation from PixArt’s distributors (CODICO, EPS Global, WPG Americas), with a lead time WPG gives as 8 to 32 weeks; the R2 datasheet’s ordering table states an MOQ of 900 (Volume 3).
- The discrete stage for the bench. The breadboard kit (BOM A) keeps panel A of Volume 5; the UCC27517A and IPD50N06S4L-12 stage, if built for the Solenoid Recoil constant-voltage sweeps, takes its parts from wave 2’s list in that volume (5.4).
Sources
- Seller product pages as linked in each table (read 2026-10-18): Adafruit (4864, 6006, 5302, 4888, 355, 165), DFRobot (product 1088), LCSC (C20917, C99124, C408258, C224019, C131334, C131339, C160315, C156312), Waveshare, GUN4IR.
- Manufacturer datasheets cited in Volumes 3 to 6.
- The project brief, Lightgun project: memory and next steps and Build a DIY OpenFIRE lightgun with recoil (2024 forum-based cost estimate, currency uncertain), in the Open-Source Firmware dive’s inputs.
- OSH Park, eatnooM Wiimote IR Sensor - Inline (Panel) - v1.2; supermagnete S-05-02-N52N; Texas Instruments DRV5056A3QDBZR part page (stock state) (read 2026-10-18).
- CODICO GmbH sample-kit pages for PAJ7025R3 and PAJ7025R2; SparkFun DEV-26124; Adafruit 5336; Texas Instruments DRV8251A product page (read 2026-10-18).
Comments (0)