- Add example-project_bom_v1.0.0_2024-08-04.csv with complete STM32F401-based design - Include all requested fields: Designator, Qty, MPN, Manufacturer, Package, Description, RoHS - Add comprehensive supplier part numbers for Digi-Key, Mouser, and LCSC - Include additional technical fields: Value, Tolerance, Voltage/Power Rating, Temperature Range - Add pricing information and datasheet URLs for complete component traceability - Cover typical hardware components: MCU, power regulation, connectors, passives, LEDs, test points - Update hardware/bom/README.md with detailed field descriptions and example reference - Follow file naming conventions with semantic versioning and YYYY-MM-DD date format - Provide multi-sourcing flexibility for component procurement and PCB assembly services
103 lines
3.5 KiB
Markdown
103 lines
3.5 KiB
Markdown
# /hardware/bom
|
||
|
||
Bill of Materials for your KiCad project.
|
||
|
||
## Purpose
|
||
This directory contains Bill of Materials (BOM) files generated from your KiCad schematic and additional BOM-related documentation.
|
||
|
||
## File Types
|
||
- **`.csv`**: Comma-separated values format (most common)
|
||
- **`.xlsx`**: Excel spreadsheet format
|
||
- **`.xml`**: XML format for automated processing
|
||
- **`.html`**: HTML format for web viewing
|
||
- **`.pdf`**: PDF format for documentation
|
||
|
||
## Generating BOM from KiCad
|
||
1. Open your schematic (`.kicad_sch`)
|
||
2. Go to **Tools → Generate Bill of Materials**
|
||
3. Select or configure a BOM plugin
|
||
4. Set output directory to `hardware/bom/`
|
||
5. Click **Generate**
|
||
|
||
## Recommended BOM Formats
|
||
|
||
### Basic BOM (`ProjectName-BOM.csv`)
|
||
- Reference designators
|
||
- Values
|
||
- Footprints
|
||
- Quantities
|
||
- Manufacturer part numbers
|
||
- Supplier part numbers
|
||
|
||
### Extended BOM (`ProjectName-BOM-Extended.xlsx`)
|
||
- All basic information plus:
|
||
- Descriptions
|
||
- Manufacturer names
|
||
- Supplier links
|
||
- Pricing information
|
||
- Stock availability
|
||
- Alternative parts
|
||
|
||
## BOM Structure and Fields
|
||
|
||
### Required Fields
|
||
- **Designator**: Component reference (R1, C1, U1, etc.)
|
||
- **Qty**: Quantity required
|
||
- **Manufacturer Part Number**: Official MPN from manufacturer
|
||
- **Manufacturer**: Component manufacturer name
|
||
- **Package**: Physical package/footprint
|
||
- **Description**: Detailed component description
|
||
- **RoHS**: RoHS compliance status (Yes/No)
|
||
|
||
### Additional Recommended Fields
|
||
- **Value**: Component value (10K, 100nF, etc.)
|
||
- **Tolerance**: Component tolerance (1%, 5%, etc.)
|
||
- **Voltage Rating**: Maximum voltage rating
|
||
- **Power Rating**: Power dissipation rating
|
||
- **Temperature Range**: Operating temperature range
|
||
- **Unit Price**: Cost per unit in USD
|
||
- **Extended Price**: Total cost (Qty × Unit Price)
|
||
- **Datasheet URL**: Link to manufacturer datasheet
|
||
- **Notes**: Assembly notes and component purpose
|
||
|
||
### Supplier Part Numbers
|
||
- **Digi-Key Part Number**: Digi-Key supplier part number
|
||
- **Mouser Part Number**: Mouser Electronics part number
|
||
- **LCSC Part Number**: LCSC (JLCPCB) part number for PCB assembly
|
||
|
||
### Example BOM Structure
|
||
See `example-project_bom_v1.0.0_2024-08-04.csv` for a complete example BOM with all recommended fields including:
|
||
- STM32F401 microcontroller-based design
|
||
- Power regulation circuit
|
||
- USB and power connectors
|
||
- Status LEDs and user interface
|
||
- Test points for debugging
|
||
- Multiple supplier part numbers for sourcing flexibility
|
||
|
||
## BOM Management Best Practices
|
||
- Include manufacturer part numbers (MPN)
|
||
- Add supplier part numbers for purchasing
|
||
- Include alternative/substitute parts
|
||
- Document any special requirements
|
||
- Update BOM with design changes
|
||
- Version control BOM files
|
||
- Include pricing and availability data
|
||
|
||
## KiCad BOM Plugins
|
||
- **bom_csv_grouped_by_value**: Groups components by value
|
||
- **bom_csv_sorted_by_ref**: Sorts by reference designator
|
||
- **kibom**: Advanced BOM generator with many options
|
||
- **InteractiveHtmlBom**: Creates interactive HTML BOMs
|
||
|
||
## File Naming Convention
|
||
Following [FILE-NAMING-AND-VERSIONING.md](../../FILE-NAMING-AND-VERSIONING.md) standards:
|
||
- `project-name_bom_v1.0.0_2024-08-04.csv` - Basic BOM
|
||
- `project-name_bom-extended_v1.0.0_2024-08-04.xlsx` - Detailed BOM with pricing
|
||
- `project-name_bom-assembly_v1.0.0_2024-08-04.csv` - Assembly-specific BOM
|
||
- `project-name_bom-production_v2.1.0_2024-08-04.csv` - Production BOM
|
||
|
||
### Versioning Strategy
|
||
- **MAJOR**: Component changes affecting compatibility
|
||
- **MINOR**: Component value changes, new optional components
|
||
- **PATCH**: Documentation updates, supplier changes
|