Increase clearance around MO-220 pads
authorKeith Packard <keithp@keithp.com>
Thu, 16 Aug 2012 06:10:34 +0000 (23:10 -0700)
committerKeith Packard <keithp@keithp.com>
Thu, 16 Aug 2012 06:10:34 +0000 (23:10 -0700)
This eliminates all DRC errors with the top ground flood

Signed-off-by: Keith Packard <keithp@keithp.com>
micropeak.pcb
packages/MO-220.fp
packages/MO-220.py

index 7883c393b2cd889bad3d25197bd0734ce8f85d6f..ae59256993cfe5fbe4c447678312b37a12b86136 100644 (file)
@@ -6,11 +6,11 @@ FileVersion[20070407]
 PCB["MicroPeak" 70000 56000]
 
 Grid[100.0 0 0 0]
-Cursor[0 0.000000]
+Cursor[20100 3600 0.000000]
 PolyArea[200000000.000000]
 Thermal[0.500000]
 DRC[500 1000 500 500 1500 650]
-Flags("showdrc,nameonpcb,uniquename,clearnew,snappin")
+Flags("showdrc,nameonpcb,uniquename")
 Groups("1,c:2,s:3")
 Styles["Signal,1000,3600,2000,1000:Power,2500,6000,3500,1000:Fat,4000,6000,3500,1000:Skinny,600,2402,1181,600"]
 
@@ -905,7 +905,7 @@ Element["" "MS5611" "U2" "unknown" 35000 10800 7300 -10500 0 100 ""]
 
 Element["" "MO-220" "U1" "unknown" 52500 30900 5900 -11000 0 100 ""]
 (
-       Pad[0 0 0 0 10236 0 0 "pin21" "21" "square,nopaste"]
+       Pad[0 0 0 0 10236 2126 1457 "pin21" "21" "square,nopaste"]
        Pad[-3411 -3411 -3411 -3411 3412 0 0 "pin21" "21" "square,nopaste"]
        Pad[0 -3411 0 -3411 3412 0 3412 "pin21" "21" "square,nopaste"]
        Pad[0 -3411 0 -3411 1500 0 3412 "pin21" "21" "square"]
@@ -920,26 +920,26 @@ Element["" "MO-220" "U1" "unknown" 52500 30900 5900 -11000 0 100 ""]
        Pad[0 3412 0 3412 3412 0 3412 "pin21" "21" "square,nopaste"]
        Pad[0 3412 0 3412 1500 0 3412 "pin21" "21" "square"]
        Pad[3412 3412 3412 3412 3412 0 0 "pin21" "21" "square,edge2,nopaste"]
-       Pad[-3936 -7912 -3936 -6653 906 1063 1457 "pin15" "15" ""]
-       Pad[-3936 6654 -3936 7913 906 1063 1457 "pin1" "1" "edge2"]
-       Pad[6654 -3936 7913 -3936 906 1063 1457 "pin10" "10" "edge2"]
-       Pad[-7912 -3936 -6653 -3936 906 1063 1457 "pin16" "16" ""]
-       Pad[-1968 -7912 -1968 -6653 906 1063 1457 "pin14" "14" ""]
-       Pad[-1968 6654 -1968 7913 906 1063 1457 "pin2" "2" "edge2"]
-       Pad[6654 -1968 7913 -1968 906 1063 1457 "pin9" "9" "edge2"]
-       Pad[-7912 -1968 -6653 -1968 906 1063 1457 "pin17" "17" ""]
-       Pad[0 -7912 0 -6653 906 1063 1457 "pin13" "13" ""]
-       Pad[0 6654 0 7913 906 1063 1457 "pin3" "3" "edge2"]
-       Pad[6654 0 7913 0 906 1063 1457 "pin8" "8" "edge2"]
-       Pad[-7912 0 -6653 0 906 1063 1457 "pin18" "18" ""]
-       Pad[1969 -7912 1969 -6653 906 1063 1457 "pin12" "12" ""]
-       Pad[1969 6654 1969 7913 906 1063 1457 "pin4" "4" "edge2"]
-       Pad[6654 1969 7913 1969 906 1063 1457 "pin7" "7" "edge2"]
-       Pad[-7912 1969 -6653 1969 906 1063 1457 "pin19" "19" ""]
-       Pad[3937 -7912 3937 -6653 906 1063 1457 "pin11" "11" ""]
-       Pad[3937 6654 3937 7913 906 1063 1457 "pin5" "5" "edge2"]
-       Pad[6654 3937 7913 3937 906 1063 1457 "pin6" "6" "edge2"]
-       Pad[-7912 3937 -6653 3937 906 1063 1457 "pin20" "20" ""]
+       Pad[-3936 -7912 -3936 -6653 906 2126 1457 "pin15" "15" ""]
+       Pad[-3936 6654 -3936 7913 906 2126 1457 "pin1" "1" "edge2"]
+       Pad[6654 -3936 7913 -3936 906 2126 1457 "pin10" "10" "edge2"]
+       Pad[-7912 -3936 -6653 -3936 906 2126 1457 "pin16" "16" ""]
+       Pad[-1968 -7912 -1968 -6653 906 2126 1457 "pin14" "14" ""]
+       Pad[-1968 6654 -1968 7913 906 2126 1457 "pin2" "2" "edge2"]
+       Pad[6654 -1968 7913 -1968 906 2126 1457 "pin9" "9" "edge2"]
+       Pad[-7912 -1968 -6653 -1968 906 2126 1457 "pin17" "17" ""]
+       Pad[0 -7912 0 -6653 906 2126 1457 "pin13" "13" ""]
+       Pad[0 6654 0 7913 906 2126 1457 "pin3" "3" "edge2"]
+       Pad[6654 0 7913 0 906 2126 1457 "pin8" "8" "edge2"]
+       Pad[-7912 0 -6653 0 906 2126 1457 "pin18" "18" ""]
+       Pad[1969 -7912 1969 -6653 906 2126 1457 "pin12" "12" ""]
+       Pad[1969 6654 1969 7913 906 2126 1457 "pin4" "4" "edge2"]
+       Pad[6654 1969 7913 1969 906 2126 1457 "pin7" "7" "edge2"]
+       Pad[-7912 1969 -6653 1969 906 2126 1457 "pin19" "19" ""]
+       Pad[3937 -7912 3937 -6653 906 2126 1457 "pin11" "11" ""]
+       Pad[3937 6654 3937 7913 906 2126 1457 "pin5" "5" "edge2"]
+       Pad[6654 3937 7913 3937 906 2126 1457 "pin6" "6" "edge2"]
+       Pad[-7912 3937 -6653 3937 906 2126 1457 "pin20" "20" ""]
        ElementArc [-7873 7874 500 500 0 360 1000]
 
        )
