Index: trunk/pcblib/connector/BNC_LAY.fp =================================================================== --- trunk/pcblib/connector/BNC_LAY.fp (revision 27120) +++ trunk/pcblib/connector/BNC_LAY.fp (revision 27121) @@ -1,15 +1,498 @@ -##from:pcb -##geo:90 -##geo:female - -Element(0x00 "right angle BNC" "" "BNC_LAY" 200 0 3 100 0x00) -( - ElementLine(-60 -290 490 -290 10) - ElementLine(490 -290 490 290 10) - ElementLine(490 290 -60 290 10) - ElementLine(-60 290 -60 -290 10) - Pin(0 0 60 35 "1" 0x101) - Pin(0 -100 60 35 "2" 0x01) - Pin(200 -200 100 81 "m1" 0x01) - Pin(200 200 100 81 "m2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = right angle BNC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 81.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.651392mm + rot = 0.000000 + y = 7.493392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.651392mm + rot = 0.000000 + y = 4.953392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = m1 + } + proto = 2 + xmirror = 0 + x = 6.731392mm + rot = 0.000000 + y = 2.413392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = m2 + } + proto = 2 + xmirror = 0 + x = 6.731392mm + rot = 0.000000 + y = 12.573392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 14.097392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 14.859392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 14.097392mm + x2 = 14.097392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 14.859392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 14.097392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 14.859392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 14.859392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.731392mm + y = 7.493392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 6.858392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.191392mm + x2 = 4.191392mm + ha:flags { + } + y1 = 6.858392mm + } + ha:line.26 { + clearance = 0.0 + y2 = 7.493392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.651392mm + x2 = 1.651392mm + ha:flags { + } + y1 = 7.493392mm + } + ha:line.29 { + clearance = 0.0 + y2 = 8.493392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.651392mm + x2 = 1.651392mm + ha:flags { + } + y1 = 7.493392mm + } + ha:line.32 { + clearance = 0.0 + y2 = 7.493392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.651392mm + x2 = 2.651392mm + ha:flags { + } + y1 = 7.493392mm + } + } + ha:combining { + } + } + } + } + uid = +z9SkkMpL7AE/DrmKxoAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB15F.fp =================================================================== --- trunk/pcblib/connector/DB15F.fp (revision 27120) +++ trunk/pcblib/connector/DB15F.fp (revision 27121) @@ -1,72 +1,1008 @@ -##from:pcb -##geo:90 -##geo:female - -Element(0x00 "DSUB connector, female/male" "" "DB15F" 1000 2026 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 2416 10) - ElementLine(665 2416 635 2416 10) - ElementLine(635 2416 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 2356 665 2356 10) - ElementLine(635 2236 665 2236 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 2186 20) - ElementLine(770 2186 665 2186 20) - ElementLine(665 2186 665 1110 10) - # Pins - # Pin 1 - Pin(1056 2026 60 35 "1" 0x101) - ElementLine(1016 2026 770 2026 20) - # Plazierungsmarkierung == PIN 1 - # Changed PY1 to PY2 13-Dec-1999 LRD - Mark(1056 2026) - # Remainder of the first row - Pin(1056 1918 60 35 "2" 0x01) - ElementLine(1016 1918 770 1918 20) - Pin(1056 1810 60 35 "3" 0x01) - ElementLine(1016 1810 770 1810 20) - Pin(1056 1702 60 35 "4" 0x01) - ElementLine(1016 1702 770 1702 20) - Pin(1056 1594 60 35 "5" 0x01) - ElementLine(1016 1594 770 1594 20) - Pin(1056 1486 60 35 "6" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1378 60 35 "7" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1270 60 35 "8" 0x01) - ElementLine(1016 1270 770 1270 20) - # Second row - Pin(944 1972 60 35 "9" 0x01) - ElementLine(904 1972 770 1972 20) - Pin(944 1864 60 35 "10" 0x01) - ElementLine(904 1864 770 1864 20) - Pin(944 1756 60 35 "11" 0x01) - ElementLine(904 1756 770 1756 20) - Pin(944 1648 60 35 "12" 0x01) - ElementLine(904 1648 770 1648 20) - Pin(944 1540 60 35 "13" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1432 60 35 "14" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1324 60 35 "15" 0x01) - ElementLine(904 1324 770 1324 20) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 2296 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.104 { + smirror = 0 + ha:attributes { + term = 17 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 59.8424mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 59.8424mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.236in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.236in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.44 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.72 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.80 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.88 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.96 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.100 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 2.026in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.105 { + clearance = 0.0 + y2 = 1.648in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.48367mm + x2 = 25.48367mm + ha:flags { + } + y1 = 1.648in + } + ha:line.108 { + clearance = 0.0 + y2 = 2.026in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 2.026in + } + ha:line.111 { + clearance = 0.0 + y2 = 2.026in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 2.026in + } + ha:line.114 { + clearance = 0.0 + y2 = 50.4604mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 2.026in + } + } + ha:combining { + } + } + } + } + uid = mxLwtmLpMYT5EZjypDMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB15M.fp =================================================================== --- trunk/pcblib/connector/DB15M.fp (revision 27120) +++ trunk/pcblib/connector/DB15M.fp (revision 27121) @@ -1,71 +1,1008 @@ -##from:pcb -##geo:90 -##geo:male - -Element(0x00 "DSUB connector, female/male" "" "DB15M" 1000 2026 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 2416 10) - ElementLine(665 2416 635 2416 10) - ElementLine(635 2416 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 2356 665 2356 10) - ElementLine(635 2236 665 2236 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 2186 20) - ElementLine(770 2186 665 2186 20) - ElementLine(665 2186 665 1110 10) - # Pins - # First row - Pin(1056 1270 60 35 "1" 0x101) - ElementLine(1016 1270 770 1270 20) - Pin(1056 1378 60 35 "2" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1486 60 35 "3" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1594 60 35 "4" 0x01) - ElementLine(1016 1594 770 1594 20) - Pin(1056 1702 60 35 "5" 0x01) - ElementLine(1016 1702 770 1702 20) - Pin(1056 1810 60 35 "6" 0x01) - ElementLine(1016 1810 770 1810 20) - Pin(1056 1918 60 35 "7" 0x01) - ElementLine(1016 1918 770 1918 20) - # Last pin in first row - Pin(1056 2026 60 35 "8" 0x01) - ElementLine(1016 2026 770 2026 20) - # Second row - Pin(944 1324 60 35 "9" 0x01) - ElementLine(904 1324 770 1324 20) - Pin(944 1432 60 35 "10" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1540 60 35 "11" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1648 60 35 "12" 0x01) - ElementLine(904 1648 770 1648 20) - Pin(944 1756 60 35 "13" 0x01) - ElementLine(904 1756 770 1756 20) - Pin(944 1864 60 35 "14" 0x01) - ElementLine(904 1864 770 1864 20) - Pin(944 1972 60 35 "15" 0x01) - ElementLine(904 1972 770 1972 20) - # Plazierungsmarkierung == PIN 1 - Mark(1050 1270) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 2296 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.104 { + smirror = 0 + ha:attributes { + term = 17 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 61.3664mm + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 61.3664mm + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 59.8424mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 59.8424mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.236in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.236in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 55.5244mm + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 55.5244mm + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.80 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.84 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.88 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.96 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.100 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 2.026in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.105 { + clearance = 0.0 + y2 = 1.648in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.48367mm + x2 = 25.48367mm + ha:flags { + } + y1 = 1.648in + } + ha:line.108 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.111 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 27.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.114 { + clearance = 0.0 + y2 = 33.258mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = OJxv7uCiNEnjpBVb3PgAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB25F.fp =================================================================== --- trunk/pcblib/connector/DB25F.fp (revision 27120) +++ trunk/pcblib/connector/DB25F.fp (revision 27121) @@ -1,92 +1,1308 @@ -##from:pcb -##geo:90 -##geo:female - -Element(0x00 "DSUB connector, female/male" "" "DB25F" 1000 2566 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 2956 10) - ElementLine(665 2956 635 2956 10) - ElementLine(635 2956 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 2896 665 2896 10) - ElementLine(635 2776 665 2776 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 2726 20) - ElementLine(770 2726 665 2726 20) - ElementLine(665 2726 665 1110 10) - # Pins - # Pin 1 - Pin(1056 2566 60 35 "1" 0x101) - ElementLine(1016 2566 770 2566 20) - # Plazierungsmarkierung == PIN 1 - # Changed PY1 to PY2 13-Dec-1999 LRD - Mark(1056 2566) - # Remainder of the first row - Pin(1056 2458 60 35 "2" 0x01) - ElementLine(1016 2458 770 2458 20) - Pin(1056 2350 60 35 "3" 0x01) - ElementLine(1016 2350 770 2350 20) - Pin(1056 2242 60 35 "4" 0x01) - ElementLine(1016 2242 770 2242 20) - Pin(1056 2134 60 35 "5" 0x01) - ElementLine(1016 2134 770 2134 20) - Pin(1056 2026 60 35 "6" 0x01) - ElementLine(1016 2026 770 2026 20) - Pin(1056 1918 60 35 "7" 0x01) - ElementLine(1016 1918 770 1918 20) - Pin(1056 1810 60 35 "8" 0x01) - ElementLine(1016 1810 770 1810 20) - Pin(1056 1702 60 35 "9" 0x01) - ElementLine(1016 1702 770 1702 20) - Pin(1056 1594 60 35 "10" 0x01) - ElementLine(1016 1594 770 1594 20) - Pin(1056 1486 60 35 "11" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1378 60 35 "12" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1270 60 35 "13" 0x01) - ElementLine(1016 1270 770 1270 20) - # Second row - Pin(944 2512 60 35 "14" 0x01) - ElementLine(904 2512 770 2512 20) - Pin(944 2404 60 35 "15" 0x01) - ElementLine(904 2404 770 2404 20) - Pin(944 2296 60 35 "16" 0x01) - ElementLine(904 2296 770 2296 20) - Pin(944 2188 60 35 "17" 0x01) - ElementLine(904 2188 770 2188 20) - Pin(944 2080 60 35 "18" 0x01) - ElementLine(904 2080 770 2080 20) - Pin(944 1972 60 35 "19" 0x01) - ElementLine(904 1972 770 1972 20) - Pin(944 1864 60 35 "20" 0x01) - ElementLine(904 1864 770 1864 20) - Pin(944 1756 60 35 "21" 0x01) - ElementLine(904 1756 770 1756 20) - Pin(944 1648 60 35 "22" 0x01) - ElementLine(904 1648 770 1648 20) - Pin(944 1540 60 35 "23" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1432 60 35 "24" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1324 60 35 "25" 0x01) - ElementLine(904 1324 770 1324 20) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 2836 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.144 { + smirror = 0 + ha:attributes { + term = 27 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 73.5584mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 73.5584mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.776in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.776in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.44 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.48 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.52 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.56 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.60 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.64 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.80 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.88 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.96 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:line.100 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.104 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.108 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.112 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.116 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.120 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.124 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.128 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.132 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.136 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.140 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 65.1764mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.145 { + clearance = 0.0 + y2 = 1.918in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.452681mm + x2 = 25.452681mm + ha:flags { + } + y1 = 1.918in + } + ha:line.148 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 65.1764mm + } + ha:line.151 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 65.1764mm + } + ha:line.154 { + clearance = 0.0 + y2 = 64.1764mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 65.1764mm + } + } + ha:combining { + } + } + } + } + uid = XgJ98fsHTDdEjKfSkLEAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB25M.fp =================================================================== --- trunk/pcblib/connector/DB25M.fp (revision 27120) +++ trunk/pcblib/connector/DB25M.fp (revision 27121) @@ -1,91 +1,1308 @@ -##from:pcb -##geo:90 -##geo:male - -Element(0x00 "DSUB connector, female/male" "" "DB25M" 1000 2566 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 2956 10) - ElementLine(665 2956 635 2956 10) - ElementLine(635 2956 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 2896 665 2896 10) - ElementLine(635 2776 665 2776 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 2726 20) - ElementLine(770 2726 665 2726 20) - ElementLine(665 2726 665 1110 10) - # Pins - # First row - Pin(1056 1270 60 35 "1" 0x101) - ElementLine(1016 1270 770 1270 20) - Pin(1056 1378 60 35 "2" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1486 60 35 "3" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1594 60 35 "4" 0x01) - ElementLine(1016 1594 770 1594 20) - Pin(1056 1702 60 35 "5" 0x01) - ElementLine(1016 1702 770 1702 20) - Pin(1056 1810 60 35 "6" 0x01) - ElementLine(1016 1810 770 1810 20) - Pin(1056 1918 60 35 "7" 0x01) - ElementLine(1016 1918 770 1918 20) - Pin(1056 2026 60 35 "8" 0x01) - ElementLine(1016 2026 770 2026 20) - Pin(1056 2134 60 35 "9" 0x01) - ElementLine(1016 2134 770 2134 20) - Pin(1056 2242 60 35 "10" 0x01) - ElementLine(1016 2242 770 2242 20) - Pin(1056 2350 60 35 "11" 0x01) - ElementLine(1016 2350 770 2350 20) - Pin(1056 2458 60 35 "12" 0x01) - ElementLine(1016 2458 770 2458 20) - # Last pin in first row - Pin(1056 2566 60 35 "13" 0x01) - ElementLine(1016 2566 770 2566 20) - # Second row - Pin(944 1324 60 35 "14" 0x01) - ElementLine(904 1324 770 1324 20) - Pin(944 1432 60 35 "15" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1540 60 35 "16" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1648 60 35 "17" 0x01) - ElementLine(904 1648 770 1648 20) - Pin(944 1756 60 35 "18" 0x01) - ElementLine(904 1756 770 1756 20) - Pin(944 1864 60 35 "19" 0x01) - ElementLine(904 1864 770 1864 20) - Pin(944 1972 60 35 "20" 0x01) - ElementLine(904 1972 770 1972 20) - Pin(944 2080 60 35 "21" 0x01) - ElementLine(904 2080 770 2080 20) - Pin(944 2188 60 35 "22" 0x01) - ElementLine(904 2188 770 2188 20) - Pin(944 2296 60 35 "23" 0x01) - ElementLine(904 2296 770 2296 20) - Pin(944 2404 60 35 "24" 0x01) - ElementLine(904 2404 770 2404 20) - Pin(944 2512 60 35 "25" 0x01) - ElementLine(904 2512 770 2512 20) - # Plazierungsmarkierung == PIN 1 - Mark(1050 1270) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 2836 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.144 { + smirror = 0 + ha:attributes { + term = 27 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.956in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.956in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 73.5584mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 73.5584mm + } + ha:line.28 { + clearance = 0.0 + y2 = 2.776in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.776in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 2.726in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.726in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.76 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.80 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.84 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.88 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.92 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.96 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.100 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.104 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.108 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.112 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.116 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.120 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.124 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.128 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.132 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.136 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.140 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 65.1764mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.145 { + clearance = 0.0 + y2 = 1.918in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.452681mm + x2 = 25.452681mm + ha:flags { + } + y1 = 1.918in + } + ha:line.148 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.151 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 27.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.154 { + clearance = 0.0 + y2 = 33.258mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = mwT/lhqrRxvsA+MkDMwAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB37F.fp =================================================================== --- trunk/pcblib/connector/DB37F.fp (revision 27120) +++ trunk/pcblib/connector/DB37F.fp (revision 27121) @@ -1,116 +1,1668 @@ -##from:pcb -##geo:90 -##geo:female - -Element(0x00 "DSUB connector, female/male" "" "DB37F" 1000 3214 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 3604 10) - ElementLine(665 3604 635 3604 10) - ElementLine(635 3604 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 3544 665 3544 10) - ElementLine(635 3424 665 3424 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 3374 20) - ElementLine(770 3374 665 3374 20) - ElementLine(665 3374 665 1110 10) - # Pins - # Pin 1 - Pin(1056 3214 60 35 "1" 0x101) - ElementLine(1016 3214 770 3214 20) - # Plazierungsmarkierung == PIN 1 - # Changed PY1 to PY2 13-Dec-1999 LRD - Mark(1056 3214) - # Remainder of the first row - Pin(1056 3106 60 35 "2" 0x01) - ElementLine(1016 3106 770 3106 20) - Pin(1056 2998 60 35 "3" 0x01) - ElementLine(1016 2998 770 2998 20) - Pin(1056 2890 60 35 "4" 0x01) - ElementLine(1016 2890 770 2890 20) - Pin(1056 2782 60 35 "5" 0x01) - ElementLine(1016 2782 770 2782 20) - Pin(1056 2674 60 35 "6" 0x01) - ElementLine(1016 2674 770 2674 20) - Pin(1056 2566 60 35 "7" 0x01) - ElementLine(1016 2566 770 2566 20) - Pin(1056 2458 60 35 "8" 0x01) - ElementLine(1016 2458 770 2458 20) - Pin(1056 2350 60 35 "9" 0x01) - ElementLine(1016 2350 770 2350 20) - Pin(1056 2242 60 35 "10" 0x01) - ElementLine(1016 2242 770 2242 20) - Pin(1056 2134 60 35 "11" 0x01) - ElementLine(1016 2134 770 2134 20) - Pin(1056 2026 60 35 "12" 0x01) - ElementLine(1016 2026 770 2026 20) - Pin(1056 1918 60 35 "13" 0x01) - ElementLine(1016 1918 770 1918 20) - Pin(1056 1810 60 35 "14" 0x01) - ElementLine(1016 1810 770 1810 20) - Pin(1056 1702 60 35 "15" 0x01) - ElementLine(1016 1702 770 1702 20) - Pin(1056 1594 60 35 "16" 0x01) - ElementLine(1016 1594 770 1594 20) - Pin(1056 1486 60 35 "17" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1378 60 35 "18" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1270 60 35 "19" 0x01) - ElementLine(1016 1270 770 1270 20) - # Second row - Pin(944 3160 60 35 "20" 0x01) - ElementLine(904 3160 770 3160 20) - Pin(944 3052 60 35 "21" 0x01) - ElementLine(904 3052 770 3052 20) - Pin(944 2944 60 35 "22" 0x01) - ElementLine(904 2944 770 2944 20) - Pin(944 2836 60 35 "23" 0x01) - ElementLine(904 2836 770 2836 20) - Pin(944 2728 60 35 "24" 0x01) - ElementLine(904 2728 770 2728 20) - Pin(944 2620 60 35 "25" 0x01) - ElementLine(904 2620 770 2620 20) - Pin(944 2512 60 35 "26" 0x01) - ElementLine(904 2512 770 2512 20) - Pin(944 2404 60 35 "27" 0x01) - ElementLine(904 2404 770 2404 20) - Pin(944 2296 60 35 "28" 0x01) - ElementLine(904 2296 770 2296 20) - Pin(944 2188 60 35 "29" 0x01) - ElementLine(904 2188 770 2188 20) - Pin(944 2080 60 35 "30" 0x01) - ElementLine(904 2080 770 2080 20) - Pin(944 1972 60 35 "31" 0x01) - ElementLine(904 1972 770 1972 20) - Pin(944 1864 60 35 "32" 0x01) - ElementLine(904 1864 770 1864 20) - Pin(944 1756 60 35 "33" 0x01) - ElementLine(904 1756 770 1756 20) - Pin(944 1648 60 35 "34" 0x01) - ElementLine(904 1648 770 1648 20) - Pin(944 1540 60 35 "35" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1432 60 35 "36" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1324 60 35 "37" 0x01) - ElementLine(904 1324 770 1324 20) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 3484 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 81.6356mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 78.8924mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.998in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.89in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.782in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.674in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.16in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.052in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.944in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.728in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.62in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = 26 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.147 { + smirror = 0 + ha:attributes { + term = 27 + name = 27 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.151 { + smirror = 0 + ha:attributes { + term = 28 + name = 28 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.155 { + smirror = 0 + ha:attributes { + term = 29 + name = 29 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.159 { + smirror = 0 + ha:attributes { + term = 30 + name = 30 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.163 { + smirror = 0 + ha:attributes { + term = 31 + name = 31 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.167 { + smirror = 0 + ha:attributes { + term = 32 + name = 32 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.171 { + smirror = 0 + ha:attributes { + term = 33 + name = 33 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.175 { + smirror = 0 + ha:attributes { + term = 34 + name = 34 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.179 { + smirror = 0 + ha:attributes { + term = 35 + name = 35 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.183 { + smirror = 0 + ha:attributes { + term = 36 + name = 36 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.187 { + smirror = 0 + ha:attributes { + term = 37 + name = 37 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.191 { + smirror = 0 + ha:attributes { + term = 38 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.192 { + smirror = 0 + ha:attributes { + term = 39 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 3.484in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 3.544in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.544in + } + ha:line.28 { + clearance = 0.0 + y2 = 86.9696mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 86.9696mm + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.44 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 81.6356mm + } + ha:line.48 { + clearance = 0.0 + y2 = 78.8924mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 78.8924mm + } + ha:line.52 { + clearance = 0.0 + y2 = 2.998in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.998in + } + ha:line.56 { + clearance = 0.0 + y2 = 2.89in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.89in + } + ha:line.60 { + clearance = 0.0 + y2 = 2.782in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.782in + } + ha:line.64 { + clearance = 0.0 + y2 = 2.674in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.674in + } + ha:line.68 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.72 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.76 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.80 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.84 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.88 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.92 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.96 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.100 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.104 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.108 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.112 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.116 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.120 { + clearance = 0.0 + y2 = 3.16in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.16in + } + ha:line.124 { + clearance = 0.0 + y2 = 3.052in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.052in + } + ha:line.128 { + clearance = 0.0 + y2 = 2.944in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.944in + } + ha:line.132 { + clearance = 0.0 + y2 = 72.0344mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 72.0344mm + } + ha:line.136 { + clearance = 0.0 + y2 = 2.728in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.728in + } + ha:line.140 { + clearance = 0.0 + y2 = 2.62in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.62in + } + ha:line.144 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:line.148 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.152 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.156 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.160 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.164 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.168 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.172 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.176 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.180 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.184 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.188 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 81.6356mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.193 { + clearance = 0.0 + y2 = 2.242in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.436471mm + x2 = 25.436471mm + ha:flags { + } + y1 = 2.242in + } + ha:line.196 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 81.6356mm + } + ha:line.199 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 81.6356mm + } + ha:line.202 { + clearance = 0.0 + y2 = 80.6356mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 81.6356mm + } + } + ha:combining { + } + } + } + } + uid = RfWOhvAGP43wbRWBULgAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB37M.fp =================================================================== --- trunk/pcblib/connector/DB37M.fp (revision 27120) +++ trunk/pcblib/connector/DB37M.fp (revision 27121) @@ -1,115 +1,1668 @@ -##from:pcb -##geo:90 -##geo:male - -Element(0x00 "DSUB connector, female/male" "" "DB37M" 1000 3214 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 3604 10) - ElementLine(665 3604 635 3604 10) - ElementLine(635 3604 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 3544 665 3544 10) - ElementLine(635 3424 665 3424 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 3374 20) - ElementLine(770 3374 665 3374 20) - ElementLine(665 3374 665 1110 10) - # Pins - # First row - Pin(1056 1270 60 35 "1" 0x101) - ElementLine(1016 1270 770 1270 20) - Pin(1056 1378 60 35 "2" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1486 60 35 "3" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1594 60 35 "4" 0x01) - ElementLine(1016 1594 770 1594 20) - Pin(1056 1702 60 35 "5" 0x01) - ElementLine(1016 1702 770 1702 20) - Pin(1056 1810 60 35 "6" 0x01) - ElementLine(1016 1810 770 1810 20) - Pin(1056 1918 60 35 "7" 0x01) - ElementLine(1016 1918 770 1918 20) - Pin(1056 2026 60 35 "8" 0x01) - ElementLine(1016 2026 770 2026 20) - Pin(1056 2134 60 35 "9" 0x01) - ElementLine(1016 2134 770 2134 20) - Pin(1056 2242 60 35 "10" 0x01) - ElementLine(1016 2242 770 2242 20) - Pin(1056 2350 60 35 "11" 0x01) - ElementLine(1016 2350 770 2350 20) - Pin(1056 2458 60 35 "12" 0x01) - ElementLine(1016 2458 770 2458 20) - Pin(1056 2566 60 35 "13" 0x01) - ElementLine(1016 2566 770 2566 20) - Pin(1056 2674 60 35 "14" 0x01) - ElementLine(1016 2674 770 2674 20) - Pin(1056 2782 60 35 "15" 0x01) - ElementLine(1016 2782 770 2782 20) - Pin(1056 2890 60 35 "16" 0x01) - ElementLine(1016 2890 770 2890 20) - Pin(1056 2998 60 35 "17" 0x01) - ElementLine(1016 2998 770 2998 20) - Pin(1056 3106 60 35 "18" 0x01) - ElementLine(1016 3106 770 3106 20) - # Last pin in first row - Pin(1056 3214 60 35 "19" 0x01) - ElementLine(1016 3214 770 3214 20) - # Second row - Pin(944 1324 60 35 "20" 0x01) - ElementLine(904 1324 770 1324 20) - Pin(944 1432 60 35 "21" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1540 60 35 "22" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1648 60 35 "23" 0x01) - ElementLine(904 1648 770 1648 20) - Pin(944 1756 60 35 "24" 0x01) - ElementLine(904 1756 770 1756 20) - Pin(944 1864 60 35 "25" 0x01) - ElementLine(904 1864 770 1864 20) - Pin(944 1972 60 35 "26" 0x01) - ElementLine(904 1972 770 1972 20) - Pin(944 2080 60 35 "27" 0x01) - ElementLine(904 2080 770 2080 20) - Pin(944 2188 60 35 "28" 0x01) - ElementLine(904 2188 770 2188 20) - Pin(944 2296 60 35 "29" 0x01) - ElementLine(904 2296 770 2296 20) - Pin(944 2404 60 35 "30" 0x01) - ElementLine(904 2404 770 2404 20) - Pin(944 2512 60 35 "31" 0x01) - ElementLine(904 2512 770 2512 20) - Pin(944 2620 60 35 "32" 0x01) - ElementLine(904 2620 770 2620 20) - Pin(944 2728 60 35 "33" 0x01) - ElementLine(904 2728 770 2728 20) - Pin(944 2836 60 35 "34" 0x01) - ElementLine(904 2836 770 2836 20) - Pin(944 2944 60 35 "35" 0x01) - ElementLine(904 2944 770 2944 20) - Pin(944 3052 60 35 "36" 0x01) - ElementLine(904 3052 770 3052 20) - Pin(944 3160 60 35 "37" 0x01) - ElementLine(904 3160 770 3160 20) - # Plazierungsmarkierung == PIN 1 - Mark(1050 1270) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 3484 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.81in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.918in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.026in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 54.2036mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.242in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.83 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.35in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.87 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.458in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.91 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 65.1764mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.95 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.674in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.99 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.782in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.103 { + smirror = 0 + ha:attributes { + term = 16 + name = 16 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.89in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.107 { + smirror = 0 + ha:attributes { + term = 17 + name = 17 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 2.998in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.111 { + smirror = 0 + ha:attributes { + term = 18 + name = 18 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 78.8924mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.115 { + smirror = 0 + ha:attributes { + term = 19 + name = 19 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 81.6356mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.119 { + smirror = 0 + ha:attributes { + term = 20 + name = 20 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.123 { + smirror = 0 + ha:attributes { + term = 21 + name = 21 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.127 { + smirror = 0 + ha:attributes { + term = 22 + name = 22 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.131 { + smirror = 0 + ha:attributes { + term = 23 + name = 23 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.135 { + smirror = 0 + ha:attributes { + term = 24 + name = 24 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.756in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.139 { + smirror = 0 + ha:attributes { + term = 25 + name = 25 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.864in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.143 { + smirror = 0 + ha:attributes { + term = 26 + name = 26 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.147 { + smirror = 0 + ha:attributes { + term = 27 + name = 27 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.08in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.151 { + smirror = 0 + ha:attributes { + term = 28 + name = 28 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.188in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.155 { + smirror = 0 + ha:attributes { + term = 29 + name = 29 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.296in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.159 { + smirror = 0 + ha:attributes { + term = 30 + name = 30 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 61.0616mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.163 { + smirror = 0 + ha:attributes { + term = 31 + name = 31 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.512in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.167 { + smirror = 0 + ha:attributes { + term = 32 + name = 32 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.62in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.171 { + smirror = 0 + ha:attributes { + term = 33 + name = 33 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.728in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.175 { + smirror = 0 + ha:attributes { + term = 34 + name = 34 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 72.0344mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.179 { + smirror = 0 + ha:attributes { + term = 35 + name = 35 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 2.944in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.183 { + smirror = 0 + ha:attributes { + term = 36 + name = 36 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.052in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.187 { + smirror = 0 + ha:attributes { + term = 37 + name = 37 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 3.16in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.191 { + smirror = 0 + ha:attributes { + term = 38 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.192 { + smirror = 0 + ha:attributes { + term = 39 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 3.484in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 3.604in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 3.604in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 3.544in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.544in + } + ha:line.28 { + clearance = 0.0 + y2 = 86.9696mm + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 86.9696mm + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 3.374in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 3.374in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.81in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.81in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.918in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.918in + } + ha:line.72 { + clearance = 0.0 + y2 = 2.026in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.026in + } + ha:line.76 { + clearance = 0.0 + y2 = 54.2036mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 54.2036mm + } + ha:line.80 { + clearance = 0.0 + y2 = 2.242in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.242in + } + ha:line.84 { + clearance = 0.0 + y2 = 2.35in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.35in + } + ha:line.88 { + clearance = 0.0 + y2 = 2.458in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.458in + } + ha:line.92 { + clearance = 0.0 + y2 = 65.1764mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 65.1764mm + } + ha:line.96 { + clearance = 0.0 + y2 = 2.674in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.674in + } + ha:line.100 { + clearance = 0.0 + y2 = 2.782in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.782in + } + ha:line.104 { + clearance = 0.0 + y2 = 2.89in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.89in + } + ha:line.108 { + clearance = 0.0 + y2 = 2.998in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 2.998in + } + ha:line.112 { + clearance = 0.0 + y2 = 78.8924mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 78.8924mm + } + ha:line.116 { + clearance = 0.0 + y2 = 81.6356mm + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 81.6356mm + } + ha:line.120 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.124 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.128 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.132 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.136 { + clearance = 0.0 + y2 = 1.756in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.756in + } + ha:line.140 { + clearance = 0.0 + y2 = 1.864in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.864in + } + ha:line.144 { + clearance = 0.0 + y2 = 1.972in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.972in + } + ha:line.148 { + clearance = 0.0 + y2 = 2.08in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.08in + } + ha:line.152 { + clearance = 0.0 + y2 = 2.188in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.188in + } + ha:line.156 { + clearance = 0.0 + y2 = 2.296in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.296in + } + ha:line.160 { + clearance = 0.0 + y2 = 61.0616mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 61.0616mm + } + ha:line.164 { + clearance = 0.0 + y2 = 2.512in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.512in + } + ha:line.168 { + clearance = 0.0 + y2 = 2.62in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.62in + } + ha:line.172 { + clearance = 0.0 + y2 = 2.728in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.728in + } + ha:line.176 { + clearance = 0.0 + y2 = 72.0344mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 72.0344mm + } + ha:line.180 { + clearance = 0.0 + y2 = 2.944in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 2.944in + } + ha:line.184 { + clearance = 0.0 + y2 = 3.052in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.052in + } + ha:line.188 { + clearance = 0.0 + y2 = 3.16in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 3.16in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 81.6356mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.193 { + clearance = 0.0 + y2 = 2.242in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.436471mm + x2 = 25.436471mm + ha:flags { + } + y1 = 2.242in + } + ha:line.196 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.199 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 27.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.202 { + clearance = 0.0 + y2 = 33.258mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = 4q1Up8irTZeVRbtKn8sAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB9F.fp =================================================================== --- trunk/pcblib/connector/DB9F.fp (revision 27120) +++ trunk/pcblib/connector/DB9F.fp (revision 27121) @@ -1,60 +1,828 @@ -##from:pcb -##geo:90 -##geo:female - -Element(0x00 "DSUB connector, female/male" "" "DB9F" 1000 1702 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 2092 10) - ElementLine(665 2092 635 2092 10) - ElementLine(635 2092 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 2032 665 2032 10) - ElementLine(635 1912 665 1912 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 1862 20) - ElementLine(770 1862 665 1862 20) - ElementLine(665 1862 665 1110 10) - # Pins - # Pin 1 - Pin(1056 1702 60 35 "1" 0x101) - ElementLine(1016 1702 770 1702 20) - # Plazierungsmarkierung == PIN 1 - # Changed PY1 to PY2 13-Dec-1999 LRD - Mark(1056 1702) - # Remainder of the first row - Pin(1056 1594 60 35 "2" 0x01) - ElementLine(1016 1594 770 1594 20) - Pin(1056 1486 60 35 "3" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1378 60 35 "4" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1270 60 35 "5" 0x01) - ElementLine(1016 1270 770 1270 20) - # Second row - Pin(944 1648 60 35 "6" 0x01) - ElementLine(904 1648 770 1648 20) - Pin(944 1540 60 35 "7" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1432 60 35 "8" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1324 60 35 "9" 0x01) - ElementLine(904 1324 770 1324 20) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 1972 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.80 { + smirror = 0 + ha:attributes { + term = 11 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 2.032in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.032in + } + ha:line.28 { + clearance = 0.0 + y2 = 1.912in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.912in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:line.68 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.72 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.76 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 1.702in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.81 { + clearance = 0.0 + y2 = 1.486in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.529309mm + x2 = 25.529309mm + ha:flags { + } + y1 = 1.486in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.702in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 1.702in + } + ha:line.87 { + clearance = 0.0 + y2 = 1.702in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.056in + x2 = 25.8224mm + ha:flags { + } + y1 = 1.702in + } + ha:line.90 { + clearance = 0.0 + y2 = 42.2308mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.056in + x2 = 1.056in + ha:flags { + } + y1 = 1.702in + } + } + ha:combining { + } + } + } + } + uid = bMtrWJ4J7RopF+TYtuYAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/DB9M.fp =================================================================== --- trunk/pcblib/connector/DB9M.fp (revision 27120) +++ trunk/pcblib/connector/DB9M.fp (revision 27121) @@ -1,59 +1,828 @@ -##from:pcb -##geo:90 -##geo:male - -Element(0x00 "DSUB connector, female/male" "" "DB9M" 1000 1702 1 150 0x00) -( - # Gehaeuse (schmaler Kasten incl. Bohrungen) - ElementLine(635 880 665 880 10) - ElementLine(665 880 665 2092 10) - ElementLine(665 2092 635 2092 10) - ElementLine(635 2092 635 880 10) - ElementLine(635 940 665 940 10) - ElementLine(635 1060 665 1060 10) - ElementLine(635 2032 665 2032 10) - ElementLine(635 1912 665 1912 10) - # Gehaeuse (aeusserer Kasten) - # This part of the connector normally hangs off the circuit board, - # so it is confusing to actually mark it on the silkscreen - # define(`X1', `eval(BASEX-PANEL_DISTANCE-260)') - # define(`Y1', `eval(PY1-100)') - # define(`X2', `eval(BASEX-PANEL_DISTANCE)') - # define(`Y2', `eval(PY2+100)') - # ElementLine(X1 Y1 X2 Y1 20) - # ElementLine(X2 Y1 X2 Y2 10) - # ElementLine(X2 Y2 X1 Y2 20) - # ElementLine(X1 Y2 X1 Y1 20) - # Gehaeuse (innerer Kasten) - ElementLine(665 1110 770 1110 20) - ElementLine(770 1110 770 1862 20) - ElementLine(770 1862 665 1862 20) - ElementLine(665 1862 665 1110 10) - # Pins - # First row - Pin(1056 1270 60 35 "1" 0x101) - ElementLine(1016 1270 770 1270 20) - Pin(1056 1378 60 35 "2" 0x01) - ElementLine(1016 1378 770 1378 20) - Pin(1056 1486 60 35 "3" 0x01) - ElementLine(1016 1486 770 1486 20) - Pin(1056 1594 60 35 "4" 0x01) - ElementLine(1016 1594 770 1594 20) - # Last pin in first row - Pin(1056 1702 60 35 "5" 0x01) - ElementLine(1016 1702 770 1702 20) - # Second row - Pin(944 1324 60 35 "6" 0x01) - ElementLine(904 1324 770 1324 20) - Pin(944 1432 60 35 "7" 0x01) - ElementLine(904 1432 770 1432 20) - Pin(944 1540 60 35 "8" 0x01) - ElementLine(904 1540 770 1540 20) - Pin(944 1648 60 35 "9" 0x01) - ElementLine(904 1648 770 1648 20) - # Plazierungsmarkierung == PIN 1 - Mark(1050 1270) - # Befestigungsbohrung - Pin(1000 1000 250 125 "C1" 0x01) - Pin(1000 1972 250 125 "C2" 0x01) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DSUB connector, female/male + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 125.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 250.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 256.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.43 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.27in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.47 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.378in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.51 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.486in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.55 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.594in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.59 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 1.056in + rot = 0.000000 + y = 1.702in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.63 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.324in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.67 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 36.3728mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.71 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.54in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.75 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 944.0mil + rot = 0.000000 + y = 1.648in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.79 { + smirror = 0 + ha:attributes { + term = 10 + name = C1 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1000.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.80 { + smirror = 0 + ha:attributes { + term = 11 + name = C2 + } + proto = 2 + xmirror = 0 + x = 1000.0mil + rot = 0.000000 + y = 1.972in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 880.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 2.092in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.16 { + clearance = 0.0 + y2 = 880.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 635.0mil + ha:flags { + } + y1 = 2.092in + } + ha:line.19 { + clearance = 0.0 + y2 = 940.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 940.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 1.06in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.06in + } + ha:line.25 { + clearance = 0.0 + y2 = 2.032in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 2.032in + } + ha:line.28 { + clearance = 0.0 + y2 = 1.912in + thickness = 10.0mil + ha:attributes { + } + x1 = 635.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.912in + } + ha:line.31 { + clearance = 0.0 + y2 = 1.11in + thickness = 20.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.34 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.11in + } + ha:line.37 { + clearance = 0.0 + y2 = 1.862in + thickness = 20.0mil + ha:attributes { + } + x1 = 770.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.40 { + clearance = 0.0 + y2 = 1.11in + thickness = 10.0mil + ha:attributes { + } + x1 = 665.0mil + x2 = 665.0mil + ha:flags { + } + y1 = 1.862in + } + ha:line.44 { + clearance = 0.0 + y2 = 1.27in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.27in + } + ha:line.48 { + clearance = 0.0 + y2 = 1.378in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.378in + } + ha:line.52 { + clearance = 0.0 + y2 = 1.486in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.486in + } + ha:line.56 { + clearance = 0.0 + y2 = 1.594in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.594in + } + ha:line.60 { + clearance = 0.0 + y2 = 1.702in + thickness = 20.0mil + ha:attributes { + } + x1 = 1.016in + x2 = 770.0mil + ha:flags { + } + y1 = 1.702in + } + ha:line.64 { + clearance = 0.0 + y2 = 1.324in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.324in + } + ha:line.68 { + clearance = 0.0 + y2 = 36.3728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 36.3728mm + } + ha:line.72 { + clearance = 0.0 + y2 = 1.54in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.54in + } + ha:line.76 { + clearance = 0.0 + y2 = 1.648in + thickness = 20.0mil + ha:attributes { + } + x1 = 904.0mil + x2 = 770.0mil + ha:flags { + } + y1 = 1.648in + } + ha:text.6 { + scale = 150 + ha:attributes { + } + x = 1000.0mil + y = 1.702in + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.81 { + clearance = 0.0 + y2 = 1.486in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 25.529309mm + x2 = 25.529309mm + ha:flags { + } + y1 = 1.486in + } + ha:line.84 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.87 { + clearance = 0.0 + y2 = 31.258mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 26.67mm + x2 = 26.67mm + ha:flags { + } + y1 = 1.27in + } + ha:line.90 { + clearance = 0.0 + y2 = 1.27in + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 26.67mm + x2 = 25.67mm + ha:flags { + } + y1 = 1.27in + } + } + ha:combining { + } + } + } + } + uid = KO9hCrE+Bz6rQzxqYx8AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/connector/pwrjack.fp =================================================================== --- trunk/pcblib/connector/pwrjack.fp (revision 27120) +++ trunk/pcblib/connector/pwrjack.fp (revision 27121) @@ -1,16 +1,300 @@ -##from:repo.hu/projects/openhw -##geo:90 -##geo:male - -Element["" "" "" "pwrjack" 124016 141732 0 0 0 100 ""] -( - Pin[0 0 19685 2000 20285 11811 "" "2" ""] - Pin[0 -27559 19685 2000 20285 11811 "" "1" ""] - Pin[-17717 -13779 19685 2000 20285 11811 "" "3" ""] - ElementLine [-17717 -55118 -17717 0 1000] - ElementLine [-17717 0 17716 0 1000] - ElementLine [17716 0 17716 -55118 1000] - ElementLine [17716 -55118 -17717 -55118 1000] - ElementLine [-17717 -43307 17716 -43307 1000] - - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = power jack + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 2.999994mm + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 4.99999mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 4.99999mm + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 4.99999mm + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 5.15239mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 5.15239mm + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 2 + } + proto = 0 + xmirror = 0 + x = 1.24016in + rot = 0.000000 + y = 35.999928mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 1 + } + proto = 0 + xmirror = 0 + x = 1.24016in + rot = 0.000000 + y = 1.14173in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + } + proto = 0 + xmirror = 0 + x = 1.06299in + rot = 0.000000 + y = 1.27953in + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.06299in + x2 = 1.06299in + ha:flags { + } + y1 = 21.999956mm + } + ha:line.13 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.06299in + x2 = 35.999928mm + ha:flags { + } + y1 = 35.999928mm + } + ha:line.16 { + clearance = 0.0 + y2 = 21.999956mm + thickness = 10.0mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 35.999928mm + ha:flags { + } + y1 = 35.999928mm + } + ha:line.19 { + clearance = 0.0 + y2 = 21.999956mm + thickness = 10.0mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 1.06299in + ha:flags { + } + y1 = 21.999956mm + } + ha:line.22 { + clearance = 0.0 + y2 = 984.25mil + thickness = 10.0mil + ha:attributes { + } + x1 = 1.06299in + x2 = 35.999928mm + ha:flags { + } + y1 = 984.25mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.24016in + y = 35.999928mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.25 { + clearance = 0.0 + y2 = 32.499977mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.18110331in + x2 = 1.18110331in + ha:flags { + } + y1 = 32.499977mm + } + ha:line.28 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.24016in + x2 = 1.24016in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.31 { + clearance = 0.0 + y2 = 34.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.24016in + x2 = 1.24016in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.34 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.24016in + x2 = 30.500064mm + ha:flags { + } + y1 = 35.999928mm + } + } + ha:combining { + } + } + } + } + uid = N9dhMGRbIqPCtXUXD0MAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/01005.fp =================================================================== --- trunk/pcblib/smd/01005.fp (revision 27120) +++ trunk/pcblib/smd/01005.fp (revision 27121) @@ -1,32 +1,211 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "01005" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-807 -19 - -807 19 - 984 2000 1584 "1" "1" "square"] - Pad[807 -19 - 807 19 - 984 2000 1584 "2" "2" "square"] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 01005 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 4.92mil + -5.11mil + -4.92mil + -5.11mil + -4.92mil + 5.11mil + 4.92mil + 5.11mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.92mil + -0.205994mm + -7.92mil + -0.205994mm + -7.92mil + 0.205994mm + 7.92mil + 0.205994mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 4.92mil + -5.11mil + -4.92mil + -5.11mil + -4.92mil + 5.11mil + 4.92mil + 5.11mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 17.92mil + rot = 0.000000 + y = 0.459994mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 34.06mil + rot = 0.000000 + y = 0.459994mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = -0.139954mm + y = -13.39mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 0.660146mm + x2 = 0.660146mm + ha:flags { + } + y1 = 0.459994mm + } + ha:line.12 { + clearance = 0.0 + y2 = 0.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.660146mm + x2 = 0.660146mm + ha:flags { + } + y1 = 0.459994mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.660146mm + x2 = 1.660146mm + ha:flags { + } + y1 = 0.459994mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.459994mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.660146mm + x2 = 0.660146mm + ha:flags { + } + y1 = 0.459994mm + } + } + ha:combining { + } + } + } + } + uid = Q1c2peLxTgOy7O9YZ/8AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/0201.fp =================================================================== --- trunk/pcblib/smd/0201.fp (revision 27120) +++ trunk/pcblib/smd/0201.fp (revision 27121) @@ -1,32 +1,211 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "0201" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-1181 0 - -1181 0 - 1574 2000 2174 "1" "1" "square"] - Pad[1181 0 - 1181 0 - 1574 2000 2174 "2" "2" "square"] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0201 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -7.87mil + 7.87mil + 7.87mil + 7.87mil + 7.87mil + -7.87mil + -7.87mil + -7.87mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -0.276098mm + 0.276098mm + 0.276098mm + 0.276098mm + 0.276098mm + -0.276098mm + -0.276098mm + -0.276098mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -7.87mil + 7.87mil + 7.87mil + 7.87mil + 7.87mil + -7.87mil + -7.87mil + -7.87mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 20.87mil + rot = 0.000000 + y = 20.87mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 44.49mil + rot = 0.000000 + y = 20.87mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.029972mm + y = -10.63mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 20.87mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 0.830072mm + x2 = 0.830072mm + ha:flags { + } + y1 = 20.87mil + } + ha:line.12 { + clearance = 0.0 + y2 = 20.87mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.830072mm + x2 = 0.830072mm + ha:flags { + } + y1 = 20.87mil + } + ha:line.15 { + clearance = 0.0 + y2 = 20.87mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.830072mm + x2 = 1.830072mm + ha:flags { + } + y1 = 20.87mil + } + ha:line.18 { + clearance = 0.0 + y2 = 1.530098mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.830072mm + x2 = 0.830072mm + ha:flags { + } + y1 = 20.87mil + } + } + ha:combining { + } + } + } + } + uid = eStzy6mX6No40cDOtoEAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/0402.fp =================================================================== --- trunk/pcblib/smd/0402.fp (revision 27120) +++ trunk/pcblib/smd/0402.fp (revision 27121) @@ -1,32 +1,211 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "0402" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-1574 -393 - -1574 393 - 1968 2000 2568 "1" "1" "square"] - Pad[1574 -393 - 1574 393 - 1968 2000 2568 "2" "2" "square"] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0402 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.249936mm + -0.349758mm + -0.249936mm + -0.349758mm + -0.249936mm + 0.349758mm + 0.249936mm + 0.349758mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.326136mm + -0.425958mm + -0.326136mm + -0.425958mm + -0.326136mm + 0.425958mm + 0.326136mm + 0.425958mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.249936mm + -0.349758mm + -0.249936mm + -0.349758mm + -0.249936mm + 0.349758mm + 0.249936mm + 0.349758mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 0.580136mm + rot = 0.000000 + y = 0.679958mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 54.32mil + rot = 0.000000 + y = 0.679958mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 7.08mil + y = -4.73mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 0.979932mm + x2 = 0.979932mm + ha:flags { + } + y1 = 0.679958mm + } + ha:line.12 { + clearance = 0.0 + y2 = 0.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.979932mm + x2 = 0.979932mm + ha:flags { + } + y1 = 0.679958mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.979932mm + x2 = 1.979932mm + ha:flags { + } + y1 = 0.679958mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.679958mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.979932mm + x2 = 0.979932mm + ha:flags { + } + y1 = 0.679958mm + } + } + ha:combining { + } + } + } + } + uid = xK4LY0258SGWTnYfnvwAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/0603.fp =================================================================== --- trunk/pcblib/smd/0603.fp (revision 27120) +++ trunk/pcblib/smd/0603.fp (revision 27121) @@ -1,32 +1,211 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "0603" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-2559 -492 - -2559 492 - 2952 2000 3552 "1" "1" "square"] - Pad[2559 -492 - 2559 492 - 2952 2000 3552 "2" "2" "square"] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0603 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.374904mm + -0.499872mm + -0.374904mm + -0.499872mm + -0.374904mm + 0.499872mm + 0.374904mm + 0.499872mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.76mil + -0.576072mm + -17.76mil + -0.576072mm + -17.76mil + 0.576072mm + 17.76mil + 0.576072mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.374904mm + -0.499872mm + -0.374904mm + -0.499872mm + -0.374904mm + 0.499872mm + 0.374904mm + 0.499872mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 27.76mil + rot = 0.000000 + y = 0.830072mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 2.005076mm + rot = 0.000000 + y = 0.830072mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 21.85mil + y = 0.029972mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 53.35mil + x2 = 53.35mil + ha:flags { + } + y1 = 0.830072mm + } + ha:line.12 { + clearance = 0.0 + y2 = 0.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 53.35mil + x2 = 53.35mil + ha:flags { + } + y1 = 0.830072mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 53.35mil + x2 = 2.35509mm + ha:flags { + } + y1 = 0.830072mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.830072mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 53.35mil + x2 = 53.35mil + ha:flags { + } + y1 = 0.830072mm + } + } + ha:combining { + } + } + } + } + uid = XViXVIINgyaT6qmUrpMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/0805.fp =================================================================== --- trunk/pcblib/smd/0805.fp (revision 27120) +++ trunk/pcblib/smd/0805.fp (revision 27121) @@ -1,34 +1,235 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "0805" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-3543 -393 - -3543 393 - 5118 2000 5718 "1" "1" "square"] - Pad[3543 -393 - 3543 393 - 5118 2000 5718 "2" "2" "square"] - ElementLine[-393 -2755 393 -2755 800] - ElementLine[-393 2755 393 2755 800] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 0805 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.749808mm + -0.649986mm + -0.749808mm + -0.649986mm + 0.749808mm + 0.649986mm + 0.749808mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.726186mm + -32.52mil + -0.726186mm + -32.52mil + -0.726186mm + 32.52mil + 0.726186mm + 32.52mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.749808mm + -0.649986mm + -0.749808mm + -0.649986mm + 0.749808mm + 0.649986mm + 0.749808mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 38.59mil + rot = 0.000000 + y = 42.52mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 109.45mil + rot = 0.000000 + y = 42.52mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 14.97mil + thickness = 8.0mil + ha:attributes { + } + x1 = 70.09mil + x2 = 77.95mil + ha:flags { + } + y1 = 14.97mil + } + ha:line.12 { + clearance = 0.0 + y2 = 1.779778mm + thickness = 8.0mil + ha:attributes { + } + x1 = 70.09mil + x2 = 77.95mil + ha:flags { + } + y1 = 1.779778mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 42.52mil + y = 0.279908mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 42.52mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.880108mm + x2 = 1.880108mm + ha:flags { + } + y1 = 42.52mil + } + ha:line.18 { + clearance = 0.0 + y2 = 42.52mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.880108mm + x2 = 1.880108mm + ha:flags { + } + y1 = 42.52mil + } + ha:line.21 { + clearance = 0.0 + y2 = 42.52mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.880108mm + x2 = 2.880108mm + ha:flags { + } + y1 = 42.52mil + } + ha:line.24 { + clearance = 0.0 + y2 = 2.080008mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.880108mm + x2 = 1.880108mm + ha:flags { + } + y1 = 42.52mil + } + } + ha:combining { + } + } + } + } + uid = Gb4CEJNqF8FflGx6irgAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/1008.fp =================================================================== --- trunk/pcblib/smd/1008.fp (revision 27120) +++ trunk/pcblib/smd/1008.fp (revision 27121) @@ -1,34 +1,235 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "1008" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-5118 -2362 - -5118 2362 - 4330 2000 4930 "1" "1" "square"] - Pad[5118 -2362 - 5118 2362 - 4330 2000 4930 "2" "2" "square"] - ElementLine[-1377 -4527 1377 -4527 800] - ElementLine[-1377 4527 1377 4527 800] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1008 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.54991mm + -45.27mil + -0.54991mm + -45.27mil + -0.54991mm + 45.27mil + 0.54991mm + 45.27mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.62611mm + -48.27mil + -0.62611mm + -48.27mil + -0.62611mm + 48.27mil + 0.62611mm + 48.27mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.54991mm + -45.27mil + -0.54991mm + -45.27mil + -0.54991mm + 45.27mil + 0.54991mm + 45.27mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 0.88011mm + rot = 0.000000 + y = 58.27mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.480054mm + rot = 0.000000 + y = 58.27mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.0mil + thickness = 8.0mil + ha:attributes { + } + x1 = 72.06mil + x2 = 2.52984mm + ha:flags { + } + y1 = 13.0mil + } + ha:line.12 { + clearance = 0.0 + y2 = 103.54mil + thickness = 8.0mil + ha:attributes { + } + x1 = 72.06mil + x2 = 2.52984mm + ha:flags { + } + y1 = 103.54mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.379982mm + y = 0.679958mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 58.27mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.180082mm + x2 = 2.180082mm + ha:flags { + } + y1 = 58.27mil + } + ha:line.18 { + clearance = 0.0 + y2 = 58.27mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.180082mm + x2 = 2.180082mm + ha:flags { + } + y1 = 58.27mil + } + ha:line.21 { + clearance = 0.0 + y2 = 58.27mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.180082mm + x2 = 3.180082mm + ha:flags { + } + y1 = 58.27mil + } + ha:line.24 { + clearance = 0.0 + y2 = 2.480058mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.180082mm + x2 = 2.180082mm + ha:flags { + } + y1 = 58.27mil + } + } + ha:combining { + } + } + } + } + uid = bZx6+gfdERtBSuYKqRIAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/1206.fp =================================================================== --- trunk/pcblib/smd/1206.fp (revision 27120) +++ trunk/pcblib/smd/1206.fp (revision 27121) @@ -1,34 +1,235 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "1206" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-5905 -1181 - -5905 1181 - 5118 2000 5718 "1" "1" "square"] - Pad[5905 -1181 - 5905 1181 - 5118 2000 5718 "2" "2" "square"] - ElementLine[-2362 -3740 2362 -3740 800] - ElementLine[-2362 3740 2362 3740 800] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1206 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.94996mm + -0.649986mm + -0.94996mm + -0.649986mm + 0.94996mm + 0.649986mm + 0.94996mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.726186mm + -1.02616mm + -0.726186mm + -1.02616mm + -0.726186mm + 1.02616mm + 0.726186mm + 1.02616mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.94996mm + -0.649986mm + -0.94996mm + -0.649986mm + 0.94996mm + 0.649986mm + 0.94996mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 38.59mil + rot = 0.000000 + y = 1.28016mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.979926mm + rot = 0.000000 + y = 1.28016mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.0mil + thickness = 8.0mil + ha:attributes { + } + x1 = 1.880108mm + x2 = 121.26mil + ha:flags { + } + y1 = 13.0mil + } + ha:line.12 { + clearance = 0.0 + y2 = 2.23012mm + thickness = 8.0mil + ha:attributes { + } + x1 = 1.880108mm + x2 = 121.26mil + ha:flags { + } + y1 = 2.23012mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 66.14mil + y = 0.48006mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 1.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 1.28016mm + } + ha:line.18 { + clearance = 0.0 + y2 = 1.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 1.28016mm + } + ha:line.21 { + clearance = 0.0 + y2 = 1.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 97.64mil + x2 = 3.480056mm + ha:flags { + } + y1 = 1.28016mm + } + ha:line.24 { + clearance = 0.0 + y2 = 2.28016mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 1.28016mm + } + } + ha:combining { + } + } + } + } + uid = pjaLj8tSfYLVqy1mjLYAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/1210.fp =================================================================== --- trunk/pcblib/smd/1210.fp (revision 27120) +++ trunk/pcblib/smd/1210.fp (revision 27121) @@ -1,34 +1,235 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "1210" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-5905 -2755 - -5905 2755 - 5118 2000 5718 "1" "1" "square"] - Pad[5905 -2755 - 5905 2755 - 5118 2000 5718 "2" "2" "square"] - ElementLine[-1968 -5314 1968 -5314 800] - ElementLine[-1968 5314 1968 5314 800] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1210 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -53.14mil + -0.649986mm + -53.14mil + -0.649986mm + 53.14mil + 0.649986mm + 53.14mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.726186mm + -56.14mil + -0.726186mm + -56.14mil + -0.726186mm + 56.14mil + 0.726186mm + 56.14mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -53.14mil + -0.649986mm + -53.14mil + -0.649986mm + 53.14mil + 0.649986mm + 53.14mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 38.59mil + rot = 0.000000 + y = 66.14mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.979926mm + rot = 0.000000 + y = 66.14mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.0mil + thickness = 8.0mil + ha:attributes { + } + x1 = 1.980184mm + x2 = 2.979928mm + ha:flags { + } + y1 = 13.0mil + } + ha:line.12 { + clearance = 0.0 + y2 = 119.28mil + thickness = 8.0mil + ha:attributes { + } + x1 = 1.980184mm + x2 = 2.979928mm + ha:flags { + } + y1 = 119.28mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 66.14mil + y = 34.64mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 66.14mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 66.14mil + } + ha:line.18 { + clearance = 0.0 + y2 = 66.14mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 66.14mil + } + ha:line.21 { + clearance = 0.0 + y2 = 66.14mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 97.64mil + x2 = 3.480056mm + ha:flags { + } + y1 = 66.14mil + } + ha:line.24 { + clearance = 0.0 + y2 = 2.679956mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 97.64mil + x2 = 97.64mil + ha:flags { + } + y1 = 66.14mil + } + } + ha:combining { + } + } + } + } + uid = OUdoBtbWh4DAdxBsTZ4AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/1806.fp =================================================================== --- trunk/pcblib/smd/1806.fp (revision 27120) +++ trunk/pcblib/smd/1806.fp (revision 27121) @@ -1,34 +1,235 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "1806" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-7874 -3543 - -7874 3543 - 6299 2000 6899 "1" "1" "square"] - Pad[7874 -3543 - 7874 3543 - 6299 2000 6899 "2" "2" "square"] - ElementLine[-3149 -6692 3149 -6692 800] - ElementLine[-3149 6692 3149 6692 800] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1806 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -1.699895mm + -31.495mil + -1.699895mm + -31.495mil + 1.699895mm + 31.495mil + 1.699895mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.876173mm + -1.776095mm + -0.876173mm + -1.776095mm + -0.876173mm + 1.776095mm + 0.876173mm + 1.776095mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -1.699895mm + -31.495mil + -1.699895mm + -31.495mil + 1.699895mm + 31.495mil + 1.699895mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.130173mm + rot = 0.000000 + y = 2.030095mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 5.130165mm + rot = 0.000000 + y = 2.030095mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.005mil + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 13.005mil + } + ha:line.12 { + clearance = 0.0 + y2 = 3.729863mm + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 3.729863mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 2.330069mm + y = 1.229995mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 2.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 2.030095mm + } + ha:line.18 { + clearance = 0.0 + y2 = 2.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 2.030095mm + } + ha:line.21 { + clearance = 0.0 + y2 = 2.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.130169mm + x2 = 4.130169mm + ha:flags { + } + y1 = 2.030095mm + } + ha:line.24 { + clearance = 0.0 + y2 = 3.030095mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 2.030095mm + } + } + ha:combining { + } + } + } + } + uid = oTnHpP1lGoaqmqIT+SoAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/1825.fp =================================================================== --- trunk/pcblib/smd/1825.fp (revision 27120) +++ trunk/pcblib/smd/1825.fp (revision 27121) @@ -1,34 +1,235 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # grab the input values and convert to 1/100 mil - # how much to grow the pads by for soldermask [1/100 mil] - # clearance from planes [1/100 mil] - # silk screen width [1/100 mil] - # courtyard silk screen width [1/100 mil] -# element_flags, description, pcb-name, value, mark_x, mark_y, -# text_x, text_y, text_direction, text_scale, text_flags -Element[0x00000000 "Standard SMT resistor, capacitor etc" "" "1825" 0 0 -3150 -3150 0 100 ""] -( -# -# Pad[x1, y1, x2, y2, thickness, clearance, mask, name , pad number, flags] - Pad[-7874 -10236 - -7874 10236 - 6299 2000 6899 "1" "1" "square"] - Pad[7874 -10236 - 7874 10236 - 6299 2000 6899 "2" "2" "square"] - ElementLine[-3149 -13385 3149 -13385 800] - ElementLine[-3149 13385 3149 13385 800] -# -# This draws a 1 mil placement courtyard outline in silk. It should probably -# not be included since you wont want to try and fab a 1 mil silk line. Then -# again, it is most useful during parts placement. It really is time for some -# additional non-fab layers... -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval(-1*V1/2) eval( V2/2) CYW] -# ElementLine[eval(-1*V1/2) eval(-1*V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval( V1/2) eval(-1*V2/2) CYW] -# ElementLine[eval( V1/2) eval( V2/2) eval(-1*V1/2) eval( V2/2) CYW] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 1825 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -3.399917mm + -31.495mil + -3.399917mm + -31.495mil + 3.399917mm + 31.495mil + 3.399917mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.876173mm + -3.476117mm + -0.876173mm + -3.476117mm + -0.876173mm + 3.476117mm + 0.876173mm + 3.476117mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.495mil + -3.399917mm + -31.495mil + -3.399917mm + -31.495mil + 3.399917mm + 31.495mil + 3.399917mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.130173mm + rot = 0.000000 + y = 3.730117mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 5.130165mm + rot = 0.000000 + y = 3.730117mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 13.005mil + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 13.005mil + } + ha:line.12 { + clearance = 0.0 + y2 = 7.129907mm + thickness = 8.0mil + ha:attributes { + } + x1 = 91.745mil + x2 = 3.930015mm + ha:flags { + } + y1 = 7.129907mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 2.330069mm + y = 115.355mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 3.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 3.730117mm + } + ha:line.18 { + clearance = 0.0 + y2 = 3.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 3.730117mm + } + ha:line.21 { + clearance = 0.0 + y2 = 3.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.130169mm + x2 = 4.130169mm + ha:flags { + } + y1 = 3.730117mm + } + ha:line.24 { + clearance = 0.0 + y2 = 4.730117mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.130169mm + x2 = 3.130169mm + ha:flags { + } + y1 = 3.730117mm + } + } + ha:combining { + } + } + } + } + uid = k6ig2fGd0J0pkK+aZVsAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/2706.fp =================================================================== --- trunk/pcblib/smd/2706.fp (revision 27120) +++ trunk/pcblib/smd/2706.fp (revision 27121) @@ -1,20 +1,259 @@ -##from:pcb -##for:resistor -##for:capacitor -##for:led - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "Standard SMT resistor, capacitor etc" "" "2706" 0 0 179 0 3 100 0x00) -( - ElementLine(-159 -54 -159 54 10) - ElementLine(-159 54 159 54 10) - ElementLine(159 54 159 -54 10) - ElementLine(159 -54 -159 -54 10) - Pad(-108 -3 - -108 3 - 78 20 84 "1" "1" 0x00000100) - Pad(108 -3 - 108 3 - 78 20 84 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = 2706 Standard SMT resistor, capacitor etc + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 39.0mil + -42.0mil + -39.0mil + -42.0mil + -39.0mil + 42.0mil + 39.0mil + 42.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 42.0mil + -45.0mil + -42.0mil + -45.0mil + -42.0mil + 45.0mil + 42.0mil + 45.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 39.0mil + -42.0mil + -39.0mil + -42.0mil + -39.0mil + 42.0mil + 39.0mil + 42.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.422792mm + rot = 0.000000 + y = 1.498992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 6.909192mm + rot = 0.000000 + y = 1.498992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.870592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.870592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 8.204592mm + ha:flags { + } + y1 = 2.870592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.204592mm + x2 = 8.204592mm + ha:flags { + } + y1 = 2.870592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.204592mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 8.712592mm + y = 1.498992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.21 { + clearance = 0.0 + y2 = 1.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.165992mm + x2 = 4.165992mm + ha:flags { + } + y1 = 1.498992mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.165992mm + x2 = 4.165992mm + ha:flags { + } + y1 = 1.498992mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.165992mm + x2 = 5.165992mm + ha:flags { + } + y1 = 1.498992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.498992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.165992mm + x2 = 4.165992mm + ha:flags { + } + y1 = 1.498992mm + } + } + ha:combining { + } + } + } + } + uid = FePvr11aAXKyPT8fC0AAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/DO214.fp =================================================================== --- trunk/pcblib/smd/DO214.fp (revision 27120) +++ trunk/pcblib/smd/DO214.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "DO214" 0 0 221 0 3 100 0x00) -( - ElementLine(-211 -89 -211 89 20) - ElementLine(-211 89 -141 114 10) - ElementLine(-141 114 201 114 10) - ElementLine(201 114 201 -114 10) - ElementLine(201 -114 -141 -114 10) - ElementLine(-141 -114 -211 -89 10) - Pad(-106 -19 - -106 19 - 140 20 146 "1" "1" 0x00000100) - Pad(106 -19 - 106 19 - 140 20 146 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DO214 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 70.0mil + -89.0mil + -70.0mil + -89.0mil + -70.0mil + 89.0mil + 70.0mil + 89.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 73.0mil + -92.0mil + -73.0mil + -92.0mil + -73.0mil + 92.0mil + 73.0mil + 92.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 70.0mil + -89.0mil + -70.0mil + -89.0mil + -70.0mil + 89.0mil + 70.0mil + 89.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.921783mm + rot = 0.000000 + y = 3.022992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 8.306583mm + rot = 0.000000 + y = 3.022992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 5.283592mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.762392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 5.918592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 2.032783mm + ha:flags { + } + y1 = 5.283592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.918592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.032783mm + x2 = 10.719583mm + ha:flags { + } + y1 = 5.918592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.719583mm + x2 = 10.719583mm + ha:flags { + } + y1 = 5.918592mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.719583mm + x2 = 2.032783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.762392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.032783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.227583mm + y = 3.022992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 3.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.614183mm + x2 = 5.614183mm + ha:flags { + } + y1 = 3.022992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 3.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.614183mm + x2 = 5.614183mm + ha:flags { + } + y1 = 3.022992mm + } + ha:line.33 { + clearance = 0.0 + y2 = 3.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.614183mm + x2 = 6.614183mm + ha:flags { + } + y1 = 3.022992mm + } + ha:line.36 { + clearance = 0.0 + y2 = 4.022992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.614183mm + x2 = 5.614183mm + ha:flags { + } + y1 = 3.022992mm + } + } + ha:combining { + } + } + } + } + uid = BVofxkidfNHI5Q7do+oAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/DO214AB.fp =================================================================== --- trunk/pcblib/smd/DO214AB.fp (revision 27120) +++ trunk/pcblib/smd/DO214AB.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "DO214AB" 0 0 227 0 3 100 0x00) -( - ElementLine(-217 -92 -217 92 20) - ElementLine(-217 92 -145 118 10) - ElementLine(-145 118 207 118 10) - ElementLine(207 118 207 -118 10) - ElementLine(207 -118 -145 -118 10) - ElementLine(-145 -118 -217 -92 10) - Pad(-109 -20 - -109 20 - 145 20 151 "1" "1" 0x00000100) - Pad(109 -20 - 109 20 - 145 20 151 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = DO214AB SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 72.5mil + -92.5mil + -72.5mil + -92.5mil + -72.5mil + 92.5mil + 72.5mil + 92.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 75.5mil + -95.5mil + -75.5mil + -95.5mil + -75.5mil + 95.5mil + 75.5mil + 95.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 72.5mil + -92.5mil + -72.5mil + -92.5mil + -72.5mil + 92.5mil + 72.5mil + 92.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.997983mm + rot = 0.000000 + y = 3.124592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 8.535183mm + rot = 0.000000 + y = 3.124592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 5.461392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.787792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 6.121792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 2.083583mm + ha:flags { + } + y1 = 5.461392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 6.121792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.083583mm + x2 = 11.024383mm + ha:flags { + } + y1 = 6.121792mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.024383mm + x2 = 11.024383mm + ha:flags { + } + y1 = 6.121792mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.024383mm + x2 = 2.083583mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.787792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 2.083583mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.532383mm + y = 3.124592mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 3.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 3.124592mm + } + ha:line.30 { + clearance = 0.0 + y2 = 3.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 3.124592mm + } + ha:line.33 { + clearance = 0.0 + y2 = 3.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.766583mm + x2 = 6.766583mm + ha:flags { + } + y1 = 3.124592mm + } + ha:line.36 { + clearance = 0.0 + y2 = 4.124592mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 3.124592mm + } + } + ha:combining { + } + } + } + } + uid = LJaVZUMLh15GoNd+Ga8AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/MPAK.fp =================================================================== --- trunk/pcblib/smd/MPAK.fp (revision 27120) +++ trunk/pcblib/smd/MPAK.fp (revision 27121) @@ -1,31 +1,381 @@ -##from:pcb -##for:transistor -##for:stabilizer -##for:linear - -Element(0x00 "Pressure transducer" "" "MPAK" 235 0 3 100 0x00) -( - ElementLine(0 0 0 558 10) - ElementLine(0 558 215 558 10) - ElementLine(215 558 215 0 10) - ElementLine(215 0 0 0 10) - # 1st pin on pin side - Pad(32 469 - 32 525 - 31 "1" "1" 0x100) - Pad(82 469 - 82 525 - 31 "2" "2" 0x100) - Pad(132 469 - 132 525 - 31 "3" "3" 0x100) - # last pin on pin side - Pad(182 469 - 182 525 - 31 "4" "4" 0x100) - # extra wide pin on opposite side - Pad(144 60 - 70 60 - 87 "5" "5" 0x100) - Mark(32 497) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MPAK + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.5mil + -43.5mil + -15.5mil + -43.5mil + -15.5mil + 43.5mil + 15.5mil + 43.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 18.5mil + -46.5mil + -18.5mil + -46.5mil + -18.5mil + 46.5mil + 18.5mil + 46.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.5mil + -43.5mil + -15.5mil + -43.5mil + -15.5mil + 43.5mil + 15.5mil + 43.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 80.5mil + 43.5mil + 80.5mil + -43.5mil + -80.5mil + -43.5mil + -80.5mil + 43.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 83.5mil + 46.5mil + 83.5mil + -46.5mil + -83.5mil + -46.5mil + -83.5mil + 46.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 80.5mil + 43.5mil + 80.5mil + -43.5mil + -80.5mil + -43.5mil + -80.5mil + 43.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 0.940192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 2.210192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 3.480192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 4.750192mm + rot = 0.000000 + y = 12.751192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 2.845192mm + rot = 0.000000 + y = 1.651392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 14.300592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 14.300592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 5.588392mm + ha:flags { + } + y1 = 14.300592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588392mm + x2 = 5.588392mm + ha:flags { + } + y1 = 14.300592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.096392mm + y = 0.127392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.24 { + clearance = 0.0 + y2 = 10.531232mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.845192mm + x2 = 2.845192mm + ha:flags { + } + y1 = 10.531232mm + } + ha:line.27 { + clearance = 0.0 + y2 = 12.751192mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 0.940192mm + x2 = 0.940192mm + ha:flags { + } + y1 = 12.751192mm + } + ha:line.30 { + clearance = 0.0 + y2 = 13.751192mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 0.940192mm + x2 = 0.940192mm + ha:flags { + } + y1 = 12.751192mm + } + ha:line.33 { + clearance = 0.0 + y2 = 12.751192mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 0.940192mm + x2 = 1.940192mm + ha:flags { + } + y1 = 12.751192mm + } + } + ha:combining { + } + } + } + } + uid = eZwOg7hh3XSQ6QI9EysAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SC70_3.fp =================================================================== --- trunk/pcblib/smd/SC70_3.fp (revision 27120) +++ trunk/pcblib/smd/SC70_3.fp (revision 27121) @@ -1,33 +1,277 @@ -##from:pcb -##for:transistor - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 3 pins" "" "SC70_3" 114 0 3 100 0x00) -( - ElementLine(0 0 0 119 10) - ElementLine(0 119 94 119 10) - ElementLine(94 119 94 0 10) - ElementLine(94 0 0 0 10) - # 1st side, 1st pin - Pad(21 91 - 21 97 - 29 - "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(72 91 - 72 97 - 29 - "2" "2" 0x100) - # 2nd side, 3rd pin - # 2nd side, 2nd pin - Pad(47 21 - 47 27 - 29 - "3" "3" 0x100) - # 2nd side, 1st pin - Mark(21 94) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SC70_3 SMT transistor, 3 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 58.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.087033mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.477433mm + x2 = 1.477433mm + ha:flags { + } + y1 = 2.087033mm + } + ha:line.25 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = aeq5mTHtKdZxz1ABi/wAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SC70_4.fp =================================================================== --- trunk/pcblib/smd/SC70_4.fp (revision 27120) +++ trunk/pcblib/smd/SC70_4.fp (revision 27121) @@ -1,40 +1,363 @@ -##from:pcb -##for:transistor -##for:stabilizer -##for:linear - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 4 pins" "" "SC70_4" 114 0 3 100 0x00) -( - ElementLine(0 0 0 119 10) - ElementLine(0 119 94 119 10) - ElementLine(94 119 94 0 10) - ElementLine(94 0 0 0 10) - # 1st side, 1st pin - # extra width - Pad(24 94 - 27 94 - 29 - "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(72 91 - 72 97 - 29 - "2" "2" 0x100) - # 2nd side, 3rd pin - Pad(72 21 - 72 27 - 29 - "3" "3" 0x100) - # 2nd side, 2nd pin - # 2nd side, 1st pin - Pad(21 21 - 21 27 - 29 - "4" "4" 0x100) - Mark(21 94) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SC70_4 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -16.0mil + -14.5mil + -16.0mil + 14.5mil + 16.0mil + 14.5mil + 16.0mil + -14.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -19.0mil + -17.5mil + -19.0mil + 17.5mil + 19.0mil + 17.5mil + 19.0mil + -17.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -16.0mil + -14.5mil + -16.0mil + 14.5mil + 16.0mil + 14.5mil + 16.0mil + -14.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 37.0mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 70.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 59.125mil + x2 = 59.125mil + ha:flags { + } + y1 = 70.5mil + } + ha:line.26 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.29 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.32 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = lUXAYtVgjXtuvW/Gy1MAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SC90.fp =================================================================== --- trunk/pcblib/smd/SC90.fp (revision 27120) +++ trunk/pcblib/smd/SC90.fp (revision 27121) @@ -1,33 +1,277 @@ -##from:pcb -##for:transistor - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 3 pins" "" "SC90" 93 0 3 100 0x00) -( - ElementLine(0 0 0 98 10) - ElementLine(0 98 73 98 10) - ElementLine(73 98 73 0 10) - ElementLine(73 0 0 0 10) - # 1st side, 1st pin - Pad(17 76 - 17 80 - 24 - "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(56 76 - 56 80 - 24 - "2" "2" 0x100) - # 2nd side, 3rd pin - # 2nd side, 2nd pin - Pad(36 17 - 36 21 - 24 - "3" "3" 0x100) - # 2nd side, 1st pin - Mark(17 78) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SC90 SMT transistor, 3 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -14.0mil + -12.0mil + -14.0mil + -12.0mil + 14.0mil + 12.0mil + 14.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.0mil + -17.0mil + -15.0mil + -17.0mil + -15.0mil + 17.0mil + 15.0mil + 17.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -14.0mil + -12.0mil + -14.0mil + -12.0mil + 14.0mil + 12.0mil + 14.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 91.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 91.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 49.0mil + rot = 0.000000 + y = 32.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 111.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 13.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 111.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 86.0mil + ha:flags { + } + y1 = 111.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 13.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 86.0mil + x2 = 86.0mil + ha:flags { + } + y1 = 111.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 13.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 86.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 13.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 106.0mil + y = 13.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 1.811866mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.253066mm + x2 = 1.253066mm + ha:flags { + } + y1 = 1.811866mm + } + ha:line.25 { + clearance = 0.0 + y2 = 91.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 91.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.3114mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 91.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 91.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 30.0mil + x2 = 1.762mm + ha:flags { + } + y1 = 91.0mil + } + } + ha:combining { + } + } + } + } + uid = Y7qfWU1Va5qxQ5ui32QAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOD106A.fp =================================================================== --- trunk/pcblib/smd/SOD106A.fp (revision 27120) +++ trunk/pcblib/smd/SOD106A.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOD106A" 0 0 166 0 3 100 0x00) -( - ElementLine(-156 -68 -156 68 20) - ElementLine(-156 68 -105 87 10) - ElementLine(-105 87 146 87 10) - ElementLine(146 87 146 -87 10) - ElementLine(146 -87 -105 -87 10) - ElementLine(-105 -87 -156 -68 10) - Pad(-76 -17 - -76 17 - 102 20 108 "1" "1" 0x00000100) - Pad(76 -17 - 76 17 - 102 20 108 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD106A SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 51.0mil + -68.0mil + -51.0mil + -68.0mil + -51.0mil + 68.0mil + 51.0mil + 68.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 54.0mil + -71.0mil + -54.0mil + -71.0mil + -54.0mil + 71.0mil + 54.0mil + 71.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 51.0mil + -68.0mil + -51.0mil + -68.0mil + -51.0mil + 68.0mil + 51.0mil + 68.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.286783mm + rot = 0.000000 + y = 2.337192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 6.147583mm + rot = 0.000000 + y = 2.337192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 4.064392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.609992mm + } + ha:line.10 { + clearance = 0.0 + y2 = 4.546992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.550183mm + ha:flags { + } + y1 = 4.064392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 4.546992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.550183mm + x2 = 7.925583mm + ha:flags { + } + y1 = 4.546992mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.925583mm + x2 = 7.925583mm + ha:flags { + } + y1 = 4.546992mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.925583mm + x2 = 1.550183mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.609992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.550183mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 8.433583mm + y = 2.337192mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.33 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.217183mm + x2 = 5.217183mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.36 { + clearance = 0.0 + y2 = 3.337192mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.337192mm + } + } + ha:combining { + } + } + } + } + uid = nAb7/3R/VK5t4jRpvCYAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOD110.fp =================================================================== --- trunk/pcblib/smd/SOD110.fp (revision 27120) +++ trunk/pcblib/smd/SOD110.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOD110" 0 0 83 0 3 100 0x00) -( - ElementLine(-73 -38 -73 38 20) - ElementLine(-73 38 -50 49 10) - ElementLine(-50 49 63 49 10) - ElementLine(63 49 63 -49 10) - ElementLine(63 -49 -50 -49 10) - ElementLine(-50 -49 -73 -38 10) - Pad(-29 -15 - -29 15 - 46 20 52 "1" "1" 0x00000100) - Pad(29 -15 - 29 15 - 46 20 52 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD110 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 23.0mil + -38.0mil + -23.0mil + -38.0mil + -23.0mil + 38.0mil + 23.0mil + 38.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 26.0mil + -41.0mil + -26.0mil + -41.0mil + -26.0mil + 41.0mil + 26.0mil + 41.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 23.0mil + -38.0mil + -23.0mil + -38.0mil + -23.0mil + 38.0mil + 23.0mil + 38.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.372383mm + rot = 0.000000 + y = 1.371992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 2.845583mm + rot = 0.000000 + y = 1.371992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.337192mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.406792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.838983mm + ha:flags { + } + y1 = 2.337192mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.838983mm + x2 = 3.709183mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.709183mm + x2 = 3.709183mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.709183mm + x2 = 0.838983mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.406792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.838983mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 4.217183mm + y = 1.371992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.108983mm + x2 = 2.108983mm + ha:flags { + } + y1 = 1.371992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.108983mm + x2 = 2.108983mm + ha:flags { + } + y1 = 1.371992mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.108983mm + x2 = 3.108983mm + ha:flags { + } + y1 = 1.371992mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.371992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.108983mm + x2 = 2.108983mm + ha:flags { + } + y1 = 1.371992mm + } + } + ha:combining { + } + } + } + } + uid = GrzapLkK/Y8pdEkIr7EAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOD123.fp =================================================================== --- trunk/pcblib/smd/SOD123.fp (revision 27120) +++ trunk/pcblib/smd/SOD123.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOD123" 0 0 120 0 3 100 0x00) -( - ElementLine(-110 -40 -110 40 20) - ElementLine(-110 40 -76 51 10) - ElementLine(-76 51 100 51 10) - ElementLine(100 51 100 -51 10) - ElementLine(100 -51 -76 -51 10) - ElementLine(-76 -51 -110 -40 10) - Pad(-55 -6 - -55 6 - 69 20 75 "1" "1" 0x00000100) - Pad(55 -6 - 55 6 - 69 20 75 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD123 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 34.5mil + -40.5mil + -34.5mil + -40.5mil + -34.5mil + 40.5mil + 34.5mil + 40.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 37.5mil + -43.5mil + -37.5mil + -43.5mil + -37.5mil + 43.5mil + 37.5mil + 43.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 34.5mil + -40.5mil + -34.5mil + -40.5mil + -34.5mil + 40.5mil + 34.5mil + 40.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.651783mm + rot = 0.000000 + y = 1.422792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.445783mm + rot = 0.000000 + y = 1.422792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.438792mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.406792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.718192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.118383mm + ha:flags { + } + y1 = 2.438792mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.718192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.118383mm + x2 = 5.588783mm + ha:flags { + } + y1 = 2.718192mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588783mm + x2 = 5.588783mm + ha:flags { + } + y1 = 2.718192mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.588783mm + x2 = 1.118383mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.406792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.118383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.096783mm + y = 1.422792mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.048783mm + x2 = 3.048783mm + ha:flags { + } + y1 = 1.422792mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.048783mm + x2 = 3.048783mm + ha:flags { + } + y1 = 1.422792mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.048783mm + x2 = 4.048783mm + ha:flags { + } + y1 = 1.422792mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.422792mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.048783mm + x2 = 3.048783mm + ha:flags { + } + y1 = 1.422792mm + } + } + ha:combining { + } + } + } + } + uid = bK7s+7eWCVc1F+i9KCMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOD323.fp =================================================================== --- trunk/pcblib/smd/SOD323.fp (revision 27120) +++ trunk/pcblib/smd/SOD323.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOD323" 0 0 93 0 3 100 0x00) -( - ElementLine(-83 -35 -83 35 20) - ElementLine(-83 35 -58 45 10) - ElementLine(-58 45 73 45 10) - ElementLine(73 45 73 -45 10) - ElementLine(73 -45 -58 -45 10) - ElementLine(-58 -45 -83 -35 10) - Pad(-37 -10 - -37 10 - 51 20 57 "1" "1" 0x00000100) - Pad(37 -10 - 37 10 - 51 20 57 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD323 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 25.5mil + -35.5mil + -25.5mil + -35.5mil + -25.5mil + 35.5mil + 25.5mil + 35.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 28.5mil + -38.5mil + -28.5mil + -38.5mil + -28.5mil + 38.5mil + 28.5mil + 38.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 25.5mil + -35.5mil + -25.5mil + -35.5mil + -25.5mil + 35.5mil + 25.5mil + 35.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.423183mm + rot = 0.000000 + y = 1.270392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.302783mm + rot = 0.000000 + y = 1.270392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.159392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.381392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.413392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.889783mm + ha:flags { + } + y1 = 2.159392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.413392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.889783mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.413392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.217183mm + x2 = 4.217183mm + ha:flags { + } + y1 = 2.413392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.217183mm + x2 = 0.889783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.381392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.889783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 4.725183mm + y = 1.270392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.362983mm + x2 = 2.362983mm + ha:flags { + } + y1 = 1.270392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.362983mm + x2 = 2.362983mm + ha:flags { + } + y1 = 1.270392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.362983mm + x2 = 3.362983mm + ha:flags { + } + y1 = 1.270392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.270392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.362983mm + x2 = 2.362983mm + ha:flags { + } + y1 = 1.270392mm + } + } + ha:combining { + } + } + } + } + uid = 2dW9Tvw7RTxCX0jj23YAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOD80.fp =================================================================== --- trunk/pcblib/smd/SOD80.fp (revision 27120) +++ trunk/pcblib/smd/SOD80.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOD80" 0 0 116 0 3 100 0x00) -( - ElementLine(-106 -43 -106 43 20) - ElementLine(-106 43 -80 55 10) - ElementLine(-80 55 96 55 10) - ElementLine(96 55 96 -55 10) - ElementLine(96 -55 -80 -55 10) - ElementLine(-80 -55 -106 -43 10) - Pad(-58 -16 - -58 16 - 53 20 59 "1" "1" 0x00000100) - Pad(58 -16 - 58 16 - 53 20 59 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD80 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 26.5mil + -42.5mil + -26.5mil + -42.5mil + -26.5mil + 42.5mil + 26.5mil + 42.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 29.5mil + -45.5mil + -29.5mil + -45.5mil + -29.5mil + 45.5mil + 29.5mil + 45.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 26.5mil + -42.5mil + -26.5mil + -42.5mil + -26.5mil + 42.5mil + 26.5mil + 42.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.473983mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.420383mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.432192mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.915183mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.915183mm + x2 = 5.385583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.385583mm + x2 = 5.385583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.385583mm + x2 = 0.915183mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.915183mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 5.893583mm + y = 1.524392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.947183mm + x2 = 2.947183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.947183mm + x2 = 2.947183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.947183mm + x2 = 3.947183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.947183mm + x2 = 2.947183mm + ha:flags { + } + y1 = 1.524392mm + } + } + ha:combining { + } + } + } + } + uid = VTNdQbVwPxfgsvfI80oAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOD87.fp =================================================================== --- trunk/pcblib/smd/SOD87.fp (revision 27120) +++ trunk/pcblib/smd/SOD87.fp (revision 27121) @@ -1,20 +1,283 @@ -##from:pcb -##for:diode - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOD87" 0 0 124 0 3 100 0x00) -( - ElementLine(-114 -57 -114 57 20) - ElementLine(-114 57 -84 73 10) - ElementLine(-84 73 104 73 10) - ElementLine(104 73 104 -73 10) - ElementLine(104 -73 -84 -73 10) - ElementLine(-84 -73 -114 -57 10) - Pad(-58 -26 - -58 26 - 61 20 67 "1" "1" 0x00000100) - Pad(58 -26 - 58 26 - 61 20 67 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOD87 SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 30.5mil + -56.5mil + -30.5mil + -56.5mil + -30.5mil + 56.5mil + 30.5mil + 56.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 33.5mil + -59.5mil + -33.5mil + -59.5mil + -33.5mil + 59.5mil + 33.5mil + 59.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 30.5mil + -56.5mil + -30.5mil + -56.5mil + -30.5mil + 56.5mil + 30.5mil + 56.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.677183mm + rot = 0.000000 + y = 1.981592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.623583mm + rot = 0.000000 + y = 1.981592mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 3.429392mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.533792mm + } + ha:line.10 { + clearance = 0.0 + y2 = 3.835792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.016783mm + ha:flags { + } + y1 = 3.429392mm + } + ha:line.13 { + clearance = 0.0 + y2 = 3.835792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.016783mm + x2 = 5.791983mm + ha:flags { + } + y1 = 3.835792mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.791983mm + x2 = 5.791983mm + ha:flags { + } + y1 = 3.835792mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.791983mm + x2 = 1.016783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.533792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.016783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.299983mm + y = 1.981592mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.150383mm + x2 = 3.150383mm + ha:flags { + } + y1 = 1.981592mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.150383mm + x2 = 3.150383mm + ha:flags { + } + y1 = 1.981592mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.150383mm + x2 = 4.150383mm + ha:flags { + } + y1 = 1.981592mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.981592mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.150383mm + x2 = 3.150383mm + ha:flags { + } + y1 = 1.981592mm + } + } + ha:combining { + } + } + } + } + uid = Q1gCDJRE1xA3loRFXQsAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT143.fp =================================================================== --- trunk/pcblib/smd/SOT143.fp (revision 27120) +++ trunk/pcblib/smd/SOT143.fp (revision 27121) @@ -1,38 +1,363 @@ -##from:pcb -##for:transistor - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 4 pins" "" "SOT143" 144 0 3 100 0x00) -( - ElementLine(0 0 0 139 10) - ElementLine(0 139 124 139 10) - ElementLine(124 139 124 0 10) - ElementLine(124 0 0 0 10) - # 1st side, 1st pin - # extra width - Pad(28 110 - 31 110 - 34 - "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(99 107 - 99 113 - 34 - "2" "2" 0x100) - # 2nd side, 3rd pin - Pad(99 25 - 99 31 - 34 - "3" "3" 0x100) - # 2nd side, 2nd pin - # 2nd side, 1st pin - Pad(25 25 - 25 31 - 34 - "4" "4" 0x100) - Mark(25 110) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT143 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -18.5mil + -17.0mil + -18.5mil + 17.0mil + 18.5mil + 17.0mil + 18.5mil + -17.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -21.5mil + -20.0mil + -21.5mil + 20.0mil + 21.5mil + 20.0mil + 21.5mil + -20.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -18.5mil + -17.0mil + -18.5mil + 17.0mil + 18.5mil + 17.0mil + 18.5mil + -17.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 20.0mil + -23.0mil + -20.0mil + -23.0mil + -20.0mil + 23.0mil + 20.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 39.5mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 109.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 109.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 35.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 134.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 134.0mil + x2 = 134.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 134.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 154.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 79.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 73.125mil + x2 = 73.125mil + ha:flags { + } + y1 = 79.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.29 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.32 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 35.0mil + x2 = 1.889mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = 0oigisyzTIDYQhx/ge0AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT223.fp =================================================================== --- trunk/pcblib/smd/SOT223.fp (revision 27120) +++ trunk/pcblib/smd/SOT223.fp (revision 27121) @@ -1,29 +1,363 @@ -##from:pcb -##for:transistor - -Element(0x00 "SMT transistor, 4 pins" "" "SOT223" 305 0 3 100 0x00) -( - ElementLine(0 0 0 414 10) - ElementLine(0 414 285 414 10) - ElementLine(285 414 285 0 10) - ElementLine(285 0 0 0 10) - # 1st pin on pin side - Pad(52 296 - 52 362 - 56 - "1" "1" 0x100) - Pad(142 296 - 142 362 - 56 - "2" "2" 0x100) - # last pin on pin side - Pad(233 296 - 233 362 - 56 - "3" "3" 0x100) - # extra wide pin on opposite side - Pad(187 85 - 97 85 - 122 "4" "4" 0x100) - Mark(52 329) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT223 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 28.0mil + -61.0mil + -28.0mil + -61.0mil + -28.0mil + 61.0mil + 28.0mil + 61.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 31.0mil + -64.0mil + -31.0mil + -64.0mil + -31.0mil + 64.0mil + 31.0mil + 64.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 28.0mil + -61.0mil + -28.0mil + -61.0mil + -28.0mil + 61.0mil + 28.0mil + 61.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 106.0mil + 61.0mil + 106.0mil + -61.0mil + -106.0mil + -61.0mil + -106.0mil + 61.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 109.0mil + 64.0mil + 109.0mil + -64.0mil + -109.0mil + -64.0mil + -109.0mil + 64.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 106.0mil + 61.0mil + 106.0mil + -61.0mil + -106.0mil + -61.0mil + -106.0mil + 61.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.448192mm + rot = 0.000000 + y = 8.483992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.734192mm + rot = 0.000000 + y = 8.483992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 6.045592mm + rot = 0.000000 + y = 8.483992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 3.734192mm + rot = 0.000000 + y = 2.286392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 10.642992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 10.642992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.127392mm + x2 = 7.366392mm + ha:flags { + } + y1 = 10.642992mm + } + ha:line.13 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.366392mm + x2 = 7.366392mm + ha:flags { + } + y1 = 10.642992mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.366392mm + x2 = 0.127392mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 7.874392mm + y = 0.127392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 6.934592mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.740542mm + x2 = 3.740542mm + ha:flags { + } + y1 = 6.934592mm + } + ha:line.26 { + clearance = 0.0 + y2 = 8.483992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.448192mm + x2 = 1.448192mm + ha:flags { + } + y1 = 8.483992mm + } + ha:line.29 { + clearance = 0.0 + y2 = 9.483992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.448192mm + x2 = 1.448192mm + ha:flags { + } + y1 = 8.483992mm + } + ha:line.32 { + clearance = 0.0 + y2 = 8.483992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.448192mm + x2 = 2.448192mm + ha:flags { + } + y1 = 8.483992mm + } + } + ha:combining { + } + } + } + } + uid = wL7+F9vz1VIcfqPPcnsAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT23.fp =================================================================== --- trunk/pcblib/smd/SOT23.fp (revision 27120) +++ trunk/pcblib/smd/SOT23.fp (revision 27121) @@ -1,33 +1,277 @@ -##from:pcb -##for:transistor - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 3 pins" "" "SOT23" 148 0 3 100 0x00) -( - ElementLine(0 0 0 139 10) - ElementLine(0 139 128 139 10) - ElementLine(128 139 128 0 10) - ElementLine(128 0 0 0 10) - # 1st side, 1st pin - Pad(25 107 - 25 113 - 34 - "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(103 107 - 103 113 - 34 - "2" "2" 0x100) - # 2nd side, 3rd pin - # 2nd side, 2nd pin - Pad(64 25 - 64 31 - 34 - "3" "3" 0x100) - # 2nd side, 1st pin - Mark(25 110) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT23 SMT transistor, 3 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 20.0mil + -23.0mil + -20.0mil + -23.0mil + -20.0mil + 23.0mil + 20.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 35.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 113.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 74.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 158.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.353733mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 74.0mil + x2 = 74.0mil + ha:flags { + } + y1 = 2.353733mm + } + ha:line.25 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 35.0mil + x2 = 1.889mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = YmnO2BUK2cjwZjFkzKMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT23D.fp =================================================================== --- trunk/pcblib/smd/SOT23D.fp (revision 27120) +++ trunk/pcblib/smd/SOT23D.fp (revision 27121) @@ -1,33 +1,277 @@ -##from:pcb -##for:transistor - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOT23D" 148 0 3 100 0x00) -( - ElementLine(0 0 0 139 10) - ElementLine(0 139 128 139 10) - ElementLine(128 139 128 0 10) - ElementLine(128 0 0 0 10) - # 1st side, 1st pin - Pad(25 107 - 25 113 - 34 - "2" "2" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(103 107 - 103 113 - 34 - "3" "3" 0x100) - # 2nd side, 3rd pin - # 2nd side, 2nd pin - Pad(64 25 - 64 31 - 34 - "1" "1" 0x100) - # 2nd side, 1st pin - Mark(25 110) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT23D SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 20.0mil + -23.0mil + -20.0mil + -23.0mil + -20.0mil + 23.0mil + 20.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.0mil + -20.0mil + -17.0mil + -20.0mil + -17.0mil + 20.0mil + 17.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 35.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 113.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 74.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 138.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 138.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 158.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.353733mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 74.0mil + x2 = 74.0mil + ha:flags { + } + y1 = 2.353733mm + } + ha:line.25 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 35.0mil + x2 = 1.889mm + ha:flags { + } + y1 = 120.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 35.0mil + x2 = 35.0mil + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = hksuSYo1TTefRrW2D28AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT25.fp =================================================================== --- trunk/pcblib/smd/SOT25.fp (revision 27120) +++ trunk/pcblib/smd/SOT25.fp (revision 27121) @@ -1,38 +1,313 @@ -##from:pcb -##for:transistor -##for:stabilizer -##for:linear - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 5 pins" "" "SOT25" 138 0 3 100 0x00) -( - ElementLine(0 0 0 139 10) - ElementLine(0 139 118 139 10) - ElementLine(118 139 118 0 10) - ElementLine(118 0 0 0 10) - # 1st side, 1st pin - Pad(20 102 - 20 118 - 24 "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(98 102 - 98 118 - 24 "2" "2" 0x100) - # 2nd side, 3rd pin - Pad(98 20 - 98 36 - 24 "3" "3" 0x100) - # 2nd side, 2nd pin - Pad(59 20 - 59 36 - 24 "4" "4" 0x100) - # 2nd side, 1st pin - Pad(20 20 - 20 36 - 24 "5" "5" 0x100) - Mark(20 110) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT25 SMT transistor, 5 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.0mil + -23.0mil + -15.0mil + -23.0mil + -15.0mil + 23.0mil + 15.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 148.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.24 { + clearance = 0.0 + y2 = 1.79832mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 69.0mil + x2 = 69.0mil + ha:flags { + } + y1 = 1.79832mm + } + ha:line.27 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.30 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.33 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 30.0mil + x2 = 1.762mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = FitPy/jBEPpaQxnl1vgAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT26.fp =================================================================== --- trunk/pcblib/smd/SOT26.fp (revision 27120) +++ trunk/pcblib/smd/SOT26.fp (revision 27121) @@ -1,41 +1,331 @@ -##from:pcb -##for:transistor -##for:stabilizer -##for:linear - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 6 pins" "" "SOT26" 138 0 3 100 0x00) -( - ElementLine(0 0 0 139 10) - ElementLine(0 139 118 139 10) - ElementLine(118 139 118 0 10) - ElementLine(118 0 0 0 10) - # 1st side, 1st pin - Pad(20 102 - 20 118 - 24 "1" "1" 0x100) - # 1st side, 2nd pin - Pad(59 102 - 59 118 - 24 "2" "2" 0x100) - # 1st side, 3rd pin - Pad(98 102 - 98 118 - 24 "3" "3" 0x100) - # 2nd side, 3rd pin - Pad(98 20 - 98 36 - 24 "4" "4" 0x100) - # 2nd side, 2nd pin - Pad(59 20 - 59 36 - 24 "5" "5" 0x100) - # 2nd side, 1st pin - Pad(20 20 - 20 36 - 24 "6" "6" 0x100) - Mark(20 110) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT26 SMT transistor, 6 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 15.0mil + -23.0mil + -15.0mil + -23.0mil + -15.0mil + 23.0mil + 15.0mil + 23.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 12.0mil + -20.0mil + -12.0mil + -20.0mil + -12.0mil + 20.0mil + 12.0mil + 20.0mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 120.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 108.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 69.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.24 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 0 + xmirror = 0 + x = 30.0mil + rot = 0.000000 + y = 38.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:line.10 { + clearance = 0.0 + y2 = 149.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 10.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 128.0mil + ha:flags { + } + y1 = 149.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 10.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 128.0mil + x2 = 10.0mil + ha:flags { + } + y1 = 10.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 148.0mil + y = 10.0mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.25 { + clearance = 0.0 + y2 = 79.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 69.0mil + x2 = 69.0mil + ha:flags { + } + y1 = 79.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 4.048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 30.0mil + x2 = 30.0mil + ha:flags { + } + y1 = 120.0mil + } + ha:line.34 { + clearance = 0.0 + y2 = 120.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 30.0mil + x2 = 1.762mm + ha:flags { + } + y1 = 120.0mil + } + } + ha:combining { + } + } + } + } + uid = kS4vnWF4YqQfyJe4Fo8AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT323.fp =================================================================== --- trunk/pcblib/smd/SOT323.fp (revision 27120) +++ trunk/pcblib/smd/SOT323.fp (revision 27121) @@ -1,33 +1,277 @@ -##from:pcb -##for:transistor - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT transistor, 3 pins" "" "SOT323" 114 0 3 100 0x00) -( - ElementLine(0 0 0 119 10) - ElementLine(0 119 94 119 10) - ElementLine(94 119 94 0 10) - ElementLine(94 0 0 0 10) - # 1st side, 1st pin - Pad(21 91 - 21 97 - 29 - "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(72 91 - 72 97 - 29 - "2" "2" 0x100) - # 2nd side, 3rd pin - # 2nd side, 2nd pin - Pad(47 21 - 47 27 - 29 - "3" "3" 0x100) - # 2nd side, 1st pin - Mark(21 94) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT323 SMT transistor, 3 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 58.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.087033mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.477433mm + x2 = 1.477433mm + ha:flags { + } + y1 = 2.087033mm + } + ha:line.25 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = cXXouN6IWQ/t3brFf7YAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT323D.fp =================================================================== --- trunk/pcblib/smd/SOT323D.fp (revision 27120) +++ trunk/pcblib/smd/SOT323D.fp (revision 27121) @@ -1,33 +1,277 @@ -##from:pcb -##for:transistor - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -Element(0x00 "SMT diode (pin 1 is cathode)" "" "SOT323D" 114 0 3 100 0x00) -( - ElementLine(0 0 0 119 10) - ElementLine(0 119 94 119 10) - ElementLine(94 119 94 0 10) - ElementLine(94 0 0 0 10) - # 1st side, 1st pin - Pad(21 91 - 21 97 - 29 - "2" "2" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(72 91 - 72 97 - 29 - "3" "3" 0x100) - # 2nd side, 3rd pin - # 2nd side, 2nd pin - Pad(47 21 - 47 27 - 29 - "1" "1" 0x100) - # 2nd side, 1st pin - Mark(21 94) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT323D SMT diode (pin 1 is cathode) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 17.5mil + -20.5mil + -17.5mil + -20.5mil + -17.5mil + 20.5mil + 17.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 14.5mil + -17.5mil + -14.5mil + -17.5mil + -14.5mil + 17.5mil + 14.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 32.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 83.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 58.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 105.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 105.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 125.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 2.087033mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.477433mm + x2 = 1.477433mm + ha:flags { + } + y1 = 2.087033mm + } + ha:line.25 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 32.5mil + x2 = 1.8255mm + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 32.5mil + x2 = 32.5mil + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = bi96z3ATUk0N6MnhWkkAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT325.fp =================================================================== --- trunk/pcblib/smd/SOT325.fp (revision 27120) +++ trunk/pcblib/smd/SOT325.fp (revision 27121) @@ -1,40 +1,313 @@ -##from:pcb -##for:transistor -##for:stabilizer -##for:linear - - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -# alias sc70-5 -Element(0x00 "SMT transistor, 5 pins" "" "SOT325" 100 0 3 100 0x00) -( - ElementLine(0 0 0 119 10) - ElementLine(0 119 80 119 10) - ElementLine(80 119 80 0 10) - ElementLine(80 0 0 0 10) - # 1st side, 1st pin - Pad(14 84 - 14 104 - 15 "1" "1" 0x100) - # 1st side, 2nd pin - # 1st side, 3rd pin - Pad(65 84 - 65 104 - 15 "2" "2" 0x100) - # 2nd side, 3rd pin - Pad(65 14 - 65 34 - 15 "3" "3" 0x100) - # 2nd side, 2nd pin - Pad(40 14 - 40 34 - 15 "4" "4" 0x100) - # 2nd side, 1st pin - Pad(14 14 - 14 34 - 15 "5" "5" 0x100) - Mark(14 94) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT325 SMT transistor, 5 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 10.5mil + -20.5mil + -10.5mil + -20.5mil + -10.5mil + 20.5mil + 10.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 51.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 111.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.24 { + clearance = 0.0 + y2 = 63.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 51.1mil + x2 = 51.1mil + ha:flags { + } + y1 = 63.5mil + } + ha:line.27 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.30 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.33 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 25.5mil + x2 = 1.6477mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = 8pGeYOC0HklbCnV30cwAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT326.fp =================================================================== --- trunk/pcblib/smd/SOT326.fp (revision 27120) +++ trunk/pcblib/smd/SOT326.fp (revision 27121) @@ -1,42 +1,331 @@ -##from:pcb -##for:transistor -##for:stabilizer -##for:linear - - # 78 for SOT23 - # 82 for SOT23 - # 41 for SOT23 - # 34 for SOT23, 24 for SOT25 -# alias sc70-6 -Element(0x00 "SMT transistor, 6 pins" "" "SOT326" 100 0 3 100 0x00) -( - ElementLine(0 0 0 119 10) - ElementLine(0 119 80 119 10) - ElementLine(80 119 80 0 10) - ElementLine(80 0 0 0 10) - # 1st side, 1st pin - Pad(14 84 - 14 104 - 15 "1" "1" 0x100) - # 1st side, 2nd pin - Pad(40 84 - 40 104 - 15 "2" "2" 0x100) - # 1st side, 3rd pin - Pad(65 84 - 65 104 - 15 "3" "3" 0x100) - # 2nd side, 3rd pin - Pad(65 14 - 65 34 - 15 "4" "4" 0x100) - # 2nd side, 2nd pin - Pad(40 14 - 40 34 - 15 "5" "5" 0x100) - # 2nd side, 1st pin - Pad(14 14 - 14 34 - 15 "6" "6" 0x100) - Mark(14 94) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT326 SMT transistor, 6 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 10.5mil + -20.5mil + -10.5mil + -20.5mil + -10.5mil + 20.5mil + 10.5mil + 20.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 7.5mil + -17.5mil + -7.5mil + -17.5mil + -7.5mil + 17.5mil + 7.5mil + 17.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 51.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 105.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 0 + xmirror = 0 + x = 76.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.23 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 0 + xmirror = 0 + x = 51.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.24 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 0 + xmirror = 0 + x = 25.5mil + rot = 0.000000 + y = 35.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 130.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 11.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 91.5mil + ha:flags { + } + y1 = 130.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 11.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 91.5mil + x2 = 11.5mil + ha:flags { + } + y1 = 11.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 111.5mil + y = 11.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.25 { + clearance = 0.0 + y2 = 70.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.299633mm + x2 = 1.299633mm + ha:flags { + } + y1 = 70.5mil + } + ha:line.28 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.31 { + clearance = 0.0 + y2 = 3.6797mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 25.5mil + x2 = 25.5mil + ha:flags { + } + y1 = 105.5mil + } + ha:line.34 { + clearance = 0.0 + y2 = 105.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 25.5mil + x2 = 1.6477mm + ha:flags { + } + y1 = 105.5mil + } + } + ha:combining { + } + } + } + } + uid = 6Bv/QN6fnFrzfC7tuHoAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/SOT89.fp =================================================================== --- trunk/pcblib/smd/SOT89.fp (revision 27120) +++ trunk/pcblib/smd/SOT89.fp (revision 27121) @@ -1,31 +1,363 @@ -##from:pcb -##for:transistor -##for:stabilizer -##for:linear - -Element(0x00 "SMT transistor, 4 pins" "" "SOT89" 203 0 3 100 0x00) -( - ElementLine(0 0 0 207 10) - ElementLine(0 207 183 207 10) - ElementLine(183 207 183 0 10) - ElementLine(183 0 0 0 10) - # 1st pin on pin side - Pad(30 152 - 30 176 - 37 - "1" "1" 0x100) - Pad(91 152 - 91 176 - 37 - "2" "2" 0x100) - # last pin on pin side - Pad(152 152 - 152 176 - 37 - "3" "3" 0x100) - # extra wide pin on opposite side - Pad(121 42 - 61 42 - 61 "4" "4" 0x100) - Mark(30 164) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = SOT89 SMT transistor, 4 pins + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 18.5mil + -30.5mil + -18.5mil + -30.5mil + -18.5mil + 30.5mil + 18.5mil + 30.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 21.5mil + -33.5mil + -21.5mil + -33.5mil + -21.5mil + 33.5mil + 21.5mil + 33.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 18.5mil + -30.5mil + -18.5mil + -30.5mil + -18.5mil + 30.5mil + 18.5mil + 30.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 60.5mil + 30.5mil + 60.5mil + -30.5mil + -60.5mil + -30.5mil + -60.5mil + 30.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 63.5mil + 33.5mil + 63.5mil + -33.5mil + -63.5mil + -33.5mil + -63.5mil + 33.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 60.5mil + 30.5mil + 60.5mil + -30.5mil + -60.5mil + -30.5mil + -60.5mil + 30.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 36.5mil + rot = 0.000000 + y = 170.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 97.5mil + rot = 0.000000 + y = 170.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 158.5mil + rot = 0.000000 + y = 170.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.22 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 97.5mil + rot = 0.000000 + y = 48.5mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 213.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 6.5mil + x2 = 6.5mil + ha:flags { + } + y1 = 6.5mil + } + ha:line.10 { + clearance = 0.0 + y2 = 213.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 6.5mil + x2 = 189.5mil + ha:flags { + } + y1 = 213.5mil + } + ha:line.13 { + clearance = 0.0 + y2 = 6.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 189.5mil + x2 = 189.5mil + ha:flags { + } + y1 = 213.5mil + } + ha:line.16 { + clearance = 0.0 + y2 = 6.5mil + thickness = 10.0mil + ha:attributes { + } + x1 = 189.5mil + x2 = 6.5mil + ha:flags { + } + y1 = 6.5mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 209.5mil + y = 6.5mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 140.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 97.5mil + x2 = 97.5mil + ha:flags { + } + y1 = 140.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 170.5mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 36.5mil + x2 = 36.5mil + ha:flags { + } + y1 = 170.5mil + } + ha:line.29 { + clearance = 0.0 + y2 = 5.3307mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 36.5mil + x2 = 36.5mil + ha:flags { + } + y1 = 170.5mil + } + ha:line.32 { + clearance = 0.0 + y2 = 170.5mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 36.5mil + x2 = 1.9271mm + ha:flags { + } + y1 = 170.5mil + } + } + ha:combining { + } + } + } + } + uid = nhFNna5oWAROPukkSGYAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/TANT_A.fp =================================================================== --- trunk/pcblib/smd/TANT_A.fp (revision 27120) +++ trunk/pcblib/smd/TANT_A.fp (revision 27121) @@ -1,21 +1,283 @@ -##from:pcb -##for:capacitor -##for:tantal - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "Tantalum SMT capacitor (pin 1 is +)" "" "TANT_A" 0 0 106 0 3 100 0x00) -( - ElementLine(-96 -43 -96 43 20) - ElementLine(-96 43 -72 55 10) - ElementLine(-72 55 86 55 10) - ElementLine(86 55 86 -55 10) - ElementLine(86 -55 -72 -55 10) - ElementLine(-72 -55 -96 -43 10) - Pad(-50 -18 - -50 18 - 49 20 55 "1" "1" 0x00000100) - Pad(50 -18 - 50 18 - 49 20 55 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_A Tantalum SMT capacitor (pin 1 is +) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 24.5mil + -42.5mil + -24.5mil + -42.5mil + -24.5mil + 42.5mil + 24.5mil + 42.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 27.5mil + -45.5mil + -27.5mil + -45.5mil + -27.5mil + 45.5mil + 27.5mil + 45.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 24.5mil + -42.5mil + -24.5mil + -42.5mil + -24.5mil + 42.5mil + 24.5mil + 42.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.423183mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 3.963183mm + rot = 0.000000 + y = 1.524392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 2.616592mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.432192mm + } + ha:line.10 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.864383mm + ha:flags { + } + y1 = 2.616592mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.921392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.864383mm + x2 = 4.877583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.877583mm + x2 = 4.877583mm + ha:flags { + } + y1 = 2.921392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.877583mm + x2 = 0.864383mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.864383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 5.385583mm + y = 1.524392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.693183mm + x2 = 3.693183mm + ha:flags { + } + y1 = 1.524392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 2.524392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 1.524392mm + } + } + ha:combining { + } + } + } + } + uid = 26/rwM0jSKi02rxdXecAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/TANT_B.fp =================================================================== --- trunk/pcblib/smd/TANT_B.fp (revision 27120) +++ trunk/pcblib/smd/TANT_B.fp (revision 27121) @@ -1,21 +1,283 @@ -##from:pcb -##for:capacitor -##for:tantal - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "Tantalum SMT capacitor (pin 1 is +)" "" "TANT_B" 0 0 132 0 3 100 0x00) -( - ElementLine(-122 -77 -122 77 20) - ElementLine(-122 77 -87 99 10) - ElementLine(-87 99 112 99 10) - ElementLine(112 99 112 -99 10) - ElementLine(112 -99 -87 -99 10) - ElementLine(-87 -99 -122 -77 10) - Pad(-55 -41 - -55 41 - 71 20 77 "1" "1" 0x00000100) - Pad(55 -41 - 55 41 - 71 20 77 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_B Tantalum SMT capacitor (pin 1 is +) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 35.5mil + -76.5mil + -35.5mil + -76.5mil + -35.5mil + 76.5mil + 35.5mil + 76.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 38.5mil + -79.5mil + -38.5mil + -79.5mil + -38.5mil + 79.5mil + 38.5mil + 79.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 35.5mil + -76.5mil + -35.5mil + -76.5mil + -35.5mil + 76.5mil + 35.5mil + 76.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.956583mm + rot = 0.000000 + y = 2.641992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 4.750583mm + rot = 0.000000 + y = 2.641992mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 4.597792mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.686192mm + } + ha:line.10 { + clearance = 0.0 + y2 = 5.156592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.143783mm + ha:flags { + } + y1 = 4.597792mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.156592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.143783mm + x2 = 6.198383mm + ha:flags { + } + y1 = 5.156592mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.198383mm + x2 = 6.198383mm + ha:flags { + } + y1 = 5.156592mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.198383mm + x2 = 1.143783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.686192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.143783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.706383mm + y = 2.641992mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 2.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.353583mm + x2 = 3.353583mm + ha:flags { + } + y1 = 2.641992mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.353583mm + x2 = 3.353583mm + ha:flags { + } + y1 = 2.641992mm + } + ha:line.33 { + clearance = 0.0 + y2 = 2.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.353583mm + x2 = 4.353583mm + ha:flags { + } + y1 = 2.641992mm + } + ha:line.36 { + clearance = 0.0 + y2 = 3.641992mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.353583mm + x2 = 3.353583mm + ha:flags { + } + y1 = 2.641992mm + } + } + ha:combining { + } + } + } + } + uid = z+x6iElAGsr55qcSOkgAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/TANT_C.fp =================================================================== --- trunk/pcblib/smd/TANT_C.fp (revision 27120) +++ trunk/pcblib/smd/TANT_C.fp (revision 27121) @@ -1,21 +1,283 @@ -##from:pcb -##for:capacitor -##for:tantal - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "Tantalum SMT capacitor (pin 1 is +)" "" "TANT_C" 0 0 188 0 3 100 0x00) -( - ElementLine(-178 -87 -178 87 20) - ElementLine(-178 87 -130 112 10) - ElementLine(-130 112 168 112 10) - ElementLine(168 112 168 -112 10) - ElementLine(168 -112 -130 -112 10) - ElementLine(-130 -112 -178 -87 10) - Pad(-94 -39 - -94 39 - 97 20 103 "1" "1" 0x00000100) - Pad(94 -39 - 94 39 - 97 20 103 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_C Tantalum SMT capacitor (pin 1 is +) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 48.5mil + -87.5mil + -48.5mil + -87.5mil + -48.5mil + 87.5mil + 48.5mil + 87.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 51.5mil + -90.5mil + -51.5mil + -90.5mil + -51.5mil + 90.5mil + 51.5mil + 90.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 48.5mil + -87.5mil + -48.5mil + -87.5mil + -48.5mil + 87.5mil + 48.5mil + 87.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.388383mm + rot = 0.000000 + y = 2.972192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 7.163583mm + rot = 0.000000 + y = 2.972192mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 5.181992mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.762392mm + } + ha:line.10 { + clearance = 0.0 + y2 = 5.816992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.473983mm + ha:flags { + } + y1 = 5.181992mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.816992mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.473983mm + x2 = 9.043183mm + ha:flags { + } + y1 = 5.816992mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 9.043183mm + x2 = 9.043183mm + ha:flags { + } + y1 = 5.816992mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 9.043183mm + x2 = 1.473983mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.762392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.473983mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 9.551183mm + y = 2.972192mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 2.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.775983mm + x2 = 4.775983mm + ha:flags { + } + y1 = 2.972192mm + } + ha:line.30 { + clearance = 0.0 + y2 = 2.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.775983mm + x2 = 4.775983mm + ha:flags { + } + y1 = 2.972192mm + } + ha:line.33 { + clearance = 0.0 + y2 = 2.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.775983mm + x2 = 5.775983mm + ha:flags { + } + y1 = 2.972192mm + } + ha:line.36 { + clearance = 0.0 + y2 = 3.972192mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.775983mm + x2 = 4.775983mm + ha:flags { + } + y1 = 2.972192mm + } + } + ha:combining { + } + } + } + } + uid = JkGYP/uNTLhwqZKit+sAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/TANT_D.fp =================================================================== --- trunk/pcblib/smd/TANT_D.fp (revision 27120) +++ trunk/pcblib/smd/TANT_D.fp (revision 27121) @@ -1,21 +1,283 @@ -##from:pcb -##for:capacitor -##for:tantal - - # how much to grow the pads by for soldermask - # clearance from planes -Element(0x00 "Tantalum SMT capacitor (pin 1 is +)" "" "TANT_D" 0 0 229 0 3 100 0x00) -( - ElementLine(-219 -117 -219 117 20) - ElementLine(-219 117 -158 150 10) - ElementLine(-158 150 209 150 10) - ElementLine(209 150 209 -150 10) - ElementLine(209 -150 -158 -150 10) - ElementLine(-158 -150 -219 -117 10) - Pad(-115 -56 - -115 56 - 123 20 129 "1" "1" 0x00000100) - Pad(115 -56 - 115 56 - 123 20 129 "2" "2" 0x00000100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TANT_D Tantalum SMT capacitor (pin 1 is +) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 61.5mil + -117.5mil + -61.5mil + -117.5mil + -61.5mil + 117.5mil + 61.5mil + 117.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 1.638299mm + -3.060699mm + -1.638299mm + -3.060699mm + -1.638299mm + 3.060699mm + 1.638299mm + 3.060699mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 61.5mil + -117.5mil + -61.5mil + -117.5mil + -61.5mil + 117.5mil + 61.5mil + 117.5mil + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.25 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.896383mm + rot = 0.000000 + y = 3.937392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + ha:padstack_ref.26 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 8.738383mm + rot = 0.000000 + y = 3.937392mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 10.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.7 { + clearance = 0.0 + y2 = 6.909192mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.965592mm + } + ha:line.10 { + clearance = 0.0 + y2 = 7.747392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 1.804183mm + ha:flags { + } + y1 = 6.909192mm + } + ha:line.13 { + clearance = 0.0 + y2 = 7.747392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.804183mm + x2 = 11.125983mm + ha:flags { + } + y1 = 7.747392mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.125983mm + x2 = 11.125983mm + ha:flags { + } + y1 = 7.747392mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.125983mm + x2 = 1.804183mm + ha:flags { + } + y1 = 0.127392mm + } + ha:line.22 { + clearance = 0.0 + y2 = 0.965592mm + thickness = 10.0mil + ha:attributes { + } + x1 = 1.804183mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.127392mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.633983mm + y = 3.937392mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.27 { + clearance = 0.0 + y2 = 3.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.817383mm + x2 = 5.817383mm + ha:flags { + } + y1 = 3.937392mm + } + ha:line.30 { + clearance = 0.0 + y2 = 3.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.817383mm + x2 = 5.817383mm + ha:flags { + } + y1 = 3.937392mm + } + ha:line.33 { + clearance = 0.0 + y2 = 3.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.817383mm + x2 = 6.817383mm + ha:flags { + } + y1 = 3.937392mm + } + ha:line.36 { + clearance = 0.0 + y2 = 4.937392mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.817383mm + x2 = 5.817383mm + ha:flags { + } + y1 = 3.937392mm + } + } + ha:combining { + } + } + } + } + uid = aZrmxsPqy0XUIP+9J8kAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/smd/minimelf.fp =================================================================== --- trunk/pcblib/smd/minimelf.fp (revision 27120) +++ trunk/pcblib/smd/minimelf.fp (revision 27121) @@ -1,12 +1,233 @@ -##from:repo.hu/projects/openhw -##for:diode - - -Element["" "" "D101" "" 145669 141732 -3720 -2087 0 70 ""] -( - Pad[7087 -984 7087 984 5118 5000 7618 "" "1" "square"] - Pad[-7087 -984 -7087 984 5118 5000 7618 "" "2" "square"] - ElementLine [-3937 -3150 3937 -3150 787] - ElementLine [-3937 3150 3937 3150 787] - - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = minimelf + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.0 + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.899922mm + -0.649986mm + -0.899922mm + -0.649986mm + 0.899922mm + 0.649986mm + 0.899922mm + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 38.09mil + -1.217422mm + -38.09mil + -1.217422mm + -38.09mil + 1.217422mm + 38.09mil + 1.217422mm + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + 0.649986mm + -0.899922mm + -0.649986mm + -0.899922mm + -0.649986mm + 0.899922mm + 0.649986mm + 0.899922mm + } + ha:layer_mask { + top = 1 + paste = 1 + } + ha:combining { + auto = 1 + } + } + } + hbottom = 0 + hplated = 0 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + } + proto = 0 + xmirror = 0 + x = 1.52756in + rot = 0.000000 + y = 35.999928mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + } + proto = 0 + xmirror = 0 + x = 1.38582in + rot = 0.000000 + y = 35.999928mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 1.38582in + thickness = 7.87mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 37.999924mm + ha:flags { + } + y1 = 1.38582in + } + ha:line.12 { + clearance = 0.0 + y2 = 1.44882in + thickness = 7.87mil + ha:attributes { + } + x1 = 35.999928mm + x2 = 37.999924mm + ha:flags { + } + y1 = 1.44882in + } + ha:text.6 { + scale = 70 + ha:attributes { + } + x = 1.41949in + y = 35.46983mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.45669in + x2 = 1.45669in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.18 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.45669in + x2 = 1.45669in + ha:flags { + } + y1 = 35.999928mm + } + ha:line.21 { + clearance = 0.0 + y2 = 35.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.45669in + x2 = 35.999926mm + ha:flags { + } + y1 = 35.999928mm + } + ha:line.24 { + clearance = 0.0 + y2 = 34.999928mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.45669in + x2 = 1.45669in + ha:flags { + } + y1 = 35.999928mm + } + } + ha:combining { + } + } + } + } + uid = kBcrKTtaM9kTfl/PmukAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HC49.fp =================================================================== --- trunk/pcblib/tru-hole/HC49.fp (revision 27120) +++ trunk/pcblib/tru-hole/HC49.fp (revision 27121) @@ -1,13 +1,384 @@ -##from:pcb -##for:crystal -##for:xtal -Element(0x00 "Crystals" "" "HC49" 0 -60 0 100 0x00) -( - Pin(50 50 60 28 "1" 0x101) - Pin(250 50 60 28 "2" 0x01) - ElementLine(50 0 250 0 20) - ElementArc(250 50 50 50 90 180 20) - ElementLine(250 100 50 100 20) - ElementArc(50 50 50 50 270 180 20) - Mark(50 50) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49 Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 28.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 28.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 60.2mil + rot = 0.000000 + y = 60.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 6.60908mm + rot = 0.000000 + y = 60.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 60.2mil + x2 = 6.60908mm + ha:flags { + } + y1 = 0.25908mm + } + ha:line.13 { + clearance = 0.0 + y2 = 110.2mil + thickness = 20.0mil + ha:attributes { + } + x1 = 6.60908mm + x2 = 60.2mil + ha:flags { + } + y1 = 110.2mil + } + ha:arc.12 { + astart = 90 + thickness = 20.0mil + width = 50.0mil + height = 50.0mil + ha:attributes { + } + x = 6.60908mm + y = 60.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.16 { + astart = 270 + thickness = 20.0mil + width = 50.0mil + height = 50.0mil + ha:attributes { + } + x = 60.2mil + y = 60.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.17 { + clearance = 0.0 + y2 = 60.2mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 4.06908mm + x2 = 4.06908mm + ha:flags { + } + y1 = 60.2mil + } + ha:line.20 { + clearance = 0.0 + y2 = 60.2mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 60.2mil + x2 = 60.2mil + ha:flags { + } + y1 = 60.2mil + } + ha:line.23 { + clearance = 0.0 + y2 = 60.2mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 60.2mil + x2 = 2.52908mm + ha:flags { + } + y1 = 60.2mil + } + ha:line.26 { + clearance = 0.0 + y2 = 2.52908mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 60.2mil + x2 = 60.2mil + ha:flags { + } + y1 = 60.2mil + } + } + ha:combining { + } + } + } + } + uid = K5zHll9kWHYvk+K8WxUAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HC49U.fp =================================================================== --- trunk/pcblib/tru-hole/HC49U.fp (revision 27120) +++ trunk/pcblib/tru-hole/HC49U.fp (revision 27121) @@ -1,13 +1,384 @@ -##from:pcb -##for:crystal -##for:xtal -Element(0x00 "Crystals" "" "HC49U" 0 -60 0 100 0x00) -( - Pin(121 91 60 32 "1" 0x101) - Pin(313 91 60 32 "2" 0x01) - ElementLine(91 0 344 0 20) - ElementArc(344 91 91 91 90 180 20) - ElementLine(344 183 91 183 20) - ElementArc(91 91 91 91 270 180 20) - Mark(121 91) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49U Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.33248mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.20928mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 101.2mil + x2 = 8.99668mm + ha:flags { + } + y1 = 0.25908mm + } + ha:line.13 { + clearance = 0.0 + y2 = 4.90728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 8.99668mm + x2 = 101.2mil + ha:flags { + } + y1 = 4.90728mm + } + ha:arc.12 { + astart = 90 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 8.99668mm + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.16 { + astart = 270 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 101.2mil + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.17 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.77088mm + x2 = 5.77088mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.20 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.23 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.33248mm + x2 = 4.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.26 { + clearance = 0.0 + y2 = 3.57048mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + } + ha:combining { + } + } + } + } + uid = IU81ifHVXky8kV3JzMYAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HC49UH.fp =================================================================== --- trunk/pcblib/tru-hole/HC49UH.fp (revision 27120) +++ trunk/pcblib/tru-hole/HC49UH.fp (revision 27121) @@ -1,13 +1,380 @@ -##from:pcb -##for:crystal -##for:xtal -Element(0x00 "Crystals" "" "HC49UH" 0 -60 0 100 0x00) -( - Pin(121 615 60 32 "1" 0x101) - Pin(313 615 60 32 "2" 0x01) - ElementLine(0 0 435 0 20) - ElementLine(435 0 435 515 20) - ElementLine(435 515 0 515 20) - ElementLine(0 515 0 0 20) - Mark(121 615) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49UH Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.328183mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.204983mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = -1.269217mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.21 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.328183mm + x2 = 4.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 16.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + } + ha:combining { + } + } + } + } + uid = d0kIIEVd9hKmfkrR2JwAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HC49U_3.fp =================================================================== --- trunk/pcblib/tru-hole/HC49U_3.fp (revision 27120) +++ trunk/pcblib/tru-hole/HC49U_3.fp (revision 27121) @@ -1,14 +1,403 @@ -##from:pcb -##for:crystal -##for:xtal -Element(0x00 "Crystals" "" "HC49U_3" 0 -60 0 100 0x00) -( - Pin(121 91 60 32 "1" 0x101) - Pin(217 91 60 32 "2" 0x01) - Pin(313 91 60 32 "3" 0x01) - ElementLine(91 0 344 0 20) - ElementArc(344 91 91 91 90 180 20) - ElementLine(344 183 91 183 20) - ElementArc(91 91 91 91 270 180 20) - Mark(121 91) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + value = + footprint = HC49U_3 Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.33248mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.77088mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 8.20928mm + rot = 0.000000 + y = 101.2mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 101.2mil + x2 = 8.99668mm + ha:flags { + } + y1 = 0.25908mm + } + ha:line.14 { + clearance = 0.0 + y2 = 4.90728mm + thickness = 20.0mil + ha:attributes { + } + x1 = 8.99668mm + x2 = 101.2mil + ha:flags { + } + y1 = 4.90728mm + } + ha:arc.13 { + astart = 90 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 8.99668mm + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.17 { + astart = 270 + thickness = 20.0mil + width = 91.0mil + height = 91.0mil + ha:attributes { + } + x = 101.2mil + y = 101.2mil + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.18 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.77088mm + x2 = 5.77088mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.21 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.24 { + clearance = 0.0 + y2 = 3.57048mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.33248mm + x2 = 3.33248mm + ha:flags { + } + y1 = 101.2mil + } + ha:line.27 { + clearance = 0.0 + y2 = 101.2mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.33248mm + x2 = 4.33248mm + ha:flags { + } + y1 = 101.2mil + } + } + ha:combining { + } + } + } + } + uid = yz1V4HtC1LifNPNIfzcAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HC49U_3H.fp =================================================================== --- trunk/pcblib/tru-hole/HC49U_3H.fp (revision 27120) +++ trunk/pcblib/tru-hole/HC49U_3H.fp (revision 27121) @@ -1,14 +1,398 @@ -##from:pcb -##for:crystal -##for:xtal -Element(0x00 "Crystals" "" "HC49U_3H" 0 -60 0 100 0x00) -( - Pin(121 615 60 32 "1" 0x101) - Pin(217 615 60 32 "2" 0x01) - Pin(313 615 60 32 "3" 0x01) - ElementLine(0 0 435 0 20) - ElementLine(435 0 435 515 20) - ElementLine(435 515 0 515 20) - ElementLine(0 515 0 0 20) - Mark(121 615) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC49U_3H Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.0mil + -30.0mil + 30.0mil + -30.0mil + 30.0mil + 30.0mil + -30.0mil + 30.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -33.0mil + -33.0mil + 33.0mil + -33.0mil + 33.0mil + 33.0mil + -33.0mil + 33.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 32.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 60.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 66.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.328183mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.766583mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 8.204983mm + rot = 0.000000 + y = 15.875783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 11.303783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 13.335783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.303783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 13.335783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = -1.269217mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.766583mm + x2 = 5.766583mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 16.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.328183mm + x2 = 3.328183mm + ha:flags { + } + y1 = 15.875783mm + } + ha:line.31 { + clearance = 0.0 + y2 = 15.875783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.328183mm + x2 = 4.328183mm + ha:flags { + } + y1 = 15.875783mm + } + } + ha:combining { + } + } + } + } + uid = VTNBJgXKGQ7phRTbFDUAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HC51U.fp =================================================================== --- trunk/pcblib/tru-hole/HC51U.fp (revision 27120) +++ trunk/pcblib/tru-hole/HC51U.fp (revision 27121) @@ -1,13 +1,384 @@ -##from:pcb -##for:crystal -##for:xtal -Element(0x00 "Crystals" "" "HC51U" 0 -60 0 100 0x00) -( - Pin(136 176 80 40 "1" 0x101) - Pin(621 176 80 40 "2" 0x01) - ElementLine(176 0 581 0 20) - ElementArc(581 176 176 176 90 180 20) - ElementLine(581 352 176 352 20) - ElementArc(176 176 176 176 270 180 20) - Mark(136 176) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC51U Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.71348mm + rot = 0.000000 + y = 4.72948mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 631.2mil + rot = 0.000000 + y = 4.72948mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.25908mm + thickness = 20.0mil + ha:attributes { + } + x1 = 4.72948mm + x2 = 591.2mil + ha:flags { + } + y1 = 0.25908mm + } + ha:line.13 { + clearance = 0.0 + y2 = 9.19988mm + thickness = 20.0mil + ha:attributes { + } + x1 = 591.2mil + x2 = 4.72948mm + ha:flags { + } + y1 = 9.19988mm + } + ha:arc.12 { + astart = 90 + thickness = 20.0mil + width = 176.0mil + height = 176.0mil + ha:attributes { + } + x = 591.2mil + y = 4.72948mm + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:arc.16 { + astart = 270 + thickness = 20.0mil + width = 176.0mil + height = 176.0mil + ha:attributes { + } + x = 4.72948mm + y = 4.72948mm + adelta = 180 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.25908mm + y = -1.26492mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.17 { + clearance = 0.0 + y2 = 4.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 9.87298mm + x2 = 9.87298mm + ha:flags { + } + y1 = 4.72948mm + } + ha:line.20 { + clearance = 0.0 + y2 = 4.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.71348mm + x2 = 3.71348mm + ha:flags { + } + y1 = 4.72948mm + } + ha:line.23 { + clearance = 0.0 + y2 = 4.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.71348mm + x2 = 4.71348mm + ha:flags { + } + y1 = 4.72948mm + } + ha:line.26 { + clearance = 0.0 + y2 = 5.72948mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.71348mm + x2 = 3.71348mm + ha:flags { + } + y1 = 4.72948mm + } + } + ha:combining { + } + } + } + } + uid = +FiihmhDvVGqTubuzyoAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HC51UH.fp =================================================================== --- trunk/pcblib/tru-hole/HC51UH.fp (revision 27120) +++ trunk/pcblib/tru-hole/HC51UH.fp (revision 27121) @@ -1,13 +1,380 @@ -##from:pcb -##for:crystal -##for:xtal -Element(0x00 "Crystals" "" "HC51UH" 0 -60 0 100 0x00) -( - Pin(136 975 80 40 "1" 0x101) - Pin(621 975 80 40 "2" 0x01) - ElementLine(0 0 757 0 20) - ElementLine(757 0 757 775 20) - ElementLine(757 775 0 775 20) - ElementLine(0 775 0 0 20) - Mark(136 975) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HC51UH Crystals + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 3.709183mm + rot = 0.000000 + y = 25.019783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 16.028183mm + rot = 0.000000 + y = 25.019783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 19.482583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 19.939783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 19.482583mm + x2 = 19.482583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 19.939783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 19.482583mm + x2 = 0.254783mm + ha:flags { + } + y1 = 19.939783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 19.939783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = -1.269217mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.21 { + clearance = 0.0 + y2 = 25.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 9.868683mm + x2 = 9.868683mm + ha:flags { + } + y1 = 25.019783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 25.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.709183mm + x2 = 3.709183mm + ha:flags { + } + y1 = 25.019783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 25.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.709183mm + x2 = 4.709183mm + ha:flags { + } + y1 = 25.019783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 26.019783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.709183mm + x2 = 3.709183mm + ha:flags { + } + y1 = 25.019783mm + } + } + ha:combining { + } + } + } + } + uid = sAYDhniTNYN3q3leLhwAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/HEPTAWATT.fp =================================================================== --- trunk/pcblib/tru-hole/HEPTAWATT.fp (revision 27120) +++ trunk/pcblib/tru-hole/HEPTAWATT.fp (revision 27121) @@ -1,20 +1,506 @@ -##from:pcb -##for:IC -Element(0x00 "Power IC, as in MULTIWATT15" "" "HEPTAWATT" 469 50 3 100 0x00) -( - Pin(54 310 90 60 "1" 0x101) - Pin(104 110 90 60 "2" 0x01) - Pin(154 310 90 60 "3" 0x01) - Pin(204 110 90 60 "4" 0x01) - Pin(254 310 90 60 "5" 0x01) - Pin(304 110 90 60 "6" 0x01) - Pin(354 310 90 60 "7" 0x01) - ElementLine(0 0 0 189 20) - ElementLine(0 189 409 189 20) - ElementLine(409 189 409 0 20) - ElementLine(409 0 0 0 20) - ElementLine(0 50 409 50 10) - ElementLine(129 0 129 50 10) - ElementLine(279 0 279 50 10) - Mark(54 249) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = HEPTAWATT Power IC, as in MULTIWATT15 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.626383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 2.896383mm + rot = 0.000000 + y = 3.048783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 4.166383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 5.436383mm + rot = 0.000000 + y = 3.048783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 6.706383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 7.976383mm + rot = 0.000000 + y = 3.048783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 9.246383mm + rot = 0.000000 + y = 8.128783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.14 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.17 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.20 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.23 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.26 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.29 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.531383mm + x2 = 3.531383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.32 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.341383mm + x2 = 7.341383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 12.167383mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.35 { + clearance = 0.0 + y2 = 5.95164mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.436383mm + x2 = 5.436383mm + ha:flags { + } + y1 = 5.95164mm + } + ha:line.38 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.626383mm + x2 = 1.626383mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.41 { + clearance = 0.0 + y2 = 7.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.626383mm + x2 = 1.626383mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.44 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.626383mm + x2 = 2.626383mm + ha:flags { + } + y1 = 6.579383mm + } + } + ha:combining { + } + } + } + } + uid = iVCWAJKpIXjZ4LV4utoAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/LED3.fp =================================================================== --- trunk/pcblib/tru-hole/LED3.fp (revision 27120) +++ trunk/pcblib/tru-hole/LED3.fp (revision 27121) @@ -1,19 +1,388 @@ -##from:pcb -##for:crystal -##for:led -##ref:http://www.lumex.com -Element(0x00 "LED, size in mm (pin 1 is +, 2 is -)" "" "LED3" 100 70 0 100 0x00) -( -# typical LED is 0.5 mm or 0.020" square pin. See for example -# http://www.lumex.com and part number SSL-LX3054LGD. -# 0.020" square is 0.0288" diagonal. A number 57 drill is -# 0.043" which should be enough. a 65 mil pad gives 11 mils -# of annular ring. - Pin(-50 0 65 43 "1" 0x101) - Pin(50 0 65 43 "2" 0x01) - ElementArc(0 0 59 59 45 90 10) - ElementArc(0 0 59 59 225 90 10) - ElementArc(0 0 79 79 45 90 10) - ElementArc(0 0 79 79 225 90 10) - Mark(0 0) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = LED3, 3mm LED (pin 1 is +, 2 is -) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 50.5mil + rot = 0.000000 + y = 2.13614mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 150.5mil + rot = 0.000000 + y = 2.13614mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:arc.9 { + astart = 45 + thickness = 10.0mil + width = 59.0mil + height = 59.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.10 { + astart = 225 + thickness = 10.0mil + width = 59.0mil + height = 59.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.11 { + astart = 45 + thickness = 10.0mil + width = 79.0mil + height = 79.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.12 { + astart = 225 + thickness = 10.0mil + width = 79.0mil + height = 79.0mil + ha:attributes { + } + x = 100.5mil + y = 2.13614mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 200.5mil + y = 3.91414mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.13 { + clearance = 0.0 + y2 = 2.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 100.5mil + x2 = 100.5mil + ha:flags { + } + y1 = 2.13614mm + } + ha:line.16 { + clearance = 0.0 + y2 = 2.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.5mil + x2 = 100.5mil + ha:flags { + } + y1 = 2.13614mm + } + ha:line.19 { + clearance = 0.0 + y2 = 2.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.5mil + x2 = 3.5527mm + ha:flags { + } + y1 = 2.13614mm + } + ha:line.22 { + clearance = 0.0 + y2 = 3.13614mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.5mil + x2 = 100.5mil + ha:flags { + } + y1 = 2.13614mm + } + } + ha:combining { + } + } + } + } + uid = AXOBLf2n2pEOmUoe7pcAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/LED5.fp =================================================================== --- trunk/pcblib/tru-hole/LED5.fp (revision 27120) +++ trunk/pcblib/tru-hole/LED5.fp (revision 27121) @@ -1,16 +1,360 @@ -##from:pcb -##for:led -##ref:http://www.lumex.com -Element(0x00 "LED, size in mm (pin 1 is +, 2 is -)" "" "LED5" 100 70 0 100 0x00) -( -# typical LED is 0.5 mm or 0.020" square pin. See for example -# http://www.lumex.com and part number SSL-LX3054LGD. -# 0.020" square is 0.0288" diagonal. A number 57 drill is -# 0.043" which should be enough. a 65 mil pad gives 11 mils -# of annular ring. - Pin(-50 0 65 43 "1" 0x101) - Pin(50 0 65 43 "2" 0x01) - ElementArc(0 0 118 118 0 360 10) - ElementArc(0 0 138 138 0 360 10) - Mark(0 0) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = LED5, 5mm LED (pin 1 is +, 2 is -) + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -32.5mil + -32.5mil + 32.5mil + -32.5mil + 32.5mil + 32.5mil + -32.5mil + 32.5mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.5mil + -35.5mil + 35.5mil + -35.5mil + 35.5mil + 35.5mil + -35.5mil + 35.5mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 43.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 65.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 71.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.36474mm + rot = 0.000000 + y = 3.63474mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 4.90474mm + rot = 0.000000 + y = 3.63474mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:arc.9 { + astart = 0 + thickness = 10.0mil + width = 118.0mil + height = 118.0mil + ha:attributes { + } + x = 3.63474mm + y = 3.63474mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:arc.10 { + astart = 0 + thickness = 10.0mil + width = 138.0mil + height = 138.0mil + ha:attributes { + } + x = 3.63474mm + y = 3.63474mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.17474mm + y = 5.41274mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 3.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.63474mm + x2 = 3.63474mm + ha:flags { + } + y1 = 3.63474mm + } + ha:line.14 { + clearance = 0.0 + y2 = 3.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 3.63474mm + x2 = 3.63474mm + ha:flags { + } + y1 = 3.63474mm + } + ha:line.17 { + clearance = 0.0 + y2 = 3.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 3.63474mm + x2 = 4.63474mm + ha:flags { + } + y1 = 3.63474mm + } + ha:line.20 { + clearance = 0.0 + y2 = 4.63474mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 3.63474mm + x2 = 3.63474mm + ha:flags { + } + y1 = 3.63474mm + } + } + ha:combining { + } + } + } + } + uid = hFGipNdgRBmeMBGUNCcAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/MULTIWATT11.fp =================================================================== --- trunk/pcblib/tru-hole/MULTIWATT11.fp (revision 27120) +++ trunk/pcblib/tru-hole/MULTIWATT11.fp (revision 27121) @@ -1,24 +1,578 @@ -##from:pcb -##for:IC -Element(0x00 "Power IC, as in MULTIWATT15" "" "MULTIWATT11" 860 50 3 100 0x00) -( - Pin(65 380 90 60 "1" 0x101) - Pin(132 180 90 60 "2" 0x01) - Pin(199 380 90 60 "3" 0x01) - Pin(266 180 90 60 "4" 0x01) - Pin(333 380 90 60 "5" 0x01) - Pin(400 180 90 60 "6" 0x01) - Pin(467 380 90 60 "7" 0x01) - Pin(534 180 90 60 "8" 0x01) - Pin(601 380 90 60 "9" 0x01) - Pin(668 180 90 60 "10" 0x01) - Pin(735 380 90 60 "11" 0x01) - ElementLine(0 0 0 200 20) - ElementLine(0 200 800 200 20) - ElementLine(800 200 800 0 20) - ElementLine(800 0 0 0 20) - ElementLine(0 50 800 50 10) - ElementLine(325 0 325 50 10) - ElementLine(475 0 475 50 10) - Mark(65 260) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MULTIWATT11 Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 1.905783mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 3.607583mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 5.309383mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 7.011183mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 8.712983mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 10.414783mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 12.116583mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.14 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 13.818383mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.15 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 15.520183mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.16 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 17.221983mm + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.17 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 18.923783mm + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.18 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.509783mm + x2 = 8.509783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.36 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 12.319783mm + x2 = 12.319783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 22.098783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.39 { + clearance = 0.0 + y2 = 7.597692mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 7.597692mm + } + ha:line.42 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.905783mm + x2 = 1.905783mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.45 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.905783mm + x2 = 1.905783mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.48 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.905783mm + x2 = 2.905783mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = OJr8gHIpKF/u/Cj9DHsAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/MULTIWATT15.fp =================================================================== --- trunk/pcblib/tru-hole/MULTIWATT15.fp (revision 27120) +++ trunk/pcblib/tru-hole/MULTIWATT15.fp (revision 27121) @@ -1,28 +1,650 @@ -##from:pcb -##for:IC -Element(0x00 "Power IC, as in MULTIWATT15" "" "MULTIWATT15" 860 50 3 100 0x00) -( - Pin(50 380 90 60 "1" 0x101) - Pin(100 180 90 60 "2" 0x01) - Pin(150 380 90 60 "3" 0x01) - Pin(200 180 90 60 "4" 0x01) - Pin(250 380 90 60 "5" 0x01) - Pin(300 180 90 60 "6" 0x01) - Pin(350 380 90 60 "7" 0x01) - Pin(400 180 90 60 "8" 0x01) - Pin(450 380 90 60 "9" 0x01) - Pin(500 180 90 60 "10" 0x01) - Pin(550 380 90 60 "11" 0x01) - Pin(600 180 90 60 "12" 0x01) - Pin(650 380 90 60 "13" 0x01) - Pin(700 180 90 60 "14" 0x01) - Pin(750 380 90 60 "15" 0x01) - ElementLine(0 0 0 200 20) - ElementLine(0 200 800 200 20) - ElementLine(800 200 800 0 20) - ElementLine(800 0 0 0 20) - ElementLine(0 50 800 50 10) - ElementLine(325 0 325 50 10) - ElementLine(475 0 475 50 10) - Mark(50 260) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MULTIWATT15 Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 63.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 113.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 163.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 213.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 263.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 313.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 363.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.14 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 413.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.15 { + smirror = 0 + ha:attributes { + term = 9 + name = 9 + } + proto = 1 + xmirror = 0 + x = 463.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.16 { + smirror = 0 + ha:attributes { + term = 10 + name = 10 + } + proto = 1 + xmirror = 0 + x = 513.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.17 { + smirror = 0 + ha:attributes { + term = 11 + name = 11 + } + proto = 1 + xmirror = 0 + x = 563.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.18 { + smirror = 0 + ha:attributes { + term = 12 + name = 12 + } + proto = 1 + xmirror = 0 + x = 613.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.19 { + smirror = 0 + ha:attributes { + term = 13 + name = 13 + } + proto = 1 + xmirror = 0 + x = 663.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.20 { + smirror = 0 + ha:attributes { + term = 14 + name = 14 + } + proto = 1 + xmirror = 0 + x = 713.0mil + rot = 0.000000 + y = 4.826783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.21 { + smirror = 0 + ha:attributes { + term = 15 + name = 15 + } + proto = 1 + xmirror = 0 + x = 763.0mil + rot = 0.000000 + y = 9.906783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.31 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 338.0mil + x2 = 338.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 488.0mil + x2 = 488.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 873.0mil + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.43 { + clearance = 0.0 + y2 = 7.536116mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 413.0mil + x2 = 413.0mil + ha:flags { + } + y1 = 7.536116mm + } + ha:line.46 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.49 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.52 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 63.0mil + x2 = 2.6002mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = Pvw9fS9mULpdZ07inAAAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/MULTIWATT8.fp =================================================================== --- trunk/pcblib/tru-hole/MULTIWATT8.fp (revision 27120) +++ trunk/pcblib/tru-hole/MULTIWATT8.fp (revision 27121) @@ -1,21 +1,524 @@ -##from:pcb -##for:IC -Element(0x00 "Power IC, as in MULTIWATT15" "" "MULTIWATT8" 860 50 3 100 0x00) -( - Pin(50 115 90 60 "1" 0x101) - Pin(150 115 90 60 "2" 0x01) - Pin(250 115 90 60 "3" 0x01) - Pin(350 115 90 60 "4" 0x01) - Pin(450 115 90 60 "5" 0x01) - Pin(550 115 90 60 "6" 0x01) - Pin(650 115 90 60 "7" 0x01) - Pin(750 115 90 60 "8" 0x01) - ElementLine(0 0 0 200 20) - ElementLine(0 200 800 200 20) - ElementLine(800 200 800 0 20) - ElementLine(800 0 0 0 20) - ElementLine(0 50 800 50 10) - ElementLine(325 0 325 50 10) - ElementLine(475 0 475 50 10) - Mark(50 260) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = MULTIWATT8 Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 63.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 163.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 263.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 363.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 463.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.12 { + smirror = 0 + ha:attributes { + term = 6 + name = 6 + } + proto = 1 + xmirror = 0 + x = 563.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.13 { + smirror = 0 + ha:attributes { + term = 7 + name = 7 + } + proto = 1 + xmirror = 0 + x = 663.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.14 { + smirror = 0 + ha:attributes { + term = 8 + name = 8 + } + proto = 1 + xmirror = 0 + x = 763.0mil + rot = 0.000000 + y = 3.175783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.15 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 5.334783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 813.0mil + x2 = 13.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 13.0mil + x2 = 813.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 338.0mil + x2 = 338.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 488.0mil + x2 = 488.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 873.0mil + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.36 { + clearance = 0.0 + y2 = 3.175783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 413.0mil + x2 = 413.0mil + ha:flags { + } + y1 = 3.175783mm + } + ha:line.39 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.42 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 63.0mil + x2 = 63.0mil + ha:flags { + } + y1 = 6.858783mm + } + ha:line.45 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 63.0mil + x2 = 2.6002mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = IQhuhU7OlwL8WndT1toAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/OSC14.fp =================================================================== --- trunk/pcblib/tru-hole/OSC14.fp (revision 27120) +++ trunk/pcblib/tru-hole/OSC14.fp (revision 27121) @@ -1,26 +1,455 @@ -##from:pcb -##for:oscillator -##for:xtal - Element(0x00 "Crystal oscillator" "" "OSC14" 270 300 3 100 0x00) -( - Pin(100 100 50 28 "NC" 0x01) - Pin(100 700 50 28 "GND" 0x01) - Pin(400 700 50 28 "CLK" 0x01) - Pin(400 100 50 28 "VCC" 0x01) - ElementLine(5 5 400 5 10) - ElementArc(400 100 95 95 180 90 10) - ElementLine(495 100 495 700 10) - ElementArc(400 700 95 95 90 90 10) - ElementLine(400 795 100 795 10) - ElementArc(100 700 95 95 0 90 10) - ElementLine(5 700 5 5 10) - ElementLine(100 60 400 60 10) - ElementArc(400 100 40 40 180 90 10) - ElementLine(440 100 440 700 10) - ElementArc(400 700 40 40 90 90 10) - ElementLine(400 740 100 740 10) - ElementArc(100 700 40 40 0 90 10) - ElementLine(60 700 60 100 10) - ElementArc(100 100 40 40 270 90 10) - Mark(100 100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = OSC14, Crystal oscillator + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 28.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 56.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 56.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = NC + } + proto = 0 + xmirror = 0 + x = 2.54254mm + rot = 0.000000 + y = 2.54254mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = GND + } + proto = 0 + xmirror = 0 + x = 2.54254mm + rot = 0.000000 + y = 700.1mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = CLK + } + proto = 0 + xmirror = 0 + x = 400.1mil + rot = 0.000000 + y = 700.1mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = VCC + } + proto = 0 + xmirror = 0 + x = 400.1mil + rot = 0.000000 + y = 2.54254mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 0.12954mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.12954mm + x2 = 400.1mil + ha:flags { + } + y1 = 0.12954mm + } + ha:line.15 { + clearance = 0.0 + y2 = 700.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 495.1mil + x2 = 495.1mil + ha:flags { + } + y1 = 2.54254mm + } + ha:line.19 { + clearance = 0.0 + y2 = 795.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 400.1mil + x2 = 2.54254mm + ha:flags { + } + y1 = 795.1mil + } + ha:line.23 { + clearance = 0.0 + y2 = 0.12954mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.12954mm + x2 = 0.12954mm + ha:flags { + } + y1 = 700.1mil + } + ha:line.26 { + clearance = 0.0 + y2 = 60.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 2.54254mm + x2 = 400.1mil + ha:flags { + } + y1 = 60.1mil + } + ha:line.30 { + clearance = 0.0 + y2 = 700.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 440.1mil + x2 = 440.1mil + ha:flags { + } + y1 = 2.54254mm + } + ha:line.34 { + clearance = 0.0 + y2 = 740.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 400.1mil + x2 = 2.54254mm + ha:flags { + } + y1 = 740.1mil + } + ha:line.38 { + clearance = 0.0 + y2 = 2.54254mm + thickness = 10.0mil + ha:attributes { + } + x1 = 60.1mil + x2 = 60.1mil + ha:flags { + } + y1 = 700.1mil + } + ha:arc.14 { + astart = 180 + thickness = 10.0mil + width = 95.0mil + height = 95.0mil + ha:attributes { + } + x = 400.1mil + y = 2.54254mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.18 { + astart = 90 + thickness = 10.0mil + width = 95.0mil + height = 95.0mil + ha:attributes { + } + x = 400.1mil + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.22 { + astart = 0 + thickness = 10.0mil + width = 95.0mil + height = 95.0mil + ha:attributes { + } + x = 2.54254mm + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.29 { + astart = 180 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 400.1mil + y = 2.54254mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.33 { + astart = 90 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 400.1mil + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.37 { + astart = 0 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 2.54254mm + y = 700.1mil + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.41 { + astart = 270 + thickness = 10.0mil + width = 40.0mil + height = 40.0mil + ha:attributes { + } + x = 2.54254mm + y = 2.54254mm + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 270.1mil + y = 300.1mil + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.42 { + clearance = 0.0 + y2 = 400.1mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 6.35254mm + x2 = 6.35254mm + ha:flags { + } + y1 = 400.1mil + } + ha:line.45 { + clearance = 0.0 + y2 = 2.54254mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.54254mm + x2 = 2.54254mm + ha:flags { + } + y1 = 2.54254mm + } + ha:line.48 { + clearance = 0.0 + y2 = 2.54254mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.54254mm + x2 = 3.54254mm + ha:flags { + } + y1 = 2.54254mm + } + ha:line.51 { + clearance = 0.0 + y2 = 3.54254mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.54254mm + x2 = 2.54254mm + ha:flags { + } + y1 = 2.54254mm + } + } + ha:combining { + } + } + } + } + uid = xzk533cq9lHncC5p9N4AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/PENTAWATT.fp =================================================================== --- trunk/pcblib/tru-hole/PENTAWATT.fp (revision 27120) +++ trunk/pcblib/tru-hole/PENTAWATT.fp (revision 27121) @@ -1,18 +1,470 @@ -##from:pcb -##for:IC -Element(0x00 "Power IC, as in MULTIWATT15" "" "PENTAWATT" 469 50 3 100 0x00) -( - Pin(70 334 90 60 "1" 0x101) - Pin(137 177 90 60 "2" 0x01) - Pin(204 334 90 60 "3" 0x01) - Pin(271 177 90 60 "4" 0x01) - Pin(338 334 90 60 "5" 0x01) - ElementLine(0 0 0 189 20) - ElementLine(0 189 409 189 20) - ElementLine(409 189 409 0 20) - ElementLine(409 0 0 0 20) - ElementLine(0 50 409 50 10) - ElementLine(129 0 129 50 10) - ElementLine(279 0 279 50 10) - Mark(70 249) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = PENTAWATT Power IC + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.032783mm + rot = 0.000000 + y = 8.738383mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 3.734583mm + rot = 0.000000 + y = 4.750583mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 5.436383mm + rot = 0.000000 + y = 8.738383mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 1 + xmirror = 0 + x = 7.138183mm + rot = 0.000000 + y = 4.750583mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.11 { + smirror = 0 + ha:attributes { + term = 5 + name = 5 + } + proto = 1 + xmirror = 0 + x = 8.839983mm + rot = 0.000000 + y = 8.738383mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.12 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 5.055383mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 10.643383mm + ha:flags { + } + y1 = 5.055383mm + } + ha:line.21 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.643383mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.643383mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.531383mm + x2 = 3.531383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.30 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.341383mm + x2 = 7.341383mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 12.167383mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.33 { + clearance = 0.0 + y2 = 7.143263mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.436383mm + x2 = 5.436383mm + ha:flags { + } + y1 = 7.143263mm + } + ha:line.36 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.032783mm + x2 = 2.032783mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.39 { + clearance = 0.0 + y2 = 7.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.032783mm + x2 = 2.032783mm + ha:flags { + } + y1 = 6.579383mm + } + ha:line.42 { + clearance = 0.0 + y2 = 6.579383mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.032783mm + x2 = 3.032783mm + ha:flags { + } + y1 = 6.579383mm + } + } + ha:combining { + } + } + } + } + uid = sniNjrnRQefHo+GXiZsAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TACT_6x6_4p =================================================================== --- trunk/pcblib/tru-hole/TACT_6x6_4p (revision 27120) +++ trunk/pcblib/tru-hole/TACT_6x6_4p (revision 27121) @@ -1,37 +1,589 @@ -##from:repo.hu/projects/openhw -##geo:180 -##for:switch -##for:button - -Element["" "" "" "" 175500 115500 0 0 0 100 ""] -( - Pin[13091 9000 9000 5000 9600 3937 "" "4" "edge2,intconn(2)"] - Pin[-12500 9000 9000 5000 9600 3937 "" "3" "edge2,intconn(2)"] - Pin[13091 -9000 9000 5000 9600 3937 "" "2" "edge2,intconn(1)"] - Pin[-12500 -9000 9000 5000 9600 3937 "" "1" "edge2,intconn(1)"] - ElementLine [12181 11736 12181 -11886 787] - ElementLine [-11441 11736 12181 11736 787] - ElementLine [-11441 -11886 -11441 11736 787] - ElementLine [-11441 -11886 12181 -11886 787] - ElementArc [7815 -8031 2756 2756 90 90 787] - ElementArc [7815 -8031 2756 2756 0 90 787] - ElementArc [7815 -8031 2756 2756 270 90 787] - ElementArc [7815 -8031 2756 2756 180 90 787] - ElementArc [7815 7717 2756 2756 0 90 787] - ElementArc [7815 7717 2756 2756 270 90 787] - ElementArc [7815 7717 2756 2756 180 90 787] - ElementArc [7815 7717 2756 2756 90 90 787] - ElementArc [-7933 7717 2756 2756 270 90 787] - ElementArc [-7933 7717 2756 2756 180 90 787] - ElementArc [-7933 7717 2756 2756 90 90 787] - ElementArc [-7933 7717 2756 2756 0 90 787] - ElementArc [-7933 -8031 2756 2756 180 90 787] - ElementArc [-7933 -8031 2756 2756 90 90 787] - ElementArc [-7933 -8031 2756 2756 0 90 787] - ElementArc [-7933 -8031 2756 2756 270 90 787] - ElementArc [-59 -157 6693 6693 270 90 787] - ElementArc [-59 -157 6693 6693 180 90 787] - ElementArc [-59 -157 6693 6693 90 90 787] - ElementArc [-59 -157 6693 6693 0 90 787] - - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint=tactile button + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 0.999998mm + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 4 + intconn = 2 + } + proto = 0 + xmirror = 0 + x = 1.88591in + rot = 0.000000 + y = 31.623mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 3 + intconn = 2 + } + proto = 0 + xmirror = 0 + x = 1.63in + rot = 0.000000 + y = 31.623mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 2 + intconn = 1 + } + proto = 0 + xmirror = 0 + x = 1.88591in + rot = 0.000000 + y = 27.051mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 1 + intconn = 1 + } + proto = 0 + xmirror = 0 + x = 1.63in + rot = 0.000000 + y = 27.051mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 25.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 1.03614in + thickness = 7.87mil + ha:attributes { + } + x1 = 1.87681in + x2 = 1.87681in + ha:flags { + } + y1 = 32.317944mm + } + ha:line.14 { + clearance = 0.0 + y2 = 32.317944mm + thickness = 7.87mil + ha:attributes { + } + x1 = 1.64059in + x2 = 1.87681in + ha:flags { + } + y1 = 32.317944mm + } + ha:line.17 { + clearance = 0.0 + y2 = 32.317944mm + thickness = 7.87mil + ha:attributes { + } + x1 = 1.64059in + x2 = 1.64059in + ha:flags { + } + y1 = 1.03614in + } + ha:line.20 { + clearance = 0.0 + y2 = 1.03614in + thickness = 7.87mil + ha:attributes { + } + x1 = 1.64059in + x2 = 1.87681in + ha:flags { + } + y1 = 1.03614in + } + ha:arc.23 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.24 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.25 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.26 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.27 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.28 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.29 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.30 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 46.56201mm + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.31 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.32 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.33 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.34 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.23217in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.35 { + astart = 180 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.36 { + astart = 90 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.37 { + astart = 0 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.38 { + astart = 270 + thickness = 7.87mil + width = 0.700024mm + height = 0.700024mm + ha:attributes { + } + x = 1.67567in + y = 1.07469in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.39 { + astart = 270 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.40 { + astart = 180 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.41 { + astart = 90 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:arc.42 { + astart = 0 + thickness = 7.87mil + width = 66.93mil + height = 66.93mil + ha:attributes { + } + x = 1.75441in + y = 1.15343in + adelta = 90 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.755in + y = 1.155in + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.43 { + clearance = 0.0 + y2 = 1.155in + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 1.757955in + x2 = 1.757955in + ha:flags { + } + y1 = 1.155in + } + ha:line.46 { + clearance = 0.0 + y2 = 1.155in + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 1.755in + x2 = 1.755in + ha:flags { + } + y1 = 1.155in + } + ha:line.49 { + clearance = 0.0 + y2 = 1.155in + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 1.755in + x2 = 45.577mm + ha:flags { + } + y1 = 1.155in + } + ha:line.52 { + clearance = 0.0 + y2 = 30.337mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 1.755in + x2 = 1.755in + ha:flags { + } + y1 = 1.155in + } + } + ha:combining { + } + } + } + } + uid = 2piHZ3u6tsVyFj4ZzGwAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO126.fp =================================================================== --- trunk/pcblib/tru-hole/TO126.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO126.fp (revision 27121) @@ -1,35 +1,534 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:laying - Element(0x00 "Transistor" "" "TO126" 80 480 1 100 0x00) -( -# From the JEDEC drawing, the pins are rectangular with dimensions -# 25-35 mil X 15-25 mil -# -# This gives a diagonal dimension of 29.2 to 43.0 mils. -# Pin pitch is 80 to 100 mils. -# -# For a minimum clearance of 10 mils (probably not unreasonable if -# you are doing a design with leaded parts, this gives a max pad size -# of 80 mils. A 52 mil drill will give 14 mil annular ring which should -# be plenty. -# -# The mounting hole is 100 to 130 mils diameter - Pin(110 600 80 52 "1" 0x101) - Pin(200 600 80 52 "2" 0x01) - Pin(290 600 80 52 "3" 0x01) - # Befestigungsbohrung - Pin(200 170 130 110 "4" 0x01) - # Anschlussdraehte - ElementLine(100 600 100 500 30) - ElementLine(200 600 200 500 30) - ElementLine(300 600 300 500 30) - # Gehaeuse - ElementLine( 50 500 350 500 20) - ElementLine(350 500 350 70 20) - ElementLine(350 70 50 70 20) - ElementLine( 50 70 50 500 20) - Mark(100 600) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 110.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 170.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.14 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.17 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 300.0mil + x2 = 300.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.20 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.23 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:line.29 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 80.0mil + y = 480.0mil + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.32 { + clearance = 0.0 + y2 = 492.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 492.5mil + } + ha:line.35 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.38 { + clearance = 0.0 + y2 = 16.24mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.41 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 600.0mil + } + } + ha:combining { + } + } + } + } + uid = O0KUDhlczEfk/O0PriQAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO126S.fp =================================================================== --- trunk/pcblib/tru-hole/TO126S.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO126S.fp (revision 27121) @@ -1,23 +1,534 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing - Element(0x00 "Transistor" "" "TO126S" 80 480 1 100 0x00) -( - Pin(110 600 80 52 "1" 0x101) - Pin(200 700 80 52 "2" 0x01) - Pin(290 600 80 52 "3" 0x01) - # Befestigungsbohrung - Pin(200 170 130 110 "4" 0x01) - # Anschlussdraehte - ElementLine(100 600 100 500 30) - ElementLine(200 700 200 500 30) - ElementLine(300 600 300 500 30) - # Gehaeuse - ElementLine( 50 500 350 500 20) - ElementLine(350 500 350 70 20) - ElementLine(350 70 50 70 20) - ElementLine( 50 70 50 500 20) - Mark(100 600) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126S Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 110.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 130.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 136.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 700.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 600.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 170.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.14 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 700.0mil + } + ha:line.17 { + clearance = 0.0 + y2 = 500.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 300.0mil + x2 = 300.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.20 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.23 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 500.0mil + } + ha:line.26 { + clearance = 0.0 + y2 = 70.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:line.29 { + clearance = 0.0 + y2 = 500.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 70.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 80.0mil + y = 480.0mil + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.32 { + clearance = 0.0 + y2 = 517.5mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 517.5mil + } + ha:line.35 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.38 { + clearance = 0.0 + y2 = 16.24mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 600.0mil + } + ha:line.41 { + clearance = 0.0 + y2 = 600.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 600.0mil + } + } + ha:combining { + } + } + } + } + uid = Iqh6vyX2eHbtviil6fUAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO126SW.fp =================================================================== --- trunk/pcblib/tru-hole/TO126SW.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO126SW.fp (revision 27121) @@ -1,21 +1,434 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing - Element(0x00 "Transistor" "" "TO126SW" 270 170 0 100 0x00) -( - Pin(110 100 80 52 "1" 0x101) - Pin(200 200 80 52 "2" 0x01) - Pin(290 100 80 52 "3" 0x01) - # Gehaeuse - ElementLine(200 200 200 150 30) - ElementLine( 50 50 350 50 20) - ElementLine(350 50 350 150 20) - ElementLine(350 150 50 150 20) - ElementLine( 50 150 50 50 20) - # Bohrung - ElementLine(150 50 150 150 10) - ElementLine(250 50 250 150 10) - Mark(100 100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126SW Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 150.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 150.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 150.0mil + x2 = 150.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 150.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 250.0mil + x2 = 250.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 270.0mil + y = 170.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.386666mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 3.386666mm + } + ha:line.34 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.37 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 100.0mil + } + ha:line.40 { + clearance = 0.0 + y2 = 3.54mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + } + ha:combining { + } + } + } + } + uid = sxuYoda+IstkKcLGGkQAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO126W.fp =================================================================== --- trunk/pcblib/tru-hole/TO126W.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO126W.fp (revision 27121) @@ -1,16 +1,398 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing - Element(0x00 "Transistor" "" "TO126W" 60 170 0 100 0x00) -( - Pin(110 100 80 52 "1" 0x101) - Pin(200 100 80 52 "2" 0x01) - Pin(290 100 80 52 "3" 0x01) - ElementLine(50 50 350 50 20) - ElementLine(350 50 350 150 20) - ElementLine(350 150 50 150 20) - ElementLine(50 150 50 50 20) - Mark(100 100) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO126W Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 52.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 110.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 200.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 290.0mil + rot = 0.000000 + y = 100.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 350.0mil + ha:flags { + } + y1 = 50.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 150.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 350.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 50.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 50.0mil + x2 = 50.0mil + ha:flags { + } + y1 = 150.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 60.0mil + y = 170.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.22 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 200.0mil + x2 = 200.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 3.54mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 100.0mil + x2 = 100.0mil + ha:flags { + } + y1 = 100.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 100.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 100.0mil + x2 = 3.54mm + ha:flags { + } + y1 = 100.0mil + } + } + ha:combining { + } + } + } + } + uid = M7n7GB058pNjVDcWttAAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO18.fp =================================================================== --- trunk/pcblib/tru-hole/TO18.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO18.fp (revision 27121) @@ -1,36 +1,305 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer - Element["" "Transistor" "" "TO18" 10300 11100 6000 7000 0 100 ""] -( -# The JEDEC drawing shows a pin diameter of 16-21 mils -# -# -# ___x_ -# / \ -# TO18: |3 1| <-- bottom view (supposed to be a circle) -# \ 2 / -# --- -# -# NOTE: some vendors, ST for example, number the pins -# differently. Here we follow the JEDEC drawing. -# -# the pins are arranged along a 100 mil diameter -# circle. The can outline is 178 to 195 mils -# for the top of the can and 209 to 230 mils -# for the bottom edge of the can -# - Pin[0 -5000 5500 3000 6100 3500 "1" "1" ""] - Pin[-5000 0 5500 3000 6100 3500 "2" "2" ""] - Pin[0 5000 5500 3000 6100 3500 "3" "3" ""] -# x, y, width, height, start angle, delta angle, thickness - ElementArc [0 0 9800 9800 0 360 1000] -# tab is 28 to 48 mils long, 36 to 46 wide -# and comes off at an angle of 45 deg clockwise from -# pin 1 when looking at the top of the board - ElementLine [6700 -7900 9400 -10600 1000] - ElementLine [7300 -7300 10000 -10000 1000] - ElementLine [7900 -6700 10600 -9400 1000] - ElementLine [9400 -10600 10600 -9400 1000] -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO18 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.61874mm + rot = 0.000000 + y = 1.549792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 0 + xmirror = 0 + x = 53.1mil + rot = 0.000000 + y = 2.819792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 0 + xmirror = 0 + x = 2.61874mm + rot = 0.000000 + y = 4.089792mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 0.127392mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.32054mm + x2 = 5.00634mm + ha:flags { + } + y1 = 0.813192mm + } + ha:line.14 { + clearance = 0.0 + y2 = 0.279792mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.47294mm + x2 = 5.15874mm + ha:flags { + } + y1 = 0.965592mm + } + ha:line.17 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 4.62534mm + x2 = 5.31114mm + ha:flags { + } + y1 = 1.117992mm + } + ha:line.20 { + clearance = 0.0 + y2 = 0.432192mm + thickness = 10.0mil + ha:attributes { + } + x1 = 5.00634mm + x2 = 5.31114mm + ha:flags { + } + y1 = 0.127392mm + } + ha:arc.10 { + astart = 0 + thickness = 10.0mil + width = 98.0mil + height = 98.0mil + ha:attributes { + } + x = 2.61874mm + y = 2.819792mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 4.14274mm + y = 4.597792mm + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 2.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 2.195406mm + x2 = 2.195406mm + ha:flags { + } + y1 = 2.819792mm + } + ha:line.26 { + clearance = 0.0 + y2 = 2.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.61874mm + x2 = 2.61874mm + ha:flags { + } + y1 = 2.819792mm + } + ha:line.29 { + clearance = 0.0 + y2 = 1.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.61874mm + x2 = 2.61874mm + ha:flags { + } + y1 = 2.819792mm + } + ha:line.32 { + clearance = 0.0 + y2 = 2.819792mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.61874mm + x2 = 1.61874mm + ha:flags { + } + y1 = 2.819792mm + } + } + ha:combining { + } + } + } + } + uid = OidYcSm6o+LolzS8Q8kAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO218.fp =================================================================== --- trunk/pcblib/tru-hole/TO218.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO218.fp (revision 27121) @@ -1,17 +1,434 @@ -##from:pcb -##for:diode -##geo:standing -Element(0x00 "diode in TO220" "" "TO218" 675 50 3 100 0x00) -( - Pin(88 120 100 60 "1" 0x101) - Pin(307 120 100 60 "2" 0x01) - Pin(526 120 100 60 "3" 0x01) - ElementLine(0 0 0 200 20) - ElementLine(0 200 615 200 20) - ElementLine(615 200 615 0 20) - ElementLine(615 0 0 0 20) - ElementLine(0 50 615 50 10) - ElementLine(232 0 232 50 10) - ElementLine(382 0 382 50 10) - Mark(88 260) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO218 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.489983mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.052583mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 13.615183mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.334783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 15.875783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 15.875783mm + x2 = 15.875783mm + ha:flags { + } + y1 = 5.334783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 15.875783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 15.875783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.147583mm + x2 = 6.147583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 9.957583mm + x2 = 9.957583mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 17.399783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.302783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 8.052583mm + x2 = 8.052583mm + ha:flags { + } + y1 = 3.302783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.489983mm + x2 = 2.489983mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 7.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.489983mm + x2 = 2.489983mm + ha:flags { + } + y1 = 6.858783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 6.858783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.489983mm + x2 = 3.489983mm + ha:flags { + } + y1 = 6.858783mm + } + } + ha:combining { + } + } + } + } + uid = es25ud3aaCFW34xH0swAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO220.fp =================================================================== --- trunk/pcblib/tru-hole/TO220.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO220.fp (revision 27121) @@ -1,47 +1,678 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:laying -##ref:http://www.zetex.com/3.0/pdf/TO220.pdf - Element(0x00 "Transistor" "" "TO220" 50 570 1 100 0x00) -( -# I have been unable to locate the JEDEC drawing. However, refering -# to http://www.zetex.com/3.0/pdf/TO220.pdf which claims to be JEDEC -# compliant, I see that the pins are rectangular with dimensions: -# -# 15-40 mils X 16-20 mils which gives a diagonal of -# 21.9 to 44.7 mils -# -# The pin pitch is 90 to 110 mils. -# -# The mounting hole is 139 to 160 mils diameter - Pin(100 800 90 60 "1" 0x101) - Pin(200 800 90 60 "2" 0x01) - Pin(300 800 90 60 "3" 0x01) - # Befestigungsbohrung - Pin(200 130 150 130 "4" 0x01) - # Anschlussdraehte - ElementLine(100 800 100 620 30) - ElementLine(200 800 200 620 30) - ElementLine(300 800 300 620 30) - # Gehaeuse - ElementLine( 0 620 400 620 20) - ElementLine(400 620 400 245 20) - ElementLine(400 245 0 245 20) - ElementLine( 0 245 0 620 20) - # Kuehlfahne mit Kerben - ElementLine( 0 245 400 245 20) - ElementLine(400 245 400 120 20) - ElementLine(400 120 385 120 20) - ElementLine(385 120 385 50 20) - ElementLine(385 50 400 50 20) - ElementLine(400 50 400 10 20) - ElementLine(400 10 0 10 20) - ElementLine( 0 10 0 50 20) - ElementLine( 0 50 15 50 20) - ElementLine( 15 50 15 120 20) - ElementLine( 15 120 0 120 20) - ElementLine( 0 120 0 245 20) - Mark(200 800) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 130.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.14 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.17 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 7.874783mm + x2 = 7.874783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.20 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.23 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.26 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.29 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.32 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.35 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.38 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.41 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.44 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.47 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.50 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.53 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.56 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.59 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.62 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.65 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.524783mm + y = 14.478783mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.68 { + clearance = 0.0 + y2 = 16.066283mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 16.066283mm + } + ha:line.71 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.74 { + clearance = 0.0 + y2 = 21.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.77 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.334783mm + x2 = 6.334783mm + ha:flags { + } + y1 = 20.320783mm + } + } + ha:combining { + } + } + } + } + uid = uOkA89keooMxmh5v+cMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO220ACSTAND.fp =================================================================== --- trunk/pcblib/tru-hole/TO220ACSTAND.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO220ACSTAND.fp (revision 27121) @@ -1,16 +1,416 @@ -##from:pcb -##for:diode -##geo:standing -Element(0x00 "diode in TO220" "" "TO220ACSTAND" 460 50 3 100 0x00) -( - Pin(100 100 80 40 "1" 0x101) - Pin(300 100 80 40 "2" 0x01) - ElementLine(0 0 0 180 20) - ElementLine(0 180 400 180 20) - ElementLine(400 180 400 0 20) - ElementLine(400 0 0 0 20) - ElementLine(0 50 400 50 10) - ElementLine(125 0 125 50 10) - ElementLine(275 0 275 50 10) - Mark(100 220) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220ACSTAND diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -40.0mil + -40.0mil + 40.0mil + -40.0mil + 40.0mil + 40.0mil + -40.0mil + 40.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -43.0mil + -43.0mil + 43.0mil + -43.0mil + 43.0mil + 43.0mil + -43.0mil + 43.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 80.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 86.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 2.794783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 2.794783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 4.826783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 4.826783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 4.826783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 4.826783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 3.429783mm + x2 = 3.429783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 7.239783mm + x2 = 7.239783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 11.938783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.30 { + clearance = 0.0 + y2 = 2.794783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 2.794783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 5.842783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 5.842783mm + } + ha:line.36 { + clearance = 0.0 + y2 = 5.842783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.794783mm + x2 = 3.794783mm + ha:flags { + } + y1 = 5.842783mm + } + ha:line.39 { + clearance = 0.0 + y2 = 6.842783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 5.842783mm + } + } + ha:combining { + } + } + } + } + uid = giMFC8I9a3NsCRqIha4AAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO220S.fp =================================================================== --- trunk/pcblib/tru-hole/TO220S.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO220S.fp (revision 27121) @@ -1,36 +1,678 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:stadning - Element(0x00 "Transistor" "" "TO220S" 50 570 1 100 0x00) -( - Pin(100 800 90 60 "1" 0x101) - Pin(200 900 90 60 "2" 0x01) - Pin(300 800 90 60 "3" 0x01) - # Befestigungsbohrung - Pin(200 130 150 130 "4" 0x01) - # Anschlussdraehte - ElementLine(100 800 100 620 30) - ElementLine(200 900 200 620 30) - ElementLine(300 800 300 620 30) - # Gehaeuse - ElementLine( 0 620 400 620 20) - ElementLine(400 620 400 245 20) - ElementLine(400 245 0 245 20) - ElementLine( 0 245 0 620 20) - # Kuehlfahne mit Kerben - ElementLine( 0 245 400 245 20) - ElementLine(400 245 400 120 20) - ElementLine(400 120 385 120 20) - ElementLine(385 120 385 50 20) - ElementLine(385 50 400 50 20) - ElementLine(400 50 400 10 20) - ElementLine(400 10 0 10 20) - ElementLine( 0 10 0 50 20) - ElementLine( 0 50 15 50 20) - ElementLine( 15 50 15 120 20) - ElementLine( 15 120 0 120 20) - ElementLine( 0 120 0 245 20) - Mark(200 800) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220S Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.2 { + htop = 0 + hdia = 130.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 150.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 156.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 22.860783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 20.320783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.10 { + smirror = 0 + ha:attributes { + term = 4 + name = 4 + } + proto = 2 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 3.302783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.14 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 22.860783mm + } + ha:line.17 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 30.0mil + ha:attributes { + } + x1 = 7.874783mm + x2 = 7.874783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.20 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.23 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 15.748783mm + } + ha:line.26 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.29 { + clearance = 0.0 + y2 = 15.748783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.32 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.35 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 6.223783mm + } + ha:line.38 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.41 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.033783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.44 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.033783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.47 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.50 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.53 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.56 { + clearance = 0.0 + y2 = 1.270783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.59 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.635783mm + ha:flags { + } + y1 = 1.270783mm + } + ha:line.62 { + clearance = 0.0 + y2 = 3.048783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.635783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:line.65 { + clearance = 0.0 + y2 = 6.223783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 3.048783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 1.524783mm + y = 14.478783mm + rot = 90.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.68 { + clearance = 0.0 + y2 = 16.701283mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 16.701283mm + } + ha:line.71 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.74 { + clearance = 0.0 + y2 = 21.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 20.320783mm + } + ha:line.77 { + clearance = 0.0 + y2 = 20.320783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 5.334783mm + x2 = 6.334783mm + ha:flags { + } + y1 = 20.320783mm + } + } + ha:combining { + } + } + } + } + uid = kX4D5wU+XHa4jjNd2YMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO220SW.fp =================================================================== --- trunk/pcblib/tru-hole/TO220SW.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO220SW.fp (revision 27121) @@ -1,26 +1,482 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing - Element(0x00 "Transistor" "" "TO220SW" 0 10 0 100 0x00) -( - Pin(100 200 90 60 "1" 0x101) - Pin(200 300 90 60 "2" 0x01) - Pin(300 200 90 60 "3" 0x01) - # Gehaeuse - ElementLine( 0 80 400 80 20) - ElementLine(400 80 400 260 20) - ElementLine(400 260 0 260 20) - ElementLine( 0 260 0 80 20) - # Kuehlfahne icl. Bohrung - ElementLine( 0 80 400 80 20) - ElementLine(400 80 400 140 20) - ElementLine(400 140 0 140 20) - ElementLine( 0 140 0 80 20) - ElementLine(130 80 130 140 10) - ElementLine(270 80 270 140 10) - # Anschlussdraht - ElementLine(200 300 200 260 30) - Mark(100 200) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220SW Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 300.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.34 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 3.556783mm + x2 = 3.556783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.37 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 7.112783mm + x2 = 7.112783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.40 { + clearance = 0.0 + y2 = 260.0mil + thickness = 30.0mil + ha:attributes { + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 300.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = 10.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.43 { + clearance = 0.0 + y2 = 5.926666mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 5.926666mm + } + ha:line.46 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.49 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.794783mm + x2 = 3.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.52 { + clearance = 0.0 + y2 = 6.08mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + } + ha:combining { + } + } + } + } + uid = wyLdsi+eW/3szft7c1QAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO220W.fp =================================================================== --- trunk/pcblib/tru-hole/TO220W.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO220W.fp (revision 27121) @@ -1,23 +1,470 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing Element(0x00 "Transistor" "" "TO220W" 0 10 0 100 0x00) -( - Pin(100 200 90 60 "1" 0x101) - Pin(200 200 90 60 "2" 0x01) - Pin(300 200 90 60 "3" 0x01) - # Gehaeuse - ElementLine( 0 80 400 80 20) - ElementLine(400 80 400 260 20) - ElementLine(400 260 0 260 20) - ElementLine( 0 260 0 80 20) - # Kuehlfahne icl. Bohrung - ElementLine( 0 80 400 80 20) - ElementLine(400 80 400 140 20) - ElementLine(400 140 0 140 20) - ElementLine( 0 140 0 80 20) - ElementLine(130 80 130 140 10) - ElementLine(270 80 270 140 10) - Mark(100 200) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO220W Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -45.0mil + -45.0mil + 45.0mil + -45.0mil + 45.0mil + 45.0mil + -45.0mil + 45.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -48.0mil + -48.0mil + 48.0mil + -48.0mil + 48.0mil + 48.0mil + -48.0mil + 48.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 90.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 96.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.794783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 5.334783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 7.874783mm + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.13 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.16 { + clearance = 0.0 + y2 = 260.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.19 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 260.0mil + } + ha:line.22 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.25 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.28 { + clearance = 0.0 + y2 = 140.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 10.414783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.31 { + clearance = 0.0 + y2 = 80.0mil + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 140.0mil + } + ha:line.34 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 3.556783mm + x2 = 3.556783mm + ha:flags { + } + y1 = 80.0mil + } + ha:line.37 { + clearance = 0.0 + y2 = 140.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 7.112783mm + x2 = 7.112783mm + ha:flags { + } + y1 = 80.0mil + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 0.254783mm + y = 10.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.40 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 5.334783mm + x2 = 5.334783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.43 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.46 { + clearance = 0.0 + y2 = 6.08mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.794783mm + x2 = 2.794783mm + ha:flags { + } + y1 = 200.0mil + } + ha:line.49 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.794783mm + x2 = 3.794783mm + ha:flags { + } + y1 = 200.0mil + } + } + ha:combining { + } + } + } + } + uid = ayqDUR+Z6aT2RssOtxMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO247.fp =================================================================== --- trunk/pcblib/tru-hole/TO247.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO247.fp (revision 27121) @@ -1,19 +1,434 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing -Element(0x00 "diode in TO220" "" "TO247" 690 50 3 100 0x00) -( - Pin(96 130 100 60 "1" 0x101) - Pin(315 130 100 60 "2" 0x01) - Pin(534 130 100 60 "3" 0x01) - ElementLine(0 0 0 210 20) - ElementLine(0 210 630 210 20) - ElementLine(630 210 630 0 20) - ElementLine(630 0 0 0 20) - ElementLine(0 50 630 50 10) - ElementLine(240 0 240 50 10) - ElementLine(390 0 390 50 10) - Mark(96 270) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO247 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.693183mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 8.255783mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 13.818383mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.350783mm + x2 = 6.350783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.160783mm + x2 = 10.160783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 17.780783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.556783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 8.255783mm + x2 = 8.255783mm + ha:flags { + } + y1 = 3.556783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 8.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.693183mm + x2 = 3.693183mm + ha:flags { + } + y1 = 7.112783mm + } + } + ha:combining { + } + } + } + } + uid = iN8eCDY1d9cB+LCvYmsAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO247_2.fp =================================================================== --- trunk/pcblib/tru-hole/TO247_2.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO247_2.fp (revision 27121) @@ -1,17 +1,416 @@ -##from:pcb -##for:diode -##geo:standing - -Element(0x00 "diode in TO220" "" "TO247_2" 690 50 3 100 0x00) -( - Pin(96 130 100 60 "1" 0x101) - Pin(534 130 100 60 "2" 0x01) - ElementLine(0 0 0 210 20) - ElementLine(0 210 630 210 20) - ElementLine(630 210 630 0 20) - ElementLine(630 0 0 0 20) - ElementLine(0 50 630 50 10) - ElementLine(240 0 240 50 10) - ElementLine(390 0 390 50 10) - Mark(96 270) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO247_2 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 2.693183mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 13.818383mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.9 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.12 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.15 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.18 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 16.256783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.21 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 16.256783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.24 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 6.350783mm + x2 = 6.350783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.27 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 10.160783mm + x2 = 10.160783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 17.780783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.30 { + clearance = 0.0 + y2 = 3.556783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 8.255783mm + x2 = 8.255783mm + ha:flags { + } + y1 = 3.556783mm + } + ha:line.33 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.36 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 2.693183mm + x2 = 3.693183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.39 { + clearance = 0.0 + y2 = 8.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 2.693183mm + x2 = 2.693183mm + ha:flags { + } + y1 = 7.112783mm + } + } + ha:combining { + } + } + } + } + uid = WJYlfial3zliAL7vW/EAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO251.fp =================================================================== --- trunk/pcblib/tru-hole/TO251.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO251.fp (revision 27121) @@ -1,20 +1,434 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing - -Element(0x00 "diode in TO220" "" "TO251" 325 50 3 100 0x00) -( - Pin(42 50 70 40 "1" 0x101) - Pin(132 50 70 40 "2" 0x01) - Pin(222 50 70 40 "3" 0x01) - ElementLine(0 0 0 100 20) - ElementLine(0 100 265 100 20) - ElementLine(265 100 265 0 20) - ElementLine(265 0 0 0 20) - ElementLine(0 50 265 50 10) - ElementLine(57 0 57 50 10) - ElementLine(207 0 207 50 10) - Mark(42 140) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO251 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.0mil + -35.0mil + 35.0mil + -35.0mil + 35.0mil + 35.0mil + -35.0mil + 35.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.0mil + -35.0mil + 35.0mil + -35.0mil + 35.0mil + 35.0mil + -35.0mil + 35.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -35.0mil + -35.0mil + 35.0mil + -35.0mil + 35.0mil + 35.0mil + -35.0mil + 35.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -38.0mil + -38.0mil + 38.0mil + -38.0mil + 38.0mil + 38.0mil + -38.0mil + 38.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -38.0mil + -38.0mil + 38.0mil + -38.0mil + 38.0mil + 38.0mil + -38.0mil + 38.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 40.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 70.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 70.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 70.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 76.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 76.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 53.0mil + rot = 0.000000 + y = 1.524783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 143.0mil + rot = 0.000000 + y = 1.524783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 233.0mil + rot = 0.000000 + y = 1.524783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 2.794783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.0mil + x2 = 11.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 2.794783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 11.0mil + x2 = 276.0mil + ha:flags { + } + y1 = 2.794783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 276.0mil + x2 = 276.0mil + ha:flags { + } + y1 = 2.794783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 276.0mil + x2 = 11.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 11.0mil + x2 = 276.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 68.0mil + x2 = 68.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 218.0mil + x2 = 218.0mil + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 336.0mil + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 143.0mil + x2 = 143.0mil + ha:flags { + } + y1 = 1.524783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 3.810783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 53.0mil + x2 = 53.0mil + ha:flags { + } + y1 = 3.810783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 4.810783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 53.0mil + x2 = 53.0mil + ha:flags { + } + y1 = 3.810783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 3.810783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 53.0mil + x2 = 2.3462mm + ha:flags { + } + y1 = 3.810783mm + } + } + ha:combining { + } + } + } + } + uid = v2nZCPR4jv3R3f/6N5sAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO264.fp =================================================================== --- trunk/pcblib/tru-hole/TO264.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO264.fp (revision 27121) @@ -1,18 +1,434 @@ -##from:pcb -##for:diode -##geo:standing - -Element(0x00 "diode in TO220" "" "TO264" 860 50 3 100 0x00) -( - Pin(181 130 100 60 "1" 0x101) - Pin(400 130 100 60 "2" 0x01) - Pin(619 130 100 60 "3" 0x01) - ElementLine(0 0 0 210 20) - ElementLine(0 210 800 210 20) - ElementLine(800 210 800 0 20) - ElementLine(800 0 0 0 20) - ElementLine(0 50 800 50 10) - ElementLine(325 0 325 50 10) - ElementLine(475 0 475 50 10) - Mark(181 270) - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO264 diode in TO220 + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -50.0mil + -50.0mil + 50.0mil + -50.0mil + 50.0mil + 50.0mil + -50.0mil + 50.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -53.0mil + -53.0mil + 53.0mil + -53.0mil + 53.0mil + 53.0mil + -53.0mil + 53.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 60.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 100.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 106.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 4.852183mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 10.414783mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 15.977383mm + rot = 0.000000 + y = 3.556783mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.13 { + clearance = 0.0 + y2 = 5.588783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.16 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 5.588783mm + } + ha:line.19 { + clearance = 0.0 + y2 = 0.254783mm + thickness = 20.0mil + ha:attributes { + } + x1 = 20.574783mm + x2 = 0.254783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.22 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 0.254783mm + x2 = 20.574783mm + ha:flags { + } + y1 = 1.524783mm + } + ha:line.25 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 8.509783mm + x2 = 8.509783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:line.28 { + clearance = 0.0 + y2 = 1.524783mm + thickness = 10.0mil + ha:attributes { + } + x1 = 12.319783mm + x2 = 12.319783mm + ha:flags { + } + y1 = 0.254783mm + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 22.098783mm + y = 1.524783mm + rot = 270.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.31 { + clearance = 0.0 + y2 = 3.556783mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 10.414783mm + x2 = 10.414783mm + ha:flags { + } + y1 = 3.556783mm + } + ha:line.34 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.852183mm + x2 = 4.852183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.37 { + clearance = 0.0 + y2 = 8.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.852183mm + x2 = 4.852183mm + ha:flags { + } + y1 = 7.112783mm + } + ha:line.40 { + clearance = 0.0 + y2 = 7.112783mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.852183mm + x2 = 5.852183mm + ha:flags { + } + y1 = 7.112783mm + } + } + ha:combining { + } + } + } + } + uid = 8OAC9HM9Aw1ZzceKxDMAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO39.fp =================================================================== --- trunk/pcblib/tru-hole/TO39.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO39.fp (revision 27121) @@ -1,37 +1,412 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer - - Element["" "Transistor" "" "TO39" 18800 18800 6000 7000 0 100 ""] -( -# The JEDEC drawing shows a pin diameter of 16-21 mils -# -# -# ___x_ -# / \ -# TO39: |3 1| <-- bottom view (supposed to be a circle) -# \ 2 / -# --- -# -# NOTE: some vendors, ST for example, number the pins -# differently. Here we follow the JEDEC drawing. -# -# the pins are arranged along a 200 mil diameter -# circle. The can outline is 315 to 335 mils (320 nom) -# for the top of the can and 350 to 370 mils (360 nom) -# for the bottom edge of thecan -# - Pin[0 -10000 5500 3000 6100 3500 "1" "1" "square"] - Pin[-10000 0 5500 3000 6100 3500 "2" "2" ""] - Pin[0 10000 5500 3000 6100 3500 "3" "3" ""] -# tab is 29 to 40 mils long, 28 to 34 wide -# and comes off at an angle of 45 deg clockwise from -# pin 1 when looking at the top of the board - ElementLine [12700 -13900 14800 -16000 1000] - ElementLine [13300 -13300 15400 -15400 1000] - ElementLine [13900 -12700 16000 -14800 1000] - ElementLine [16000 -14800 14800 -16000 1000] -# x, y, width, height, start angle, delta angle, thickness - ElementArc [0 0 18300 18300 0 360 1000] - ) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO39 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -27.5mil + -27.5mil + 27.5mil + -27.5mil + 27.5mil + 27.5mil + -27.5mil + 27.5mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -27.5mil + -27.5mil + 27.5mil + -27.5mil + 27.5mil + 27.5mil + -27.5mil + 27.5mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -27.5mil + -27.5mil + 27.5mil + -27.5mil + 27.5mil + 27.5mil + -27.5mil + 27.5mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.5mil + -30.5mil + 30.5mil + -30.5mil + 30.5mil + 30.5mil + -30.5mil + 30.5mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -30.5mil + -30.5mil + 30.5mil + -30.5mil + 30.5mil + 30.5mil + -30.5mil + 30.5mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 35.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 55.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 61.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 4.77774mm + rot = 0.000000 + y = 2.23774mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 2.23774mm + rot = 0.000000 + y = 4.77774mm + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 4.77774mm + rot = 0.000000 + y = 288.1mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.10 { + clearance = 0.0 + y2 = 28.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 315.1mil + x2 = 336.1mil + ha:flags { + } + y1 = 49.1mil + } + ha:line.13 { + clearance = 0.0 + y2 = 34.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 321.1mil + x2 = 342.1mil + ha:flags { + } + y1 = 55.1mil + } + ha:line.16 { + clearance = 0.0 + y2 = 40.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 327.1mil + x2 = 348.1mil + ha:flags { + } + y1 = 61.1mil + } + ha:line.19 { + clearance = 0.0 + y2 = 28.1mil + thickness = 10.0mil + ha:attributes { + } + x1 = 348.1mil + x2 = 336.1mil + ha:flags { + } + y1 = 40.1mil + } + ha:arc.22 { + astart = 0 + thickness = 10.0mil + width = 183.0mil + height = 183.0mil + ha:attributes { + } + x = 4.77774mm + y = 4.77774mm + adelta = 360 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 6.30174mm + y = 258.1mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.23 { + clearance = 0.0 + y2 = 4.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 3.931073mm + x2 = 3.931073mm + ha:flags { + } + y1 = 4.77774mm + } + ha:line.26 { + clearance = 0.0 + y2 = 4.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 4.77774mm + x2 = 4.77774mm + ha:flags { + } + y1 = 4.77774mm + } + ha:line.29 { + clearance = 0.0 + y2 = 3.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 4.77774mm + x2 = 4.77774mm + ha:flags { + } + y1 = 4.77774mm + } + ha:line.32 { + clearance = 0.0 + y2 = 4.77774mm + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 4.77774mm + x2 = 3.77774mm + ha:flags { + } + y1 = 4.77774mm + } + } + ha:combining { + } + } + } + } + uid = F67S28P4pxCGLl/9emkAAAAB + ha:flags { + } + } +} Index: trunk/pcblib/tru-hole/TO92.fp =================================================================== --- trunk/pcblib/tru-hole/TO92.fp (revision 27120) +++ trunk/pcblib/tru-hole/TO92.fp (revision 27121) @@ -1,23 +1,376 @@ -##from:pcb -##for:transistor -##for:linear -##for:stabilizer -##geo:standing - - Element(0x00 "Transistor" "" "TO92" 60 70 0 100 0x00) -( -# The JEDEC drawing shows a pin diameter of 16-21 mils -# -# -# _______ -# TO92: | 1 2 3 | <-- bottom view -# \_____/ -# -# The pin to pin spacing is 100 mils. - Pin(250 200 72 42 "1" 0x101) - Pin(150 200 72 42 "2" 0x01) - Pin(50 200 72 42 "3" 0x01) - ElementArc(150 200 100 100 315 270 10) - ElementLine( 80 130 220 130 10) - Mark(50 200) -) +li:pcb-rnd-subcircuit-v6 { + ha:subc.5 { + ha:attributes { + footprint = TO92 Transistor + } + ha:data { + li:padstack_prototypes { + ha:ps_proto_v6.0 { + htop = 0 + hdia = 42.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -36.0mil + -36.0mil + 36.0mil + -36.0mil + 36.0mil + 36.0mil + -36.0mil + 36.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -36.0mil + -36.0mil + 36.0mil + -36.0mil + 36.0mil + 36.0mil + -36.0mil + 36.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -36.0mil + -36.0mil + 36.0mil + -36.0mil + 36.0mil + 36.0mil + -36.0mil + 36.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -39.0mil + -39.0mil + 39.0mil + -39.0mil + 39.0mil + 39.0mil + -39.0mil + 39.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + li:ps_poly { + -39.0mil + -39.0mil + 39.0mil + -39.0mil + 39.0mil + 39.0mil + -39.0mil + 39.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + ha:ps_proto_v6.1 { + htop = 0 + hdia = 42.0mil + li:shape { + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 72.0mil + } + ha:layer_mask { + copper = 1 + top = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 72.0mil + } + ha:layer_mask { + bottom = 1 + copper = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 72.0mil + } + ha:layer_mask { + copper = 1 + intern = 1 + } + ha:combining { + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 78.0mil + } + ha:layer_mask { + top = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + ha:ps_shape_v4 { + clearance = 0.0 + ha:ps_circ { + x = 0.0 + y = 0.0 + dia = 78.0mil + } + ha:layer_mask { + bottom = 1 + mask = 1 + } + ha:combining { + sub = 1 + auto = 1 + } + } + } + hbottom = 0 + hplated = 1 + } + } + li:objects { + ha:padstack_ref.7 { + smirror = 0 + ha:attributes { + term = 1 + name = 1 + } + proto = 0 + xmirror = 0 + x = 254.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.8 { + smirror = 0 + ha:attributes { + term = 2 + name = 2 + } + proto = 1 + xmirror = 0 + x = 154.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + ha:padstack_ref.9 { + smirror = 0 + ha:attributes { + term = 3 + name = 3 + } + proto = 1 + xmirror = 0 + x = 54.0mil + rot = 0.000000 + y = 200.0mil + li:thermal { + } + ha:flags { + clearline = 1 + } + clearance = 15.0mil + } + } + li:layers { + ha:top-silk { + lid = 0 + ha:type { + silk = 1 + top = 1 + } + li:objects { + ha:line.11 { + clearance = 0.0 + y2 = 130.0mil + thickness = 10.0mil + ha:attributes { + } + x1 = 84.0mil + x2 = 224.0mil + ha:flags { + } + y1 = 130.0mil + } + ha:arc.10 { + astart = 315 + thickness = 10.0mil + width = 100.0mil + height = 100.0mil + ha:attributes { + } + x = 154.0mil + y = 200.0mil + adelta = 270 + ha:flags { + } + clearance = 0.0 + } + ha:text.6 { + scale = 100 + ha:attributes { + } + x = 64.0mil + y = 70.0mil + rot = 0.000000 + string = %a.parent.refdes% + fid = 0 + ha:flags { + dyntext = 1 + floater = 1 + } + } + } + ha:combining { + } + } + ha:subc-aux { + lid = 1 + ha:type { + top = 1 + misc = 1 + virtual = 1 + } + li:objects { + ha:line.14 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = pnp-origin + } + x1 = 154.0mil + x2 = 154.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.17 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = origin + } + x1 = 54.0mil + x2 = 54.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.20 { + clearance = 0.0 + y2 = 4.08mm + thickness = 0.1mm + ha:attributes { + subc-role = x + } + x1 = 54.0mil + x2 = 54.0mil + ha:flags { + } + y1 = 200.0mil + } + ha:line.23 { + clearance = 0.0 + y2 = 200.0mil + thickness = 0.1mm + ha:attributes { + subc-role = y + } + x1 = 54.0mil + x2 = 0.3716mm + ha:flags { + } + y1 = 200.0mil + } + } + ha:combining { + } + } + } + } + uid = guzk2KSYW/BVDIzhJVkAAAAB + ha:flags { + } + } +}