footprint for Infineon high side power switch for StaticStrand
authorBdale Garbee <bdale@gag.com>
Wed, 17 Nov 2021 04:05:08 +0000 (21:05 -0700)
committerBdale Garbee <bdale@gag.com>
Wed, 17 Nov 2021 04:05:08 +0000 (21:05 -0700)
packages/.gitignore
packages/11071.lht
packages/Makefile
packages/PG-TSDSO-14.py [new file with mode: 0755]
packages/SJ-352X-SMT.py
packages/W3011A.py
packages/jst/PH-smt-ra.py
symbols/microchip/MCP1642.sym

index 27bb5425f7ed01e6361a7818e6afc28c917e4a3e..ef219c4089fb8e7f82aa2ee68fefe681ab8e4aa2 100644 (file)
@@ -110,7 +110,6 @@ JTIBM15.fp
 s-pqfp-g32.fp
 A29100-009.fp
 506CD.fp
-11071.fp
 M1040M.fp
 pts645.fp
 l102.fp
@@ -132,3 +131,11 @@ AT1220.fp
 LPH.fp
 FA-20H.fp
 RGZ0048A.fp
+RSM0032B.fp
+RHB0032E.fp
+udfn8.fp
+PDV-P8103.fp
+SJ-352X-SMT.fp
+DSE0006A.fp
+U-DFN2020-6-F.fp
+711AT.fp
index 42016f419d0a0cf4e6c0d96c65232abbde0ad55d..abdf91ddde18823f5f7d5a1d7e715f2c7dea73ba 100644 (file)
@@ -420,7 +420,7 @@ li:pcb-rnd-subcircuit-v8 {
      hdia = 0.0
      li:shape {
       ha:ps_shape_v4 {
-       clearance = 50.0mil
+       clearance = 10.0mil
        ha:ps_line {
         y2 = -0.55mm
         thickness = 1.05mm
@@ -437,7 +437,7 @@ li:pcb-rnd-subcircuit-v8 {
        }
       }
       ha:ps_shape_v4 {
-       clearance = 40.0mil
+       clearance = 10.0mil
        ha:ps_line {
         y2 = -0.55mm
         thickness = 0.45mm
@@ -454,7 +454,7 @@ li:pcb-rnd-subcircuit-v8 {
        }
       }
       ha:ps_shape_v4 {
-       clearance = 0.55mm
+       clearance = 10.0mil
        ha:ps_line {
         y2 = -0.55mm
         thickness = 84.0mil
@@ -473,7 +473,7 @@ li:pcb-rnd-subcircuit-v8 {
        }
       }
       ha:ps_shape_v4 {
-       clearance = 0.55mm
+       clearance = 10.0mil
        ha:ps_line {
         y2 = -0.55mm
         thickness = 1.05mm
@@ -490,7 +490,7 @@ li:pcb-rnd-subcircuit-v8 {
        }
       }
       ha:ps_shape_v4 {
-       clearance = 0.55mm
+       clearance = 10.0mil
        ha:ps_line {
         y2 = -0.55mm
         thickness = 1.05mm
@@ -507,7 +507,7 @@ li:pcb-rnd-subcircuit-v8 {
        }
       }
       ha:ps_shape_v4 {
-       clearance = 0.55mm
+       clearance = 10.0mil
        ha:ps_line {
         y2 = -0.55mm
         thickness = 84.0mil
@@ -693,7 +693,6 @@ li:pcb-rnd-subcircuit-v8 {
      smirror = 0
      ha:attributes {
       term = G
-      name = GND
      }
      proto = 6
      xmirror = 0
@@ -711,7 +710,6 @@ li:pcb-rnd-subcircuit-v8 {
      smirror = 0
      ha:attributes {
       term = G
-      name = GND
      }
      proto = 6
      xmirror = 0
index 52c41d8f79c2b6452a87584981664cd407bcab00..2e99d2511d98dcd6d9f84d3dadb8e83153af57ba 100644 (file)
@@ -154,7 +154,8 @@ FOOTPRINTS= \
        SJ-352X-SMT.fp \
        DSE0006A.fp \
        U-DFN2020-6-F.fp \
-       711AT.fp
+       711AT.fp \
+       PG-TSDSO-14.fp
 
 .5c.fp:
        nickle $*.5c -o $@
diff --git a/packages/PG-TSDSO-14.py b/packages/PG-TSDSO-14.py
new file mode 100755 (executable)
index 0000000..6930d85
--- /dev/null
@@ -0,0 +1,118 @@
+#!/usr/bin/python3
+# Copyright 2021 by Bdale Garbee <bdale@gag.com>.  GPLv3
+#
+# Program to emit PG-TSDSO-14 footprint for Infineon high side power switch
+#
+
+# dimensions in mm from infineon/BTS7008-1EPP_v1.03_4-29-19.pdf
+
+BodyWidth = 4.9
+BodyHeight = 3.9
+
+PinWidth = 0.45
+PinHeight = 1.31
+PinSpacing = 0.65
+RowCenter = 2.85
+
+# large input pad under the chip
+PadWidth = 4.0
+PadHeight = 2.65
+PasteWidth = 1.85
+PasteOffset = 1.075
+
+# 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 "PG-TSDSO-14" "" "" 0 0 0 0 0 100 0x0]')
+print ("(")
+for pin in range (0,7):
+    print ('   Pad[',\
+       mm2mils100((pin-3) * PinSpacing), \
+       mm2mils100(-RowCenter - PinHeight/2 + PinWidth/2), \
+       mm2mils100((pin-3) * PinSpacing), \
+       mm2mils100(-RowCenter + PinHeight/2 - PinWidth/2), \
+       mm2mils100(PinWidth), \
+       mm2mils100(PinSpacing - PinWidth), \
+       mm2mils100(PinWidth)+600, \
+       '"pin%i"' % (14 - pin), '"%i"' % (14 - pin), '"square"]')
+
+    print ('   Pad[',\
+       mm2mils100((pin-3) * PinSpacing), \
+       mm2mils100(RowCenter + PinHeight/2 - PinWidth/2), \
+       mm2mils100((pin-3) * PinSpacing), \
+       mm2mils100(RowCenter - PinHeight/2 + PinWidth/2), \
+       mm2mils100(PinWidth), \
+       mm2mils100(PinSpacing - PinWidth), \
+       mm2mils100(PinWidth)+600, \
+       '"pin%i"' % (1 + pin), '"%i"' % (1 + pin), '"square"]')
+
+print ('   Pad[',\
+       mm2mils100(-PadWidth/2 + PadHeight/2), \
+       0, \
+       mm2mils100(PadWidth/2 - PadHeight/2), \
+       0, \
+       mm2mils100(PadHeight), \
+       mm2mils100(.1524), \
+       mm2mils100(PadHeight)+600, \
+       '"pin15" "15" "square,nopaste"]')
+
+print ('   Pad[',\
+       mm2mils100(PasteOffset), \
+       mm2mils100(-PadHeight/2 + PasteWidth/2), \
+       mm2mils100(PasteOffset), \
+       mm2mils100(PadHeight/2 - PasteWidth/2), \
+       mm2mils100(PasteWidth), \
+       mm2mils100(.1524), \
+       mm2mils100(PasteWidth)+600, \
+       '"pin15" "15" "square"]')
+
+print ('   Pad[',\
+       mm2mils100(-PasteOffset), \
+       mm2mils100(-PadHeight/2 + PasteWidth/2), \
+       mm2mils100(-PasteOffset), \
+       mm2mils100(PadHeight/2 - PasteWidth/2), \
+       mm2mils100(PasteWidth), \
+       mm2mils100(.1524), \
+       mm2mils100(PasteWidth)+600, \
+       '"pin15" "15" "square"]')
+
+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 ('   ElementArc[',\
+       mm2mils100(-4 * PinSpacing), \
+       mm2mils100(1 * RowCenter), \
+       '500 500 0 360 1000 ]')
+
+print (")")
index 8c0c8830909683e438f3e813631350f681a2e2b8..47a1d216085ce07ad22576361a12deca2b84c4a3 100755 (executable)
@@ -86,18 +86,18 @@ print('   Pad[',\
 print('   Pin[',\
         mm2mils100(HoleSetback), \
         0, \
-        mm2mils100(2.5*HoleDiam), \
+        mm2mils100(HoleDiam), \
         mm2mils100(0.5), \
-        mm2mils100(3*HoleDiam), \
+        mm2mils100(1.5*HoleDiam), \
         mm2mils100(HoleDiam), \
         '"mounting" "M" 0x0008]')
 
 print('   Pin[',\
         mm2mils100(HoleSetback+HoleSpacing), \
         0, \
-        mm2mils100(2.5*HoleDiam), \
+        mm2mils100(HoleDiam), \
         mm2mils100(0.5), \
-        mm2mils100(3*HoleDiam), \
+        mm2mils100(1.5*HoleDiam), \
         mm2mils100(HoleDiam), \
         '"mounting" "M" 0x0008]')
 
index 0a7845c755a679a42e5d9872fd2eb3ea6423d658..381c72ec2db0980c0a51dd2d0d35bfc8a3a42ad1 100755 (executable)
@@ -1,7 +1,7 @@
 #!/usr/bin/python2
 # Copyright 2007 by Bdale Garbee <bdale@gag.com>.  GPLv2
 #
-# Program to emit PCB footprint for Pules Electronics W3011A GPS chip antenna
+# Program to emit PCB footprint for Pulse Electronics W3011A GPS chip antenna
 #
 #   dimensions in mm from W3011.pdf
 PinWidth = 0.80
index 7d32ca9e691afce4298c11dd71a81ec36f7d9fd8..00b29a9d156c47f23120225fe8bbd5495636a0d9 100755 (executable)
@@ -58,7 +58,7 @@ print '   Pad[', \
        mm2mils100(TabWidth), \
        0, \
        mm2mils100(TabWidth + 0.2), \
-       '"tab1" "G" 0x0100]'
+       '"pin%i"' % (pins+1), '"%i"' % (pins+1), '0x0100]'
 
 print '   Pad[', \
        mm2mils100(FirstPin*2 + (pins-1)*PinSpacing - TabWidth/2), \
@@ -68,6 +68,6 @@ print '   Pad[', \
        mm2mils100(TabWidth), \
        0, \
        mm2mils100(TabWidth + 0.2), \
-       '"tab2" "G" 0x0100]'
+       '"pin%i"' % (pins+1), '"%i"' % (pins+1), '0x0100]'
 
 print ")"
index 12e1003a22189096223deedd1e7cc054167be7e9..36650882e404b6ac3c5c4cd90ea096f6e9e4108c 100644 (file)
@@ -53,13 +53,13 @@ pinlabel=EN
 T 205 1845 5 10 1 1 0 6 1
 pinnumber=1
 }
-P 0 1400 300 1400 1 0 0
+P 2000 200 1700 200 1 0 0
 {
-T -100 1400 5 10 0 0 0 6 1
+T 2100 200 5 10 0 0 0 0 1
 pintype=pas
-T 355 1395 5 10 1 1 0 0 1
+T 1645 195 5 10 1 1 0 6 1
 pinlabel=PG
-T 205 1445 5 10 1 1 0 6 1
+T 1795 245 5 10 1 1 0 0 1
 pinnumber=3
 }
 P 0 1000 300 1000 1 0 0