File Upload Guide
KiCad (preferred): open the project folder that contains the .kicad_pro file. BoardLab loads the schematic sheets and the board from there — no separate netlist or BOM export. If you download a zip of the project, that archive should contain / start from the .kicad_pro (not a lone .kicad_pcb or a child sheet).
Other EDA tools still use a netlist + BOM path:
- A PADS-PCB ASCII netlist or an EDIF 2.0.0 netlist — the circuit's connectivity. BoardLab accepts
.asc,.net,.NET,.txt(PADS-PCB) and.edn,.edif,.edf(EDIF); the format is auto-detected from the file's first bytes. - A Bill of Materials (CSV or XLSX) — mapping each reference designator to a manufacturer part number.
- Optional with KiCad: the
.kicad_pcbbeside the.kicad_pro— placement, keepout, pair length, and net Z0.
Example files
New to BoardLab? Pick the .kicad_pro as the project file — that is what BoardLab expects. Companion .kicad_sch / .kicad_pcb files sit beside it; a zip should include the .kicad_pro at the project root.
From Phil's Lab' KiCad 9 TI MSPM0 tutorial you can also download these starter files (legacy PADS/CSV path for non-KiCad tools):
.kicad_pro— KiCad project file (preferred). Open the folder that contains it, or zip that folder so the archive includes the.kicad_pro.- TI-MSP-KICAD9-TUTORIAL.asc — netlist (alternate)
- TI-MSP-KICAD9-TUTORIAL.csv — BOM (alternate)
- TI-MSP-KICAD9-TUTORIAL-SCHEMATIC.pdf — schematic PDF (reference only; BoardLab does not need this)
The BOM section below shows the shape BoardLab is looking for when you are not on the KiCad folder path.
The BOM
BoardLab auto-detects BOM columns by header name. After upload you'll confirm which column holds designators and which holds part numbers, so the exact header names don't matter — only that these columns exist.
Required
- Designator / Reference — one row per part, or grouped references like
C1,C2,C5in a single row (BoardLab expands these automatically). - Manufacturer Part Number (MPN) — the full orderable part number. BoardLab uses this to look up datasheets, so
10uF 0805on its own is not enough — it needs e.g.GRM21BR61C106KE15L.
Recommended
- Value or Comment — passive values (
10uF,4.7k,8MHz). Used for passive value resolution and mismatch detection when the MPN can't be matched. - Footprint — used to enrich the design graph.
CSV and XLSX both work. For XLSX, the first worksheet is used.
The Netlist
BoardLab accepts either a PADS-PCB ASCII netlist or an EDIF 2.0.0 netlist — the upload form auto-detects which one you sent based on the file's first bytes, so you don't have to pick a format.
PADS-PCB ASCII
This is the default format most EDA tools can export. It looks like this:
*PADS-PCB*
*PART*
U1 LQFP48
C1 0402
...
*NET*
*SIGNAL* GND
U1.1 U1.48 C1.2
*SIGNAL* VCC
U1.24 C1.1
...
*END*
If your file starts with *PADS-PCB* and ends with *END*, you're good. Reference designators may contain spaces (e.g. CV GND) — BoardLab resolves them against your BOM.
Heads up — two different .asc files exist. PADS (and tools that interop with PADS, like Xpedition) use the .asc extension for two unrelated things:
- The schematic-exported netlist starts with
*PADS-PCB*and lists*PART*/*NET*sections. This is what BoardLab wants. - The full PCB layout dump starts with
!PADS-POWERPCB-V…and contains routing/footprint geometry. BoardLab cannot parse this.
If your upload errors with "No components found", check the first line of the file.
EDIF 2.0.0
EDIF is a vendor-neutral s-expression format. The first form is (edif …, with an (edifVersion 2 0 0) declaration near the top, libraries that define each cell's pin list, and a design library that lists (instance …) and (net …) forms. BoardLab has been verified against Siemens xDX Designer / DxDesigner exports; other EDIF 2.0.0 exporters (OrCAD, Altium, KiCad, Eagle) follow the same grammar and should work, but haven't been broadly tested. If your EDIF file doesn't parse, contact us and send a snippet — most fixes are small.
If your tool exports both PADS-PCB and EDIF, PADS-PCB is the path more users have validated; use EDIF when it's the only option.
Exporting from your EDA tool
Works with KiCad 7.x, 8.x, and 9.x.
Project file (preferred)
- In Finder (or your file manager), open the folder that holds
YourBoard.kicad_pro. - In BoardLab: Open KiCad project → choose that folder (or a zip of it). The archive must contain the
.kicad_pro. - BoardLab reads the root schematic, hierarchical sheets, and sibling
.kicad_pcbfrom there. No PADS netlist or CSV BOM export required.
Legacy netlist export (only if you cannot share the project folder)
- Open the schematic in eeschema.
- File → Export → Netlist…
- Select the PADS tab → Export Netlist.
- Save the resulting
.netfile and upload it with a BOM.
Legacy BOM
- In eeschema: Tools → Generate BOM…
- Use the built-in
bom_csv_grouped_by_value_with_fpplugin (or similar) — it produces a CSV with Reference, Value, Footprint, and any custom MPN field on your symbols. - If your symbols don't have an MPN field yet, add one via Edit → Edit Symbol Fields before generating the BOM.
Troubleshooting
- "No components found" — your netlist is missing the
*PART*section. Re-export specifically in PADS-PCB format (not Spice, Protel, or a generic text netlist). If the first line is!PADS-POWERPCB-V…, you uploaded the PCB layout dump instead of the schematic netlist — re-export from the schematic side. - "No ground net found" — your netlist has no net named
GND,VSS,AGND,DGND, or similar. If you exported a sub-sheet, re-export the top sheet instead. - Unresolved parts after the pipeline runs — a BOM row has no MPN, or the MPN wasn't found on DigiKey. Add the MPN, or rely on BoardLab's value fallback (fills in from the
Value/Commentcolumn).
The KiCad PCB (optional)
Drop the KiCad project folder (or a zip that contains the .kicad_pro) on Open KiCad project — BoardLab takes the sheets and the sibling .kicad_pcb if it is there. Start from the .kicad_pro, not a lone board or sheet file. You can also add the board later.
Still stuck? Contact us with your netlist and BOM attached and we'll take a look.