What CPL is
CPL stands for component placement list. Other names: pick-and-place file, XYZ file, position file. The pick-and-place machine reads this file to know where each component goes on the board.
Required columns
| Column | Description |
|---|---|
| Reference | R1, C2, U3 (matches the BOM and silkscreen) |
| X | X coordinate (mm) |
| Y | Y coordinate (mm) |
| Rotation | 0, 90, 180, 270 degrees |
| Side | Top or bottom |
| Footprint | 0402, 0603, SOT-23, etc. |
Optional but common: package origin reference, value, comment.
Rotation conventions vary
KiCad rotation, Altium rotation, Eagle rotation, and OrCAD rotation all use slightly different reference angles for the same component. A part exported from KiCad as 90 degrees may need to be reinterpreted as 270 degrees on the pick-and-place machine.
The pick-and-place machine uses one convention. Production engineering applies a per-EDA-tool transform when loading the CPL. Knowing which tool exported the CPL is useful information to include in the file metadata or filename.
Package origin convention
Most EDA tools place the X-Y origin at the package centroid. Some place it at pin 1. Some let the user pick. The pick-and-place machine assumes one convention; if your CPL uses the other, every component is offset by half its package size.
The fix: confirm your EDA tool's package origin convention before export, and document it in the CPL file or accompanying note.
Common CPL errors that delay placement
- Missing components: BOM lists component, CPL does not include placement
- Phantom components: CPL includes placement, no matching BOM row
- Wrong side: top component listed as bottom (or vice versa)
- Wrong rotation: exported in degrees, machine expects radians (or vice versa, with EDA tool quirks)
- Off-board placements: coordinates outside board outline
- Mixed units: some rows in mm, others in mils
A quick check before sending
- Open the CPL in a viewer that overlays it on your board outline
- Spot-check that each component is on the board, on the correct side, at sensible rotation
- Confirm count of placements matches BOM total quantity
- Note the EDA tool used for export