From 284b8a080f66be2c3480b74ec3161ce74e977deb Mon Sep 17 00:00:00 2001 From: Bdale Garbee Date: Mon, 25 May 2015 21:00:55 -0600 Subject: [PATCH] footprint for CR2032 battery holder --- packages/BU2032SM.py | 87 ++++++++++++++++++++++++++++++++++++++++++++ packages/Makefile | 3 +- 2 files changed, 89 insertions(+), 1 deletion(-) create mode 100755 packages/BU2032SM.py diff --git a/packages/BU2032SM.py b/packages/BU2032SM.py new file mode 100755 index 0000000..1e230ed --- /dev/null +++ b/packages/BU2032SM.py @@ -0,0 +1,87 @@ +#!/usr/bin/python +# Copyright 2015 by Bdale Garbee . GPLv3 +# +# Program to emit PCB footprint for BU2032 battery holder by Memory Protection Devices +# + +# dimensions in mm from mpd/BU2032SM-BT-GTR-datasheet.pdf + +PinWidth = 3.20 +PinHeight = 4.20 +PinSpacing = 26.10 +BodyDiam = 22.40 +BodyWidth = 31.86 +BodyHeight = 7.00 + +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 3' +print '# use-license: unlimited' + +print 'Element[0x0 "BU2032" "" "" 0 0 0 0 0 100 0x0]' +print "(" +print ' Pad[',\ + mm2mils100(-PinSpacing/2 - PinWidth/2), \ + mm2mils100(-PinHeight/2 + PinWidth/2), \ + mm2mils100(-PinSpacing/2 - PinWidth/2), \ + mm2mils100(PinHeight/2 - PinWidth/2), \ + mm2mils100(PinWidth), \ + 0, \ + mm2mils100(PinWidth+0.4), \ + '"pin1" "1" 0x0100]' + +print ' Pad[',\ + mm2mils100(PinSpacing/2 + PinWidth/2), \ + mm2mils100(-PinHeight/2 + PinWidth/2), \ + mm2mils100(PinSpacing/2 + PinWidth/2), \ + mm2mils100(PinHeight/2 - PinWidth/2), \ + mm2mils100(PinWidth), \ + 0, \ + mm2mils100(PinWidth+0.4), \ + '"pin2" "2" 0x0100]' + +print ' ElementArc[',\ + 0, \ + 0, \ + mm2mils100(BodyDiam/2), \ + mm2mils100(BodyDiam/2), \ + 0, \ + 360, \ + 1000, \ + ']' + +print ' ElementLine[',\ + mm2mils100(-BodyWidth/2), \ + mm2mils100(-BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + mm2mils100(-BodyHeight/2), \ + '1000 ]' + +print ' ElementLine[',\ + mm2mils100(-BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + '1000 ]' + +print ' ElementLine[',\ + mm2mils100(BodyWidth/2), \ + mm2mils100(-BodyHeight/2), \ + mm2mils100(BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + '1000 ]' + +print ' ElementLine[',\ + mm2mils100(-BodyWidth/2), \ + mm2mils100(-BodyHeight/2), \ + mm2mils100(-BodyWidth/2), \ + mm2mils100(BodyHeight/2), \ + '1000 ]' + +print ")" diff --git a/packages/Makefile b/packages/Makefile index 514d176..33df8b7 100644 --- a/packages/Makefile +++ b/packages/Makefile @@ -84,7 +84,8 @@ FOOTPRINTS= \ 0806.fp \ fuse345.fp \ g5rl1ae.fp \ - DO-214AC.fp + DO-214AC.fp \ + BU2032SM.fp .5c.fp: nickle $*.5c > $@ -- 2.47.2