Skip to content

Commit beb6755

Browse files
committed
PCB project files
1 parent 6a9ef3c commit beb6755

23 files changed

+37932
-0
lines changed

hardware/hdmi_pcb/README.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
Adapted from https://github.com/wmi-0/wiihdmi/tree/master/hdmi_pcb/kicad
2+
3+
License: [GPL v3](https://github.com/wmi-0/wiihdmi/blob/master/LICENSE)
+102
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
(version 1)
2+
#Kicad 7
3+
4+
# 2-layer, 1oz copper
5+
(rule "Minimum Trace Width (outer layer)"
6+
(constraint track_width (min 5mil))
7+
(layer outer)
8+
(condition "A.Type == 'track'"))
9+
10+
(rule "Minimum Trace Spacing (outer layer)"
11+
(constraint clearance (min 5mil))
12+
(layer outer)
13+
(condition "A.Type == 'track' && B.Type == A.Type"))
14+
15+
# 4-layer
16+
(rule "Minimum Trace Width and Spacing (inner layer)"
17+
(constraint track_width (min 3.5mil))
18+
(layer inner)
19+
(condition "A.Type == 'track'"))
20+
21+
(rule "Minimum Trace Spacing (inner layer)"
22+
(constraint clearance (min 3.5mil))
23+
(layer inner)
24+
(condition "A.Type == 'track' && B.Type == A.Type"))
25+
26+
# silkscreen (Kicad 7 only)
27+
(rule "Minimum Text"
28+
(constraint text_thickness (min 0.15mm))
29+
(constraint text_height (min 1mm))
30+
(layer "?.Silkscreen"))
31+
32+
(rule "Pad to Silkscreen"
33+
(constraint silk_clearance (min 0.15mm))
34+
(layer outer)
35+
(condition "A.Type == 'pad' && (B.Type == 'text' || B.Type == 'graphic')"))
36+
37+
# edge clearance
38+
(rule "Trace to Outline"
39+
(constraint edge_clearance (min 0.3mm))
40+
(condition "A.Type == 'track'"))
41+
42+
# This would override board outline and milled areas
43+
#(rule "Trace to V-Cut"
44+
# (constraint clearance (min 0.4mm))
45+
# (condition "A.Type == 'track' && B.Layer == 'Edge.Cuts'"))
46+
47+
# drill/hole size
48+
(rule "drill hole size (mechanical)"
49+
(constraint hole_size (min 0.2mm) (max 6.3mm)))
50+
51+
(rule "Minimum Via Hole Size"
52+
(constraint hole_size (min 0.2mm))
53+
(condition "A.Type == 'via'"))
54+
55+
(rule "Minimum Via Diameter"
56+
(constraint via_diameter (min 0.45mm))
57+
(condition "A.Type == 'via'"))
58+
59+
(rule "PTH Hole Size"
60+
(constraint hole_size (min 0.2mm) (max 6.35mm))
61+
(condition "A.isPlated()"))
62+
63+
(rule "Minimum Non-plated Hole Size"
64+
(constraint hole_size (min 0.5mm))
65+
(condition "A.Type == 'pad' && !A.isPlated()"))
66+
67+
(rule "Minimum Castellated Hole Size"
68+
(constraint hole_size (min 0.6mm))
69+
(condition "A.Type == 'pad' && A.Fabrication_Property == 'Castellated pad'"))
70+
71+
# clearance
72+
(rule "hole to hole clearance (different nets)"
73+
(constraint hole_to_hole (min 0.5mm))
74+
(condition "A.Net != B.Net"))
75+
76+
(rule "via to track clearance"
77+
(constraint hole_clearance (min 0.254mm))
78+
(condition "A.Type == 'via' && B.Type == 'track'"))
79+
80+
(rule "via to via clearance (same nets)"
81+
(constraint hole_to_hole (min 0.254mm))
82+
(condition "A.Type == 'via' && B.Type == A.Type && A.Net == B.Net"))
83+
84+
(rule "pad to pad clearance (with hole, different nets)"
85+
(constraint hole_to_hole (min 0.5mm))
86+
(condition "A.Type == 'pad' && B.Type == A.Type && A.Net != B.Net"))
87+
88+
(rule "pad to pad clearance (without hole, different nets)"
89+
(constraint clearance (min 0.127mm))
90+
(condition "A.Type == 'pad' && B.Type == A.Type && A.Net != B.Net"))
91+
92+
(rule "NPTH to Track clearance)"
93+
(constraint hole_clearance (min 0.254mm))
94+
(condition "A.Pad_Type == 'NPTH, mechanical' && B.Type == 'track'"))
95+
96+
(rule "PTH to Track clearance)"
97+
(constraint hole_clearance (min 0.33mm))
98+
(condition "A.isPlated() && B.Type == 'track'"))
99+
100+
(rule "Pad to Track clearance)"
101+
(constraint clearance (min 0.2mm))
102+
(condition "A.isPlated() && B.Type == 'track'"))

hardware/hdmi_pcb/wii_hdmi_pcb.kicad_pcb

+4,644
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)