BOM Cost-Down on a Fuel Dispenser Interface Board: −22% With the Same Symbols and Footprints

Table of contents
SoftGuard builds interface electronics for fuel dispensers. Their 1113 board connects a station controller to the dispenser: a PIC18F14K50 drives three current-loop TX outputs, an isolated 12 V DC-DC module separates the dispenser side from the host, and optocouplers carry the signals across the barrier.
The board was already being re-spun as revision v0.3 for storm protection: extra clamp diodes on the TX lines and a TVS on the 12 V output. While the design was open, we went through the BOM line by line to see what the same board could cost.
Result: the parts for a 25-unit batch cost 22% less.
The schematic did change, because the components changed: parts got new part numbers, values and LCSC codes. The symbols and footprints did not change, and neither did the netlist. The layout stays as it is.

The rules we kept to
A cost-down is only useful if nobody has to re-verify the board afterwards. So every swap had to pass four checks:
- Same symbol, same footprint. Only the component behind the symbol changes. The new part has the same pinout and drops onto the existing routed pads.
- Ratings kept or raised. Voltage, current and surge ratings may go up, never down.
- Netlist identical. We compared the netlist before and after the swap: 76 nets, identical.
- Every line gets an LCSC code. No consigned parts, nothing the assembler has to source by hand.
The baseline is JLCPCB's basic and preferred library. Basic parts carry no feeder setup fee, which matters a lot on small batches like 25 boards.
What changed
| Parts | Before | After | Why it is safe |
|---|---|---|---|
| D2–D4, D7–D12 (9 pcs) | PMEG4010CEJ | B16WS | Same SOD-323F, 10 A surge rating kept, 60 V instead of 40 V |
| Q2–Q4 | BCP54-16 | BCP55-16 | 60 V version of the same transistor, same SOT-223 pinout |
| U1, U2 | VO0631T | HCPL-0631-500E | Same SOIC-8 dual optocoupler pinout, original land pattern kept |
| IC1 | Aimtec AM2LS-1212S | EVISUN B1212XT-2WR3 | Isolated 12 V → 12 V, 2 W, same pinout and footprint |
| D6 | SMF16A | SMF15A | 12 V rail TVS, JLCPCB basic part |
| R1–R28 | 5% extended resistors | 1% basic resistors | Tighter tolerance, cheaper |
| C1, C3, C5, C6, C8 | 10 V / 25 V 10 µF | 25 V / 50 V 10 µF | More voltage margin on the 12 V rails |
| L1–L3 | 100 Ω, 1 A ferrites | 120 Ω, 2 A ferrites (C14709) | Higher current rating |
| J1, J2, J4 | No LCSC code | LCSC-stocked equivalents | Connectors no longer need to be consigned |
What we did not change is just as important. The AZ1117 regulator and the LTV-817S optocoupler were already cheap and well proven, so they stayed.
Where the money was
The saving did not come from one dramatic swap. It came from many lines that each pulled in an extended-library part, plus a few parts with no LCSC code at all. On a 25-unit batch, every extended part adds a fixed setup fee, and every consigned connector adds shipping and handling. Moving those lines to basic parts with LCSC codes is what took 22% off the BOM.
How the work was done
The swaps were made in the KiCad schematic: each symbol kept its place, pins and footprint, and only its part number, value and LCSC code changed. The new part numbers went into our shared component library. That way the next board that needs a B16WS or a B1212XT gets a part that has already been checked. The production BOM is generated from the schematic, so the LCSC codes stay with the design rather than in a spreadsheet next to it.
Want the same for your board?
This is the kind of work the Hardware Clinic does as a fixed-price BOM cost-down audit: up to 150 lines, second sources and cheaper equivalents, paid partly from what we save you. If one part has gone end-of-life or out of stock, the EOL replacement offer finds verified drop-in alternatives in 24–48 hours.
More examples are on the case studies page.

