Schemas / Circuit / PCB
rig.pcb.footprint
v1.0.0 · stable maturity: draft 4 fields 0 required
Fields
| Field | Type | Meaning | |
|---|---|---|---|
library |
string | optional | Optional. Library item the footprint came from, as the source tool names it (Package_SO:SOIC-8_3.9x4.9mm_P1.27mm); absent = board-only |
side |
enumfront · back | optional | Optional. front, back; absent = front |
mount |
enumsmd · through-hole · other | optional | Optional. smd, through-hole, other; absent = other |
locked |
bool | optional | Optional. Placement is fixed; absent = false |
Board placement of a part. Format when present.
Compose on the rig.circuit.part entity, with rig.spatial.transform for position and rotation on the board. Pads are terminal children carrying rig.pcb.pad; silkscreen, courtyard, and fabrication drawings are children carrying geometry, paint, and rig.pcb.layer_set. Children are in part-local coordinates.
A back-side footprint's children already sit on back layers and in mirrored local coordinates - side records the fact; it does not ask a host to flip again.
3D model links, solder-mask and paste margins, and per-footprint clearances stay in the source file for now (rig.pcb.board source).
JSON Schema
Resolves at https://rig.works/schemas/rig.pcb.footprint.schema.json —
raw file.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://rig.works/schemas/rig.pcb.footprint.schema.json",
"title": "rig.pcb.footprint",
"type": "object",
"additionalProperties": false,
"properties": {
"library": {
"$ref": "./_defs.schema.json#/$defs/string"
},
"side": {
"type": "string",
"enum": [
"front",
"back"
]
},
"mount": {
"type": "string",
"enum": [
"smd",
"through-hole",
"other"
]
},
"locked": {
"$ref": "./_defs.schema.json#/$defs/bool"
}
},
"x-rig-maturity": "draft"
}