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_pcb beside 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):

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,C5 in 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 0805 on 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)

  1. In Finder (or your file manager), open the folder that holds YourBoard.kicad_pro.
  2. In BoardLab: Open KiCad project → choose that folder (or a zip of it). The archive must contain the .kicad_pro.
  3. BoardLab reads the root schematic, hierarchical sheets, and sibling .kicad_pcb from there. No PADS netlist or CSV BOM export required.

Legacy netlist export (only if you cannot share the project folder)

  1. Open the schematic in eeschema.
  2. File → Export → Netlist…
  3. Select the PADS tab → Export Netlist.
  4. Save the resulting .net file and upload it with a BOM.

Legacy BOM

  1. In eeschema: Tools → Generate BOM…
  2. Use the built-in bom_csv_grouped_by_value_with_fp plugin (or similar) — it produces a CSV with Reference, Value, Footprint, and any custom MPN field on your symbols.
  3. 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 / Comment column).

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.