Skip to content

1.2 The Bill of Materials (BOM) & Revision Control

The Bill of Materials (BOM) is often misunderstood by hardware startups. It is not merely a purchasing list or a rough estimate of parts. It is the primary driver for SMT machine programming, supply chain MRP logic, ERP consumption rules, and product cost accounting.

In the Golden Data Pack (GDP), the BOM functions as Master Data. When the BOM is ambiguous, the production line pauses. Treat the BOM exclusively as a deterministic database export, never as a casual Excel spreadsheet. It must be perfectly machine-readable and 100% synchronized with the physical CAD design.

The Manufacturer Part Number (MPN) is the single, undisputed valid identifier for a physical component. Internal part numbers (IPNs) or generic text descriptions are insufficient for manufacturing. They require a human to perform translation, which introduces a high chance of human error at scale.

  1. Primary Key: Manufacturer Part Number (MPN).
  2. Validator: Manufacturer Name (Must perfectly match the exact spellings registered to the MPN).
  3. Reference: Component Description (e.g., “RES 10k 1% 0402”).
  4. Locator: Reference Designators (RefDes) (e.g., R1, R2, R3).
  • When the BOM lists a generic “10k Resistor” without an exact MPN, the EMS cannot determine the wattage, tolerance, voltage rating, or thermal coefficient required for your RF circuit, resulting in a rejection.
  • When the Description conflicts with the MPN (e.g., Desc says “10k” but the MPN resolves to a “100k” part), this creates a critical data failure requiring engineering intervention. The MPN legally takes precedence.

AVL Strategy: Approved Vendors & Alternates

Section titled “AVL Strategy: Approved Vendors & Alternates”

Supply chain resilience relies on pre-validated alternates. However, writing “Or Equivalent” in a BOM cell is not an engineering specification—it introduces ambiguity and significant risk.

Do not leave alternate component selection to the discretion of a purchasing agent during a Friday afternoon parts shortage. Define alternate MPNs explicitly in the GDP.

  • The Explicit Method: Add dedicated columns to your database for Alt_1_Mfr, Alt_1_MPN, Alt_2_Mfr, etc.
  • The Standard Method: When the part is purely a commodity (e.g., a standard 10k pull-up resistor), reference a controlled “Internal Standard Specification” that the EMS can map to their house stock (e.g., “Must meet Spec 100-001: 0402 Resistor, 1%”).

Engineering Rule: Avoid the phrase “Or Equivalent” for MLCC capacitors, MOSFETs, or Inductors. DC bias characteristics, ESR, and saturation currents vary wildly between manufacturers even if the top-line voltage and capacitance match perfectly.

“Do Not Populate” (DNP) or “Do Not Install” (DNI) components must be explicitly managed within the database to prevent manual placement errors, ghost placements, and false-failure reports blocking the line at Automated Optical Inspection (AOI).

  1. Explicit Status: The BOM must contain a dedicated column labeled FITTING_STATUS (or similar).
  2. Binary Values: Use exactly FITTED for populated parts and DNP (or NO_FIT) for unpopulated parts.
  3. No Silent Deletions: Never silently delete DNP rows from the BOM export. When component R5 is physically drawn in the schematic but missing from the BOM file, the EMS assumes a data export failure has occurred.
    • When a RefDes exists in CAD, it must also exist in the BOM (explicitly marked DNP).

A valid, operational manufacturing build requires the perfect alignment of three artifacts. When these revisions are not locked in sync, the data pack is invalid (referred to as a “mixed-revision pack”).

The Project Revision code (e.g., REV_05) must be clearly labeled on:

  1. The BOM Header: Dictating exactly what parts to buy.
  2. The PCB Fabrication Data: Dictating exactly the physical copper geometry.
  3. The Assembly Drawing: Dictating the visual placement and polarity instructions.
  • When the BOM is Rev B but the Gerber dataset is Rev A, the build is stopped immediately. There is an unacceptable risk that footprint locations (X,Y) in the old bare-board do not match the physical dimensions of the new component packages specified in the new BOM (e.g., the footprint is purely 0603 but the BOM demands an 0402 part).

An Engineering Change Order (ECO) issued rapidly after the GDP release must follow a strict operational “Cut-In” logic to preserve factory traceability.

  • The Clean Break (Highly Preferred): The ECO triggers a fast, full roll to a new GDP Revision (Rev A ⭢ Rev B). All old stock is purged, quarantined, or physically scrapped.
  • The Running Change: The ECO is injected into the current WIP build based on a clear logic gate.
    • By Serial Number: “Apply ECO-101 starting at Unit SN #5000.”
    • By Date Code: “Apply ECO-101 for all bare boards assembled after [Date].”

Engineering Rule: Avoid using “Use Up Stock” dispositions for any critical signal integrity or power-path components. It creates a fleet of mixed-performance devices in the field that are difficult to debug later.

The Control PointThe Operational RequirementThe Go/No-Go Metric
Header InfoProject Name, Revision, Date explicit.Matches the GDP archive folder name perfectly.
MPN IntegrityEvery line item has a Manufacturer + exact MPN.Zero “Generic” or visually blank MPN fields.
RefDes AuditEvery RefDes is perfectly unique and matches CAD.Zero duplicates; BOM item count = CAD placement count.
DNP ClarityUnpopulated parts are listed but explicitly marked DNP.Zero missing RefDes sequences (e.g., R1, R2, R4).
Alternate PartsAlternates are strictly defined by specific MPNs.Zero “Or Equivalent” text fields allowed.
File FormatPurely Machine-readable (CSV/XLSX).One component per row (flat list exported).