save gps chip antenna footprint generator before hacking on it
authorBdale Garbee <bdale@gag.com>
Thu, 8 Sep 2011 08:03:32 +0000 (02:03 -0600)
committerBdale Garbee <bdale@gag.com>
Thu, 8 Sep 2011 08:03:32 +0000 (02:03 -0600)
pkg/newlib/W3011A.py [new file with mode: 0755]
sym/NHD-C0216.sym

diff --git a/pkg/newlib/W3011A.py b/pkg/newlib/W3011A.py
new file mode 100755 (executable)
index 0000000..2b46575
--- /dev/null
@@ -0,0 +1,86 @@
+#!/usr/bin/python
+# Copyright 2007 by Bdale Garbee <bdale@gag.com>.  GPLv2
+#
+# Program to emit PCB footprint for Pules Electronics W3011A GPS chip antenna
+#
+#   dimensions in mm from W3011.pdf
+PinWidth = 0.80
+PinHeight = 0.65
+PadHeight = 1.60
+PinSpacing = 2.40
+ClearWidth = 4.00
+ClearHeight = 6.25
+
+import sys
+
+# we're going to use the 1/100 of a mil fundamental unit form
+def mm2mils100( mm ):
+       return int( mm / 25.4 * 1000.0 * 100.0 + 0.5 )
+
+print '# author: Bdale Garbee'
+print '# email: bdale@gag.com'
+print '# dist-license: GPL 2'
+print '# use-license: unlimited'
+
+print 'Element[0x0 "W3011A" "" "" 0 0 0 0 0 100 0x0]'
+print "("
+# pad 1 (signal trace)
+print '   Pad[',\
+       mm2mils100(PinSpacing/2+PinHeight/2), \
+       mm2mils100(2.00 - PinHeight/2), \
+       mm2mils100(PinSpacing/2+PinWidth-PinHeight/2), \
+       mm2mils100(2.00 - PinHeight/2), \
+       mm2mils100(PinHeight), \
+       0, \
+       mm2mils100(PinHeight + 0.1), \
+       '"pin1" "1" 0x0100]'
+
+print '   Pad[',\
+       mm2mils100(PinSpacing/2+PinHeight/2), \
+       mm2mils100(0.40 + PinHeight/2), \
+       mm2mils100(PinSpacing/2+PinWidth-PinHeight/2), \
+       mm2mils100(0.40 + PinHeight/2), \
+       mm2mils100(PinHeight), \
+       0, \
+       mm2mils100(PinHeight + 0.1), \
+       '"pin2" "2" 0x0100]'
+
+print '   Pad[',\
+       mm2mils100(-PinSpacing/2-PinWidth/2), \
+       mm2mils100(0.40 + PinWidth/2), \
+       mm2mils100(-PinSpacing/2-PinWidth/2), \
+       mm2mils100(0.40 + PadHeight - PinWidth/2), \
+       mm2mils100(PinWidth), \
+       0, \
+       mm2mils100(PinWidth + 0.1), \
+       '"pin3" "3" 0x0100]'
+
+print '   ElementLine[',\
+       mm2mils100(ClearWidth/2), \
+       mm2mils100(0), \
+       mm2mils100(ClearWidth/2), \
+       mm2mils100(ClearHeight), \
+       '1000 ]'
+
+print '   ElementLine[',\
+       mm2mils100(-ClearWidth/2), \
+       mm2mils100(0), \
+       mm2mils100(-ClearWidth/2), \
+       mm2mils100(ClearHeight), \
+       '1000 ]'
+
+print '   ElementLine[',\
+       mm2mils100(-ClearWidth/2-0.2), \
+       mm2mils100(0), \
+       mm2mils100(ClearWidth/2+0.2), \
+       mm2mils100(0), \
+       '1000 ]'
+
+print '   ElementLine[',\
+       mm2mils100(-ClearWidth/2), \
+       mm2mils100(ClearHeight), \
+       mm2mils100(ClearWidth/2), \
+       mm2mils100(ClearHeight), \
+       '1000 ]'
+
+print ")"
index 47934a9424d10ad6aea12ecfaee20496d7cc940a..eeb00162da4eccd4587f6ce0596b49ef801e6264 100644 (file)
@@ -17,8 +17,8 @@ T 250 200 5 8 0 1 90 8 1
 pinseq=1
 T 200 350 9 8 1 1 90 0 1
 pinlabel=XRESET
-T 200 350 5 8 0 1 90 2 1
-pintype=pwr
+T 200 350 5 8 0 2 90 2 1
+pintype=in
 }
 P 600 0 600 300 1 0 0
 {
@@ -29,18 +29,7 @@ pinseq=2
 T 600 350 9 8 1 1 90 0 1
 pinlabel=RS
 T 600 350 5 8 0 1 90 2 1
-pintype=pwr
-}
-P 1000 0 1000 300 1 0 0
-{
-T 950 200 5 8 1 1 90 6 1
-pinnumber=3
-T 1050 200 5 8 0 1 90 8 1
-pinseq=3
-T 5000 350 9 8 1 1 90 0 1
-pinlabel=VSS
-T 1000 350 5 8 0 1 90 2 1
-pintype=pwr
+pintype=io
 }
 P 1400 0 1400 300 1 0 0
 {
@@ -53,15 +42,15 @@ pinlabel=E
 T 1400 350 5 8 0 1 90 2 1
 pintype=in
 }
