skill
PCB Design Rules
Public Made by Adomby adom
Canonical PCB fab design rules (DRC) for every popular vendor: one JSON record per vendor, process and layer count, with generated Fusion/EAGLE .dru and .edru, KiCad .kicad_dru plus board-setup JSON, Altium .RUL exports, and a human comparison table. Every number cites the vendor's own capabilities page and the date it was read.
main
John Lauer
Initial publish: canonical per-vendor PCB fab design rules. 13 vendors, 56 records (vendor, process, layer count) read…
bafc3ce
1mo ago
(version 1)
# Sierra Circuits 2-layer design rules (standard process)
#
# Min trace width: 0.1016 mm (4.0 mil) - STANDARD tier
# Min spacing: 0.1016 mm (4.0 mil) - STANDARD tier
# Min drill: 0.15 mm (5.9 mil)
# Min via: 0.15 mm hole / 0.4547 mm pad
# Annular ring: via 0.0254 mm
# Copper to board edge: 0.254 mm
# Board thickness options: 0.254 mm, 7.62 mm
# Copper weight options: 4 oz
# Surface finishes: HASL, Lead-Free HASL, OSP (Shikoku F2), OSP (Entek), ENIG, Immersion Silver, Electrolytic Soft Gold, Electrolytic Hard Gold, Selective Gold
# Max board size: 304.8 x 457.2 mm
#
# Values from the rigid PCB STANDARD tier table, published per process tier, not broken out by layer count, so 2-layer uses the same STANDARD values. Min board thickness 0.010 in (0.254 mm), max 0.300 in (7.62 mm). Max finished copper: outer layer 4 oz, inner layer 4 oz, min starting foil 3 microns. Min via pad derived from published process pad formula D plus 0.012 in, i.e. min drill 5.9 mil plus 12 mil. Annular ring 1 mil as stated in the process pad row. Max panel size STANDARD tier 12 x 18 in. Smallest laser drill 5 mil (0.127 mm), min finished hole 4 mil (0.102 mm). Solder mask registration 2 mil (0.0508 mm), solder mask feature tolerance 1.5 mil (0.0381 mm).
#
# Sources:
# - https://www.protoexpress.com/products/rigid-pcb/ (read 2026-09-03)
(rule "min-track-width"
(constraint track_width (min 0.1016mm))
(layer "*.Cu")
(condition "A.type == 'track'"))
(rule "min-clearance"
(constraint clearance (min 0.1016mm))
(condition "A.type == 'track' && B.type == 'track'"))
(rule "min-hole"
(constraint hole (min 0.15mm))
(condition "A.type == 'pad' || A.type == 'via'"))
(rule "min-via-diameter"
(constraint via_diameter (min 0.4547mm))
(condition "A.type == 'via'"))
(rule "min-edge-clearance"
(constraint edge_clearance (min 0.254mm))
(condition "A.type == 'track'"))