Appearance
Design package and board model
Every DUT has a design package: the set of uploaded files Studio builds its board model from, with a role assigned to each file. The board model is the single parsed view of the board (layers, pads, nets, components, heights) that DFT analysis, test configs and fixture design read. Studio assigns roles automatically when files are uploaded; the Design package card on the DUT's Design Package tab shows what it decided and lets you correct it. The tab is visible to FixturFab staff only while the board-model build is being rolled out.
The card has three parts:
- A status line for the board model (see What the status line means) with History and Rebuild buttons.
- One row per file with its role in the build. A lock icon marks a role you set by hand; a derived badge marks a file Studio has extracted extra data from (STEP bodies, centroid rows).
- A Missing list: what the package still lacks, and what that costs the build. Hover a chip for the detail.
The DUT header carries a Board model chip (v1.0.0, building…, failed or not built).
What each role adds
| Role | File | What the build takes from it |
|---|---|---|
| ODB++ | ODB++ archive (.zip, .tgz) | The primary PCB source: layers, pads, nets, components, placement and solder-mask openings. Preferred when present. |
| IPC-2581 | IPC-2581 XML | A primary PCB source with the same content as ODB++. |
| Gerber | Gerber set (RS-274X / X2) | The primary PCB source when neither ODB++ nor IPC-2581 is available. Copper, mask and outline layers; components only from X2 attributes unless a centroid file is present. |
| Excellon drill | NC drill files | Holes and vias for the Gerber path. |
| IPC-D-356 netlist | .ipc, .356 | Net names and test points for the Gerber path. Without it, nets come from copper connectivity only. |
| Centroid (pick-and-place) | -pos.csv, Pick Place CSV/XLSX | Component positions, sides and rotations for the Gerber path. Without it, components come from Gerber X2 attributes only. |
| BOM | BOM spreadsheet | Component values, tolerances and do-not-populate flags. |
| STEP (3D) | .step, .stp | Component heights and keep-outs, matched to components by reference designator or position. |
| Schematic | Schematic PDF | Kept with the package; not used by the build. |
| Test point list | Test point CSV | Kept with the package; not used by the build. |
| Other (excluded) | Anything else | Not part of the build. |
One file at a time can hold each of the single-instance roles (ODB++, IPC-2581, Excellon drill, IPC-D-356, Centroid, BOM, STEP); a Gerber set can be several files. When a package holds both ODB++ and Gerbers, ODB++ wins: role priority runs in the order of the table above.
How to fix a mis-roled file
Automatic detection reads the file type and category Studio recorded at upload. A pick-and-place CSV that landed as Other, or a drill file detected as a Gerber, is corrected from the card:
- Open the DUT and switch to the Design Package tab.
- In the Design package card, change the file's Role dropdown. Each option shows what the build takes from that role.
- The row locks (lock icon) so automatic detection leaves it alone from now on, and a rebuild is queued.
If the role you picked is already held by another hand-set file, Studio refuses the change and names the file that holds it. Re-role that file first (to Other, or to its correct role), then try again.
To take a file out of the build without deleting it, use the exclude button on its row. The file stays on the DUT, listed as Other (excluded) and locked; give it a role again at any time.
What Rebuild does
Rebuild asks Studio to build the board model from the package's current files. Studio hashes the inputs first:
- If a ready model already exists for exactly these inputs, nothing is rebuilt and the card says the model is up to date. To run the builder again anyway (for example after a builder update), confirm the prompt; this forces a rebuild.
- Otherwise a build is queued. The status line shows Building board model… and the card re-reads the package every few seconds until the build lands. The previous model stays in use until the new one is ready.
- If the package has no PCB source (no ODB++, IPC-2581 or Gerber file), there is nothing to build and the button stays disabled.
Changing a role, excluding a file, or uploading a new version of a file queues a rebuild on its own; Rebuild is for when you want to start one by hand.
History lists every build for the package, newest first, with its status, builder version, component count, build time and inputs hash, and marks the one currently in use.
What the status line means
| Status line | Meaning |
|---|---|
| No board model yet | Nothing has been built. Upload a PCB source or click Rebuild. |
| Building board model… | A build is queued or running. The card polls until it finishes. |
| ready · 211 components · 198 heights from STEP · 34 heights unknown | The current model: how many components it holds, how many have a height (and where the height came from: STEP, the part library, or a default), and how many have no height at all. |
| Build failed: … | The last build did not complete; the message is the builder's error. Fix the input it names (often a mis-roled or unreadable file) and rebuild. |
A builder / parser version chip next to a ready model records which versions produced it, so two models of the same board can be compared like for like.