SD symbol, replace microSD.fp with .py file and arrange to auto generate
authorBdale Garbee <bdale@gag.com>
Thu, 9 Jul 2015 00:43:09 +0000 (18:43 -0600)
committerBdale Garbee <bdale@gag.com>
Thu, 9 Jul 2015 00:43:09 +0000 (18:43 -0600)
packages/Makefile
packages/microSD.fp [deleted file]
packages/microSD.py [new file with mode: 0755]
symbols/connector/SD.sym [new file with mode: 0644]

index ef6e14aff68f19d38f0155aef42e15c7a89f0147..d98b84636d620dea47b16940b84602b0f59f44e8 100644 (file)
@@ -86,7 +86,8 @@ FOOTPRINTS= \
        g5rl1ae.fp \
        DO-214AC.fp \
        BU2032SM.fp \
-       TO252AA.fp
+       TO252AA.fp \
+       microSD.fp
 
 .5c.fp:
        nickle $*.5c > $@
diff --git a/packages/microSD.fp b/packages/microSD.fp
deleted file mode 100644 (file)
index 80d70e7..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-# author: Bdale Garbee
-# email: bdale@gag.com
-# dist-license: GPL 2
-# use-license: unlimited
-Element[0x0 "microSD" "" "" 0 0 0 0 0 100 0x0]
-(
-   Pad[ -26771 13287 -26771 15059 4134 0 4724 "9" "9" 0x0100]
-   Pad[ 26772 13287 26772 15059 4134 0 4724 "9" "9" 0x0100]
-   Pad[ -26771 46358 -26771 48130 4134 0 4724 "9" "9" 0x0100]
-   Pad[ 26772 46358 26772 48130 4134 0 4724 "9" "9" 0x0100]
-   Pad[ 12480 36398 12480 38169 2362 0 2953 "pin1" "1" 0x0100]
-   Pad[ 8150 36398 8150 38169 2362 0 2953 "pin2" "2" 0x0100]
-   Pad[ 3819 36398 3819 38169 2362 0 2953 "pin3" "3" 0x0100]
-   Pad[ -511 36398 -511 38169 2362 0 2953 "pin4" "4" 0x0100]
-   Pad[ -4842 36398 -4842 38169 2362 0 2953 "pin5" "5" 0x0100]
-   Pad[ -9172 36398 -9172 38169 2362 0 2953 "pin6" "6" 0x0100]
-   Pad[ -13503 36398 -13503 38169 2362 0 2953 "pin7" "7" 0x0100]
-   Pad[ -17834 36398 -17834 38169 2362 0 2953 "pin8" "8" 0x0100]
-   ElementLine[ 26772 0 26772 52362 1000 ]
-   ElementLine[ -26771 0 -26771 52362 1000 ]
-   ElementLine[ -26771 0 26772 0 1000 ]
-   ElementLine[ -26771 52362 26772 52362 1000 ]
-)
diff --git a/packages/microSD.py b/packages/microSD.py
new file mode 100755 (executable)
index 0000000..a198a18
--- /dev/null
@@ -0,0 +1,123 @@
+#!/usr/bin/python
+# Copyright 2011 by Bdale Garbee <bdale@gag.com>.  GPLv2
+#
+# Program to emit PCB footprint for Amphenol micro SD connector
+#
+
+# dimensions in mm from 101-00303-xx.pdf
+PinWidth = 0.60
+PinHeight = 1.05
+PinSpacing = 1.10
+PinY = 9.47
+PinXOffset = 4.53
+
+MntWidth = 1.05
+MntHeight = 1.50
+MntY1 = 3.60
+MntY2 = 12.00
+MntX = 13.60
+
+BoxX = 13.60
+BoxY = 13.30
+LineWidth = 1000
+
+MaskAdd = 0.15
+
+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 "microSD" "" "" 0 0 0 0 0 100 0x0]'
+print "("
+
+# mounting pads
+print '   Pad[',\
+       mm2mils100(-MntX/2), \
+       mm2mils100(MntY1-(MntHeight/2)+(MntWidth/2)), \
+       mm2mils100(-MntX/2), \
+       mm2mils100(MntY1+(MntHeight/2)-(MntWidth/2)), \
+       mm2mils100(MntWidth), \
+       mm2mils100(0), \
+       mm2mils100(MntWidth + MaskAdd), \
+       '"9" "9" 0x0100]'
+
+print '   Pad[',\
+       mm2mils100(MntX/2), \
+       mm2mils100(MntY1-(MntHeight/2)+(MntWidth/2)), \
+       mm2mils100(MntX/2), \
+       mm2mils100(MntY1+(MntHeight/2)-(MntWidth/2)), \
+       mm2mils100(MntWidth), \
+       mm2mils100(0), \
+       mm2mils100(MntWidth + MaskAdd), \
+       '"9" "9" 0x0100]'
+
+print '   Pad[',\
+       mm2mils100(-MntX/2), \
+       mm2mils100(MntY2-(MntHeight/2)+(MntWidth/2)), \
+       mm2mils100(-MntX/2), \
+       mm2mils100(MntY2+(MntHeight/2)-(MntWidth/2)), \
+       mm2mils100(MntWidth), \
+       mm2mils100(0), \
+       mm2mils100(MntWidth + MaskAdd), \
+       '"9" "9" 0x0100]'
+
+print '   Pad[',\
+       mm2mils100(MntX/2), \
+       mm2mils100(MntY2-(MntHeight/2)+(MntWidth/2)), \
+       mm2mils100(MntX/2), \
+       mm2mils100(MntY2+(MntHeight/2)-(MntWidth/2)), \
+       mm2mils100(MntWidth), \
+       mm2mils100(0), \
+       mm2mils100(MntWidth + MaskAdd), \
+       '"9" "9" 0x0100]'
+
+# signal pads
+for pin in range (1,9):
+    print '   Pad[',\
+       mm2mils100(-PinXOffset + (8-pin) * PinSpacing), \
+       mm2mils100(PinY-(PinHeight/2)+(PinWidth/2)), \
+       mm2mils100(-PinXOffset + (8-pin) * PinSpacing), \
+       mm2mils100(PinY+(PinHeight/2)-(PinWidth/2)), \
+       mm2mils100(PinWidth), \
+       mm2mils100(0), \
+       mm2mils100(PinWidth + MaskAdd), \
+       '"pin%i"' % (pin), '"%i"' % (pin), '0x0100]'
+
+# silkscreen box
+print '   ElementLine[', \
+        mm2mils100(BoxX/2), \
+        mm2mils100(0), \
+        mm2mils100(BoxX/2), \
+        mm2mils100(BoxY), \
+        LineWidth, ']'
+
+print '   ElementLine[', \
+        mm2mils100(-BoxX/2), \
+        mm2mils100(0), \
+        mm2mils100(-BoxX/2), \
+        mm2mils100(BoxY), \
+        LineWidth, ']'
+
+print '   ElementLine[', \
+        mm2mils100(-BoxX/2), \
+        mm2mils100(0), \
+        mm2mils100(+BoxX/2), \
+        mm2mils100(0), \
+        LineWidth, ']'
+
+print '   ElementLine[', \
+        mm2mils100(-BoxX/2), \
+        mm2mils100(BoxY), \
+        mm2mils100(+BoxX/2), \
+        mm2mils100(BoxY), \
+        LineWidth, ']'
+
+
+print ")"
diff --git a/symbols/connector/SD.sym b/symbols/connector/SD.sym
new file mode 100644 (file)
index 0000000..35afd9f
--- /dev/null
@@ -0,0 +1,140 @@
+v 20130925 2
+P 0 3300 300 3300 1 0 0
+{
+T 0 3300 5 10 0 0 0 0 1
+pintype=pwr
+T 355 3295 5 10 1 1 0 0 1
+pinlabel=VDD
+T 205 3345 5 10 1 1 0 6 1
+pinnumber=4
+T 0 3300 5 10 0 0 0 0 1
+pinseq=4
+}
+B 300 0 1700 4700 3 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
+T 895 1995 8 10 0 1 0 0 1
+device=IC
+T 295 4795 8 10 1 1 0 0 1
+refdes=J?
+P 0 1700 300 1700 1 0 0
+{
+T 0 1700 5 10 0 0 0 0 1
+pintype=io
+T 355 1695 5 10 1 1 0 0 1
+pinlabel=DAT1
+T 205 1745 5 10 1 1 0 6 1
+pinnumber=8
+T 0 1700 5 10 0 0 0 0 1
+pinseq=8
+}
+P 0 2900 300 2900 1 0 0
+{
+T 0 2900 5 10 0 0 0 0 1
+pintype=in
+T 355 2895 5 10 1 1 0 0 1
+pinlabel=CLK
+T 205 2945 5 10 1 1 0 6 1
+pinnumber=5
+T 0 2900 5 10 0 0 0 0 1
+pinseq=5
+}
+P 0 1300 300 1300 1 0 0
+{
+T 0 1300 5 10 0 0 0 0 1
+pintype=io
+T 355 1295 5 10 1 1 0 0 1
+pinlabel=DAT2
+T 205 1345 5 10 1 1 0 6 1
+pinnumber=9
+T 0 1300 5 10 0 0 0 0 1
+pinseq=9
+}
+T 1695 4795 8 10 1 1 0 0 1
+value=SD
+P 0 2500 300 2500 1 0 0
+{
+T 0 2500 5 10 0 0 0 0 1
+pintype=pwr
+T 355 2495 5 10 1 1 0 0 1
+pinlabel=VSS2
+T 205 2545 5 10 1 1 0 6 1
+pinnumber=6
+T 0 2500 5 10 0 0 0 0 1
+pinseq=6
+}
+P 0 2100 300 2100 1 0 0
+{
+T 0 2100 5 10 0 0 0 0 1
+pintype=io
+T 355 2095 5 10 1 1 0 0 1
+pinlabel=DAT0
+T 205 2145 5 10 1 1 0 6 1
+pinnumber=7
+T 0 2100 5 10 0 0 0 0 1
+pinseq=7
+}
+P 0 4500 300 4500 1 0 0
+{
+T 0 4500 5 10 0 0 0 0 1
+pintype=io
+T 355 4495 5 10 1 1 0 0 1
+pinlabel=DAT3
+T 205 4545 5 10 1 1 0 6 1
+pinnumber=1
+T 0 4500 5 10 0 0 0 0 1
+pinseq=1
+}
+P 0 4100 300 4100 1 0 0
+{
+T 0 4100 5 10 0 0 0 0 1
+pintype=io
+T 355 4095 5 10 1 1 0 0 1
+pinlabel=CMD
+T 205 4145 5 10 1 1 0 6 1
+pinnumber=2
+T 0 4100 5 10 0 0 0 0 1
+pinseq=2
+}
+P 0 3700 300 3700 1 0 0
+{
+T 0 3700 5 10 0 0 0 0 1
+pintype=io
+T 355 3695 5 10 1 1 0 0 1
+pinlabel=VSS1
+T 205 3745 5 10 1 1 0 6 1
+pinnumber=3
+T 0 3700 5 10 0 0 0 0 1
+pinseq=3
+}
+P 0 500 300 500 1 0 0
+{
+T 0 500 5 10 0 0 0 0 1
+pintype=io
+T 0 500 5 10 0 0 0 0 1
+pinseq=11
+T 355 495 5 10 1 1 0 0 1
+pinlabel=WP
+T 205 545 5 10 1 1 0 6 1
+pinnumber=11
+}
+P 0 100 300 100 1 0 0
+{
+T 0 100 5 10 0 0 0 0 1
+pintype=pwr
+T 0 100 5 10 0 0 0 0 1
+pinseq=12
+T 355 95 5 10 1 1 0 0 1
+pinlabel=GND
+T 205 145 5 10 1 1 0 6 1
+pinnumber=12
+}
+P 0 900 300 900 1 0 0
+{
+T 0 900 5 10 0 0 0 0 1
+pintype=io
+T 0 900 5 10 0 0 0 0 1
+pinseq=10
+T 355 895 5 10 1 1 0 0 1
+pinlabel=CD
+T 205 945 5 10 1 1 0 6 1
+pinnumber=10
+}