@@ -1002,7 +1002,6 @@ Layer(1 "top")
        Line[22100 22700 22100 3900 1000 2000 "clearline"]
        Line[30670 3419 22600 3419 1000 2000 "clearline"]
        Line[22600 3419 22100 3919 1000 2000 "clearline"]
-       Line[59784 30900 62300 30900 1000 2000 ""]
        Line[30670 13261 29061 13261 1000 2000 ""]
        Line[30670 8340 29060 8340 1000 2000 ""]
        Line[29060 8340 26600 10800 1000 2000 ""]
@@ -1022,10 +1021,16 @@ Layer(1 "top")
        Line[56437 44763 48800 52400 1000 2000 "clearline"]
        Line[48800 52400 44574 52400 1000 2000 "clearline"]
        Line[44574 52400 44474 52500 1000 2000 "clearline"]
+       Line[59784 30900 62500 30900 1000 2000 ""]
+       Line[62500 30900 62500 48500 1000 2000 ""]
        Polygon("clearpoly")
        (
                [500 500] [69500 500] [69500 55500] [500 55500] 
        )
+       Polygon("clearpoly")
+       (
+               [47500 23400] [19200 23400] [19200 33700] [47500 33700] 
+       )
 )
 Layer(2 "bottom")
 (
index 316a73bc241f4e3b90a50876f2f88d6c22a3fc60..7d4d203e58ff380fbd77bdbe95f8559ff64b0198 100644 (file)
@@ -4,7 +4,7 @@
 # use-license: unlimited
 Element[0x0 "MO-220" "" "" 0 0 0 0 0 100 0x0]
 (
-   Pad[ 0 0 0 0 10236 0 0 "pin21" "21" "square,nopaste"]
+   Pad[ 0 0 0 0 10236 2126 1457 "pin21" "21" "square,nopaste"]
    Pad[ -3411 -3411 -3411 -3411 3412 0 0 "pin21" "21" "square,nopaste"]
    Pad[ 0 -3411 0 -3411 3412 0 3412 "pin21" "21" "square,nopaste"]
    Pad[ 0 -3411 0 -3411 1500 0 3412 "pin21" "21" "square"]
@@ -19,25 +19,25 @@ Element[0x0 "MO-220" "" "" 0 0 0 0 0 100 0x0]
    Pad[ 0 3412 0 3412 3412 0 3412 "pin21" "21" "square,nopaste"]
    Pad[ 0 3412 0 3412 1500 0 3412 "pin21" "21" "square"]
    Pad[ 3412 3412 3412 3412 3412 0 0 "pin21" "21" "square,nopaste"]
-   Pad[ -3936 -7912 -3936 -6653 906 1063 1457 "pin15" "15" 0x0000]
-   Pad[ -3936 6654 -3936 7913 906 1063 1457 "pin1" "1" 0x0000]
-   Pad[ 6654 -3936 7913 -3936 906 1063 1457 "pin10" "10" 0x0000]
-   Pad[ -7912 -3936 -6653 -3936 906 1063 1457 "pin16" "16" 0x0000]
-   Pad[ -1968 -7912 -1968 -6653 906 1063 1457 "pin14" "14" 0x0000]
-   Pad[ -1968 6654 -1968 7913 906 1063 1457 "pin2" "2" 0x0000]
-   Pad[ 6654 -1968 7913 -1968 906 1063 1457 "pin9" "9" 0x0000]
-   Pad[ -7912 -1968 -6653 -1968 906 1063 1457 "pin17" "17" 0x0000]
-   Pad[ 0 -7912 0 -6653 906 1063 1457 "pin13" "13" 0x0000]
-   Pad[ 0 6654 0 7913 906 1063 1457 "pin3" "3" 0x0000]
-   Pad[ 6654 0 7913 0 906 1063 1457 "pin8" "8" 0x0000]
-   Pad[ -7912 0 -6653 0 906 1063 1457 "pin18" "18" 0x0000]
-   Pad[ 1969 -7912 1969 -6653 906 1063 1457 "pin12" "12" 0x0000]
-   Pad[ 1969 6654 1969 7913 906 1063 1457 "pin4" "4" 0x0000]
-   Pad[ 6654 1969 7913 1969 906 1063 1457 "pin7" "7" 0x0000]
-   Pad[ -7912 1969 -6653 1969 906 1063 1457 "pin19" "19" 0x0000]
-   Pad[ 3937 -7912 3937 -6653 906 1063 1457 "pin11" "11" 0x0000]
-   Pad[ 3937 6654 3937 7913 906 1063 1457 "pin5" "5" 0x0000]
-   Pad[ 6654 3937 7913 3937 906 1063 1457 "pin6" "6" 0x0000]
-   Pad[ -7912 3937 -6653 3937 906 1063 1457 "pin20" "20" 0x0000]
+   Pad[ -3936 -7912 -3936 -6653 906 2126 1457 "pin15" "15" 0x0000]
+   Pad[ -3936 6654 -3936 7913 906 2126 1457 "pin1" "1" 0x0000]
+   Pad[ 6654 -3936 7913 -3936 906 2126 1457 "pin10" "10" 0x0000]
+   Pad[ -7912 -3936 -6653 -3936 906 2126 1457 "pin16" "16" 0x0000]
+   Pad[ -1968 -7912 -1968 -6653 906 2126 1457 "pin14" "14" 0x0000]
+   Pad[ -1968 6654 -1968 7913 906 2126 1457 "pin2" "2" 0x0000]
+   Pad[ 6654 -1968 7913 -1968 906 2126 1457 "pin9" "9" 0x0000]
+   Pad[ -7912 -1968 -6653 -1968 906 2126 1457 "pin17" "17" 0x0000]
+   Pad[ 0 -7912 0 -6653 906 2126 1457 "pin13" "13" 0x0000]
+   Pad[ 0 6654 0 7913 906 2126 1457 "pin3" "3" 0x0000]
+   Pad[ 6654 0 7913 0 906 2126 1457 "pin8" "8" 0x0000]
+   Pad[ -7912 0 -6653 0 906 2126 1457 "pin18" "18" 0x0000]
+   Pad[ 1969 -7912 1969 -6653 906 2126 1457 "pin12" "12" 0x0000]
+   Pad[ 1969 6654 1969 7913 906 2126 1457 "pin4" "4" 0x0000]
+   Pad[ 6654 1969 7913 1969 906 2126 1457 "pin7" "7" 0x0000]
+   Pad[ -7912 1969 -6653 1969 906 2126 1457 "pin19" "19" 0x0000]
+   Pad[ 3937 -7912 3937 -6653 906 2126 1457 "pin11" "11" 0x0000]
+   Pad[ 3937 6654 3937 7913 906 2126 1457 "pin5" "5" 0x0000]
+   Pad[ 6654 3937 7913 3937 906 2126 1457 "pin6" "6" 0x0000]
+   Pad[ -7912 3937 -6653 3937 906 2126 1457 "pin20" "20" 0x0000]
    ElementArc[ -7873 7874 500 500 0 360 1000 ]
 )
index aeae929beff16f88960367e7bdffcd5c2ed80c1b..ee6ecfd8826b136c4aa7c8345a86462a08e44896 100644 (file)
@@ -12,6 +12,7 @@ PinSpacing = 0.50 # e
 Overall = 4.25    # E
 GndSquare = 2.60  # D2 & E2
 CoreSquare = 2.60
+PinClearance = 2 * (PinSpacing - PinWidth)
 
 # ATMEL specifies 120-150 microns between pad and solder mask
 # AT88RF1354 Appplication note
@@ -40,8 +41,8 @@ print '   Pad[',\
        mm2mils100(0), \
        mm2mils100(0), \
        mm2mils100(GndSquare), \
-       0, \
-       0, \
+       mm2mils100(PinClearance), \
+       mm2mils100(PinResist), \
        '"pin21" "21" "square,nopaste"]'
 
 # vias in the ground pad under the chip
@@ -58,7 +59,7 @@ print '   Pad[',\
 
 # break pad under chip into a grid to control the resist and paste masks
 
-blocks=3
+blocks=3;
 
 for viarow in range (-1, 2):
   for viacol in range (-1, 2):
@@ -103,7 +104,7 @@ for pin in range (1,6):
        mm2mils100((-3 + pin) * PinSpacing), \
        mm2mils100(-Overall/2 + PinHeight - PinWidth/2), \
        mm2mils100(PinWidth), \
-       mm2mils100(PinSpacing - PinWidth), \
+       mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
        '"pin%i"' % (16-pin), '"%i"' % (16-pin), '0x0000]'
 
@@ -113,7 +114,7 @@ for pin in range (1,6):
        mm2mils100((-3 + pin) * PinSpacing), \
        mm2mils100(+Overall/2 - PinWidth/2), \
        mm2mils100(PinWidth), \
-       mm2mils100(PinSpacing - PinWidth), \
+       mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
        '"pin%i"' % pin, '"%i"' % pin, '0x0000]'
       
@@ -123,7 +124,7 @@ for pin in range (1,6):
        mm2mils100(Overall/2 - PinWidth/2), \
        mm2mils100((-3 + pin) * PinSpacing), \
        mm2mils100(PinWidth), \
-       mm2mils100(PinSpacing - PinWidth), \
+       mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
        '"pin%i"' % (11-pin), '"%i"' % (11-pin), '0x0000]'
 
@@ -133,7 +134,7 @@ for pin in range (1,6):
        mm2mils100(-Overall/2 + PinHeight - PinWidth/2), \
        mm2mils100((-3 + pin) * PinSpacing), \
        mm2mils100(PinWidth), \
-       mm2mils100(PinSpacing - PinWidth), \
+       mm2mils100(PinClearance), \
        mm2mils100(PinResist), \
        '"pin%i"' % (15+pin), '"%i"' % (15+pin), '0x0000]'