From 13d0189682f5b1c75485ff160cfb63ff2dc8bd81 Mon Sep 17 00:00:00 2001 From: "Jan \"Yenya\" Kasprzak" Date: Tue, 5 Feb 2013 16:00:21 +0100 Subject: [PATCH] ATtiny SO8NW footprint - suitable for both narrow (150 mil) and medium (200 mil) SO8 components. --- SO8NM.fp | 49 +++++++++++++++++++++++++++++++ tinyboard.pcb | 81 ++++++++++++++++++++++++++------------------------- tinyboard.sch | 2 +- 3 files changed, 92 insertions(+), 40 deletions(-) create mode 100644 SO8NM.fp diff --git a/SO8NM.fp b/SO8NM.fp new file mode 100644 index 0000000..30dfee6 --- /dev/null +++ b/SO8NM.fp @@ -0,0 +1,49 @@ + # number of pads + # pad width in 1/1000 mil + # pad length in 1/1000 mil + # pad pitch 1/1000 mil + # seperation between pads on opposite sides 1/1000 mil + # X coordinates for the right hand column of pads (1/100 mils) + # pad clearance to plane layer in 1/100 mil + # pad soldermask width in 1/100 mil + # silk screen width (1/100 mils) + # figure out if we have an even or odd number of pins per side + # silk bounding box is -XMAX,-YMAX, XMAX,YMAX (1/100 mils) +# element_flags, description, pcb-name, value, mark_x, mark_y, +# text_x, text_y, text_direction, text_scale, text_flags +Element[0x00000000 "Small outline package, narrow or medium (150 or 200mil)" "" "SO8NM" 0 0 -2000 -6000 0 100 0x00000000] +( +# +# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] + Pad[ -16000 -7500 + -7000 -7500 + 2000 1000 3000 "1" "1" 0x00000100] + Pad[ -16000 -2500 + -7000 -2500 + 2000 1000 3000 "2" "2" 0x00000100] + Pad[ -16000 2500 + -7000 2500 + 2000 1000 3000 "3" "3" 0x00000100] + Pad[ -16000 7500 + -7000 7500 + 2000 1000 3000 "4" "4" 0x00000100] + Pad[ 16000 7500 + 7000 7500 + 2000 1000 3000 "5" "5" 0x00000100] + Pad[ 16000 2500 + 7000 2500 + 2000 1000 3000 "6" "6" 0x00000100] + Pad[ 16000 -2500 + 7000 -2500 + 2000 1000 3000 "7" "7" 0x00000100] + Pad[ 16000 -7500 + 7000 -7500 + 2000 1000 3000 "8" "8" 0x00000100] + ElementLine[-18000 -9500 -18000 9500 1000] + ElementLine[-18000 9500 18000 9500 1000] + ElementLine[ 18000 9500 18000 -9500 1000] + ElementLine[-18000 -9500 -2500 -9500 1000] + ElementLine[ 18000 -9500 2500 -9500 1000] + # punt on the arc on small parts as it can cover the pads + ElementArc[0 -9500 2500 2500 0 180 1000] +) diff --git a/tinyboard.pcb b/tinyboard.pcb index 3528380..9123735 100644 --- a/tinyboard.pcb +++ b/tinyboard.pcb @@ -5,12 +5,12 @@ FileVersion[20070407] PCB["" 200000 97500] -Grid[2500.0 0 0 1] -Cursor[5000 5000 0.000000] +Grid[2500.0 0 0 0] +Cursor[0 97500 0.000000] PolyArea[200000000.000000] Thermal[0.500000] DRC[1000 1000 1000 1000 1500 1000] -Flags("showdrc,nameonpcb,uniquename,clearnew,onlynames") +Flags("showdrc,nameonpcb,uniquename,clearnew,locknames") Groups("1,c:2,s") Styles["Signal,1000,4000,2000,1000:Power,2500,6000,3500,1000:Fat,6000,9000,5000,2000:Skinny,600,2402,1181,600"] @@ -794,7 +794,7 @@ Via[17500 20000 4000 2000 0 2000 "" ""] Via[25000 25000 6000 2000 0 3500 "" ""] Via[60000 40000 6000 2000 0 3500 "" ""] Via[32500 12500 4000 2000 0 2000 "" ""] -Via[90000 15000 4000 2000 0 2000 "" ""] +Via[87500 15000 4000 2000 0 2000 "" ""] Via[32500 42500 4000 2000 0 2000 "" ""] Via[77500 57500 9000 4000 0 5000 "" ""] Via[162500 45000 4000 2000 0 2000 "" ""] @@ -1345,25 +1345,6 @@ Element["" "JUMPER2" "J20" "unknown" 140000 25000 17500 -2500 0 100 ""] ) -Element["onsolder" "SO8" "U1" "unknown" 112500 20000 -2000 6000 0 100 "auto"] -( - Pad[-13500 7500 -7000 7500 2000 1000 3000 "PB5/_RESET_" "1" "onsolder,square"] - Pad[-13500 2500 -7000 2500 2000 1000 3000 "PB3" "2" "onsolder,square"] - Pad[-13500 -2500 -7000 -2500 2000 1000 3000 "PB4" "3" "onsolder,square"] - Pad[-13500 -7500 -7000 -7500 2000 1000 3000 "GND" "4" "onsolder,square"] - Pad[7000 -7500 13500 -7500 2000 1000 3000 "PB0/MOSI" "5" "onsolder,square,edge2"] - Pad[7000 -2500 13500 -2500 2000 1000 3000 "PB1/MISO" "6" "onsolder,square,edge2"] - Pad[7000 2500 13500 2500 2000 1000 3000 "PB2/SCK" "7" "onsolder,square,edge2"] - Pad[7000 7500 13500 7500 2000 1000 3000 "VCC" "8" "onsolder,square,edge2"] - ElementLine [-15500 -9500 -15500 9500 1000] - ElementLine [-15500 -9500 15500 -9500 1000] - ElementLine [15500 -9500 15500 9500 1000] - ElementLine [-15500 9500 -2500 9500 1000] - ElementLine [2500 9500 15500 9500 1000] - ElementArc [0 9500 2500 2500 180 180 1000] - - ) - Element["" "HEADER10_1" "PROG" "unknown" 39500 15500 -20000 -12500 0 100 ""] ( Pin[0 0 6000 3000 6600 3800 "1" "1" "square,edge2"] @@ -1487,6 +1468,25 @@ Element["onsolder" "SOT23" "Q1" "unknown" 115000 55000 -5000 10000 0 100 "auto"] ElementLine [-10300 -11000 -10300 2900 1000] ElementLine [-10300 -11000 2500 -11000 1000] + ) + +Element["onsolder" "SO8NM" "U1" "unknown" 112500 20000 -2000 6000 0 100 "auto"] +( + Pad[-16000 7500 -7000 7500 2000 1000 3000 "1" "1" "onsolder,square"] + Pad[-16000 2500 -7000 2500 2000 1000 3000 "2" "2" "onsolder,square"] + Pad[-16000 -2500 -7000 -2500 2000 1000 3000 "3" "3" "onsolder,square"] + Pad[-16000 -7500 -7000 -7500 2000 1000 3000 "4" "4" "onsolder,square"] + Pad[7000 -7500 16000 -7500 2000 1000 3000 "5" "5" "onsolder,square,edge2"] + Pad[7000 -2500 16000 -2500 2000 1000 3000 "6" "6" "onsolder,square,edge2"] + Pad[7000 2500 16000 2500 2000 1000 3000 "7" "7" "onsolder,square,edge2"] + Pad[7000 7500 16000 7500 2000 1000 3000 "8" "8" "onsolder,square,edge2"] + ElementLine [-18000 9500 -18000 -9500 1000] + ElementLine [-18000 -9500 18000 -9500 1000] + ElementLine [18000 -9500 18000 9500 1000] + ElementLine [-18000 9500 -2500 9500 1000] + ElementLine [18000 9500 2500 9500 1000] + ElementArc [0 9500 2500 2500 180 180 1000] + ) Layer(1 "component") ( @@ -1517,8 +1517,8 @@ Layer(1 "component") Line[25000 5000 40000 5000 6000 4000 "clearline"] Line[25000 25000 25000 5000 6000 4000 "clearline"] Line[35000 10400 32500 12500 1000 2000 "clearline"] - Line[85500 10500 35000 10500 1000 2000 "clearline"] - Line[90000 15000 86000 10500 1000 2000 "clearline"] + Line[83500 10500 35000 10500 1000 2000 "clearline"] + Line[87500 15000 83500 10500 1000 2000 "clearline"] Line[102500 35000 102500 5000 6000 4000 "clearline"] Line[97500 40000 60000 40000 6000 4000 "clearline"] Line[102500 35000 97500 40000 6000 4000 "clearline"] @@ -1599,8 +1599,8 @@ Layer(2 "solder") Line[102500 22500 87500 22500 1000 2000 "clearline"] Line[70000 20000 70000 15000 1000 2000 "clearline"] Line[80000 30000 70000 20000 1000 2000 "clearline"] - Line[90000 30000 80000 30000 1000 2000 "clearline"] - Line[95000 25000 90000 30000 1000 2000 "clearline"] + Line[87500 30000 80000 30000 1000 2000 "clearline"] + Line[92500 25000 87500 30000 1000 2000 "clearline"] Line[77500 32500 60000 15000 1000 2000 "clearline"] Line[92500 32500 77500 32500 1000 2000 "clearline"] Line[97500 27500 92500 32500 1000 2000 "clearline"] @@ -1613,24 +1613,22 @@ Layer(2 "solder") Line[15000 25000 17500 20000 1000 2000 "clearline"] Line[80000 45000 60000 25000 6000 4000 "clearline"] Line[97500 45000 80000 45000 6000 4000 "clearline"] - Line[92500 17500 90000 15000 1000 2000 "clearline"] - Line[102500 17500 92500 17500 1000 2000 "clearline"] + Line[102500 17500 90000 17500 1000 2000 "clearline"] Line[44500 10500 39500 15500 1000 2000 "clearline"] - Line[95000 10500 45000 10500 1000 2000 "clearline"] - Line[95000 15000 95000 10500 1000 2000 "clearline"] + Line[92500 10500 45000 10500 1000 2000 "clearline"] + Line[92500 15000 92500 10500 1000 2000 "clearline"] Line[102500 10000 102500 7500 6000 4000 "clearline"] - Line[107500 25000 95000 25000 1000 2000 "clearline"] + Line[107500 25000 92500 25000 1000 2000 "clearline"] Line[110000 22500 107500 25000 1000 2000 "clearline"] - Line[122500 22500 110000 22500 1000 2000 "clearline"] + Line[125000 22500 110000 22500 1000 2000 "clearline"] Line[110000 17500 107500 20000 1000 2000 "clearline"] - Line[122500 17500 110000 17500 1000 2000 "clearline"] - Line[107500 15000 95000 15000 1000 2000 "clearline"] + Line[125000 17500 110000 17500 1000 2000 "clearline"] Line[110000 12500 107500 15000 1000 2000 "clearline"] - Line[122500 12500 110000 12500 1000 2000 "clearline"] + Line[125000 12500 110000 12500 1000 2000 "clearline"] Line[32500 42500 42500 42500 1000 2000 "clearline"] Line[30000 45000 32500 42500 1000 2000 "clearline"] - Line[127500 22500 137500 32500 1000 2000 "clearline"] - Line[125000 22500 127500 22500 1000 2000 "clearline"] + Line[130000 22500 132500 25000 1000 2000 "clearline"] + Line[125000 22500 130000 22500 1000 2000 "clearline"] Line[132500 17500 140000 25000 1000 2000 "clearline"] Line[125000 17500 132500 17500 1000 2000 "clearline"] Line[137500 12500 140000 15000 1000 2000 "clearline"] @@ -1685,6 +1683,11 @@ Layer(2 "solder") Line[112500 45000 112500 42500 6000 4000 "clearline"] Line[112500 42500 115000 40000 6000 4000 "clearline"] Line[115000 40000 122500 40000 6000 4000 "clearline"] + Line[90000 17500 87500 15000 1000 2000 "clearline"] + Line[107500 15000 92500 15000 1000 2000 "clearline"] + Line[102500 10000 100000 10000 6000 4000 "clearline"] + Line[132500 25000 132500 27500 1000 2000 "clearline"] + Line[132500 27500 140000 35000 1000 2000 "clearline"] ) Layer(3 "silk") ( @@ -1700,7 +1703,7 @@ Layer(4 "silk") Line[139000 77500 165000 77500 1000 2000 "clearline"] Line[500 10000 500 87500 1000 2000 "clearline"] Line[199500 10000 199500 87500 1000 2000 "clearline"] - Line[10000 500 190000 500 1000 2000 "clearline"] + Line[10000 2500 190000 2500 1000 2000 "clearline"] Line[190000 97000 10000 97000 1000 2000 "clearline"] Arc[10000 87500 9500 9500 1000 2000 0 90 "clearline"] Arc[190000 87500 9500 9500 1000 2000 180 -90 "clearline"] diff --git a/tinyboard.sch b/tinyboard.sch index 65b3727..18694b3 100644 --- a/tinyboard.sch +++ b/tinyboard.sch @@ -7,7 +7,7 @@ device=ATtiny25 T 44000 46750 5 10 1 1 0 6 1 refdes=U1 T 44825 47950 5 10 0 0 0 6 1 -footprint=SO8 +footprint=SO8NM } C 40900 43800 1 0 0 mcp1701a-1.sym { -- 2.39.3