Centroid
The centroid, or pick-and-place file, tells us where every component goes: an X and Y position on the board, a rotation and a side, per designator. Together with the Gerbers and the Bill of Materials it is one of the three files we build your PCBA from, used for automatic and manual SMT placement as well as for THT parts.
Download the example centroid (csv)The example uses one of the many header spellings our import recognises. Your CAD tool's own export is just as good; there is no DeltaProto format for the centroid.
Example
The placements of the parts in the example BOM, in millimetres from the board origin, with R3, R4 and U3 on the bottom side. Click a header to read what the column is for.
| Designator | Center-X (mm) | Center-Y (mm) | Rotation | Side |
|---|---|---|---|---|
| C1 | 12.700 | 8.255 | 90 | Top |
| C2 | 15.240 | 8.255 | 90 | Top |
| C3 | 20.320 | 14.605 | 0 | Top |
| C4 | 22.860 | 14.605 | 0 | Top |
| L1 | 30.480 | 5.080 | 180 | Top |
| L2 | 33.020 | 5.080 | 180 | Top |
| R1 | 12.700 | 20.320 | 270 | Top |
| R2 | 15.240 | 20.320 | 270 | Top |
| R3 | 40.640 | 20.320 | 0 | Bottom |
| R4 | 43.180 | 20.320 | 0 | Bottom |
| U1 | 27.940 | 15.240 | 45 | Top |
| U2 | 27.940 | 27.940 | 45 | Top |
| U3 | 45.720 | 10.160 | 0 | Bottom |
| TP1 | 5.080 | 5.080 | 0 | Top |
| TP2 | 5.080 | 30.480 | 0 | Top |
Any export works
Export the pick-and-place file from your CAD tool as it comes. We recognise the exports of Altium (Pick and Place Locations, CSV and TXT), KiCad (.pos), Eagle (.lst), Ultiboard (.ctr) and FAB 3000 by their layout. Any other CSV, TXT or Excel export (Allegro, Mentor, OrCAD, EasyEDA, JLCPCB and others) imports as well, as long as its header row names the designator and the X and Y columns; we map the columns automatically. If you would like to know exactly what we read, see the column details.
Centroid from ODB++
An ODB++ archive is a good choice: it is a fixed, well-defined format, so there are no column names, units or decimal separators to interpret. We read designator, position, rotation, side, package and even the component outline straight from its component records, in millimetres. See BOM data from ODB++ for what the archive does and does not carry for the BOM.
Commas that are not escaped
A finding from recent imports: some CAD tools write a comma inside a value without putting the value in quotes, as a CSV file requires. A European decimal (1,5 mm), a thousands separator in a part number (16,000 MHz) or a comma in a description then splits one field into two, and every column after it shifts one place to the right. An inch mark inside a quoted value (10" AU) does the same in the other direction, swallowing the rows below it. From experience we know these mistakes, so our import checks the structure of every delimited file before reading it, reports the rows affected, and repairs them where the fix is unambiguous. Your file still imports; you do not have to edit it by hand.
Before you upload
- One row per placement, with the designator exactly as it appears in the BOM.
- X and Y are the centre of the component, not pin 1. Altium's Ref X and Pad X columns are ignored on purpose.
- Millimetres are the native unit; mil and inch exports are converted when the file says which unit it uses. A decimal comma is fine.
- Include the side column unless the board is single-sided, and a rotation column in degrees.
- Test points, fiducials and mounting holes may be in the centroid without being in the BOM; we expect that.