-P 1800 0 1800 300 1 0 0
+P 1000 0 1000 300 1 0 0
 {
-T 1750 200 5 8 1 1 90 6 1
-pinnumber=5
-T 1850 200 5 8 0 1 90 8 1
-pinseq=5
+T 950 200 5 8 1 1 90 6 1
+pinnumber=3
+T 1050 200 5 8 0 1 90 8 1
+pinseq=3
 T 1000 350 9 8 1 1 90 0 1
 pinlabel=R/\_W\_
-T 1800 350 5 8 0 1 90 2 1
+T 1000 350 5 8 0 1 90 2 1
 pintype=in
 }
 P 2200 0 2200 300 1 0 0
@@ -70,8 +59,8 @@ T 2150 200 5 8 1 1 90 6 1
 pinnumber=6
 T 2250 200 5 8 0 1 90 8 1
 pinseq=6
-T 5400 350 9 8 1 1 90 0 1
-pinlabel=VDD
+T 2200 350 9 8 1 1 90 0 1
+pinlabel=DB1
 T 2200 350 5 8 0 1 90 2 1
 pintype=in
 }
@@ -81,8 +70,8 @@ T 2550 200 5 8 1 1 90 6 1
 pinnumber=7
 T 2650 200 5 8 0 1 90 8 1
 pinseq=7
-T 1800 350 9 8 1 1 90 0 1
-pinlabel=DB0
+T 2600 350 9 8 1 1 90 0 1
+pinlabel=DB2
 T 2600 350 5 8 0 1 90 2 1
 pintype=io
 }
@@ -92,8 +81,8 @@ T 2950 200 5 8 1 1 90 6 1
 pinnumber=8
 T 3050 200 5 8 0 1 90 8 1
 pinseq=8
-T 2200 350 9 8 1 1 90 0 1
-pinlabel=DB1
+T 3000 350 9 8 1 1 90 0 1
+pinlabel=DB3
 T 3000 350 5 8 0 1 90 2 1
 pintype=io
 }
@@ -103,8 +92,8 @@ T 3350 200 5 8 1 1 90 6 1
 pinnumber=9
 T 3450 200 5 8 0 1 90 8 1
 pinseq=9
-T 2600 350 9 8 1 1 90 0 1
-pinlabel=DB2
+T 3400 350 9 8 1 1 90 0 1
+pinlabel=DB4
 T 3400 350 5 8 0 1 90 2 1
 pintype=io
 }
@@ -114,8 +103,8 @@ T 3750 200 5 8 1 1 90 6 1
 pinnumber=10
 T 3850 200 5 8 0 1 90 8 1
 pinseq=10
-T 3000 350 9 8 1 1 90 0 1
-pinlabel=DB3
+T 3800 350 9 8 1 1 90 0 1
+pinlabel=DB5
 T 3800 350 5 8 0 1 90 2 1
 pintype=io
 }
@@ -125,8 +114,8 @@ T 4150 200 5 8 1 1 90 6 1
 pinnumber=11
 T 4250 200 5 8 0 1 90 8 1
 pinseq=11
-T 3400 350 9 8 1 1 90 0 1
-pinlabel=DB4
+T 4200 350 9 8 1 1 90 0 1
+pinlabel=DB6
 T 4200 350 5 8 0 1 90 2 1
 pintype=io
 }
@@ -136,8 +125,8 @@ T 4550 200 5 8 1 1 90 6 1
 pinnumber=12
 T 4650 200 5 8 0 1 90 8 1
 pinseq=12
-T 3800 350 9 8 1 1 90 0 1
-pinlabel=DB5
+T 4600 350 9 8 1 1 90 0 1
+pinlabel=DB7
 T 4600 350 5 8 0 1 90 2 1
 pintype=io
 }
@@ -147,10 +136,10 @@ T 4950 200 5 8 1 1 90 6 1
 pinnumber=13
 T 5050 200 5 8 0 1 90 8 1
 pinseq=13
-T 4200 350 9 8 1 1 90 0 1
-pinlabel=DB6
+T 5000 350 9 8 1 1 90 0 1
+pinlabel=VSS
 T 5000 350 5 8 0 1 90 2 1
-pintype=io
+pintype=pwr
 }
 P 5400 0 5400 300 1 0 0
 {
@@ -158,10 +147,10 @@ T 5350 200 5 8 1 1 90 6 1
 pinnumber=14
 T 5450 200 5 8 0 1 90 8 1
 pinseq=14
-T 4600 350 9 8 1 1 90 0 1
-pinlabel=DB7
+T 5400 350 9 8 1 1 90 0 1
+pinlabel=VDD
 T 5400 350 5 8 0 1 90 2 1
-pintype=io
+pintype=pwr
 }
 P 5800 0 5800 300 1 0 0
 {
@@ -209,3 +198,14 @@ pinlabel=CAP1N
 T 6600 350 5 8 0 1 90 2 1
 pintype=pas
 }
+P 1800 0 1800 300 1 0 0
+{
+T 1750 200 5 8 1 1 90 6 1
+pinnumber=5
+T 1850 200 5 8 0 1 90 8 1
+pinseq=5
+T 1800 350 9 8 1 1 90 0 1
+pinlabel=DB0
+T 1800 350 5 8 0 1 90 2 1
+pintype=io
+}