From: Bdale Garbee Date: Sun, 20 Nov 2016 18:05:53 +0000 (-0700) Subject: add footprints for VGA connector, etc X-Git-Tag: telelco-v3.0~600 X-Git-Url: https://git.gag.com/?a=commitdiff_plain;ds=sidebyside;h=9ee0bf8916def99e2f26c88e7575221b6726ab89;p=hw%2Faltusmetrum add footprints for VGA connector, etc --- diff --git a/packages/norcomp/181-female.py b/packages/norcomp/181-female.py new file mode 100755 index 0000000..28755ad --- /dev/null +++ b/packages/norcomp/181-female.py @@ -0,0 +1,146 @@ +#!/usr/bin/python +# Copyright 2016 by Bdale Garbee . GPLv3+ +# +# Program to emit PCB footprint for Norcomp 181-YYY-213RYY1 connectors +# Female, right angle, 0.318 setback +# +# Needs pin count on command line, 15/26/44/62 are valid +# + +# dimensions in mm from R181-YYY-213RYY1-1.pdf + +PinDiam = 0.94 +PinSpacing = 2.29 +RowSpacing = 2.54 +MntDiam = 3.05 +BoxY = 16.24 +FaceY = 8.89 +ARing = 0.8 +Clearance = 0.36 + +LineWidth = 1000 + +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]) +pinoffset = (pins - 1) / 6 * PinSpacing + +if pins == 15: + BoxX = 30.80 + MntX = 24.99 + pinoffset = pinoffset - (0.010 * 25.4) +elif pins == 26: + BoxX = 39.19 + MntX = 33.32 + pinoffset = pinoffset - (0.020 * 25.4) +elif pins == 44: + BoxX = 53.00 + MntX = 47.04 + pinoffset = pinoffset - (0.020 * 25.4) +elif pins == 62: + BoxX = 69.30 + MntX = 63.50 + pinoffset = pinoffset - (0.023 * 25.4) +else: + sys.stderr.write('Valid pin counts are 15|26|44|62\n') + sys.exit(1) + +print '# author: Bdale Garbee' +print '# email: bdale@gag.com' +print '# dist-license: GPL 3+' +print '# use-license: unlimited' + +print 'Element[0x0 "DB%iFHD"' % pins,'"" "" 0 0 0 0 0 100 0x0]' +print "(" +for col in range ((pins+1)/3): + pinnum = col + 1 + if pinnum == 1: + Flags = '0x0101' + else: + Flags = '0x0001' + + print ' Pin[', \ + mm2mils100((col)*PinSpacing-pinoffset), \ + mm2mils100(RowSpacing), \ + mm2mils100(PinDiam+ARing), \ + mm2mils100(Clearance), \ + mm2mils100(PinDiam+ARing+Clearance), \ + mm2mils100(PinDiam), \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + + pinnum = col + 1 + (pins+1)/3 + Flags = '0x0001' + print ' Pin[', \ + mm2mils100((col)*PinSpacing-pinoffset-PinSpacing/2), \ + 0, \ + mm2mils100(PinDiam+ARing), \ + mm2mils100(Clearance), \ + mm2mils100(PinDiam+ARing+Clearance), \ + mm2mils100(PinDiam), \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + + pinnum = col + 1 + 2*(pins+1)/3 + Flags = '0x0001' + if pinnum <= pins: + print ' Pin[', \ + mm2mils100((col)*PinSpacing-pinoffset), \ + mm2mils100(-RowSpacing), \ + mm2mils100(PinDiam+ARing), \ + mm2mils100(Clearance), \ + mm2mils100(PinDiam+ARing+Clearance), \ + mm2mils100(PinDiam), \ + '"pin%i"' % pinnum, '"%i"' % pinnum, Flags, ']' + + + +print ' Pin[', \ + mm2mils100(MntX/2), \ + mm2mils100(0), \ + mm2mils100(MntDiam+ARing), \ + mm2mils100(Clearance), \ + mm2mils100(MntDiam+ARing+Clearance), \ + mm2mils100(MntDiam), \ + '"mnt" "0"', '0x0001', ']' + +print ' Pin[', \ + mm2mils100(-MntX/2), \ + mm2mils100(0), \ + mm2mils100(MntDiam+ARing), \ + mm2mils100(Clearance), \ + mm2mils100(MntDiam+ARing+Clearance), \ + mm2mils100(MntDiam), \ + '"mnt" "0"', '0x0001', ']' + +print ' ElementLine[', \ + mm2mils100(-BoxX/2), \ + mm2mils100(-FaceY-RowSpacing), \ + mm2mils100(BoxX/2), \ + mm2mils100(-FaceY-RowSpacing), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(-BoxX/2), \ + mm2mils100(BoxY-FaceY-RowSpacing), \ + mm2mils100(BoxX/2), \ + mm2mils100(BoxY-FaceY-RowSpacing), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(BoxX/2), \ + mm2mils100(-FaceY-RowSpacing), \ + mm2mils100(BoxX/2), \ + mm2mils100(BoxY-FaceY-RowSpacing), \ + LineWidth, ']' + +print ' ElementLine[', \ + mm2mils100(-BoxX/2), \ + mm2mils100(-FaceY-RowSpacing), \ + mm2mils100(-BoxX/2), \ + mm2mils100(BoxY-FaceY-RowSpacing), \ + LineWidth, ']' + +print ")" diff --git a/packages/norcomp/Makefile b/packages/norcomp/Makefile index dd1cfe8..1338982 100644 --- a/packages/norcomp/Makefile +++ b/packages/norcomp/Makefile @@ -1,4 +1,15 @@ -all: 182-all 189-all +all: 181-all 182-all 189-all + +181-all: 181-f-15.fp 181-f-26.fp 181-f-44.fp 181-f-62.fp + +181-f-15.fp: 181-female.py + ./181-female.py 15 > 181-f-15.fp +181-f-26.fp: 181-female.py + ./181-female.py 26 > 181-f-26.fp +181-f-44.fp: 181-female.py + ./181-female.py 44 > 181-f-44.fp +181-f-62.fp: 181-female.py + ./181-female.py 62 > 181-f-62.fp 182-all: 182-f-9.fp 182-f-15.fp 182-f-25.fp 182-f-37.fp \ 182-m-9.fp 182-m-15.fp 182-m-25.fp 182-m-37.fp @@ -33,4 +44,4 @@ all: 182-all 189-all ./189.py 37 > 189-37.fp clean: - rm -f *.fp + rm -f *.fp *-