From: Bdale Garbee Date: Thu, 11 May 2017 15:39:17 +0000 (-0600) Subject: add SEEED PCB DFM manual to our docs X-Git-Tag: telelco-v3.0~557 X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=16b37da129e33421b916f3c104d275bd7a878bf7;p=hw%2Faltusmetrum add SEEED PCB DFM manual to our docs --- diff --git a/datasheets/te-connectivity/ENG_CD_1217861_F3.pdf b/datasheets/te-connectivity/ENG_CD_1217861_F3.pdf new file mode 100644 index 0000000..e18914a Binary files /dev/null and b/datasheets/te-connectivity/ENG_CD_1217861_F3.pdf differ diff --git a/datasheets/te-connectivity/ENG_CD_1734344_B1.pdf b/datasheets/te-connectivity/ENG_CD_1734344_B1.pdf new file mode 100644 index 0000000..8248d19 Binary files /dev/null and b/datasheets/te-connectivity/ENG_CD_1734344_B1.pdf differ diff --git a/datasheets/te-connectivity/ENG_CD_188275_S3_c-188275_drw.pdf b/datasheets/te-connectivity/ENG_CD_188275_S3_c-188275_drw.pdf new file mode 100644 index 0000000..6307780 Binary files /dev/null and b/datasheets/te-connectivity/ENG_CD_188275_S3_c-188275_drw.pdf differ diff --git a/datasheets/te-connectivity/ENG_CD_284512_E3.pdf b/datasheets/te-connectivity/ENG_CD_284512_E3.pdf new file mode 100644 index 0000000..ac6cdee Binary files /dev/null and b/datasheets/te-connectivity/ENG_CD_284512_E3.pdf differ diff --git a/datasheets/te-connectivity/ENG_CD_338069_H3_c-338069_drw.pdf b/datasheets/te-connectivity/ENG_CD_338069_H3_c-338069_drw.pdf new file mode 100644 index 0000000..d4873d2 Binary files /dev/null and b/datasheets/te-connectivity/ENG_CD_338069_H3_c-338069_drw.pdf differ diff --git a/datasheets/te-connectivity/ENG_CD_5227673_A.pdf b/datasheets/te-connectivity/ENG_CD_5227673_A.pdf new file mode 100644 index 0000000..3fa7878 Binary files /dev/null and b/datasheets/te-connectivity/ENG_CD_5227673_A.pdf differ diff --git a/datasheets/te-connectivity/ENG_CD_5227677_A1.pdf b/datasheets/te-connectivity/ENG_CD_5227677_A1.pdf new file mode 100644 index 0000000..0153bdc Binary files /dev/null and b/datasheets/te-connectivity/ENG_CD_5227677_A1.pdf differ diff --git a/datasheets/te-connectivity/ENG_CS_4-1773457-1_A1.pdf b/datasheets/te-connectivity/ENG_CS_4-1773457-1_A1.pdf new file mode 100644 index 0000000..16262fc Binary files /dev/null and b/datasheets/te-connectivity/ENG_CS_4-1773457-1_A1.pdf differ diff --git a/datasheets/te-connectivity/JPN_CD_1981584_B-2.pdf b/datasheets/te-connectivity/JPN_CD_1981584_B-2.pdf new file mode 100644 index 0000000..acb7fce Binary files /dev/null and b/datasheets/te-connectivity/JPN_CD_1981584_B-2.pdf differ diff --git a/datasheets/tyco/ENG_CD_1217861_F3.pdf b/datasheets/tyco/ENG_CD_1217861_F3.pdf deleted file mode 100644 index e18914a..0000000 Binary files a/datasheets/tyco/ENG_CD_1217861_F3.pdf and /dev/null differ diff --git a/datasheets/tyco/ENG_CD_1734344_B1.pdf b/datasheets/tyco/ENG_CD_1734344_B1.pdf deleted file mode 100644 index 8248d19..0000000 Binary files a/datasheets/tyco/ENG_CD_1734344_B1.pdf and /dev/null differ diff --git a/datasheets/tyco/ENG_CD_188275_S3_c-188275_drw.pdf b/datasheets/tyco/ENG_CD_188275_S3_c-188275_drw.pdf deleted file mode 100644 index 6307780..0000000 Binary files a/datasheets/tyco/ENG_CD_188275_S3_c-188275_drw.pdf and /dev/null differ diff --git a/datasheets/tyco/ENG_CD_284512_E3.pdf b/datasheets/tyco/ENG_CD_284512_E3.pdf deleted file mode 100644 index ac6cdee..0000000 Binary files a/datasheets/tyco/ENG_CD_284512_E3.pdf and /dev/null differ diff --git a/datasheets/tyco/ENG_CD_338069_H3_c-338069_drw.pdf b/datasheets/tyco/ENG_CD_338069_H3_c-338069_drw.pdf deleted file mode 100644 index d4873d2..0000000 Binary files a/datasheets/tyco/ENG_CD_338069_H3_c-338069_drw.pdf and /dev/null differ diff --git a/datasheets/tyco/ENG_CS_4-1773457-1_A1.pdf b/datasheets/tyco/ENG_CS_4-1773457-1_A1.pdf deleted file mode 100644 index 16262fc..0000000 Binary files a/datasheets/tyco/ENG_CS_4-1773457-1_A1.pdf and /dev/null differ diff --git a/datasheets/tyco/JPN_CD_1981584_B-2.pdf b/datasheets/tyco/JPN_CD_1981584_B-2.pdf deleted file mode 100644 index acb7fce..0000000 Binary files a/datasheets/tyco/JPN_CD_1981584_B-2.pdf and /dev/null differ diff --git a/docs/PCB DFM V1.0 .pdf b/docs/PCB DFM V1.0 .pdf new file mode 100644 index 0000000..348d614 Binary files /dev/null and b/docs/PCB DFM V1.0 .pdf differ diff --git a/packages/Makefile b/packages/Makefile index 6c1b250..78d18bb 100644 --- a/packages/Makefile +++ b/packages/Makefile @@ -8,7 +8,7 @@ DIRS= \ phoenix \ pinheader \ switches \ - tyco + te-connectivity SOIC= \ soic-16.fp \ diff --git a/packages/te-connectivity/.gitignore b/packages/te-connectivity/.gitignore new file mode 100644 index 0000000..5f8f282 --- /dev/null +++ b/packages/te-connectivity/.gitignore @@ -0,0 +1 @@ +*.fp diff --git a/packages/te-connectivity/3.5mm-ra.py b/packages/te-connectivity/3.5mm-ra.py new file mode 100755 index 0000000..2cd4d48 --- /dev/null +++ b/packages/te-connectivity/3.5mm-ra.py @@ -0,0 +1,87 @@ +#!/usr/bin/python +# Copyright 2014 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for +# Tyco Electronics 3.5mm pitch right-angle terminal blocks ala 284512-4 +# +# Needs pin count on command line, in range of 2..25 +# + +# dimensions in mm from ENG_CD_284512_E3.pdf +PinDiam = 1.2 +PinSpacing = 3.5 +RowOffset = 8.0 +BoxHeight = 9.2 +BoxEnd = 2.75 +LineWidth = 600 +Thickness = 2.0 +Clearance = .32 +Mask = Thickness + 0.32 + +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 ) + +pins = int(sys.argv[1]) +if pins < 2: + sys.stderr.write('Must be at least 2 pins\n') + sys.exit(1) +if pins > 25: + sys.stderr.write('Must be no more than 25 pins\n') + sys.exit(1) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "284512-%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' +print "(" +for pin in range (1,pins+1): + pinnum = pins + 1 - pin + if pinnum == 1: + Flags = '0x0101' + else: + Flags = '0x0001' + print ' Pin[', \ + mm2mils100(BoxEnd + (pin-1)*PinSpacing), \ + mm2mils100(RowOffset), \ + mm2mils100(Thickness), \ + mm2mils100(Clearance), \ + mm2mils100(Mask), \ + mm2mils100(PinDiam), \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + +BoxWidth = (BoxEnd * 2) + ((pins - 1) * PinSpacing); + +print ' ElementLine[', \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(BoxHeight), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(0), \ + mm2mils100(BoxHeight), \ + mm2mils100(BoxWidth), \ + mm2mils100(BoxHeight), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxWidth), \ + mm2mils100(BoxHeight), \ + mm2mils100(BoxWidth), \ + mm2mils100(0), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxWidth), \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(0), \ + LineWidth, ']' + +print ")" diff --git a/packages/te-connectivity/3.5mm-series.sh b/packages/te-connectivity/3.5mm-series.sh new file mode 100755 index 0000000..60ff308 --- /dev/null +++ b/packages/te-connectivity/3.5mm-series.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +for i in 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 +do + FILE="284512-"$i + ./3.5mm-ra.py $i > $FILE.fp +done diff --git a/packages/te-connectivity/Makefile b/packages/te-connectivity/Makefile new file mode 100644 index 0000000..c85e308 --- /dev/null +++ b/packages/te-connectivity/Makefile @@ -0,0 +1,19 @@ +all: 284512-4.fp 282834-10.fp 0-215079-4.fp tphybrid.fp bnc-th.fp + +bnc-th.fp: bnc-th.py + ./bnc-th.py > bnc-th.fp + +284512-4.fp: 3.5mm-ra.py 3.5mm-series.sh + ./3.5mm-series.sh + +282834-10.fp: buchanan.py buchanan-Series.sh + ./buchanan-Series.sh + +0-215079-4.fp: micromatch micromatch-th-v.py + ./micromatch + +tphybrid.fp: tphybrid.py + ./tphybrid.py > tphybrid.fp + +clean: + rm -f *.fp diff --git a/packages/te-connectivity/bnc-th.py b/packages/te-connectivity/bnc-th.py new file mode 100755 index 0000000..80f7a0c --- /dev/null +++ b/packages/te-connectivity/bnc-th.py @@ -0,0 +1,136 @@ +#!/usr/bin/python +# Copyright 2017 by Bdale Garbee . GPLv2+ +# +# Program to emit PCB footprint for +# TE Connectivity (AMP) through-hole BNC connectors 5227673 & 5227677 +# +# This footprint is meant to allow the right-angle connector to be installed +# on the "top" surface of the board, and the straight connector to be +# installed on the top or bottom of the board. +# +# dimensions in mm from ENG_CD_5227673_A.pdf & ENG_CD_5227677_A1.pdf + +PinDiam = 0.89 +PinSpacing = 2.54 + +MntDiam = 2.01 +MntSpacing = 10.16 +Mnt2Edge = 7.75 + +SilkBox = 14.76 + +LineWidth = 600 +ThicknessDelta = 1.0 +Clearance = .32 +MaskDelta = 0.32 + +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 "AMP BNC" "" "" 0 0 0 0 0 100 0x0]' +print "(" + +print ' Pin[', \ + 0, \ + 0, \ + mm2mils100(PinDiam+ThicknessDelta), \ + mm2mils100(Clearance), \ + mm2mils100(PinDiam+ThicknessDelta+MaskDelta), \ + mm2mils100(PinDiam), \ + '"1"', \ + '"1"', \ + "0x0001", ']' + +print ' Pin[', \ + 0, \ + mm2mils100(-PinSpacing), \ + mm2mils100(PinDiam+ThicknessDelta), \ + mm2mils100(Clearance), \ + mm2mils100(PinDiam+ThicknessDelta+MaskDelta), \ + mm2mils100(PinDiam), \ + '"GND"', \ + '"2"', \ + "0x0001", ']' + +print ' Pin[', \ + mm2mils100(MntSpacing/2), \ + mm2mils100(MntSpacing/2), \ + mm2mils100(MntDiam+ThicknessDelta), \ + mm2mils100(Clearance), \ + mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \ + mm2mils100(MntDiam), \ + '"GND"', \ + '"2"', \ + "0x0001", ']' + +print ' Pin[', \ + mm2mils100(-MntSpacing/2), \ + mm2mils100(MntSpacing/2), \ + mm2mils100(MntDiam+ThicknessDelta), \ + mm2mils100(Clearance), \ + mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \ + mm2mils100(MntDiam), \ + '"GND"', \ + '"2"', \ + "0x0001", ']' + +print ' Pin[', \ + mm2mils100(MntSpacing/2), \ + mm2mils100(-MntSpacing/2), \ + mm2mils100(MntDiam+ThicknessDelta), \ + mm2mils100(Clearance), \ + mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \ + mm2mils100(MntDiam), \ + '"GND"', \ + '"2"', \ + "0x0001", ']' + +print ' Pin[', \ + mm2mils100(-MntSpacing/2), \ + mm2mils100(-MntSpacing/2), \ + mm2mils100(MntDiam+ThicknessDelta), \ + mm2mils100(Clearance), \ + mm2mils100(MntDiam+ThicknessDelta+MaskDelta), \ + mm2mils100(MntDiam), \ + '"GND"', \ + '"2"', \ + "0x0001", ']' + + +print ' ElementLine[', \ + mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \ + mm2mils100(SilkBox/2), \ + mm2mils100(MntSpacing/2+Mnt2Edge), \ + mm2mils100(SilkBox/2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \ + mm2mils100(-SilkBox/2), \ + mm2mils100(MntSpacing/2+Mnt2Edge), \ + mm2mils100(-SilkBox/2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \ + mm2mils100(SilkBox/2), \ + mm2mils100(MntSpacing/2+Mnt2Edge-SilkBox), \ + mm2mils100(-SilkBox/2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(MntSpacing/2+Mnt2Edge), \ + mm2mils100(SilkBox/2), \ + mm2mils100(MntSpacing/2+Mnt2Edge), \ + mm2mils100(-SilkBox/2), \ + LineWidth, ']' + +print ")" diff --git a/packages/te-connectivity/buchanan-Series.sh b/packages/te-connectivity/buchanan-Series.sh new file mode 100755 index 0000000..6648476 --- /dev/null +++ b/packages/te-connectivity/buchanan-Series.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +for i in 2 3 4 5 6 7 8 9 10 11 12 13 14 15 +do + FILE="282834-"$i + ./buchanan.py $i > $FILE.fp +done diff --git a/packages/te-connectivity/buchanan.py b/packages/te-connectivity/buchanan.py new file mode 100755 index 0000000..272c758 --- /dev/null +++ b/packages/te-connectivity/buchanan.py @@ -0,0 +1,87 @@ +#!/usr/bin/python +# Copyright 2007 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for +# Tyco Electronics Buchanan 2.54mm pitch terminal blocks +# +# Needs pin count on command line, in range of 2..12 +# + +# dimensions in mm from ENG_CS_1308389_EUROSTYLE_TERMINAL_BLOCKS_0607.pdf +PinDiam = 1.15 +PinSpacing = 2.54 +RowOffset = 3.25 +BoxHeight = 6.5 +BoxEnd = 1.5 +LineWidth = 600 +Thickness = 1.8 +Clearance = .32 +Mask = Thickness + 0.32 + +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 ) + +pins = int(sys.argv[1]) +if pins < 2: + sys.stderr.write('Must be at least 2 pins\n') + sys.exit(1) +if pins > 15: + sys.stderr.write('Must be no more than 15 pins\n') + sys.exit(1) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "282834-%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' +print "(" +for pin in range (1,pins+1): + pinnum = pins + 1 - pin + if pinnum == 1: + Flags = '0x0101' + else: + Flags = '0x0001' + print ' Pin[', \ + mm2mils100(BoxEnd + (pin-1)*PinSpacing), \ + mm2mils100(RowOffset), \ + mm2mils100(Thickness), \ + mm2mils100(Clearance), \ + mm2mils100(Mask), \ + mm2mils100(PinDiam), \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + +BoxWidth = (BoxEnd * 2) + ((pins - 1) * PinSpacing); + +print ' ElementLine[', \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(BoxHeight), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(0), \ + mm2mils100(BoxHeight), \ + mm2mils100(BoxWidth), \ + mm2mils100(BoxHeight), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxWidth), \ + mm2mils100(BoxHeight), \ + mm2mils100(BoxWidth), \ + mm2mils100(0), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxWidth), \ + mm2mils100(0), \ + mm2mils100(0), \ + mm2mils100(0), \ + LineWidth, ']' + +print ")" diff --git a/packages/te-connectivity/micromatch b/packages/te-connectivity/micromatch new file mode 100755 index 0000000..a0c7fb0 --- /dev/null +++ b/packages/te-connectivity/micromatch @@ -0,0 +1,16 @@ +#!/bin/sh + +for i in 4 6 8 10 12 14 16 18 20 +do + TENS=$(( i / 10 )) + ONES=$(( i % 10 )) + FILE=$TENS"-215079-"$ONES + ./micromatch-th-v.py $i > $FILE.fp + FILE=$TENS"-338068-"$ONES + ./micromatch-th-v.py $i latch > $FILE.fp + FILE=$TENS"-188275-"$ONES + ./micromatch-smt-v.py $i > $FILE.fp + FILE=$TENS"-338069-"$ONES + ./micromatch-smt-v.py $i latch > $FILE.fp +done +./micromatch-th-v.py 24 > 2-215079-24.fp diff --git a/packages/te-connectivity/micromatch-smt-v.py b/packages/te-connectivity/micromatch-smt-v.py new file mode 100755 index 0000000..517ef84 --- /dev/null +++ b/packages/te-connectivity/micromatch-smt-v.py @@ -0,0 +1,105 @@ +#!/usr/bin/python +# Copyright 2015 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for +# Tyco/AMP Micro-MaTch vertical surface-mount female connectors +# +# Needs pin count on command line, in range of 4..20 even numbers only +# + +# dimensions in mm from ENG_CD_188275_S3_c-188275_drw.pdf +PadWidth = 1.50 +PadHeight = 3.00 +PadSpacing = 1.27 +RowGap = 1.50 # space between rows + +Clearance = 0.006 # in mils + +BoxY = 5.2 +BoxXbase = 4.55 +BoxXstep = 2.55 + +LineWidth = 600 + +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 ) + +pins = int(sys.argv[1]) + +if pins < 4: + sys.stderr.write('Must be at least 4 pins\n') + sys.exit(1) +if pins > 20: + sys.stderr.write('Must be no more than 20 pins\n') + sys.exit(1) + +if len(sys.argv) > 2: + if sys.argv[2] == "latch": + BoxXbase = 7.15 + +BoxXOffset = -((pins - 1) * PadSpacing)/2 + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "MicroMatch%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' +print "(" +for col in range ((pins+1)/2): + for row in range (2): + if row == 1: + origin= (RowGap + PadHeight)/2 + else: + origin= -(RowGap + PadHeight)/2 + pinnum = (col * 2) + row + 1 + Flags = '"square,nopaste"' + + print ' Pad[', \ + mm2mils100((pinnum-1)*PadSpacing + BoxXOffset), \ + mm2mils100(origin + PadHeight/2 - PadWidth/2), \ + mm2mils100((pinnum-1)*PadSpacing + BoxXOffset), \ + mm2mils100(origin - PadHeight/2 + PadWidth/2), \ + mm2mils100(PadWidth), \ + 0, \ + mm2mils100(PadWidth)+Clearance*2, \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + +BoxX = BoxXbase + pins/2 * BoxXstep +BoxX1 = -BoxX/2 +BoxX2 = BoxX/2 +BoxY1 = -BoxY/2 +BoxY2 = BoxY/2 + +print ' ElementLine[', \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY1), \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY2), \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY2), \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY1), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY1), \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY1), \ + LineWidth, ']' + +print ")" diff --git a/packages/te-connectivity/micromatch-th-v.py b/packages/te-connectivity/micromatch-th-v.py new file mode 100755 index 0000000..a18fb47 --- /dev/null +++ b/packages/te-connectivity/micromatch-th-v.py @@ -0,0 +1,125 @@ +#!/usr/bin/python +# Copyright 2009 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for +# Tyco/AMP Micro-MaTch vertical through-hole female connectors +# +# Needs pin count on command line, in range of 4..20 even numbers only +# + +# dimensions in mm from C_215079_v.pdf datasheet +PinDiam = 0.8 +PinSpacing = 1.27 +RowSpacing = 2.54 + +MntX = 1.4 +MntY = 1.8 +MntDiam = 1.5 + +BoxY = 5.1 +BoxXbase = 4.79 + +LineWidth = 600 + +# freedfm.com round-off error bites us if we make this 700... +MinAnnular = 725 +MinClearance = 600 +MaskDelta = 300 + +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 ) + +pins = int(sys.argv[1]) + +if pins < 4: + sys.stderr.write('Must be at least 4 pins\n') + sys.exit(1) +if pins == 22: + sys.stderr.write('There is no 22 pin version!\n') + sys.exit(1) +if pins > 24: + sys.stderr.write('Must be no more than 24 pins\n') + sys.exit(1) + +if len(sys.argv) > 2: + if sys.argv[2] == "latch": + BoxXbase = 5.89 + if pins == 24: + sys.stderr.write('There is no 24 pin latching version!\n') + sys.exit(1) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "MicroMatch%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' +print "(" +for col in range ((pins+1)/2): + for row in range (2): + if row == 1: + spacing=0 + else: + spacing=RowSpacing + pinnum = (col * 2) + row + 1 + if pinnum == 1: + Flags = '0x0101' + else: + Flags = '0x0001' + print ' Pin[', \ + mm2mils100((pinnum-1)*PinSpacing), \ + mm2mils100(spacing), \ + mm2mils100(PinDiam)+(MinAnnular*2), \ + (MinClearance*2), \ + mm2mils100(PinDiam)+(MinAnnular*2)+(MaskDelta*2), \ + mm2mils100(PinDiam), \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + +# add a hole for the index pin. plated to save non-plated-hole extra fab cost. +print ' Pin[', \ + mm2mils100(-MntX), \ + mm2mils100(RowSpacing-MntY), \ + mm2mils100(MntDiam)+(MinAnnular*2), \ + (MinClearance*2), \ + mm2mils100(MntDiam)+(MinAnnular*2)+(MaskDelta*2), \ + mm2mils100(MntDiam), \ + '"mnt" "0"', '0x0001', ']' + +BoxX = (pins - 1) * PinSpacing + BoxXbase +BoxX1 = -(BoxXbase/2) +BoxX2 = BoxX1 + BoxX +BoxY1 = -(BoxY - RowSpacing)/2 +BoxY2 = BoxY1 + BoxY + +print ' ElementLine[', \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY1), \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY2), \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY2), \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY1), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY1), \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY1), \ + LineWidth, ']' + +print ")" diff --git a/packages/te-connectivity/tphybrid.py b/packages/te-connectivity/tphybrid.py new file mode 100755 index 0000000..babf03f --- /dev/null +++ b/packages/te-connectivity/tphybrid.py @@ -0,0 +1,123 @@ +#!/usr/bin/python +# Copyright 2011 by Bdale Garbee . GPLv2 +# +# Program to emit PCB footprint for a 16 pin +# Tyco/AMP Micro-MaTch vertical through-hole female connectors +# overlaid with a 10-pin +# Tyco Electronics Buchanan 2.54mm pitch terminal blocks +# + +# dimensions in mm from C_215079_v.pdf datasheet +BUPinDiam = 1.1 # screw terminals +MMPinDiam = 0.8 # micromatch +PinSpacing = 1.27 +RowSpacing = 2.54 + +MntX = 1.4 +MntY = 1.8 +MntDiam = 1.5 + +BoxY = 5.1 + +LineWidth = 600 + +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 ) + +pins = 17 + +BoxXbase = 5.89 +BoxEnd = 1.5 + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 2' +print '# use-license: unlimited' + +print 'Element[0x0 "tphybrid" "" "" 0 0 0 0 0 100 0x0]' +print "(" +for col in range ((pins+1)/2): + for row in range (2): + if row == 1: + spacing=0 + else: + spacing=RowSpacing + pinnum = (col * 2) + row + 1 + if pinnum != 18: + if pinnum == 1: + Flags = '0x0101' + else: + Flags = '0x0001' + if pinnum % 2 == 0: + PinDiam = MMPinDiam + else: + PinDiam = BUPinDiam + print ' Pin[', \ + mm2mils100((pinnum-1)*PinSpacing), \ + mm2mils100(spacing), \ + mm2mils100(PinDiam + 0.70), \ + 1200, \ + mm2mils100(PinDiam + 0.86), \ + mm2mils100(PinDiam), \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + +print ' Pin[', \ + mm2mils100((-2)*PinSpacing), \ + mm2mils100(RowSpacing), \ + mm2mils100(PinDiam + 0.32), \ + 1200, \ + mm2mils100(PinDiam + 0.48), \ + mm2mils100(PinDiam), \ + '"pin18"' , '"18"', Flags, ']' + +# add a hole for the index pin. plated to save non-plated-hole extra fab cost. +print ' Pin[', \ + mm2mils100(-MntX), \ + mm2mils100(RowSpacing-MntY), \ + mm2mils100(MntDiam)+1400, \ + 1400, \ + mm2mils100(MntDiam)+1400+600, \ + mm2mils100(MntDiam), \ + '"mnt" "0"', '0x0001', ']' + +# pins-2 accounts for the extra pin used by screw terminal overlay +BoxX = (pins - 2) * PinSpacing + BoxXbase +BoxX1 = -(BoxXbase/2) +BoxX2 = BoxX1 + BoxX +# re-compute X1 after computing X2 to account for screw terminal overlay +BoxX1 = -2*PinSpacing - BoxEnd +BoxY1 = -(BoxY - RowSpacing)/2 +BoxY2 = BoxY1 + BoxY + +print ' ElementLine[', \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY1), \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY2), \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY2), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY2), \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY1), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX2), \ + mm2mils100(BoxY1), \ + mm2mils100(BoxX1), \ + mm2mils100(BoxY1), \ + LineWidth, ']' + +print ")" diff --git a/packages/tyco/.gitignore b/packages/tyco/.gitignore deleted file mode 100644 index 5f8f282..0000000 --- a/packages/tyco/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.fp diff --git a/packages/tyco/3.5mm-ra.py b/packages/tyco/3.5mm-ra.py deleted file mode 100755 index 2cd4d48..0000000 --- a/packages/tyco/3.5mm-ra.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# Copyright 2014 by Bdale Garbee . GPLv2 -# -# Program to emit PCB footprint for -# Tyco Electronics 3.5mm pitch right-angle terminal blocks ala 284512-4 -# -# Needs pin count on command line, in range of 2..25 -# - -# dimensions in mm from ENG_CD_284512_E3.pdf -PinDiam = 1.2 -PinSpacing = 3.5 -RowOffset = 8.0 -BoxHeight = 9.2 -BoxEnd = 2.75 -LineWidth = 600 -Thickness = 2.0 -Clearance = .32 -Mask = Thickness + 0.32 - -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 ) - -pins = int(sys.argv[1]) -if pins < 2: - sys.stderr.write('Must be at least 2 pins\n') - sys.exit(1) -if pins > 25: - sys.stderr.write('Must be no more than 25 pins\n') - sys.exit(1) - -print '# author: Bdale Garbee' -print '# email: bdale@gag.com' -print '# dist-license: GPL 2' -print '# use-license: unlimited' - -print 'Element[0x0 "284512-%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' -print "(" -for pin in range (1,pins+1): - pinnum = pins + 1 - pin - if pinnum == 1: - Flags = '0x0101' - else: - Flags = '0x0001' - print ' Pin[', \ - mm2mils100(BoxEnd + (pin-1)*PinSpacing), \ - mm2mils100(RowOffset), \ - mm2mils100(Thickness), \ - mm2mils100(Clearance), \ - mm2mils100(Mask), \ - mm2mils100(PinDiam), \ - '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' - -BoxWidth = (BoxEnd * 2) + ((pins - 1) * PinSpacing); - -print ' ElementLine[', \ - mm2mils100(0), \ - mm2mils100(0), \ - mm2mils100(0), \ - mm2mils100(BoxHeight), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(0), \ - mm2mils100(BoxHeight), \ - mm2mils100(BoxWidth), \ - mm2mils100(BoxHeight), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxWidth), \ - mm2mils100(BoxHeight), \ - mm2mils100(BoxWidth), \ - mm2mils100(0), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxWidth), \ - mm2mils100(0), \ - mm2mils100(0), \ - mm2mils100(0), \ - LineWidth, ']' - -print ")" diff --git a/packages/tyco/3.5mm-series.sh b/packages/tyco/3.5mm-series.sh deleted file mode 100755 index 60ff308..0000000 --- a/packages/tyco/3.5mm-series.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -for i in 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 -do - FILE="284512-"$i - ./3.5mm-ra.py $i > $FILE.fp -done diff --git a/packages/tyco/Makefile b/packages/tyco/Makefile deleted file mode 100644 index 672aa8c..0000000 --- a/packages/tyco/Makefile +++ /dev/null @@ -1,16 +0,0 @@ -all: 284512-4.fp 282834-10.fp 0-215079-4.fp tphybrid.fp - -284512-4.fp: 3.5mm-ra.py 3.5mm-series.sh - ./3.5mm-series.sh - -282834-10.fp: buchanan.py buchanan-Series.sh - ./buchanan-Series.sh - -0-215079-4.fp: micromatch micromatch-th-v.py - ./micromatch - -tphybrid.fp: tphybrid.py - ./tphybrid.py > tphybrid.fp - -clean: - rm -f *.fp diff --git a/packages/tyco/buchanan-Series.sh b/packages/tyco/buchanan-Series.sh deleted file mode 100755 index 6648476..0000000 --- a/packages/tyco/buchanan-Series.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -for i in 2 3 4 5 6 7 8 9 10 11 12 13 14 15 -do - FILE="282834-"$i - ./buchanan.py $i > $FILE.fp -done diff --git a/packages/tyco/buchanan.py b/packages/tyco/buchanan.py deleted file mode 100755 index 272c758..0000000 --- a/packages/tyco/buchanan.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# Copyright 2007 by Bdale Garbee . GPLv2 -# -# Program to emit PCB footprint for -# Tyco Electronics Buchanan 2.54mm pitch terminal blocks -# -# Needs pin count on command line, in range of 2..12 -# - -# dimensions in mm from ENG_CS_1308389_EUROSTYLE_TERMINAL_BLOCKS_0607.pdf -PinDiam = 1.15 -PinSpacing = 2.54 -RowOffset = 3.25 -BoxHeight = 6.5 -BoxEnd = 1.5 -LineWidth = 600 -Thickness = 1.8 -Clearance = .32 -Mask = Thickness + 0.32 - -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 ) - -pins = int(sys.argv[1]) -if pins < 2: - sys.stderr.write('Must be at least 2 pins\n') - sys.exit(1) -if pins > 15: - sys.stderr.write('Must be no more than 15 pins\n') - sys.exit(1) - -print '# author: Bdale Garbee' -print '# email: bdale@gag.com' -print '# dist-license: GPL 2' -print '# use-license: unlimited' - -print 'Element[0x0 "282834-%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' -print "(" -for pin in range (1,pins+1): - pinnum = pins + 1 - pin - if pinnum == 1: - Flags = '0x0101' - else: - Flags = '0x0001' - print ' Pin[', \ - mm2mils100(BoxEnd + (pin-1)*PinSpacing), \ - mm2mils100(RowOffset), \ - mm2mils100(Thickness), \ - mm2mils100(Clearance), \ - mm2mils100(Mask), \ - mm2mils100(PinDiam), \ - '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' - -BoxWidth = (BoxEnd * 2) + ((pins - 1) * PinSpacing); - -print ' ElementLine[', \ - mm2mils100(0), \ - mm2mils100(0), \ - mm2mils100(0), \ - mm2mils100(BoxHeight), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(0), \ - mm2mils100(BoxHeight), \ - mm2mils100(BoxWidth), \ - mm2mils100(BoxHeight), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxWidth), \ - mm2mils100(BoxHeight), \ - mm2mils100(BoxWidth), \ - mm2mils100(0), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxWidth), \ - mm2mils100(0), \ - mm2mils100(0), \ - mm2mils100(0), \ - LineWidth, ']' - -print ")" diff --git a/packages/tyco/micromatch b/packages/tyco/micromatch deleted file mode 100755 index a0c7fb0..0000000 --- a/packages/tyco/micromatch +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -for i in 4 6 8 10 12 14 16 18 20 -do - TENS=$(( i / 10 )) - ONES=$(( i % 10 )) - FILE=$TENS"-215079-"$ONES - ./micromatch-th-v.py $i > $FILE.fp - FILE=$TENS"-338068-"$ONES - ./micromatch-th-v.py $i latch > $FILE.fp - FILE=$TENS"-188275-"$ONES - ./micromatch-smt-v.py $i > $FILE.fp - FILE=$TENS"-338069-"$ONES - ./micromatch-smt-v.py $i latch > $FILE.fp -done -./micromatch-th-v.py 24 > 2-215079-24.fp diff --git a/packages/tyco/micromatch-smt-v.py b/packages/tyco/micromatch-smt-v.py deleted file mode 100755 index 517ef84..0000000 --- a/packages/tyco/micromatch-smt-v.py +++ /dev/null @@ -1,105 +0,0 @@ -#!/usr/bin/python -# Copyright 2015 by Bdale Garbee . GPLv2 -# -# Program to emit PCB footprint for -# Tyco/AMP Micro-MaTch vertical surface-mount female connectors -# -# Needs pin count on command line, in range of 4..20 even numbers only -# - -# dimensions in mm from ENG_CD_188275_S3_c-188275_drw.pdf -PadWidth = 1.50 -PadHeight = 3.00 -PadSpacing = 1.27 -RowGap = 1.50 # space between rows - -Clearance = 0.006 # in mils - -BoxY = 5.2 -BoxXbase = 4.55 -BoxXstep = 2.55 - -LineWidth = 600 - -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 ) - -pins = int(sys.argv[1]) - -if pins < 4: - sys.stderr.write('Must be at least 4 pins\n') - sys.exit(1) -if pins > 20: - sys.stderr.write('Must be no more than 20 pins\n') - sys.exit(1) - -if len(sys.argv) > 2: - if sys.argv[2] == "latch": - BoxXbase = 7.15 - -BoxXOffset = -((pins - 1) * PadSpacing)/2 - -print '# author: Bdale Garbee' -print '# email: bdale@gag.com' -print '# dist-license: GPL 2' -print '# use-license: unlimited' - -print 'Element[0x0 "MicroMatch%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' -print "(" -for col in range ((pins+1)/2): - for row in range (2): - if row == 1: - origin= (RowGap + PadHeight)/2 - else: - origin= -(RowGap + PadHeight)/2 - pinnum = (col * 2) + row + 1 - Flags = '"square,nopaste"' - - print ' Pad[', \ - mm2mils100((pinnum-1)*PadSpacing + BoxXOffset), \ - mm2mils100(origin + PadHeight/2 - PadWidth/2), \ - mm2mils100((pinnum-1)*PadSpacing + BoxXOffset), \ - mm2mils100(origin - PadHeight/2 + PadWidth/2), \ - mm2mils100(PadWidth), \ - 0, \ - mm2mils100(PadWidth)+Clearance*2, \ - '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' - -BoxX = BoxXbase + pins/2 * BoxXstep -BoxX1 = -BoxX/2 -BoxX2 = BoxX/2 -BoxY1 = -BoxY/2 -BoxY2 = BoxY/2 - -print ' ElementLine[', \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY1), \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY2), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY2), \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY2), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY2), \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY1), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY1), \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY1), \ - LineWidth, ']' - -print ")" diff --git a/packages/tyco/micromatch-th-v.py b/packages/tyco/micromatch-th-v.py deleted file mode 100755 index a18fb47..0000000 --- a/packages/tyco/micromatch-th-v.py +++ /dev/null @@ -1,125 +0,0 @@ -#!/usr/bin/python -# Copyright 2009 by Bdale Garbee . GPLv2 -# -# Program to emit PCB footprint for -# Tyco/AMP Micro-MaTch vertical through-hole female connectors -# -# Needs pin count on command line, in range of 4..20 even numbers only -# - -# dimensions in mm from C_215079_v.pdf datasheet -PinDiam = 0.8 -PinSpacing = 1.27 -RowSpacing = 2.54 - -MntX = 1.4 -MntY = 1.8 -MntDiam = 1.5 - -BoxY = 5.1 -BoxXbase = 4.79 - -LineWidth = 600 - -# freedfm.com round-off error bites us if we make this 700... -MinAnnular = 725 -MinClearance = 600 -MaskDelta = 300 - -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 ) - -pins = int(sys.argv[1]) - -if pins < 4: - sys.stderr.write('Must be at least 4 pins\n') - sys.exit(1) -if pins == 22: - sys.stderr.write('There is no 22 pin version!\n') - sys.exit(1) -if pins > 24: - sys.stderr.write('Must be no more than 24 pins\n') - sys.exit(1) - -if len(sys.argv) > 2: - if sys.argv[2] == "latch": - BoxXbase = 5.89 - if pins == 24: - sys.stderr.write('There is no 24 pin latching version!\n') - sys.exit(1) - -print '# author: Bdale Garbee' -print '# email: bdale@gag.com' -print '# dist-license: GPL 2' -print '# use-license: unlimited' - -print 'Element[0x0 "MicroMatch%i"' % pins,'"" "" 0 0 0 0 0 100 0x0]' -print "(" -for col in range ((pins+1)/2): - for row in range (2): - if row == 1: - spacing=0 - else: - spacing=RowSpacing - pinnum = (col * 2) + row + 1 - if pinnum == 1: - Flags = '0x0101' - else: - Flags = '0x0001' - print ' Pin[', \ - mm2mils100((pinnum-1)*PinSpacing), \ - mm2mils100(spacing), \ - mm2mils100(PinDiam)+(MinAnnular*2), \ - (MinClearance*2), \ - mm2mils100(PinDiam)+(MinAnnular*2)+(MaskDelta*2), \ - mm2mils100(PinDiam), \ - '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' - -# add a hole for the index pin. plated to save non-plated-hole extra fab cost. -print ' Pin[', \ - mm2mils100(-MntX), \ - mm2mils100(RowSpacing-MntY), \ - mm2mils100(MntDiam)+(MinAnnular*2), \ - (MinClearance*2), \ - mm2mils100(MntDiam)+(MinAnnular*2)+(MaskDelta*2), \ - mm2mils100(MntDiam), \ - '"mnt" "0"', '0x0001', ']' - -BoxX = (pins - 1) * PinSpacing + BoxXbase -BoxX1 = -(BoxXbase/2) -BoxX2 = BoxX1 + BoxX -BoxY1 = -(BoxY - RowSpacing)/2 -BoxY2 = BoxY1 + BoxY - -print ' ElementLine[', \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY1), \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY2), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY2), \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY2), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY2), \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY1), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY1), \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY1), \ - LineWidth, ']' - -print ")" diff --git a/packages/tyco/tphybrid.py b/packages/tyco/tphybrid.py deleted file mode 100755 index babf03f..0000000 --- a/packages/tyco/tphybrid.py +++ /dev/null @@ -1,123 +0,0 @@ -#!/usr/bin/python -# Copyright 2011 by Bdale Garbee . GPLv2 -# -# Program to emit PCB footprint for a 16 pin -# Tyco/AMP Micro-MaTch vertical through-hole female connectors -# overlaid with a 10-pin -# Tyco Electronics Buchanan 2.54mm pitch terminal blocks -# - -# dimensions in mm from C_215079_v.pdf datasheet -BUPinDiam = 1.1 # screw terminals -MMPinDiam = 0.8 # micromatch -PinSpacing = 1.27 -RowSpacing = 2.54 - -MntX = 1.4 -MntY = 1.8 -MntDiam = 1.5 - -BoxY = 5.1 - -LineWidth = 600 - -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 ) - -pins = 17 - -BoxXbase = 5.89 -BoxEnd = 1.5 - -print '# author: Bdale Garbee' -print '# email: bdale@gag.com' -print '# dist-license: GPL 2' -print '# use-license: unlimited' - -print 'Element[0x0 "tphybrid" "" "" 0 0 0 0 0 100 0x0]' -print "(" -for col in range ((pins+1)/2): - for row in range (2): - if row == 1: - spacing=0 - else: - spacing=RowSpacing - pinnum = (col * 2) + row + 1 - if pinnum != 18: - if pinnum == 1: - Flags = '0x0101' - else: - Flags = '0x0001' - if pinnum % 2 == 0: - PinDiam = MMPinDiam - else: - PinDiam = BUPinDiam - print ' Pin[', \ - mm2mils100((pinnum-1)*PinSpacing), \ - mm2mils100(spacing), \ - mm2mils100(PinDiam + 0.70), \ - 1200, \ - mm2mils100(PinDiam + 0.86), \ - mm2mils100(PinDiam), \ - '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' - -print ' Pin[', \ - mm2mils100((-2)*PinSpacing), \ - mm2mils100(RowSpacing), \ - mm2mils100(PinDiam + 0.32), \ - 1200, \ - mm2mils100(PinDiam + 0.48), \ - mm2mils100(PinDiam), \ - '"pin18"' , '"18"', Flags, ']' - -# add a hole for the index pin. plated to save non-plated-hole extra fab cost. -print ' Pin[', \ - mm2mils100(-MntX), \ - mm2mils100(RowSpacing-MntY), \ - mm2mils100(MntDiam)+1400, \ - 1400, \ - mm2mils100(MntDiam)+1400+600, \ - mm2mils100(MntDiam), \ - '"mnt" "0"', '0x0001', ']' - -# pins-2 accounts for the extra pin used by screw terminal overlay -BoxX = (pins - 2) * PinSpacing + BoxXbase -BoxX1 = -(BoxXbase/2) -BoxX2 = BoxX1 + BoxX -# re-compute X1 after computing X2 to account for screw terminal overlay -BoxX1 = -2*PinSpacing - BoxEnd -BoxY1 = -(BoxY - RowSpacing)/2 -BoxY2 = BoxY1 + BoxY - -print ' ElementLine[', \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY1), \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY2), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY2), \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY2), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY2), \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY1), \ - LineWidth, ']' - -print ' ElementLine[', \ - mm2mils100(BoxX2), \ - mm2mils100(BoxY1), \ - mm2mils100(BoxX1), \ - mm2mils100(BoxY1), \ - LineWidth, ']' - -print ")" diff --git a/preferred-parts b/preferred-parts index a049abf..486533f 100644 --- a/preferred-parts +++ b/preferred-parts @@ -182,6 +182,7 @@ RESISTOR 22 0402 smt no ERJ-2RKF22R0X digikey P22.0LCT-ND reel8mm RESISTOR 220 0402 smt no ERJ-2RKF2200X digikey P220LCT-ND reel8mm RESISTOR 22k 0402 smt no ERJ-2RKF2202X digikey P22.0KLCT-ND reel8mm RESISTOR 26.1k 0402 smt no ERJ-2RKF2612X digikey P26.1KLCT-ND reel8mm +RESISTOR 2.49k 0402 smt no ERJ-2RKF2491X digikey P2.49KLCT-ND reel8mm RESISTOR 2.7k 0402 smt no ERJ-2RKF2701X digikey P2.70KLCT-ND reel8mm RESISTOR 270 0402 smt no ERJ-2RKF2700X digikey P270LCT-ND reel8mm RESISTOR 200k 0402 smt no ERJ-2RKF2003X digikey P200KLCT-ND reel8mm