Browse Source

Initial commit.

Tomek Wójcik 4 years ago
commit
824f111ec5

+ 9 - 0
.gitignore

@@ -0,0 +1,9 @@
+.DS_Store
+*.bak
+*.swp
+
+*.pdf
+*.zip
+
+KiCad/*.kicad_pcb-bak
+KiCad/*.svg

+ 4 - 0
.gitmodules

@@ -0,0 +1,4 @@
+[submodule "qmk_firmware"]
+	path = qmk_firmware
+	url = https://github.com/tomekwojcik/qmk_firmware.git
+	branch = bthlabs_geekpad

BIN
Case 3D Models/GeekPad - Leg.stl


BIN
Case 3D Models/GeekPad - Plate.stl


+ 195 - 0
KiCad/GeekPad.cmp

@@ -0,0 +1,195 @@
+Cmp-Mod V01 Created by PcbNew   date = 2018 December 08, Saturday 11:39:52
+
+BeginCmp
+TimeStamp = 5C247A81
+Path = 
+Reference = REF**;
+ValeurCmp = RESET;
+IdModule  = Button_Switch_THT:Reset;
+EndCmp
+
+BeginCmp
+TimeStamp = 5C081AB8
+Path = 
+Reference = ProMicro;
+ValeurCmp = [NoVal];
+IdModule  = promicro:ProMicro;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02D03
+Path = 
+Reference = D8;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02CE5
+Path = 
+Reference = D7;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02CCE
+Path = 
+Reference = SW8;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02CB7
+Path = 
+Reference = SW7;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02C99
+Path = 
+Reference = D9;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02C82
+Path = 
+Reference = SW9;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02D03
+Path = 
+Reference = D5;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02CE5
+Path = 
+Reference = D4;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02CCE
+Path = 
+Reference = SW5;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02CB7
+Path = 
+Reference = SW4;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02C99
+Path = 
+Reference = D3;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02C82
+Path = 
+Reference = SW6;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF029FF
+Path = 
+Reference = D3;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF029E8
+Path = 
+Reference = SW3;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF029FF
+Path = 
+Reference = D2;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF029E8
+Path = 
+Reference = SW2;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF02667
+Path = 
+Reference = SW1;
+ValeurCmp = [NoVal];
+IdModule  = Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BF028A1
+Path = 
+Reference = D1;
+ValeurCmp = [NoVal];
+IdModule  = Diode_THT:D_5W_P10.16mm_Horizontal;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BFC8152
+Path = 
+Reference = [NoRef];
+ValeurCmp = [NoVal];
+IdModule  = MountingHole:MountingHole_3.2mm_M3;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BFC81A4
+Path = 
+Reference = [NoRef];
+ValeurCmp = [NoVal];
+IdModule  = MountingHole:MountingHole_3.2mm_M3;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BFC8248
+Path = 
+Reference = [NoRef];
+ValeurCmp = [NoVal];
+IdModule  = MountingHole:MountingHole_3.2mm_M3;
+EndCmp
+
+BeginCmp
+TimeStamp = 5BFC8257
+Path = 
+Reference = [NoRef];
+ValeurCmp = [NoVal];
+IdModule  = MountingHole:MountingHole_3.2mm_M3;
+EndCmp
+
+EndListe

+ 1426 - 0
KiCad/GeekPad.kicad_pcb

@@ -0,0 +1,1426 @@
+(kicad_pcb (version 20171130) (host pcbnew "(5.0.1-3-g963ef8bb5)")
+
+  (general
+    (thickness 1.6)
+    (drawings 189)
+    (tracks 173)
+    (zones 0)
+    (modules 24)
+    (nets 1)
+  )
+
+  (page A4)
+  (layers
+    (0 F.Cu signal)
+    (31 B.Cu signal)
+    (32 B.Adhes user)
+    (33 F.Adhes user)
+    (34 B.Paste user)
+    (35 F.Paste user)
+    (36 B.SilkS user)
+    (37 F.SilkS user)
+    (38 B.Mask user)
+    (39 F.Mask user)
+    (40 Dwgs.User user)
+    (41 Cmts.User user)
+    (42 Eco1.User user)
+    (43 Eco2.User user)
+    (44 Edge.Cuts user)
+    (45 Margin user)
+    (46 B.CrtYd user)
+    (47 F.CrtYd user)
+    (48 B.Fab user)
+    (49 F.Fab user)
+  )
+
+  (setup
+    (last_trace_width 0.5)
+    (trace_clearance 0.2)
+    (zone_clearance 0.508)
+    (zone_45_only no)
+    (trace_min 0.2)
+    (segment_width 0.2)
+    (edge_width 0.15)
+    (via_size 1.4)
+    (via_drill 0.5)
+    (via_min_size 0.4)
+    (via_min_drill 0.3)
+    (uvia_size 0.3)
+    (uvia_drill 0.1)
+    (uvias_allowed no)
+    (uvia_min_size 0.2)
+    (uvia_min_drill 0.1)
+    (pcb_text_width 0.3)
+    (pcb_text_size 1.5 1.5)
+    (mod_edge_width 0.15)
+    (mod_text_size 1 1)
+    (mod_text_width 0.15)
+    (pad_size 2.1 2.1)
+    (pad_drill 1.1)
+    (pad_to_mask_clearance 0.051)
+    (solder_mask_min_width 0.25)
+    (aux_axis_origin 0 0)
+    (visible_elements FFFFF77F)
+    (pcbplotparams
+      (layerselection 0x010fc_ffffffff)
+      (usegerberextensions false)
+      (usegerberattributes false)
+      (usegerberadvancedattributes false)
+      (creategerberjobfile false)
+      (excludeedgelayer true)
+      (linewidth 0.100000)
+      (plotframeref false)
+      (viasonmask false)
+      (mode 1)
+      (useauxorigin false)
+      (hpglpennumber 1)
+      (hpglpenspeed 20)
+      (hpglpendiameter 15.000000)
+      (psnegative false)
+      (psa4output false)
+      (plotreference true)
+      (plotvalue true)
+      (plotinvisibletext false)
+      (padsonsilk false)
+      (subtractmaskfromsilk false)
+      (outputformat 1)
+      (mirror false)
+      (drillshape 1)
+      (scaleselection 1)
+      (outputdirectory ""))
+  )
+
+  (net 0 "")
+
+  (net_class Default "This is the default net class."
+    (clearance 0.2)
+    (trace_width 0.5)
+    (via_dia 1.4)
+    (via_drill 0.5)
+    (uvia_dia 0.3)
+    (uvia_drill 0.1)
+  )
+
+  (module Button_Switch_THT:Reset (layer F.Cu) (tedit 5C0BA0CC) (tstamp 5C247A81)
+    (at 39.37 65.278)
+    (descr https://www.omron.com/ecb/products/pdf/en-b3f.pdf)
+    (tags "tact sw push 6mm")
+    (fp_text reference RESET (at -2.30632 1.88976 90) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value RESET (at 2.413 2.286 270) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -1.2446 5.99948) (end 1.26492 5.99948) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.27 6) (end 1.52 6) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.524 6) (end 1.524 5.75) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.27 -1.5) (end 1.52 -1.5) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.524 -1.5) (end 1.524 -1.25) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.5 -1.25) (end -1.5 -1.5) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.5 -1.5) (end -1.25 -1.5) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.5 5.75) (end -1.5 6) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.5 6) (end -1.25 6) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.25 -1.5) (end 1.2954 -1.4986) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.5 5.75) (end -1.5 -1.25) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.524 -1.25) (end 1.524 5.75) (layer F.CrtYd) (width 0.05))
+    (pad 2 thru_hole circle (at 0 4.5 90) (size 2.1 2.1) (drill 1.1) (layers *.Cu *.Mask))
+    (pad 1 thru_hole circle (at 0 0 90) (size 2.1 2.1) (drill 1.1) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_THT.3dshapes/SW_PUSH_6mm.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module promicro:ProMicro (layer B.Cu) (tedit 5BF4FEF5) (tstamp 5C081AB8)
+    (at 49.0728 31.5214 270)
+    (descr "Pro Micro footprint")
+    (tags "promicro ProMicro")
+    (fp_text reference ProMicro (at 0 10.16 270) (layer B.SilkS) hide
+      (effects (font (size 1 1) (thickness 0.15)) (justify mirror))
+    )
+    (fp_text value "" (at 0 -10.16 270) (layer B.Fab)
+      (effects (font (size 1 1) (thickness 0.15)) (justify mirror))
+    )
+    (fp_line (start -15.24 3.81) (end -15.24 -3.81) (layer F.SilkS) (width 0.15))
+    (fp_line (start -15.24 -3.81) (end -15.24 3.81) (layer B.SilkS) (width 0.15))
+    (fp_line (start 15.24 8.89) (end 15.24 -8.89) (layer F.SilkS) (width 0.15))
+    (fp_line (start 15.24 -8.89) (end -15.24 -8.89) (layer F.SilkS) (width 0.15))
+    (fp_line (start -15.24 -8.89) (end -15.24 -3.81) (layer F.SilkS) (width 0.15))
+    (fp_line (start -15.24 3.81) (end -15.24 8.89) (layer F.SilkS) (width 0.15))
+    (fp_line (start -15.24 8.89) (end 15.24 8.89) (layer F.SilkS) (width 0.15))
+    (fp_line (start -15.24 -8.89) (end 15.24 -8.89) (layer B.SilkS) (width 0.15))
+    (fp_line (start -15.24 -8.89) (end -15.24 -3.81) (layer B.SilkS) (width 0.15))
+    (fp_line (start -15.24 3.81) (end -15.24 8.89) (layer B.SilkS) (width 0.15))
+    (fp_line (start -15.24 8.89) (end 15.24 8.89) (layer B.SilkS) (width 0.15))
+    (fp_line (start 15.24 8.89) (end 15.24 -8.89) (layer B.SilkS) (width 0.15))
+    (pad 1 thru_hole rect (at -13.97 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 2 thru_hole circle (at -11.43 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 3 thru_hole circle (at -8.89 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 4 thru_hole circle (at -6.35 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 5 thru_hole circle (at -3.81 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 6 thru_hole circle (at -1.27 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 7 thru_hole circle (at 1.27 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 8 thru_hole circle (at 3.81 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 9 thru_hole circle (at 6.35 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 10 thru_hole circle (at 8.89 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 11 thru_hole circle (at 11.43 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 12 thru_hole circle (at 13.97 -7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 13 thru_hole circle (at 13.97 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 14 thru_hole circle (at 11.43 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 15 thru_hole circle (at 8.89 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 16 thru_hole circle (at 6.35 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 17 thru_hole circle (at 3.81 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 18 thru_hole circle (at 1.27 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 19 thru_hole circle (at -1.27 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 20 thru_hole circle (at -3.81 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 21 thru_hole circle (at -6.35 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 22 thru_hole circle (at -8.89 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 23 thru_hole circle (at -11.43 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+    (pad 24 thru_hole circle (at -13.97 7.62 270) (size 2.1 2.1) (drill 1.1) (layers F.Cu F.Mask))
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3D2B0) (tstamp 5BF02D03)
+    (at 44.1452 77.2668)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D8 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3D29F) (tstamp 5BF02CE5)
+    (at 25.0952 77.2668)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D7 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF54) (tstamp 5BF02CCE)
+    (at 51.4604 62.8904)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW8 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF44) (tstamp 5BF02CB7)
+    (at 32.4104 62.8904)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW7 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3D2C2) (tstamp 5BF02C99)
+    (at 63.1952 77.2668)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D9 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF69) (tstamp 5BF02C82)
+    (at 70.5104 62.8904)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW9 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3D227) (tstamp 5BF02D03)
+    (at 44.1452 58.2168)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D5 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3D220) (tstamp 5BF02CE5)
+    (at 25.0952 58.2168)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D4 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FFA4) (tstamp 5BF02CCE)
+    (at 51.4604 43.8404)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW5 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF2F) (tstamp 5BF02CB7)
+    (at 32.4104 43.8404)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW4 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3D0FF) (tstamp 5BF02C99)
+    (at 63.1952 58.2168)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D3 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF7B) (tstamp 5BF02C82)
+    (at 70.5104 43.8404)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW6 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3D0FF) (tstamp 5BF029FF)
+    (at 63.1952 39.1668)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D3 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF8C) (tstamp 5BF029E8)
+    (at 70.5104 24.7904)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW3 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BF4FE4B) (tstamp 5BF029FF)
+    (at 44.1452 39.1668)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D2 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers B.Cu B.Mask))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers B.Cu B.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF96) (tstamp 5BF029E8)
+    (at 51.4604 24.7904)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW2 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Button_Switch_Keyboard:SW_Cherry_MX1A_1.00u_Plate (layer F.Cu) (tedit 5BF4FF24) (tstamp 5BF02667)
+    (at 32.4104 24.7904)
+    (descr "Cherry MX keyswitch, MX1A, 1.00u, plate mount, http://cherryamericas.com/wp-content/uploads/2014/12/mx_cat.pdf")
+    (tags "cherry mx keyswitch MX1A 1.00u plate")
+    (fp_text reference SW1 (at -2.54 1.794) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at -2.54 12.954) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start -9.525 12.065) (end -9.525 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 12.065) (end -9.525 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start 4.445 -1.905) (end 4.445 12.065) (layer F.SilkS) (width 0.12))
+    (fp_line (start -9.525 -1.905) (end 4.445 -1.905) (layer F.SilkS) (width 0.12))
+    (fp_line (start -12.065 14.605) (end -12.065 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 14.605) (end -12.065 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start 6.985 -4.445) (end 6.985 14.605) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -12.065 -4.445) (end 6.985 -4.445) (layer Dwgs.User) (width 0.15))
+    (fp_line (start -9.14 -1.52) (end 4.06 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 -1.52) (end 4.06 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 4.06 11.68) (end -9.14 11.68) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -9.14 11.68) (end -9.14 -1.52) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -8.89 11.43) (end -8.89 -1.27) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 11.43) (end -8.89 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start 3.81 -1.27) (end 3.81 11.43) (layer F.Fab) (width 0.15))
+    (fp_line (start -8.89 -1.27) (end 3.81 -1.27) (layer F.Fab) (width 0.15))
+    (fp_text user %R (at -2.54 1.794) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad "" np_thru_hole circle (at -2.54 5.08) (size 4 4) (drill 4) (layers *.Cu *.Mask))
+    (pad 2 thru_hole circle (at -6.35 2.54) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (pad 1 thru_hole circle (at 0 0) (size 2.5 2.5) (drill 1.5) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Button_Switch_Keyboard.3dshapes/SW_Cherry_MX1A_1.00u_Plate.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module Diode_THT:D_5W_P10.16mm_Horizontal (layer F.Cu) (tedit 5BE3CF8D) (tstamp 5BF028A1)
+    (at 25.0952 39.1668)
+    (descr "Diode, 5W series, Axial, Horizontal, pin pitch=10.16mm, , length*diameter=8.9*3.7mm^2, , http://www.diodes.com/_files/packages/8686949.gif")
+    (tags "Diode 5W series Axial Horizontal pin pitch 10.16mm  length 8.9mm diameter 3.7mm")
+    (fp_text reference D1 (at 5.08 -2.97) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 5.08 2.97) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user K (at 0 -2.4) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text user %R (at 5.7475 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_line (start 11.81 -2.1) (end -1.65 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 11.81 2.1) (end 11.81 -2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 2.1) (end 11.81 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start -1.65 -2.1) (end -1.65 2.1) (layer F.CrtYd) (width 0.05))
+    (fp_line (start 1.845 -1.97) (end 1.845 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 2.085 -1.97) (end 2.085 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.965 -1.97) (end 1.965 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 1.97) (end 9.65 1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.97) (end 9.65 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 1.64) (end 0.51 1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 9.65 -1.97) (end 9.65 -1.64) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.97) (end 9.65 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 0.51 -1.64) (end 0.51 -1.97) (layer F.SilkS) (width 0.12))
+    (fp_line (start 1.865 -1.85) (end 1.865 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 2.065 -1.85) (end 2.065 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 1.965 -1.85) (end 1.965 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 10.16 0) (end 9.53 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 0 0) (end 0.63 0) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 -1.85) (end 0.63 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 9.53 1.85) (end 9.53 -1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 1.85) (end 9.53 1.85) (layer F.Fab) (width 0.1))
+    (fp_line (start 0.63 -1.85) (end 0.63 1.85) (layer F.Fab) (width 0.1))
+    (pad 2 thru_hole oval (at 10.16 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (pad 1 thru_hole rect (at 0 0) (size 2.8 2.8) (drill 1.4) (layers *.Cu *.Mask))
+    (model ${KISYS3DMOD}/Diode_THT.3dshapes/D_5W_P10.16mm_Horizontal.wrl
+      (at (xyz 0 0 0))
+      (scale (xyz 1 1 1))
+      (rotate (xyz 0 0 0))
+    )
+  )
+
+  (module MountingHole:MountingHole_3.2mm_M3 (layer F.Cu) (tedit 5BF021B6) (tstamp 5BFC8152)
+    (at 19.05 19.05)
+    (descr "Mounting Hole 3.2mm, no annular, M3")
+    (tags "mounting hole 3.2mm no annular m3")
+    (attr virtual)
+    (fp_text reference "" (at 0 -4.2) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 0 4.2) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_circle (center 0 0) (end 3.45 0) (layer F.CrtYd) (width 0.05))
+    (fp_circle (center 0 0) (end 3.2 0) (layer Cmts.User) (width 0.15))
+    (fp_text user %R (at 0.3 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 np_thru_hole circle (at 0 0) (size 3.2 3.2) (drill 3.2) (layers *.Cu *.Mask))
+  )
+
+  (module MountingHole:MountingHole_3.2mm_M3 (layer F.Cu) (tedit 5BF021D8) (tstamp 5BFC81A4)
+    (at 78.74 19.05)
+    (descr "Mounting Hole 3.2mm, no annular, M3")
+    (tags "mounting hole 3.2mm no annular m3")
+    (attr virtual)
+    (fp_text reference "" (at 0 -4.2) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 0 4.2) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_circle (center 0 0) (end 3.45 0) (layer F.CrtYd) (width 0.05))
+    (fp_circle (center 0 0) (end 3.2 0) (layer Cmts.User) (width 0.15))
+    (fp_text user %R (at 0.3 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 np_thru_hole circle (at 0 0) (size 3.2 3.2) (drill 3.2) (layers *.Cu *.Mask))
+  )
+
+  (module MountingHole:MountingHole_3.2mm_M3 (layer F.Cu) (tedit 5BF0228D) (tstamp 5BFC8248)
+    (at 78.74 78.74)
+    (descr "Mounting Hole 3.2mm, no annular, M3")
+    (tags "mounting hole 3.2mm no annular m3")
+    (attr virtual)
+    (fp_text reference "" (at 0 -4.2) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 0 4.2) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_circle (center 0 0) (end 3.45 0) (layer F.CrtYd) (width 0.05))
+    (fp_circle (center 0 0) (end 3.2 0) (layer Cmts.User) (width 0.15))
+    (fp_text user %R (at 0.3 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 np_thru_hole circle (at 0 0) (size 3.2 3.2) (drill 3.2) (layers *.Cu *.Mask))
+  )
+
+  (module MountingHole:MountingHole_3.2mm_M3 (layer F.Cu) (tedit 5BF02268) (tstamp 5BFC8257)
+    (at 19.05 78.74)
+    (descr "Mounting Hole 3.2mm, no annular, M3")
+    (tags "mounting hole 3.2mm no annular m3")
+    (attr virtual)
+    (fp_text reference "" (at 0 -4.2) (layer F.SilkS)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_text value "" (at 0 4.2) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (fp_circle (center 0 0) (end 3.45 0) (layer F.CrtYd) (width 0.05))
+    (fp_circle (center 0 0) (end 3.2 0) (layer Cmts.User) (width 0.15))
+    (fp_text user %R (at 0.3 0) (layer F.Fab)
+      (effects (font (size 1 1) (thickness 0.15)))
+    )
+    (pad 1 np_thru_hole circle (at 0 0) (size 3.2 3.2) (drill 3.2) (layers *.Cu *.Mask))
+  )
+
+  (gr_line (start 15.494 82.296) (end 15.494 15.494) (layer Edge.Cuts) (width 0.15))
+  (gr_line (start 82.296 82.296) (end 15.494 82.296) (layer Edge.Cuts) (width 0.15))
+  (gr_line (start 82.296 15.494) (end 82.296 82.296) (layer Edge.Cuts) (width 0.15))
+  (gr_line (start 15.494 15.494) (end 82.296 15.494) (layer Edge.Cuts) (width 0.15))
+  (gr_text "GeekPad V1 R2 by BTHLabs" (at 78.74 49.022 90) (layer B.Cu)
+    (effects (font (size 1.5 1.5) (thickness 0.3)) (justify mirror))
+  )
+  (gr_line (start 41.91195 65.0766) (end 41.91195 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 60.9769) (end 22.86056 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 74.97641) (end 55.91135 74.97641) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 73.97597) (end 56.71215 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 42.9259) (end 36.86145 41.9269) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 42.9259) (end 36.86145 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 70.8767) (end 55.91135 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 26.9765) (end 75.76215 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 26.9765) (end 75.76215 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 32.7755) (end 74.96135 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 26.9765) (end 56.71215 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 32.7755) (end 55.91135 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 32.7755) (end 55.91135 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 73.97597) (end 60.96205 74.97641) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 73.97597) (end 60.96205 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 82.48675 82.501881) (end 15.336457 82.501881) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 32.7755) (end 74.96135 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 35.876) (end 75.76215 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 35.876) (end 75.76215 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 36.8765) (end 74.96135 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 36.8765) (end 74.96135 36.8765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 35.876) (end 60.96205 36.8765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 35.876) (end 60.96205 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 32.7755) (end 60.16125 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 32.7755) (end 60.16125 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 26.9765) (end 60.96205 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 26.9765) (end 60.96205 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 23.8759) (end 60.16125 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 23.8759) (end 60.16125 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 22.8755) (end 60.96205 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 22.8755) (end 41.91195 22.8755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 23.8759) (end 55.91135 22.8755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 23.8759) (end 55.91135 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 26.9765) (end 56.71215 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 51.8267) (end 55.91135 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 54.926) (end 56.71215 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 54.926) (end 56.71215 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 55.9264) (end 55.91135 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 55.9264) (end 55.91135 55.9264) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 42.9259) (end 22.0599 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 42.9259) (end 22.0599 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 46.0265) (end 22.86056 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 46.0265) (end 22.86056 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 51.8267) (end 22.0599 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 51.8267) (end 22.0599 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 55.9264) (end 36.86145 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 55.9264) (end 36.86145 55.9264) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 54.926) (end 37.66205 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 54.926) (end 37.66205 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 22.8755) (end 60.96205 22.8755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 23.8759) (end 74.96135 22.8755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 23.8759) (end 74.96135 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 60.9769) (end 60.96205 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 65.0766) (end 37.66205 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 61.976) (end 55.91135 60.9769) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 60.9769) (end 41.91195 60.9769) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 61.976) (end 60.16125 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 73.97597) (end 22.86056 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 51.8267) (end 36.86145 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 51.8267) (end 36.86145 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 46.0265) (end 37.66205 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 46.0265) (end 37.66205 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 65.0766) (end 56.71215 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 70.8767) (end 22.0599 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 15.336457 15.3514) (end 82.48675 15.3514) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 70.8767) (end 74.96135 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 70.8767) (end 74.96135 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 65.0766) (end 22.86056 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 70.8767) (end 36.86145 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 54.926) (end 22.86056 55.9264) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 54.926) (end 22.86056 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 51.8267) (end 74.96135 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 54.926) (end 75.76215 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 54.926) (end 75.76215 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 55.9264) (end 74.96135 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 55.9264) (end 74.96135 55.9264) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 54.926) (end 60.96205 55.9264) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 54.926) (end 60.96205 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 51.8267) (end 60.16125 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 51.8267) (end 60.16125 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 46.0265) (end 60.96205 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 46.0265) (end 60.96205 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 42.9259) (end 60.16125 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 42.9259) (end 60.16125 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 41.9269) (end 60.96205 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 41.9269) (end 41.91195 41.9269) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 42.9259) (end 55.91135 41.9269) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 42.9259) (end 55.91135 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 74.97641) (end 36.86145 74.97641) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 61.976) (end 74.96135 60.9769) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 61.976) (end 74.96135 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 65.0766) (end 37.66205 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 70.8767) (end 36.86145 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 70.8767) (end 55.91135 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 15.336457 82.501881) (end 15.336457 15.3514) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 54.926) (end 41.91195 55.9264) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 54.926) (end 41.91195 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 51.8267) (end 41.11125 54.926) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 61.976) (end 36.86145 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 65.0766) (end 22.86056 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 60.9769) (end 22.86056 60.9769) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 61.976) (end 22.0599 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 41.9269) (end 22.86056 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 60.9769) (end 60.96205 60.9769) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 35.876) (end 37.66205 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 36.8765) (end 36.86145 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 36.8765) (end 36.86145 36.8765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 35.876) (end 22.86056 36.8765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 35.876) (end 22.86056 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 32.7755) (end 22.0599 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 61.976) (end 55.91135 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 65.0766) (end 56.71215 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 82.48675 15.3514) (end 82.48675 82.501881) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 35.876) (end 56.71215 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 35.876) (end 56.71215 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 36.8765) (end 55.91135 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 36.8765) (end 55.91135 36.8765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 35.876) (end 41.91195 36.8765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 35.876) (end 41.91195 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 32.7755) (end 41.11125 35.876) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 32.7755) (end 41.11125 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 26.9765) (end 41.91195 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 26.9765) (end 41.91195 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 23.8759) (end 41.11125 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 23.8759) (end 41.11125 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 22.8755) (end 41.91195 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 22.8755) (end 22.86056 22.8755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 23.8759) (end 36.86145 22.8755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 23.8759) (end 36.86145 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 56.71215 46.0265) (end 56.71215 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 46.0265) (end 56.71215 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 51.8267) (end 55.91135 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 46.0265) (end 75.76215 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 46.0265) (end 75.76215 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 51.8267) (end 74.96135 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 73.97597) (end 41.91195 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 61.976) (end 36.86145 60.9769) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 61.976) (end 41.11125 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 70.8767) (end 22.0599 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 70.8767) (end 41.11125 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 51.8267) (end 41.11125 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 46.0265) (end 41.91195 51.8267) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 46.0265) (end 41.91195 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 70.8767) (end 41.11125 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 74.97641) (end 55.91135 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 65.0766) (end 60.96205 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 65.0766) (end 60.96205 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 65.0766) (end 75.76215 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 65.0766) (end 75.76215 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 61.976) (end 41.11125 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 42.9259) (end 41.11125 46.0265) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 42.9259) (end 41.11125 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 60.9769) (end 41.91195 61.976) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 74.97641) (end 36.86145 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 73.97597) (end 41.91195 74.97641) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 73.97597) (end 22.86056 74.97641) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.91195 41.9269) (end 41.91195 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 41.9269) (end 22.86056 41.9269) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 23.8759) (end 22.0599 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 23.8759) (end 22.0599 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 22.8755) (end 22.86056 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 41.9269) (end 60.96205 41.9269) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 42.9259) (end 74.96135 41.9269) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 42.9259) (end 74.96135 42.9259) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 74.97641) (end 74.96135 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 74.97641) (end 74.96135 74.97641) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 73.97597) (end 37.66205 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 26.9765) (end 37.66205 23.8759) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 26.9765) (end 37.66205 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 36.86145 32.7755) (end 36.86145 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 32.7755) (end 36.86145 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 35.876) (end 37.66205 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 55.91135 73.97597) (end 56.71215 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 75.76215 73.97597) (end 75.76215 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 74.96135 73.97597) (end 75.76215 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 70.8767) (end 60.16125 73.97597) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.96205 70.8767) (end 60.16125 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 37.66205 73.97597) (end 37.66205 70.8767) (layer Eco1.User) (width 0.2))
+  (gr_line (start 60.16125 61.976) (end 60.16125 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 32.7755) (end 22.0599 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.86056 26.9765) (end 22.86056 32.7755) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 26.9765) (end 22.86056 26.9765) (layer Eco1.User) (width 0.2))
+  (gr_line (start 41.11125 65.0766) (end 41.91195 65.0766) (layer Eco1.User) (width 0.2))
+  (gr_line (start 22.0599 61.976) (end 22.0599 65.0766) (layer Eco1.User) (width 0.2))
+
+  (segment (start 35.052 24.7904) (end 32.4104 24.7904) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 35.2552 24.9936) (end 35.052 24.7904) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 35.2552 39.1668) (end 35.2552 24.9936) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 54.3052 25.0952) (end 54.0004 24.7904) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 54.0004 24.7904) (end 51.4604 24.7904) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 54.3052 39.1668) (end 54.3052 25.0952) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 35.052 43.8404) (end 32.4104 43.8404) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C79))
+  (segment (start 35.2552 44.0436) (end 35.052 43.8404) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7A))
+  (segment (start 54.0004 43.8404) (end 51.4604 43.8404) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7C))
+  (segment (start 35.2552 58.2168) (end 35.2552 44.0436) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7D))
+  (segment (start 54.3052 44.1452) (end 54.0004 43.8404) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7E))
+  (segment (start 54.3052 58.2168) (end 54.3052 44.1452) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7F))
+  (segment (start 72.9996 24.7904) (end 70.5104 24.7904) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 73.3552 25.146) (end 72.9996 24.7904) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 73.3552 39.1668) (end 73.3552 25.146) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 72.9488 43.8404) (end 70.5104 43.8404) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 73.3552 44.2468) (end 72.9488 43.8404) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 73.3552 58.2168) (end 73.3552 44.2468) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 35.052 62.8904) (end 32.4104 62.8904) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C79))
+  (segment (start 35.2552 63.0936) (end 35.052 62.8904) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7A))
+  (segment (start 54.0004 62.8904) (end 51.4604 62.8904) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7C))
+  (segment (start 35.2552 77.2668) (end 35.2552 63.0936) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7D))
+  (segment (start 54.3052 63.1952) (end 54.0004 62.8904) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7E))
+  (segment (start 54.3052 77.2668) (end 54.3052 63.1952) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BF02C7F))
+  (segment (start 73.3552 63.3476) (end 73.3552 77.2668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 72.898 62.8904) (end 73.3552 63.3476) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 70.5104 62.8904) (end 72.898 62.8904) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 67.31 62.2808) (end 64.1604 65.4304) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 67.31 56.4642) (end 67.31 62.2808) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 64.1604 53.3146) (end 67.31 56.4642) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 64.1604 46.3804) (end 64.1604 53.3146) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 24.892 58.42) (end 25.0952 58.2168) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 21.336 58.42) (end 21.336 58.42) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 23.4452 39.1668) (end 25.0952 39.1668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 21.336 41.276) (end 23.4452 39.1668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 21.336 55.88) (end 21.336 55.88) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 23.4452 77.2668) (end 25.0952 77.2668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 21.336 75.1576) (end 23.4452 77.2668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 21.336 60.96) (end 21.336 60.96) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 26.0604 27.3304) (end 26.0604 21.6154) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 26.3398 21.336) (end 46.355 21.336) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 26.0604 21.6154) (end 26.3398 21.336) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.1104 25.1206) (end 45.466 24.765) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.1104 27.3304) (end 45.1104 25.1206) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.466 24.765) (end 48.895 24.765) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 48.895 24.765) (end 48.895 21.59) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 58.166 21.336) (end 64.1604 27.3304) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 51.435 21.336) (end 51.435 21.336) (width 0.5) (layer B.Cu) (net 0))
+  (via (at 21.336 55.88) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 21.336 58.42) (end 24.892 58.42) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BEFCBBF))
+  (via (at 21.336 58.42) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 21.336 60.96) (end 21.336 75.1576) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BEFCBC1))
+  (via (at 21.336 60.96) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 46.355 21.336) (end 46.355 21.336) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BEFCBC3))
+  (via (at 46.355 21.336) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 48.895 21.59) (end 48.895 21.336) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BEFCBC5))
+  (via (at 48.895 21.59) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 51.435 21.336) (end 58.166 21.336) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BEFCBC7))
+  (via (at 51.435 21.336) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 51.435 21.336) (end 54.61 21.336) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 54.61 21.336) (end 54.61 27.686) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 54.6354 27.7114) (end 56.6928 27.7114) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 54.61 27.686) (end 54.6354 27.7114) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 48.895 22.579949) (end 49.022 22.706949) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 48.895 21.59) (end 48.895 22.579949) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 49.022 22.706949) (end 49.022 26.924) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 49.022 26.924) (end 53.34 26.924) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 53.34 26.924) (end 53.34 30.226) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 53.3654 30.2514) (end 56.6928 30.2514) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 53.34 30.226) (end 53.3654 30.2514) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 46.355 21.336) (end 43.688 21.336) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 43.688 21.336) (end 43.18 21.844) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 56.6928 32.7914) (end 43.2054 32.7914) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 43.18 32.766) (end 43.18 21.844) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 43.2054 32.7914) (end 43.18 32.766) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 21.336 55.88) (end 21.336 24.384) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 21.336 24.384) (end 22.86 22.86) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 41.4528 27.7114) (end 39.9034 27.7114) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 39.9034 27.7114) (end 39.9034 24.1554) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 39.9034 24.1554) (end 38.608 22.86) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 38.608 22.86) (end 22.86 22.86) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 21.336 58.42) (end 22.86 58.42) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 22.86 58.42) (end 22.86 35.052) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 22.86 35.052) (end 24.892 33.02) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 24.892 33.02) (end 33.02 33.02) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 33.02 33.02) (end 35.814 30.226) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 35.8394 30.2514) (end 41.4528 30.2514) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 35.814 30.226) (end 35.8394 30.2514) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 38.8366 32.7914) (end 41.4528 32.7914) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 37.846 33.782) (end 38.8366 32.7914) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 36.322 52.832) (end 37.846 51.308) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 27.94 59.944) (end 27.94 54.102) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 27.94 54.102) (end 29.21 52.832) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 37.846 51.308) (end 37.846 33.782) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 26.924 60.96) (end 27.94 59.944) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 29.21 52.832) (end 36.322 52.832) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 21.336 60.96) (end 26.924 60.96) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 21.336 55.88) (end 21.336 41.276) (width 0.5) (layer B.Cu) (net 0) (tstamp 5BEFCBBD))
+  (segment (start 25.0952 41.0972) (end 25.0952 39.1668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 25.654 41.656) (end 25.0952 41.0972) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 63.1952 41.0668) (end 62.606 41.656) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 63.1952 39.1668) (end 63.1952 41.0668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.1452 39.1668) (end 44.1452 41.6052) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.196 41.656) (end 25.654 41.656) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.1452 41.6052) (end 44.196 41.656) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 62.606 41.656) (end 44.196 41.656) (width 0.5) (layer B.Cu) (net 0))
+  (via (at 27.94 43.815) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (via (at 27.94 35.56) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 26.0604 45.6946) (end 27.94 43.815) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 26.0604 46.3804) (end 26.0604 45.6946) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 26.0604 33.6804) (end 26.0604 27.3304) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 27.94 35.56) (end 26.0604 33.6804) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 27.94 35.56) (end 27.94 43.815) (width 0.5) (layer F.Cu) (net 0))
+  (via (at 46.99 43.815) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (via (at 46.99 35.56) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 45.1104 33.6804) (end 46.99 35.56) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.1104 27.3304) (end 45.1104 33.6804) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.1104 45.6946) (end 46.99 43.815) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.1104 46.3804) (end 45.1104 45.6946) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 46.99 36.549949) (end 46.99 43.815) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 46.99 35.56) (end 46.99 36.549949) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 64.1604 27.3304) (end 64.1604 33.1724) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 64.1604 33.1724) (end 67.056 36.068) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 67.056 43.4848) (end 64.1604 46.3804) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 67.056 36.068) (end 67.056 43.4848) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 63.1952 60.1168) (end 62.606 60.706) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 63.1952 58.2168) (end 63.1952 60.1168) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 25.0952 60.1472) (end 25.0952 58.2168) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 25.654 60.706) (end 25.0952 60.1472) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.1452 58.2168) (end 44.1452 60.6298) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.069 60.706) (end 25.654 60.706) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.1452 60.6298) (end 44.069 60.706) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 62.606 60.706) (end 44.069 60.706) (width 0.5) (layer B.Cu) (net 0))
+  (via (at 29.21 62.865) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (via (at 29.21 54.737) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (via (at 47.625 62.865) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (via (at 47.625 54.737) (size 1.4) (drill 0.5) (layers F.Cu B.Cu) (net 0))
+  (segment (start 26.6446 65.4304) (end 29.21 62.865) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 26.0604 65.4304) (end 26.6446 65.4304) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 26.0604 51.5874) (end 26.0604 46.3804) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 29.21 54.737) (end 26.0604 51.5874) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 29.21 54.737) (end 29.21 62.865) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 47.625 54.737) (end 47.625 62.865) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 45.1104 65.3796) (end 47.625 62.865) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.1104 65.4304) (end 45.1104 65.3796) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 47.625 54.737) (end 45.085 52.197) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.1104 52.1716) (end 45.1104 46.3804) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 45.085 52.197) (end 45.1104 52.1716) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 63.1952 77.2668) (end 63.1952 79.8068) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 63.1952 79.8068) (end 62.738 80.264) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 25.0952 79.4512) (end 25.0952 77.2668) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 25.908 80.264) (end 25.0952 79.4512) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.1452 80.2132) (end 44.196 80.264) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.196 80.264) (end 25.908 80.264) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 44.1452 77.2668) (end 44.1452 80.2132) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 62.738 80.264) (end 44.196 80.264) (width 0.5) (layer B.Cu) (net 0))
+  (segment (start 36.576 65.278) (end 39.37 65.278) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 34.544 71.12) (end 35.306 70.358) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 35.306 66.548) (end 36.576 65.278) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 41.4528 22.6314) (end 40.402801 21.581401) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 19.05 24.638) (end 19.05 70.612) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 35.306 70.358) (end 35.306 66.548) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 22.106599 21.581401) (end 19.05 24.638) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 40.402801 21.581401) (end 22.106599 21.581401) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 19.558 71.12) (end 34.544 71.12) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 19.05 70.612) (end 19.558 71.12) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 38.862 72.644) (end 39.37 72.136) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 39.37 72.136) (end 39.37 69.778) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 19.558 72.644) (end 38.862 72.644) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 17.78 24.384) (end 17.78 70.866) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 22.0726 20.0914) (end 17.78 24.384) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 17.78 70.866) (end 19.558 72.644) (width 0.5) (layer F.Cu) (net 0))
+  (segment (start 41.4528 20.0914) (end 22.0726 20.0914) (width 0.5) (layer F.Cu) (net 0))
+
+)

+ 33 - 0
KiCad/GeekPad.pro

@@ -0,0 +1,33 @@
+update=22/05/2015 07:44:53
+version=1
+last_client=kicad
+[general]
+version=1
+RootSch=
+BoardNm=
+[pcbnew]
+version=1
+LastNetListRead=
+UseCmpFile=1
+PadDrill=0.600000000000
+PadDrillOvalY=0.600000000000
+PadSizeH=1.500000000000
+PadSizeV=1.500000000000
+PcbTextSizeV=1.500000000000
+PcbTextSizeH=1.500000000000
+PcbTextThickness=0.300000000000
+ModuleTextSizeV=1.000000000000
+ModuleTextSizeH=1.000000000000
+ModuleTextSizeThickness=0.150000000000
+SolderMaskClearance=0.000000000000
+SolderMaskMinWidth=0.000000000000
+DrawSegmentWidth=0.200000000000
+BoardOutlineThickness=0.100000000000
+ModuleOutlineThickness=0.150000000000
+[cvpcb]
+version=1
+NetIExt=net
+[eeschema]
+version=1
+LibDir=
+[eeschema/libraries]

+ 4 - 0
KiCad/GeekPad.sch

@@ -0,0 +1,4 @@
+EESchema Schematic File Version 2
+EELAYER 25 0
+EELAYER END
+$EndSCHEMATC

+ 46 - 0
KiCad/ProMicroV1.kicad_mod

@@ -0,0 +1,46 @@
+(module ProMicroV1 (layer F.Cu) (tedit 5BEFE7B1)
+  (descr "Pro Micro footprint")
+  (tags "promicro ProMicro")
+  (fp_text reference ProMicro (at 0 -10.16) (layer F.SilkS) hide
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_text value "" (at 0 10.16) (layer F.Fab)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_line (start 15.24 -8.89) (end 15.24 8.89) (layer F.SilkS) (width 0.15))
+  (fp_line (start -15.24 -8.89) (end 15.24 -8.89) (layer F.SilkS) (width 0.15))
+  (fp_line (start -15.24 -3.81) (end -15.24 -8.89) (layer F.SilkS) (width 0.15))
+  (fp_line (start -15.24 8.89) (end -15.24 3.81) (layer F.SilkS) (width 0.15))
+  (fp_line (start -15.24 8.89) (end 15.24 8.89) (layer F.SilkS) (width 0.15))
+  (fp_line (start -15.24 -8.89) (end 15.24 -8.89) (layer B.SilkS) (width 0.15))
+  (fp_line (start -15.24 -3.81) (end -15.24 -8.89) (layer B.SilkS) (width 0.15))
+  (fp_line (start -15.24 8.89) (end -15.24 3.81) (layer B.SilkS) (width 0.15))
+  (fp_line (start 15.24 8.89) (end -15.24 8.89) (layer B.SilkS) (width 0.15))
+  (fp_line (start 15.24 -8.89) (end 15.24 8.89) (layer B.SilkS) (width 0.15))
+  (fp_line (start -15.24 3.81) (end -15.24 -3.81) (layer F.SilkS) (width 0.15))
+  (fp_line (start -15.24 -3.81) (end -15.24 3.81) (layer B.SilkS) (width 0.15))
+  (pad 24 thru_hole circle (at -13.97 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 23 thru_hole circle (at -11.43 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 22 thru_hole circle (at -8.89 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 21 thru_hole circle (at -6.35 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 20 thru_hole circle (at -3.81 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 19 thru_hole circle (at -1.27 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 18 thru_hole circle (at 1.27 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 17 thru_hole circle (at 3.81 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 16 thru_hole circle (at 6.35 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 15 thru_hole circle (at 8.89 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 14 thru_hole circle (at 11.43 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 13 thru_hole circle (at 13.97 -7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 12 thru_hole circle (at 13.97 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 11 thru_hole circle (at 11.43 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 10 thru_hole circle (at 8.89 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 9 thru_hole circle (at 6.35 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 8 thru_hole circle (at 3.81 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 7 thru_hole circle (at 1.27 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 6 thru_hole circle (at -1.27 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 5 thru_hole circle (at -3.81 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 4 thru_hole circle (at -6.35 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 3 thru_hole circle (at -8.89 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 2 thru_hole circle (at -11.43 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+  (pad 1 thru_hole rect (at -13.97 7.62) (size 1.6 1.6) (drill 1.1) (layers *.Cu *.Mask F.SilkS))
+)

+ 29 - 0
KiCad/Reset.kicad_mod

@@ -0,0 +1,29 @@
+(module Button_Switch_THT:Reset (layer F.Cu) (tedit 5C0B9E3E)
+  (descr https://www.omron.com/ecb/products/pdf/en-b3f.pdf)
+  (tags "tact sw push 6mm")
+  (fp_text reference REF** (at -2.30632 1.88976 90) (layer F.SilkS)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_text value RESET (at 2.413 2.286 270) (layer F.Fab)
+    (effects (font (size 1 1) (thickness 0.15)))
+  )
+  (fp_line (start 1.524 -1.25) (end 1.524 5.75) (layer F.CrtYd) (width 0.05))
+  (fp_line (start -1.5 5.75) (end -1.5 -1.25) (layer F.CrtYd) (width 0.05))
+  (fp_line (start -1.25 -1.5) (end 1.2954 -1.4986) (layer F.CrtYd) (width 0.05))
+  (fp_line (start -1.5 6) (end -1.25 6) (layer F.CrtYd) (width 0.05))
+  (fp_line (start -1.5 5.75) (end -1.5 6) (layer F.CrtYd) (width 0.05))
+  (fp_line (start -1.5 -1.5) (end -1.25 -1.5) (layer F.CrtYd) (width 0.05))
+  (fp_line (start -1.5 -1.25) (end -1.5 -1.5) (layer F.CrtYd) (width 0.05))
+  (fp_line (start 1.524 -1.5) (end 1.524 -1.25) (layer F.CrtYd) (width 0.05))
+  (fp_line (start 1.27 -1.5) (end 1.52 -1.5) (layer F.CrtYd) (width 0.05))
+  (fp_line (start 1.524 6) (end 1.524 5.75) (layer F.CrtYd) (width 0.05))
+  (fp_line (start 1.27 6) (end 1.52 6) (layer F.CrtYd) (width 0.05))
+  (fp_line (start -1.2446 5.99948) (end 1.26492 5.99948) (layer F.CrtYd) (width 0.05))
+  (pad 1 thru_hole circle (at 0 0 90) (size 2 2) (drill 1.1) (layers *.Cu *.Mask))
+  (pad 2 thru_hole circle (at 0 4.5 90) (size 2 2) (drill 1.1) (layers *.Cu *.Mask))
+  (model ${KISYS3DMOD}/Button_Switch_THT.3dshapes/SW_PUSH_6mm.wrl
+    (at (xyz 0 0 0))
+    (scale (xyz 1 1 1))
+    (rotate (xyz 0 0 0))
+  )
+)

+ 3 - 0
KiCad/fp-lib-table

@@ -0,0 +1,3 @@
+(fp_lib_table
+  (lib (name GeekPadV1)(type KiCad)(uri .)(options "")(descr ""))
+)

+ 7 - 0
LICENSE

@@ -0,0 +1,7 @@
+GeekPad (c) by Tomek Wójcik
+
+GeekPad is licensed under a
+Creative Commons Attribution-ShareAlike 4.0 International License.
+
+You should have received a copy of the license along with this
+work. If not, see <https://creativecommons.org/licenses/by-sa/4.0/>.

+ 17 - 0
NOTICE.txt

@@ -0,0 +1,17 @@
+GeekPad (c) by Tomek Wójcik
+
+GeekPad is licensed under a
+Creative Commons Attribution-ShareAlike 4.0 International License.
+
+You should have received a copy of the license along with this
+work.  If not, see <https://creativecommons.org/licenses/by-sa/4.0/>.
+
+---
+
+GeekPad includes the follwoing third party software and resources
+
+Pro Micro library for KiCAD
+Copyright (c) 2017 Biacco42
+Licensed under terms of MIT license
+https://opensource.org/licenses/mit-license.php
+With modifications

+ 80 - 0
README.md

@@ -0,0 +1,80 @@
+# GeekPad
+
+A 3x3 custom mechanical macro pad.
+
+![GeekPad](geekpad.jpg)
+
+## Building your own
+
+To build your own GeekPad, you'll need the following:
+
+1. A 3D printer with at least 75x75x20mm of available workspace,
+1. Means of making the PCB,
+1. A computer capable of building the firmware and uploading it to the
+   controller,
+1. A [SparkFun Pro Micro 5V/16Mhz] controller board (or a compatible clone),
+1. 9 plate mounted Cherry MX compatible switches of your choosing,
+1. 9 1N148 diodes,
+1. A two-pin tactile switch,
+1. 4 10mm standoffs,
+1. 8 M3 screws,
+1. 4 rubber or plastic feet,
+1. A soldering iron,
+1. Tinkerer's spirit ;).
+
+This repository contains the *PCB Project*, *Case 3D Models* and the customized
+*QMK Firmware Code*.
+
+### PCB Project
+
+The *KiCad* directory contains the KiCad project with PCB source. You can use
+it to make or order a PCB.
+
+The PCB project was created using KiCad v5.
+
+### Case 3D Models
+
+The *Case 3D Models* directory contains STL files for the case. You can use
+them to 3D print case parts.
+
+The *GeekPad - Leg* file contains model of a "leg" - the side part. You'll need
+two of them. The *GeekPad - Plate* files contains model of the switch plate.
+
+### QMK Firmware Code
+
+The *qmk_firmware* directory contains source code for GeekPad's firmware. It's
+based on [QMK](https://qmk.fm/). Since the directory is actually a submodule,
+you'll need to fetch it prior to working with it.
+
+If you're using the command line git client on a compatible OS, use the
+following commands to fetch the code:
+
+```
+$ git submodule init
+$ git submodule update
+```
+
+If you're using other git client, please refer to its docs to learn how to
+fetch the submodule.
+
+GeekPad specific code lives in the `keyboards/bthlabs/geekpad` directory.
+
+Please refer to [QMK docs](https://docs.qmk.fm/#/) for information on how to
+set up QMK, customize the keymap and build the firmware.
+
+## Author
+
+GeekPad is developed by [Tomek Wójcik](https://www.bthlabs.pl/).
+
+## License
+
+GeekPad is licensed under terms of Creative Commons Attribution-ShareAlike 4.0
+International (CC BY-SA 4.0) License.
+
+GeekPad's QMK code is licensed under terms of GNU GPL v2 License.
+
+## Credits
+
+GeekPad includes modified version of 
+[KiCad library of Pro Micro](https://github.com/Biacco42/ProMicroKiCad) by
+[Biacco24](https://github.com/Biacco42), licensed under terms of MIT Licese.

BIN
geekpad.jpg


+ 1 - 0
qmk_firmware

@@ -0,0 +1 @@
+Subproject commit 48742539f554ec6219ac68c8abcc2a5185ce5fe7