Include gEDA (gschem and pcb) schematic and PCB layout for USB stick.
authorPat Thoyts <patthoyts@users.sourceforge.net>
Wed, 30 Oct 2013 09:10:30 +0000 (09:10 +0000)
committerPat Thoyts <patthoyts@users.sourceforge.net>
Wed, 30 Oct 2013 09:10:30 +0000 (09:10 +0000)
This is the schematic and layout for a USB stick on 9x24 hole stripboard
using a USB-B connector and v-usb with an ATtiny45 to provide the USB
connectivity and 2 connectors at the far end to use for sensors or buttons.
The connectors are both pulled high on one pin and the second pin is ground
so can be used with buttons or sensors (thermistor or LDR has worked).

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
hardware/Makefile [new file with mode: 0644]
hardware/gafrc [new file with mode: 0644]
hardware/hid_keyb.pcb [new file with mode: 0644]
hardware/hid_keyb.pdf [new file with mode: 0644]
hardware/hid_keyb.sch [new file with mode: 0644]
hardware/project [new file with mode: 0644]

diff --git a/hardware/Makefile b/hardware/Makefile
new file mode 100644 (file)
index 0000000..78bb283
--- /dev/null
@@ -0,0 +1,22 @@
+NAME=hid_keyb
+PROJECT=project
+SCHEMAS=$(NAME).sch
+
+update: $(NAME).net
+
+$(NAME).net: $(SCHEMAS)
+       gsch2pcb $(PROJECT)
+
+bom: $(NAME).bom
+
+$(NAME).bom: $(SCHEMAS)
+       gnetlist -g partslist3 -o $@ $^
+
+drc: $(SCHEMAS)
+       gnetlist -g drc2 -o /dev/stdout $^
+
+clean:
+       -rm -f $(NAME).bom
+       -rm -f $(NAME).new.pcb
+
+.PHONY: drc bom update clean
diff --git a/hardware/gafrc b/hardware/gafrc
new file mode 100644 (file)
index 0000000..8f3def8
--- /dev/null
@@ -0,0 +1,2 @@
+(component-library "${HOME}/gaf/gschem-sym")
+
diff --git a/hardware/hid_keyb.pcb b/hardware/hid_keyb.pcb
new file mode 100644 (file)
index 0000000..fde200a
--- /dev/null
@@ -0,0 +1,1173 @@
+# release: pcb 20110918
+
+# To read pcb files, the pcb version (or the git source date) must be >= the file version
+FileVersion[20070407]
+
+PCB["" 310000 115000]
+
+Grid[5000.0 0 0 0]
+Cursor[0 0 0.000000]
+PolyArea[200000000.000000]
+Thermal[0.500000]
+DRC[2000 1000 2000 1000 1500 1400]
+Flags("nameonpcb,autodrc,uniquename,clearnew,snappin")
+Groups("1,c:2,4,s:3:5:6:7:8")
+Styles["Signal,2000,3600,2000,2000:Power,2500,6000,3500,1000:Fat,4000,6000,3500,1000:Skinny,600,2402,1181,600"]
+
+Symbol[' ' 1800]
+(
+)
+Symbol['!' 1200]
+(
+       SymbolLine[0 4500 0 5000 800]
+       SymbolLine[0 1000 0 3500 800]
+)
+Symbol['"' 1200]
+(
+       SymbolLine[0 1000 0 2000 800]
+       SymbolLine[1000 1000 1000 2000 800]
+)
+Symbol['#' 1200]
+(
+       SymbolLine[0 3500 2000 3500 800]
+       SymbolLine[0 2500 2000 2500 800]
+       SymbolLine[1500 2000 1500 4000 800]
+       SymbolLine[500 2000 500 4000 800]
+)
+Symbol['$' 1200]
+(
+       SymbolLine[1500 1500 2000 2000 800]
+       SymbolLine[500 1500 1500 1500 800]
+       SymbolLine[0 2000 500 1500 800]
+       SymbolLine[0 2000 0 2500 800]
+       SymbolLine[0 2500 500 3000 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[2000 3500 2000 4000 800]
+       SymbolLine[1500 4500 2000 4000 800]
+       SymbolLine[500 4500 1500 4500 800]
+       SymbolLine[0 4000 500 4500 800]
+       SymbolLine[1000 1000 1000 5000 800]
+)
+Symbol['%' 1200]
+(
+       SymbolLine[0 1500 0 2000 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1000 1000 800]
+       SymbolLine[1000 1000 1500 1500 800]
+       SymbolLine[1500 1500 1500 2000 800]
+       SymbolLine[1000 2500 1500 2000 800]
+       SymbolLine[500 2500 1000 2500 800]
+       SymbolLine[0 2000 500 2500 800]
+       SymbolLine[0 5000 4000 1000 800]
+       SymbolLine[3500 5000 4000 4500 800]
+       SymbolLine[4000 4000 4000 4500 800]
+       SymbolLine[3500 3500 4000 4000 800]
+       SymbolLine[3000 3500 3500 3500 800]
+       SymbolLine[2500 4000 3000 3500 800]
+       SymbolLine[2500 4000 2500 4500 800]
+       SymbolLine[2500 4500 3000 5000 800]
+       SymbolLine[3000 5000 3500 5000 800]
+)
+Symbol['&' 1200]
+(
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[0 1500 0 2500 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[0 3500 1500 2000 800]
+       SymbolLine[500 5000 1000 5000 800]
+       SymbolLine[1000 5000 2000 4000 800]
+       SymbolLine[0 2500 2500 5000 800]
+       SymbolLine[500 1000 1000 1000 800]
+       SymbolLine[1000 1000 1500 1500 800]
+       SymbolLine[1500 1500 1500 2000 800]
+       SymbolLine[0 3500 0 4500 800]
+)
+Symbol[''' 1200]
+(
+       SymbolLine[0 2000 1000 1000 800]
+)
+Symbol['(' 1200]
+(
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[0 1500 0 4500 800]
+)
+Symbol[')' 1200]
+(
+       SymbolLine[0 1000 500 1500 800]
+       SymbolLine[500 1500 500 4500 800]
+       SymbolLine[0 5000 500 4500 800]
+)
+Symbol['*' 1200]
+(
+       SymbolLine[0 2000 2000 4000 800]
+       SymbolLine[0 4000 2000 2000 800]
+       SymbolLine[0 3000 2000 3000 800]
+       SymbolLine[1000 2000 1000 4000 800]
+)
+Symbol['+' 1200]
+(
+       SymbolLine[0 3000 2000 3000 800]
+       SymbolLine[1000 2000 1000 4000 800]
+)
+Symbol[',' 1200]
+(
+       SymbolLine[0 6000 1000 5000 800]
+)
+Symbol['-' 1200]
+(
+       SymbolLine[0 3000 2000 3000 800]
+)
+Symbol['.' 1200]
+(
+       SymbolLine[0 5000 500 5000 800]
+)
+Symbol['/' 1200]
+(
+       SymbolLine[0 4500 3000 1500 800]
+)
+Symbol['0' 1200]
+(
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[0 1500 0 4500 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[2000 1500 2000 4500 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[0 4000 2000 2000 800]
+)
+Symbol['1' 1200]
+(
+       SymbolLine[0 1800 800 1000 800]
+       SymbolLine[800 1000 800 5000 800]
+       SymbolLine[0 5000 1500 5000 800]
+)
+Symbol['2' 1200]
+(
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 2000 1000 800]
+       SymbolLine[2000 1000 2500 1500 800]
+       SymbolLine[2500 1500 2500 2500 800]
+       SymbolLine[0 5000 2500 2500 800]
+       SymbolLine[0 5000 2500 5000 800]
+)
+Symbol['3' 1200]
+(
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 2800 1500 2800 800]
+       SymbolLine[2000 1500 2000 2300 800]
+       SymbolLine[2000 3300 2000 4500 800]
+       SymbolLine[2000 3300 1500 2800 800]
+       SymbolLine[2000 2300 1500 2800 800]
+)
+Symbol['4' 1200]
+(
+       SymbolLine[0 3500 2000 1000 800]
+       SymbolLine[0 3500 2500 3500 800]
+       SymbolLine[2000 1000 2000 5000 800]
+)
+Symbol['5' 1200]
+(
+       SymbolLine[0 1000 2000 1000 800]
+       SymbolLine[0 1000 0 3000 800]
+       SymbolLine[0 3000 500 2500 800]
+       SymbolLine[500 2500 1500 2500 800]
+       SymbolLine[1500 2500 2000 3000 800]
+       SymbolLine[2000 3000 2000 4500 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+)
+Symbol['6' 1200]
+(
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[0 1500 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[1500 2800 2000 3300 800]
+       SymbolLine[0 2800 1500 2800 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[2000 3300 2000 4500 800]
+)
+Symbol['7' 1200]
+(
+       SymbolLine[500 5000 2500 1000 800]
+       SymbolLine[0 1000 2500 1000 800]
+)
+Symbol['8' 1200]
+(
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[0 3700 0 4500 800]
+       SymbolLine[0 3700 700 3000 800]
+       SymbolLine[700 3000 1300 3000 800]
+       SymbolLine[1300 3000 2000 3700 800]
+       SymbolLine[2000 3700 2000 4500 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[0 2300 700 3000 800]
+       SymbolLine[0 1500 0 2300 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[2000 1500 2000 2300 800]
+       SymbolLine[1300 3000 2000 2300 800]
+)
+Symbol['9' 1200]
+(
+       SymbolLine[500 5000 2000 3000 800]
+       SymbolLine[2000 1500 2000 3000 800]
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[0 1500 0 2500 800]
+       SymbolLine[0 2500 500 3000 800]
+       SymbolLine[500 3000 2000 3000 800]
+)
+Symbol[':' 1200]
+(
+       SymbolLine[0 2500 500 2500 800]
+       SymbolLine[0 3500 500 3500 800]
+)
+Symbol[';' 1200]
+(
+       SymbolLine[0 5000 1000 4000 800]
+       SymbolLine[1000 2500 1000 3000 800]
+)
+Symbol['<' 1200]
+(
+       SymbolLine[0 3000 1000 2000 800]
+       SymbolLine[0 3000 1000 4000 800]
+)
+Symbol['=' 1200]
+(
+       SymbolLine[0 2500 2000 2500 800]
+       SymbolLine[0 3500 2000 3500 800]
+)
+Symbol['>' 1200]
+(
+       SymbolLine[0 2000 1000 3000 800]
+       SymbolLine[0 4000 1000 3000 800]
+)
+Symbol['?' 1200]
+(
+       SymbolLine[1000 3000 1000 3500 800]
+       SymbolLine[1000 4500 1000 5000 800]
+       SymbolLine[0 1500 0 2000 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[2000 1500 2000 2000 800]
+       SymbolLine[1000 3000 2000 2000 800]
+)
+Symbol['@' 1200]
+(
+       SymbolLine[0 1000 0 4000 800]
+       SymbolLine[0 4000 1000 5000 800]
+       SymbolLine[1000 5000 4000 5000 800]
+       SymbolLine[5000 3500 5000 1000 800]
+       SymbolLine[5000 1000 4000 0 800]
+       SymbolLine[4000 0 1000 0 800]
+       SymbolLine[1000 0 0 1000 800]
+       SymbolLine[1500 2000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[2000 3500 3000 3500 800]
+       SymbolLine[3000 3500 3500 3000 800]
+       SymbolLine[3500 3000 4000 3500 800]
+       SymbolLine[3500 3000 3500 1500 800]
+       SymbolLine[3500 2000 3000 1500 800]
+       SymbolLine[2000 1500 3000 1500 800]
+       SymbolLine[2000 1500 1500 2000 800]
+       SymbolLine[4000 3500 5000 3500 800]
+)
+Symbol['A' 1200]
+(
+       SymbolLine[0 2000 0 5000 800]
+       SymbolLine[0 2000 700 1000 800]
+       SymbolLine[700 1000 1800 1000 800]
+       SymbolLine[1800 1000 2500 2000 800]
+       SymbolLine[2500 2000 2500 5000 800]
+       SymbolLine[0 3000 2500 3000 800]
+)
+Symbol['B' 1200]
+(
+       SymbolLine[0 5000 2000 5000 800]
+       SymbolLine[2000 5000 2500 4500 800]
+       SymbolLine[2500 3300 2500 4500 800]
+       SymbolLine[2000 2800 2500 3300 800]
+       SymbolLine[500 2800 2000 2800 800]
+       SymbolLine[500 1000 500 5000 800]
+       SymbolLine[0 1000 2000 1000 800]
+       SymbolLine[2000 1000 2500 1500 800]
+       SymbolLine[2500 1500 2500 2300 800]
+       SymbolLine[2000 2800 2500 2300 800]
+)
+Symbol['C' 1200]
+(
+       SymbolLine[700 5000 2000 5000 800]
+       SymbolLine[0 4300 700 5000 800]
+       SymbolLine[0 1700 0 4300 800]
+       SymbolLine[0 1700 700 1000 800]
+       SymbolLine[700 1000 2000 1000 800]
+)
+Symbol['D' 1200]
+(
+       SymbolLine[500 1000 500 5000 800]
+       SymbolLine[1800 1000 2500 1700 800]
+       SymbolLine[2500 1700 2500 4300 800]
+       SymbolLine[1800 5000 2500 4300 800]
+       SymbolLine[0 5000 1800 5000 800]
+       SymbolLine[0 1000 1800 1000 800]
+)
+Symbol['E' 1200]
+(
+       SymbolLine[0 2800 1500 2800 800]
+       SymbolLine[0 5000 2000 5000 800]
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 1000 2000 1000 800]
+)
+Symbol['F' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 1000 2000 1000 800]
+       SymbolLine[0 2800 1500 2800 800]
+)
+Symbol['G' 1200]
+(
+       SymbolLine[2000 1000 2500 1500 800]
+       SymbolLine[500 1000 2000 1000 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[0 1500 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 2000 5000 800]
+       SymbolLine[2000 5000 2500 4500 800]
+       SymbolLine[2500 3500 2500 4500 800]
+       SymbolLine[2000 3000 2500 3500 800]
+       SymbolLine[1000 3000 2000 3000 800]
+)
+Symbol['H' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[2500 1000 2500 5000 800]
+       SymbolLine[0 3000 2500 3000 800]
+)
+Symbol['I' 1200]
+(
+       SymbolLine[0 1000 1000 1000 800]
+       SymbolLine[500 1000 500 5000 800]
+       SymbolLine[0 5000 1000 5000 800]
+)
+Symbol['J' 1200]
+(
+       SymbolLine[700 1000 1500 1000 800]
+       SymbolLine[1500 1000 1500 4500 800]
+       SymbolLine[1000 5000 1500 4500 800]
+       SymbolLine[500 5000 1000 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[0 4500 0 4000 800]
+)
+Symbol['K' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 3000 2000 1000 800]
+       SymbolLine[0 3000 2000 5000 800]
+)
+Symbol['L' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 5000 2000 5000 800]
+)
+Symbol['M' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 1000 1500 3000 800]
+       SymbolLine[1500 3000 3000 1000 800]
+       SymbolLine[3000 1000 3000 5000 800]
+)
+Symbol['N' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 1000 2500 5000 800]
+       SymbolLine[2500 1000 2500 5000 800]
+)
+Symbol['O' 1200]
+(
+       SymbolLine[0 1500 0 4500 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[2000 1500 2000 4500 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+)
+Symbol['P' 1200]
+(
+       SymbolLine[500 1000 500 5000 800]
+       SymbolLine[0 1000 2000 1000 800]
+       SymbolLine[2000 1000 2500 1500 800]
+       SymbolLine[2500 1500 2500 2500 800]
+       SymbolLine[2000 3000 2500 2500 800]
+       SymbolLine[500 3000 2000 3000 800]
+)
+Symbol['Q' 1200]
+(
+       SymbolLine[0 1500 0 4500 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1500 1000 800]
+       SymbolLine[1500 1000 2000 1500 800]
+       SymbolLine[2000 1500 2000 4000 800]
+       SymbolLine[1000 5000 2000 4000 800]
+       SymbolLine[500 5000 1000 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[1000 3500 2000 5000 800]
+)
+Symbol['R' 1200]
+(
+       SymbolLine[0 1000 2000 1000 800]
+       SymbolLine[2000 1000 2500 1500 800]
+       SymbolLine[2500 1500 2500 2500 800]
+       SymbolLine[2000 3000 2500 2500 800]
+       SymbolLine[500 3000 2000 3000 800]
+       SymbolLine[500 1000 500 5000 800]
+       SymbolLine[1300 3000 2500 5000 800]
+)
+Symbol['S' 1200]
+(
+       SymbolLine[2000 1000 2500 1500 800]
+       SymbolLine[500 1000 2000 1000 800]
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[0 1500 0 2500 800]
+       SymbolLine[0 2500 500 3000 800]
+       SymbolLine[500 3000 2000 3000 800]
+       SymbolLine[2000 3000 2500 3500 800]
+       SymbolLine[2500 3500 2500 4500 800]
+       SymbolLine[2000 5000 2500 4500 800]
+       SymbolLine[500 5000 2000 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+)
+Symbol['T' 1200]
+(
+       SymbolLine[0 1000 2000 1000 800]
+       SymbolLine[1000 1000 1000 5000 800]
+)
+Symbol['U' 1200]
+(
+       SymbolLine[0 1000 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[2000 1000 2000 4500 800]
+)
+Symbol['V' 1200]
+(
+       SymbolLine[0 1000 1000 5000 800]
+       SymbolLine[1000 5000 2000 1000 800]
+)
+Symbol['W' 1200]
+(
+       SymbolLine[0 1000 0 3000 800]
+       SymbolLine[0 3000 500 5000 800]
+       SymbolLine[500 5000 1500 3000 800]
+       SymbolLine[1500 3000 2500 5000 800]
+       SymbolLine[2500 5000 3000 3000 800]
+       SymbolLine[3000 3000 3000 1000 800]
+)
+Symbol['X' 1200]
+(
+       SymbolLine[0 5000 2500 1000 800]
+       SymbolLine[0 1000 2500 5000 800]
+)
+Symbol['Y' 1200]
+(
+       SymbolLine[0 1000 1000 3000 800]
+       SymbolLine[1000 3000 2000 1000 800]
+       SymbolLine[1000 3000 1000 5000 800]
+)
+Symbol['Z' 1200]
+(
+       SymbolLine[0 1000 2500 1000 800]
+       SymbolLine[0 5000 2500 1000 800]
+       SymbolLine[0 5000 2500 5000 800]
+)
+Symbol['[' 1200]
+(
+       SymbolLine[0 1000 500 1000 800]
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 5000 500 5000 800]
+)
+Symbol['\' 1200]
+(
+       SymbolLine[0 1500 3000 4500 800]
+)
+Symbol[']' 1200]
+(
+       SymbolLine[0 1000 500 1000 800]
+       SymbolLine[500 1000 500 5000 800]
+       SymbolLine[0 5000 500 5000 800]
+)
+Symbol['^' 1200]
+(
+       SymbolLine[0 1500 500 1000 800]
+       SymbolLine[500 1000 1000 1500 800]
+)
+Symbol['_' 1200]
+(
+       SymbolLine[0 5000 2000 5000 800]
+)
+Symbol['a' 1200]
+(
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[0 3500 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[2000 3000 2000 4500 800]
+       SymbolLine[2000 4500 2500 5000 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+)
+Symbol['b' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[2000 3500 2000 4500 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[0 3500 500 3000 800]
+)
+Symbol['c' 1200]
+(
+       SymbolLine[500 3000 2000 3000 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[0 3500 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 2000 5000 800]
+)
+Symbol['d' 1200]
+(
+       SymbolLine[2000 1000 2000 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[0 3500 0 4500 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+)
+Symbol['e' 1200]
+(
+       SymbolLine[500 5000 2000 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[0 3500 0 4500 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[0 4000 2000 4000 800]
+       SymbolLine[2000 4000 2000 3500 800]
+)
+Symbol['f' 1000]
+(
+       SymbolLine[500 1500 500 5000 800]
+       SymbolLine[500 1500 1000 1000 800]
+       SymbolLine[1000 1000 1500 1000 800]
+       SymbolLine[0 3000 1000 3000 800]
+)
+Symbol['g' 1200]
+(
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[0 3500 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[0 6000 500 6500 800]
+       SymbolLine[500 6500 1500 6500 800]
+       SymbolLine[1500 6500 2000 6000 800]
+       SymbolLine[2000 3000 2000 6000 800]
+)
+Symbol['h' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[2000 3500 2000 5000 800]
+)
+Symbol['i' 1000]
+(
+       SymbolLine[0 2000 0 2100 1000]
+       SymbolLine[0 3500 0 5000 800]
+)
+Symbol['j' 1000]
+(
+       SymbolLine[500 2000 500 2100 1000]
+       SymbolLine[500 3500 500 6000 800]
+       SymbolLine[0 6500 500 6000 800]
+)
+Symbol['k' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+       SymbolLine[0 3500 1500 5000 800]
+       SymbolLine[0 3500 1000 2500 800]
+)
+Symbol['l' 1000]
+(
+       SymbolLine[0 1000 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+)
+Symbol['m' 1200]
+(
+       SymbolLine[500 3500 500 5000 800]
+       SymbolLine[500 3500 1000 3000 800]
+       SymbolLine[1000 3000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[2000 3500 2000 5000 800]
+       SymbolLine[2000 3500 2500 3000 800]
+       SymbolLine[2500 3000 3000 3000 800]
+       SymbolLine[3000 3000 3500 3500 800]
+       SymbolLine[3500 3500 3500 5000 800]
+       SymbolLine[0 3000 500 3500 800]
+)
+Symbol['n' 1200]
+(
+       SymbolLine[500 3500 500 5000 800]
+       SymbolLine[500 3500 1000 3000 800]
+       SymbolLine[1000 3000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[2000 3500 2000 5000 800]
+       SymbolLine[0 3000 500 3500 800]
+)
+Symbol['o' 1200]
+(
+       SymbolLine[0 3500 0 4500 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[2000 3500 2000 4500 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[0 4500 500 5000 800]
+)
+Symbol['p' 1200]
+(
+       SymbolLine[500 3500 500 6500 800]
+       SymbolLine[0 3000 500 3500 800]
+       SymbolLine[500 3500 1000 3000 800]
+       SymbolLine[1000 3000 2000 3000 800]
+       SymbolLine[2000 3000 2500 3500 800]
+       SymbolLine[2500 3500 2500 4500 800]
+       SymbolLine[2000 5000 2500 4500 800]
+       SymbolLine[1000 5000 2000 5000 800]
+       SymbolLine[500 4500 1000 5000 800]
+)
+Symbol['q' 1200]
+(
+       SymbolLine[2000 3500 2000 6500 800]
+       SymbolLine[1500 3000 2000 3500 800]
+       SymbolLine[500 3000 1500 3000 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[0 3500 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+)
+Symbol['r' 1200]
+(
+       SymbolLine[500 3500 500 5000 800]
+       SymbolLine[500 3500 1000 3000 800]
+       SymbolLine[1000 3000 2000 3000 800]
+       SymbolLine[0 3000 500 3500 800]
+)
+Symbol['s' 1200]
+(
+       SymbolLine[500 5000 2000 5000 800]
+       SymbolLine[2000 5000 2500 4500 800]
+       SymbolLine[2000 4000 2500 4500 800]
+       SymbolLine[500 4000 2000 4000 800]
+       SymbolLine[0 3500 500 4000 800]
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[500 3000 2000 3000 800]
+       SymbolLine[2000 3000 2500 3500 800]
+       SymbolLine[0 4500 500 5000 800]
+)
+Symbol['t' 1000]
+(
+       SymbolLine[500 1000 500 4500 800]
+       SymbolLine[500 4500 1000 5000 800]
+       SymbolLine[0 2500 1000 2500 800]
+)
+Symbol['u' 1200]
+(
+       SymbolLine[0 3000 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+       SymbolLine[2000 3000 2000 4500 800]
+)
+Symbol['v' 1200]
+(
+       SymbolLine[0 3000 1000 5000 800]
+       SymbolLine[2000 3000 1000 5000 800]
+)
+Symbol['w' 1200]
+(
+       SymbolLine[0 3000 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[500 5000 1000 5000 800]
+       SymbolLine[1000 5000 1500 4500 800]
+       SymbolLine[1500 3000 1500 4500 800]
+       SymbolLine[1500 4500 2000 5000 800]
+       SymbolLine[2000 5000 2500 5000 800]
+       SymbolLine[2500 5000 3000 4500 800]
+       SymbolLine[3000 3000 3000 4500 800]
+)
+Symbol['x' 1200]
+(
+       SymbolLine[0 3000 2000 5000 800]
+       SymbolLine[0 5000 2000 3000 800]
+)
+Symbol['y' 1200]
+(
+       SymbolLine[0 3000 0 4500 800]
+       SymbolLine[0 4500 500 5000 800]
+       SymbolLine[2000 3000 2000 6000 800]
+       SymbolLine[1500 6500 2000 6000 800]
+       SymbolLine[500 6500 1500 6500 800]
+       SymbolLine[0 6000 500 6500 800]
+       SymbolLine[500 5000 1500 5000 800]
+       SymbolLine[1500 5000 2000 4500 800]
+)
+Symbol['z' 1200]
+(
+       SymbolLine[0 3000 2000 3000 800]
+       SymbolLine[0 5000 2000 3000 800]
+       SymbolLine[0 5000 2000 5000 800]
+)
+Symbol['{' 1200]
+(
+       SymbolLine[500 1500 1000 1000 800]
+       SymbolLine[500 1500 500 2500 800]
+       SymbolLine[0 3000 500 2500 800]
+       SymbolLine[0 3000 500 3500 800]
+       SymbolLine[500 3500 500 4500 800]
+       SymbolLine[500 4500 1000 5000 800]
+)
+Symbol['|' 1200]
+(
+       SymbolLine[0 1000 0 5000 800]
+)
+Symbol['}' 1200]
+(
+       SymbolLine[0 1000 500 1500 800]
+       SymbolLine[500 1500 500 2500 800]
+       SymbolLine[500 2500 1000 3000 800]
+       SymbolLine[500 3500 1000 3000 800]
+       SymbolLine[500 3500 500 4500 800]
+       SymbolLine[0 5000 500 4500 800]
+)
+Symbol['~' 1200]
+(
+       SymbolLine[0 3500 500 3000 800]
+       SymbolLine[500 3000 1000 3000 800]
+       SymbolLine[1000 3000 1500 3500 800]
+       SymbolLine[1500 3500 2000 3500 800]
+       SymbolLine[2000 3500 2500 3000 800]
+)
+Attribute("PCB::grid::unit" "mil")
+
+Element["" "LED3" "LED1" "status" 60000 95000 -25000 2000 0 100 ""]
+(
+       Pin[0 -5000 6500 3000 7100 4300 "1" "1" "square"]
+       Pin[0 5000 6500 3000 7100 4300 "2" "2" ""]
+       ElementArc [0 0 5900 5900 315 90 1000]
+       ElementArc [0 0 5900 5900 135 90 1000]
+       ElementArc [0 0 7900 7900 315 90 1000]
+       ElementArc [0 0 7900 7900 135 90 1000]
+
+       )
+
+Element["" "CON_USB_TYPEB__Keystone_924" "CONN1" "USB-B" -1000 76300 -7000 0 1 100 ""]
+(
+       Pin[59000 -18800 6600 2000 8600 4600 "1" "1" "edge2"]
+       Pin[59000 -28600 6600 2000 8600 4600 "2" "2" "edge2"]
+       Pin[51200 -28600 6600 2000 8600 4600 "3" "3" "edge2"]
+       Pin[51200 -18800 6600 2000 8600 4600 "4" "4" "edge2"]
+       Pin[40500 0 13000 2000 13000 11000 "" "5" "edge2"]
+       Pin[40500 -47400 13000 2000 13000 11000 "" "6" "edge2"]
+       ElementLine [0 0 34500 0 1000]
+       ElementLine [0 -47400 0 0 1000]
+       ElementLine [0 -47400 34500 -47400 1000]
+       ElementLine [46500 0 64000 0 1000]
+       ElementLine [64000 -47400 64000 0 1000]
+       ElementLine [46500 -47400 64000 -47400 1000]
+
+       )
+
+Element["" "DIODE_LAY-300" "Z2" "3V6" 110000 70000 -8000 5000 0 100 ""]
+(
+       Pin[0 0 5000 3000 5600 2000 "1" "1" "square"]
+       Pin[0 -30000 5000 3000 5600 2000 "2" "2" ""]
+       ElementLine [0 -10000 0 0 1000]
+       ElementLine [0 -30000 0 -20000 1000]
+       ElementLine [0 -10000 -5000 -20000 1000]
+       ElementLine [-5000 -20000 5000 -20000 1000]
+       ElementLine [5000 -20000 0 -10000 1000]
+       ElementLine [-5000 -10000 5000 -10000 1000]
+
+       )
+
+Element["" "DIODE_LAY-300" "Z1" "3V6" 100000 60000 -8000 5000 0 100 ""]
+(
+       Pin[0 0 5000 3000 5600 2000 "1" "1" "square"]
+       Pin[0 -30000 5000 3000 5600 2000 "2" "2" ""]
+       ElementLine [0 -10000 0 0 1000]
+       ElementLine [0 -30000 0 -20000 1000]
+       ElementLine [0 -10000 -5000 -20000 1000]
+       ElementLine [-5000 -20000 5000 -20000 1000]
+       ElementLine [5000 -20000 0 -10000 1000]
+       ElementLine [-5000 -10000 5000 -10000 1000]
+
+       )
+
+Element["" "R025" "R1" "68" 80000 30000 2000 12000 3 100 ""]
+(
+       Pin[0 0 6800 3000 7400 3800 "1" "1" "square"]
+       Pin[0 40000 6800 3000 7400 3800 "2" "2" ""]
+       ElementLine [5000 10000 5000 30000 2000]
+       ElementLine [-5000 30000 5000 30000 2000]
+       ElementLine [-5000 10000 -5000 30000 2000]
+       ElementLine [-5000 10000 5000 10000 2000]
+       ElementLine [0 0 0 10000 2000]
+       ElementLine [0 30000 0 40000 2000]
+
+       )
+
+Element["" "R025" "R4" "330" 126696 87471 -2000 -12000 1 100 ""]
+(
+       Pin[0 0 6800 3000 7400 3800 "1" "1" "square"]
+       Pin[0 -40000 6800 3000 7400 3800 "2" "2" ""]
+       ElementLine [-5000 -30000 -5000 -10000 2000]
+       ElementLine [-5000 -30000 5000 -30000 2000]
+       ElementLine [5000 -30000 5000 -10000 2000]
+       ElementLine [-5000 -10000 5000 -10000 2000]
+       ElementLine [0 -10000 0 0 2000]
+       ElementLine [0 -40000 0 -30000 2000]
+
+       )
+
+Element["" "R025" "R3" "2K2" 144904 43610 2000 12000 3 100 ""]
+(
+       Pin[0 0 6800 3000 7400 3800 "1" "1" "square"]
+       Pin[0 40000 6800 3000 7400 3800 "2" "2" ""]
+       ElementLine [5000 10000 5000 30000 2000]
+       ElementLine [-5000 30000 5000 30000 2000]
+       ElementLine [-5000 10000 -5000 30000 2000]
+       ElementLine [-5000 10000 5000 10000 2000]
+       ElementLine [0 0 0 10000 2000]
+       ElementLine [0 30000 0 40000 2000]
+
+       )
+
+Element["" "R025" "R2" "68" 112340 24597 12000 -2000 0 100 ""]
+(
+       Pin[0 0 6800 3000 7400 3800 "1" "1" "square,edge2"]
+       Pin[40000 0 6800 3000 7400 3800 "2" "2" "edge2"]
+       ElementLine [10000 -5000 30000 -5000 2000]
+       ElementLine [30000 -5000 30000 5000 2000]
+       ElementLine [10000 5000 30000 5000 2000]
+       ElementLine [10000 -5000 10000 5000 2000]
+       ElementLine [0 0 10000 0 2000]
+       ElementLine [30000 0 40000 0 2000]
+
+       )
+
+Element["" "DIP8" "U1" "ATtiny45" 210000 80000 -15000 -47000 0 100 ""]
+(
+       Pin[0 0 6000 3000 6600 2800 "PB5 (_Reset_/ADC0)" "1" "square"]
+       Pin[0 -10000 6000 3000 6600 2800 "(ADC3) PB4" "2" ""]
+       Pin[0 -20000 6000 3000 6600 2800 "(ADC2) PB3" "3" ""]
+       Pin[0 -30000 6000 3000 6600 2800 "4" "4" ""]
+       Pin[-30000 -30000 6000 3000 6600 2800 "(MOSI/AIN0/AREF) PB0" "5" ""]
+       Pin[-30000 -20000 6000 3000 6600 2800 "(MISO/OC1A/AIN1) PB1" "6" ""]
+       Pin[-30000 -10000 6000 3000 6600 2800 "(SCK/ADC1/T0/INT0) PB2" "7" ""]
+       Pin[-30000 0 6000 3000 6600 2800 "8" "8" ""]
+       ElementLine [5000 -35000 5000 5000 1000]
+       ElementLine [-35000 -35000 5000 -35000 1000]
+       ElementLine [-35000 -35000 -35000 5000 1000]
+       ElementLine [-10000 5000 5000 5000 1000]
+       ElementLine [-35000 5000 -20000 5000 1000]
+       ElementArc [-15000 5000 5000 5000 180 180 1000]
+
+       )
+
+Element["" "R025" "R7" "10K" 236300 56399 -2000 -12000 1 100 ""]
+(
+       Pin[0 0 6800 3000 7400 3800 "1" "1" "square"]
+       Pin[0 -40000 6800 3000 7400 3800 "2" "2" ""]
+       ElementLine [-5000 -30000 -5000 -10000 2000]
+       ElementLine [-5000 -30000 5000 -30000 2000]
+       ElementLine [5000 -30000 5000 -10000 2000]
+       ElementLine [-5000 -10000 5000 -10000 2000]
+       ElementLine [0 -10000 0 0 2000]
+       ElementLine [0 -40000 0 -30000 2000]
+
+       )
+
+Element["" "R025" "R6" "10K" 255137 57825 -2000 -12000 1 100 ""]
+(
+       Pin[0 0 6800 3000 7400 3800 "1" "1" "square"]
+       Pin[0 -40000 6800 3000 7400 3800 "2" "2" ""]
+       ElementLine [-5000 -30000 -5000 -10000 2000]
+       ElementLine [-5000 -30000 5000 -30000 2000]
+       ElementLine [5000 -30000 5000 -10000 2000]
+       ElementLine [-5000 -10000 5000 -10000 2000]
+       ElementLine [0 -10000 0 0 2000]
+       ElementLine [0 -40000 0 -30000 2000]
+
+       )
+
+Element["" "R025" "R5" "2K2" 274950 60895 -2000 -12000 1 100 ""]
+(
+       Pin[0 0 6800 3000 7400 3800 "1" "1" "square"]
+       Pin[0 -40000 6800 3000 7400 3800 "2" "2" ""]
+       ElementLine [-5000 -30000 -5000 -10000 2000]
+       ElementLine [-5000 -30000 5000 -30000 2000]
+       ElementLine [5000 -30000 5000 -10000 2000]
+       ElementLine [-5000 -10000 5000 -10000 2000]
+       ElementLine [0 -10000 0 0 2000]
+       ElementLine [0 -40000 0 -30000 2000]
+
+       )
+
+Element["" "HEADER2_1" "CONN3" "unknown" 297119 53939 -19238 21122 0 100 ""]
+(
+       Pin[0 0 6000 3000 6600 3800 "1" "1" "square"]
+       Pin[0 10000 6000 3000 6600 3800 "2" "2" ""]
+       ElementLine [-5000 -5000 5000 -5000 1000]
+       ElementLine [-5000 -5000 -5000 15000 1000]
+       ElementLine [-5000 15000 5000 15000 1000]
+       ElementLine [5000 -5000 5000 15000 1000]
+       ElementLine [-5000 -5000 -5000 5000 1000]
+       ElementLine [-5000 5000 5000 5000 1000]
+
+       )
+
+Element["" "HEADER2_1" "CONN2" "unknown" 297119 43939 -15000 -21000 0 100 ""]
+(
+       Pin[0 0 6000 3000 6600 3800 "1" "1" "square"]
+       Pin[0 -10000 6000 3000 6600 3800 "2" "2" ""]
+       ElementLine [-5000 5000 5000 5000 1000]
+       ElementLine [5000 -15000 5000 5000 1000]
+       ElementLine [-5000 -15000 5000 -15000 1000]
+       ElementLine [-5000 -15000 -5000 5000 1000]
+       ElementLine [5000 -5000 5000 5000 1000]
+       ElementLine [-5000 -5000 5000 -5000 1000]
+
+       )
+
+Element["" "SW__Panasonic_EVQPA_Series" "S1" "Reset" 240000 90000 14173 -5000 0 100 ""]
+(
+       Pin[-8858 12795 7500 2000 9500 4600 "1" "1" ""]
+       Pin[-8858 -12795 7500 2000 9500 4600 "1" "1" ""]
+       Pin[8858 -12795 7500 2000 9500 4600 "2" "2" ""]
+       Pin[8858 12795 7500 2000 9500 4600 "2" "2" ""]
+       ElementLine [-3937 11811 3937 11811 1000]
+       ElementLine [-3937 -11811 3937 -11811 1000]
+       ElementLine [-11811 -7874 -11811 7874 1000]
+       ElementLine [11811 -7874 11811 7874 1000]
+       ElementArc [0 0 7086 7086 0 360 1000]
+
+       )
+
+Element["" "ACY200" "C1" "100nF" 180000 100000 -13000 -6400 0 100 ""]
+(
+       Pin[0 0 5500 3000 6100 3000 "1" "1" "square,edge2"]
+       Pin[20000 0 5500 3000 6100 3000 "2" "2" "edge2"]
+       ElementLine [0 0 5000 0 1000]
+       ElementLine [15000 0 20000 0 1000]
+       ElementLine [5000 -1600 15000 -1600 1000]
+       ElementLine [15000 -1600 15000 1600 1000]
+       ElementLine [5000 1600 15000 1600 1000]
+       ElementLine [5000 -1600 5000 1600 1000]
+
+       )
+Layer(1 "component")
+(
+)
+Layer(2 "solder")
+(
+       Line[100000 30000 60000 30000 2000 4000 "clearline"]
+       Line[60000 30000 50200 39800 2000 4000 "clearline"]
+       Line[50200 39800 50200 47700 2000 4000 "clearline"]
+       Line[58000 47700 60700 45000 2000 4000 "clearline"]
+       Line[60700 45000 105000 45000 2000 4000 "clearline"]
+       Line[105000 45000 112340 37660 2000 4000 "clearline"]
+       Line[112340 37660 112340 24597 2000 4000 "clearline"]
+       Line[112340 37660 138954 37660 2000 4000 "clearline"]
+       Line[138954 37660 144904 43610 2000 4000 "clearline"]
+       Line[126696 87471 124167 90000 2000 4000 "clearline"]
+       Line[124167 90000 60000 90000 2000 4000 "clearline"]
+       Line[58000 57500 60000 59500 2000 4000 "clearline"]
+       Line[60000 59500 60000 75000 2000 4000 "clearline"]
+       Line[60000 75000 70000 85000 2000 4000 "clearline"]
+       Line[70000 85000 115000 85000 2000 4000 "clearline"]
+       Line[115000 85000 120000 80000 2000 4000 "clearline"]
+       Line[120000 80000 135000 80000 2000 4000 "clearline"]
+       Line[135000 80000 138610 83610 2000 4000 "clearline"]
+       Line[138610 83610 144904 83610 2000 4000 "clearline"]
+       Line[144904 83610 148514 80000 2000 4000 "clearline"]
+       Line[180000 80000 180000 100000 2000 4000 "clearline"]
+       Line[80000 70000 91000 81000 2000 4000 "clearline"]
+       Line[91000 81000 110000 81000 2000 4000 "clearline"]
+       Line[110000 81000 121000 70000 2000 4000 "clearline"]
+       Line[121000 70000 180000 70000 2000 4000 "clearline"]
+       Line[126696 47471 139225 60000 2000 4000 "clearline"]
+       Line[139225 60000 180000 60000 2000 4000 "clearline"]
+       Line[180000 50000 154597 24597 2000 4000 "clearline"]
+       Line[154597 24597 152340 24597 2000 4000 "clearline"]
+       Line[148514 80000 185000 80000 2000 4000 "clearline"]
+       Line[185000 80000 190000 75000 2000 4000 "clearline"]
+       Line[190000 75000 190000 25000 2000 4000 "clearline"]
+       Line[190000 25000 198601 16399 2000 4000 "clearline"]
+       Line[198601 16399 236300 16399 2000 4000 "clearline"]
+       Line[236300 16399 237726 17825 2000 4000 "clearline"]
+       Line[237726 17825 255137 17825 2000 4000 "clearline"]
+       Line[255137 17825 258207 20895 2000 4000 "clearline"]
+       Line[258207 20895 274950 20895 2000 4000 "clearline"]
+       Line[210000 80000 212795 77205 2000 4000 "clearline"]
+       Line[212795 77205 231142 77205 2000 4000 "clearline"]
+       Line[231142 77205 238347 70000 2000 4000 "clearline"]
+       Line[238347 70000 270000 70000 2000 4000 "clearline"]
+       Line[270000 70000 274950 65050 2000 4000 "clearline"]
+       Line[274950 65050 274950 60895 2000 4000 "clearline"]
+       Line[274950 60895 274055 60000 2000 4000 "clearline"]
+       Line[210000 60000 215000 60000 2000 4000 "clearline"]
+       Line[215000 60000 230000 45000 2000 4000 "clearline"]
+       Line[230000 45000 245000 45000 2000 4000 "clearline"]
+       Line[245000 45000 255137 55137 2000 4000 "clearline"]
+       Line[255137 55137 255137 57825 2000 4000 "clearline"]
+       Line[255137 57825 269023 43939 2000 4000 "clearline"]
+       Line[269023 43939 297119 43939 2000 4000 "clearline"]
+       Line[231142 102795 231142 77205 2000 4000 "clearline"]
+       Line[297119 53939 266061 53939 2000 4000 "clearline"]
+       Line[266061 53939 265000 55000 2000 4000 "clearline"]
+       Line[265000 55000 265000 60000 2000 4000 "clearline"]
+       Line[265000 60000 260000 65000 2000 4000 "clearline"]
+       Line[260000 65000 244901 65000 2000 4000 "clearline"]
+       Line[244901 65000 236300 56399 2000 4000 "clearline"]
+       Line[236300 56399 222699 70000 2000 4000 "clearline"]
+       Line[222699 70000 210000 70000 2000 4000 "clearline"]
+)
+Layer(3 "outline")
+(
+)
+Layer(4 "GND")
+(
+)
+Layer(5 "power")
+(
+)
+Layer(6 "signal1")
+(
+)
+Layer(7 "signal2")
+(
+)
+Layer(8 "signal3")
+(
+)
+Layer(9 "silk")
+(
+)
+Layer(10 "silk")
+(
+)
+NetList()
+(
+       Net("D+" "(unknown)")
+       (
+               Connect("CONN1-3")
+               Connect("R1-1")
+               Connect("Z1-2")
+       )
+       Net("D-" "(unknown)")
+       (
+               Connect("CONN1-2")
+               Connect("R2-1")
+               Connect("R3-1")
+               Connect("Z2-2")
+       )
+       Net("GND" "(unknown)")
+       (
+               Connect("C1-2")
+               Connect("CONN1-4")
+               Connect("CONN2-2")
+               Connect("CONN3-2")
+               Connect("LED1-2")
+               Connect("S1-2")
+               Connect("U1-4")
+               Connect("Z1-1")
+               Connect("Z2-1")
+       )
+       Net("LIGHT" "(unknown)")
+       (
+               Connect("CONN2-1")
+               Connect("R6-1")
+               Connect("U1-3")
+       )
+       Net("TEMP" "(unknown)")
+       (
+               Connect("CONN3-1")
+               Connect("R7-1")
+               Connect("U1-2")
+       )
+       Net("unnamed_net1" "(unknown)")
+       (
+               Connect("R1-2")
+               Connect("U1-7")
+       )
+       Net("unnamed_net2" "(unknown)")
+       (
+               Connect("R5-1")
+               Connect("S1-1")
+               Connect("U1-1")
+       )
+       Net("unnamed_net3" "(unknown)")
+       (
+               Connect("R4-2")
+               Connect("U1-6")
+       )
+       Net("unnamed_net4" "(unknown)")
+       (
+               Connect("R2-2")
+               Connect("U1-5")
+       )
+       Net("unnamed_net5" "(unknown)")
+       (
+               Connect("LED1-1")
+               Connect("R4-1")
+       )
+       Net("Vcc" "(unknown)")
+       (
+               Connect("C1-1")
+               Connect("CONN1-1")
+               Connect("R3-2")
+               Connect("R5-2")
+               Connect("R6-2")
+               Connect("R7-2")
+               Connect("U1-8")
+       )
+)
diff --git a/hardware/hid_keyb.pdf b/hardware/hid_keyb.pdf
new file mode 100644 (file)
index 0000000..4ee1d8e
Binary files /dev/null and b/hardware/hid_keyb.pdf differ
diff --git a/hardware/hid_keyb.sch b/hardware/hid_keyb.sch
new file mode 100644 (file)
index 0000000..4412616
--- /dev/null
@@ -0,0 +1,313 @@
+v 20110115 2
+C 43600 45600 1 0 1 connector4-2.sym
+{
+T 42900 47700 5 10 1 1 0 0 1
+refdes=CONN1
+T 43300 47650 5 10 0 0 0 6 1
+device=CONNECTOR_4
+T 43300 47850 5 10 0 0 0 6 1
+footprint=CON_USB_TYPEB__Keystone_924
+T 43600 45600 5 10 0 0 0 0 1
+net=Vcc:1
+T 43600 45600 5 10 0 0 0 0 1
+net=GND:4
+T 42800 45300 5 10 1 1 0 0 1
+value=USB-B
+T 43600 45600 5 10 0 0 0 0 1
+net=D+:3
+T 43600 45600 5 10 0 0 0 0 1
+net=D-:2
+}
+C 46400 46500 1 90 0 resistor-2.sym
+{
+T 46050 46900 5 10 0 0 90 0 1
+device=RESISTOR
+T 46100 46700 5 10 1 1 90 0 1
+refdes=R1
+T 46400 46500 5 10 0 0 90 0 1
+footprint=R025
+T 46400 46800 5 10 1 1 90 0 1
+value=68
+}
+C 46400 45400 1 90 0 zener-2.sym
+{
+T 45900 45800 5 10 0 0 90 0 1
+device=ZENER_DIODE
+T 46100 45700 5 10 1 1 90 0 1
+refdes=Z1
+T 46600 45700 5 10 1 1 90 0 1
+value=3V6
+T 46400 45400 5 10 0 0 0 0 1
+footprint=DIODE_LAY 300
+}
+C 45500 45400 1 90 0 zener-2.sym
+{
+T 45000 45800 5 10 0 0 90 0 1
+device=ZENER_DIODE
+T 45200 45700 5 10 1 1 90 0 1
+refdes=Z2
+T 45700 45700 5 10 1 1 90 0 1
+value=3V6
+T 45500 45400 5 10 0 0 0 0 1
+footprint=DIODE_LAY 300
+}
+C 43800 44800 1 0 0 gnd-1.sym
+{
+T 43800 44800 5 10 0 0 0 0 1
+net=GND:1
+T 43800 44800 5 10 0 0 0 0 1
+footprint=none
+}
+N 43600 45400 48200 45400 4
+N 43900 45400 43900 45100 4
+N 43600 45400 43600 46000 4
+C 52500 46600 1 0 1 ATtiny15L-1.sym
+{
+T 49600 48900 5 10 1 1 0 0 1
+refdes=U1
+T 52200 49050 5 10 0 0 0 6 1
+device=ATtiny15L
+T 52200 49250 5 10 0 0 0 6 1
+footprint=DIP8
+T 50300 49100 5 10 1 1 0 0 1
+value=ATtiny45
+}
+C 45500 46800 1 90 0 resistor-2.sym
+{
+T 45150 47200 5 10 0 0 90 0 1
+device=RESISTOR
+T 45200 47000 5 10 1 1 90 0 1
+refdes=R2
+T 45500 46800 5 10 0 0 90 0 1
+footprint=R025
+T 45500 47100 5 10 1 1 90 0 1
+value=68
+}
+C 44600 46800 1 90 0 resistor-2.sym
+{
+T 44250 47200 5 10 0 0 90 0 1
+device=RESISTOR
+T 44300 47000 5 10 1 1 90 0 1
+refdes=R3
+T 44600 46800 5 10 0 0 90 0 1
+footprint=R025
+T 44600 47100 5 10 1 1 90 0 1
+value=2K2
+}
+N 46300 46500 46300 46200 4
+N 49300 47700 46300 47700 4
+N 46300 47700 46300 47400 4
+N 49300 48500 45400 48500 4
+N 43600 46800 45400 46800 4
+{
+T 43700 46600 5 10 1 1 0 0 1
+netname=D-
+}
+N 43600 46400 46300 46400 4
+{
+T 43700 46200 5 10 1 1 0 0 1
+netname=D+
+}
+N 45400 46200 45400 46800 4
+C 43700 48300 1 0 0 vcc-1.sym
+{
+T 43700 48300 5 10 0 0 0 0 1
+footprint=none
+T 43700 48300 5 10 0 0 0 0 1
+net=Vcc:1
+}
+N 43600 47200 43900 47200 4
+N 43900 47200 43900 48300 4
+C 48300 46600 1 90 0 resistor-2.sym
+{
+T 47950 47000 5 10 0 0 90 0 1
+device=RESISTOR
+T 48100 47300 5 10 1 1 180 0 1
+refdes=R4
+T 48300 46600 5 10 0 0 90 0 1
+footprint=R025
+T 48300 46900 5 10 1 1 90 0 1
+value=330
+}
+C 48100 46500 1 270 0 led-2.sym
+{
+T 47500 46100 5 10 1 1 0 0 1
+refdes=LED1
+T 48700 46400 5 10 0 0 270 0 1
+device=LED
+T 48100 46500 5 10 0 0 0 0 1
+footprint=LED3
+T 47500 45900 5 10 1 1 0 0 1
+value=status
+}
+N 49300 48100 48200 48100 4
+N 48200 48100 48200 47500 4
+N 48200 45600 48200 45400 4
+N 48200 46600 48200 46500 4
+N 44500 47700 44500 48000 4
+C 53200 46800 1 270 0 switch-pushbutton-no-1.sym
+{
+T 53500 46400 5 10 1 1 0 0 1
+refdes=S1
+T 53800 46400 5 10 0 0 270 0 1
+device=SWITCH_PUSHBUTTON_NO
+T 53200 46800 5 10 0 0 0 0 1
+footprint=SW__Panasonic_EVQPA_Series
+T 53500 46200 5 10 1 1 0 0 1
+value=Reset
+}
+C 53300 47400 1 90 0 resistor-2.sym
+{
+T 52950 47800 5 10 0 0 90 0 1
+device=RESISTOR
+T 53000 47600 5 10 1 1 90 0 1
+refdes=R5
+T 53300 47400 5 10 0 0 90 0 1
+footprint=R025
+T 53300 47700 5 10 1 1 90 0 1
+value=2K2
+}
+C 53100 45500 1 0 0 gnd-1.sym
+{
+T 53100 45500 5 10 0 0 0 0 1
+net=GND:1
+T 53100 45500 5 10 0 0 0 0 1
+footprint=none
+}
+N 52500 46900 53200 46900 4
+N 53200 46800 53200 47400 4
+C 53000 48300 1 0 0 vcc-1.sym
+{
+T 53000 48300 5 10 0 0 0 0 1
+footprint=none
+T 53000 48300 5 10 0 0 0 0 1
+net=Vcc:1
+}
+C 51900 45500 1 0 0 vcc-1.sym
+{
+T 51900 45500 5 10 0 0 0 0 1
+footprint=none
+T 51900 45500 5 10 0 0 0 0 1
+net=Vcc:1
+}
+C 52200 44500 1 90 0 resistor-2.sym
+{
+T 51850 44900 5 10 0 0 90 0 1
+device=RESISTOR
+T 51900 44700 5 10 1 1 90 0 1
+refdes=R6
+T 52200 44500 5 10 0 0 90 0 1
+footprint=R025
+T 52200 44800 5 10 1 1 90 0 1
+value=10K
+}
+C 52500 43600 1 0 0 connector2-2.sym
+{
+T 53200 44900 5 10 1 1 0 6 1
+refdes=CONN2
+T 52800 44850 5 10 0 0 0 0 1
+device=CONNECTOR_2
+T 52800 45050 5 10 0 0 0 0 1
+footprint=HEADER2_1
+T 52500 43600 5 10 0 0 0 0 1
+net=GND:2
+T 52500 43600 5 10 0 0 0 0 1
+net=LIGHT:1
+}
+C 50000 43600 1 0 0 connector2-2.sym
+{
+T 50700 44900 5 10 1 1 0 6 1
+refdes=CONN3
+T 50300 44850 5 10 0 0 0 0 1
+device=CONNECTOR_2
+T 50300 45050 5 10 0 0 0 0 1
+footprint=HEADER2_1
+T 50000 43600 5 10 0 0 0 0 1
+net=TEMP:1
+T 50000 43600 5 10 0 0 0 0 1
+net=GND:2
+}
+C 49500 43500 1 0 0 gnd-1.sym
+{
+T 49500 43500 5 10 0 0 0 0 1
+net=GND:1
+T 49500 43500 5 10 0 0 0 0 1
+footprint=none
+}
+C 52000 43500 1 0 0 gnd-1.sym
+{
+T 52000 43500 5 10 0 0 0 0 1
+net=GND:1
+T 52000 43500 5 10 0 0 0 0 1
+footprint=none
+}
+N 52500 44000 52100 44000 4
+N 52100 44000 52100 43800 4
+N 52100 44500 52100 44400 4
+N 51400 44400 52500 44400 4
+N 50000 44000 49600 44000 4
+N 49600 44000 49600 43800 4
+N 52100 45500 52100 45400 4
+C 49400 45600 1 0 0 vcc-1.sym
+{
+T 49400 45600 5 10 0 0 0 0 1
+footprint=none
+T 49400 45600 5 10 0 0 0 0 1
+net=Vcc:1
+}
+C 49700 44600 1 90 0 resistor-2.sym
+{
+T 49350 45000 5 10 0 0 90 0 1
+device=RESISTOR
+T 49400 44800 5 10 1 1 90 0 1
+refdes=R7
+T 49700 44600 5 10 0 0 90 0 1
+footprint=R025
+T 49700 44900 5 10 1 1 90 0 1
+value=10K
+}
+N 49600 45600 49600 45500 4
+N 49600 44600 49600 44400 4
+N 49300 47300 48700 47300 4
+N 48700 44400 48700 47300 4
+N 48700 44400 50000 44400 4
+N 49300 46900 49100 46900 4
+N 49100 46300 49100 46900 4
+N 49100 46300 51400 46300 4
+N 51400 46300 51400 44400 4
+C 42700 42000 0 0 0 title-A4.sym
+C 43200 43900 1 0 0 vcc-1.sym
+{
+T 43200 43900 5 10 0 0 0 0 1
+footprint=none
+T 43200 43900 5 10 0 0 0 0 1
+net=Vcc:1
+}
+C 44700 43600 1 0 0 gnd-1.sym
+{
+T 44700 43600 5 10 0 0 0 0 1
+net=GND:1
+T 44700 43600 5 10 0 0 0 0 1
+footprint=none
+}
+C 43700 43700 1 0 0 capacitor-1.sym
+{
+T 43900 44400 5 10 0 0 0 0 1
+device=CAPACITOR
+T 43800 44200 5 10 1 1 0 0 1
+refdes=C1
+T 43900 44600 5 10 0 0 0 0 1
+symversion=0.1
+T 44100 44200 5 10 1 1 0 0 1
+value=100nF
+T 43700 43700 5 10 0 1 0 0 1
+footprint=ACY200
+}
+N 44800 43900 44600 43900 4
+N 43700 43900 43400 43900 4
+T 47300 42700 9 10 1 0 0 0 1
+USB HID Sensor
+T 51200 42100 9 10 1 0 0 0 1
+Pat Thoyts
+N 45400 47700 45400 48500 4
+N 44500 48000 43900 48000 4
diff --git a/hardware/project b/hardware/project
new file mode 100644 (file)
index 0000000..6515cc9
--- /dev/null
@@ -0,0 +1,3 @@
+schematics hid_keyb.sch
+output-name hid_keyb
+