// // file: molex_header_2x20_2mm_st_smd_geom.txt // // date: 2-Jan-2013 CMX Version // // 17-Jul-2016 Modify Ref Desig for Hub, Some General Clean Up // // 22-Aug-2023 Update the filename and to the current // Molex part number for this item and // clean up the Pin-Pad Stack, Silkscreen, // and the Component Outline all for Disco. // // // This is the CMX geometry for a 40 pin SMD 2x20 // 2mm male header. It is used on the CMX for // Voltage Monitoring test points and for Access to // signals. // // Molex Part No. 87832-4020 or 87832-4021 // Milli-Grid 2x20 40 pin 2mm metric smd straight pin header // // $abort_enable = @false; $$lock_windows(@on) ; $$snap_diagonal(@off) ; $$snap_orthogonal(@off) ; //---------------------------------------------------------------------------- $$create_pin("HEADER_2X20_PAD", @replace); $$page(0.0,0.0,0.0, @mm, 0.0, 0.0, [0.0, 0.0, 'PI$HEADER_2X20_PAD']); $$point_mode(@vertex); $$polygon( "PAD", , [ -1.375, -0.600, 1.375, -0.600, 1.375, 0.600, -1.375, 0.600 ]); $$polygon( "SOLDER_MASK", , [ -1.425, -0.650, 1.425, -0.650, 1.425, 0.650, -1.425, 0.650 ]); $$polygon( "PASTE_MASK", , [ -1.375, -0.600, 1.375, -0.600, 1.375, 0.600, -1.375, 0.600 ]); $$attribute( "TERMINAL_SURFACE_DEFINITION", ""); //---------------------------------------------------------------------------- $$create_component("Header_2x20_2mm", @replace); $$page(0.0,0.0,0.0, @mm, 0.0, 0.0, [0.0, 0.0, 'CO$Header_2x20_2mm']); $$point_mode(@vertex); $$attribute( "COMPONENT_LAYOUT_TYPE", "surface"); $$attribute( "COMPONENT_LAYOUT_SURFACE", "both"); $$attribute( "COMPONENT_HEIGHT", "7.60", , @scale , , [0.0, 0.0] ); // // Component Placement Outline for the Header_2x20_2mm // $$initial([ 3.80, 20.00 ], , @nosnap ); $$terminal([ -3.80, 20.00 ] ); $$terminal([ -3.80, -20.00 ] ); $$terminal([ 3.80, -20.00 ] ); $$attribute( "COMPONENT_PLACEMENT_OUTLINE", "", @mark, @scale ); // Outer 2 horizontal and 42 vertical lines $$path( "SILKSCREEN", 0.20 , , [-3.15, 21.32, 3.15, 21.32] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -21.32, 3.15, -21.32] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 19.80, 3.15, 21.32] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 17.80, 3.15, 18.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 15.80, 3.15, 16.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 13.80, 3.15, 14.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 11.80, 3.15, 12.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 9.80, 3.15, 10.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 7.80, 3.15, 8.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 5.80, 3.15, 6.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 3.80, 3.15, 4.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 1.80, 3.15, 2.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, 0.20, 3.15, -0.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -1.80, 3.15, -2.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -3.80, 3.15, -4.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -5.80, 3.15, -6.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -7.80, 3.15, -8.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -9.80, 3.15, -10.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -11.80, 3.15, -12.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -13.80, 3.15, -14.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -15.80, 3.15, -16.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -17.80, 3.15, -18.20] ); $$path( "SILKSCREEN", 0.20 , , [ 3.15, -19.80, 3.15, -21.32] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 19.80, -3.15, 21.32] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 17.80, -3.15, 18.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 15.80, -3.15, 16.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 13.80, -3.15, 14.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 11.80, -3.15, 12.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 9.80, -3.15, 10.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 7.80, -3.15, 8.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 5.80, -3.15, 6.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 3.80, -3.15, 4.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 1.80, -3.15, 2.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, 0.20, -3.15, -0.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -1.80, -3.15, -2.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -3.80, -3.15, -4.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -5.80, -3.15, -6.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -7.80, -3.15, -8.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -9.80, -3.15, -10.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -11.80, -3.15, -12.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -13.80, -3.15, -14.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -15.80, -3.15, -16.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -17.80, -3.15, -18.20] ); $$path( "SILKSCREEN", 0.20 , , [-3.15, -19.80, -3.15, -21.32] ); // Inner 2 horizontal and 41 vertical lines $$path( "SILKSCREEN", 0.20 , , [-2.25, 20.42, 2.25, 20.42] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -20.42, 2.25, -20.42] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 19.80, 2.25, 20.42] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 17.80, 2.25, 18.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 15.80, 2.25, 16.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 13.80, 2.25, 14.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 11.80, 2.25, 12.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 9.80, 2.25, 10.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 7.80, 2.25, 8.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 5.80, 2.25, 6.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 3.80, 2.25, 4.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, 2.00, 2.25, 2.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -2.00, 2.25, -2.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -3.80, 2.25, -4.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -5.80, 2.25, -6.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -7.80, 2.25, -8.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -9.80, 2.25, -10.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -11.80, 2.25, -12.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -13.80, 2.25, -14.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -15.80, 2.25, -16.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -17.80, 2.25, -18.20] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -19.80, 2.25, -20.42] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 19.80, -2.25, 20.42] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 17.80, -2.25, 18.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 15.80, -2.25, 16.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 13.80, -2.25, 14.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 11.80, -2.25, 12.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 9.80, -2.25, 10.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 7.80, -2.25, 8.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 5.80, -2.25, 6.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 3.80, -2.25, 4.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 1.80, -2.25, 2.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, 0.20, -2.25, -0.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -1.80, -2.25, -2.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -3.80, -2.25, -4.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -5.80, -2.25, -6.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -7.80, -2.25, -8.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -9.80, -2.25, -10.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -11.80, -2.25, -12.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -13.80, -2.25, -14.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -15.80, -2.25, -16.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -17.80, -2.25, -18.20] ); $$path( "SILKSCREEN", 0.20 , , [-2.25, -19.80, -2.25, -20.42] ); // 3 sides of the notch $$path( "SILKSCREEN", 0.20 , , [ 2.25, 2.00, 4.10, 2.00] ); $$path( "SILKSCREEN", 0.20 , , [ 2.25, -2.00, 4.10, -2.00] ); $$path( "SILKSCREEN", 0.20 , , [ 3.90, -2.00, 3.90, 2.00] ); $$path( "SILKSCREEN", 0.20 , , [ 4.00, -2.00, 4.00, 2.00] ); $$path( "SILKSCREEN", 0.20 , , [ 4.10, -2.00, 4.10, 2.00] ); // Reference Designator $$text( "SILKSCREEN", "^$ref", 5.8, 0.0, 2.5, @CC, 90, 0.7, 0.20, "std", "None", 0.0, 0.0 ); // Mounting Holes 1.00 mm diameter Include relief circles for the Power Planes $$attribute( "DRILL_DEFINITION_UNPLATED", "1.00", , @scale , , [ 0.00, 18.00]); $$attribute( "DRILL_DEFINITION_UNPLATED", "1.00", , @scale , , [ 0.00, -18.00]); $$circle( "POWER", 0.00, 18.00, 1.5, 0.0); $$circle( "POWER", 0.00, -18.00, 1.5, 0.0); // Right hand side column of pins odd pins #39 is at the top $$attribute( "COMPONENT_PIN_DEFINITION", "39", , @scale , , [ 2.125, 19.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "39,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "37", , @scale , , [ 2.125, 17.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "37,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "35", , @scale , , [ 2.125, 15.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "35,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "33", , @scale , , [ 2.125, 13.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "33,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "31", , @scale , , [ 2.125, 11.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "31,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "29", , @scale , , [ 2.125, 9.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "29,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "27", , @scale , , [ 2.125, 7.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "27,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "25", , @scale , , [ 2.125, 5.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "25,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "23", , @scale , , [ 2.125, 3.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "23,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "21", , @scale , , [ 2.125, 1.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "21,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "19", , @scale , , [ 2.125, -1.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "19,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "17", , @scale , , [ 2.125, -3.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "17,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "15", , @scale , , [ 2.125, -5.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "15,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "13", , @scale , , [ 2.125, -7.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "13,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "11", , @scale , , [ 2.125, -9.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "11,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "9", , @scale , , [ 2.125, -11.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "9, HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "7", , @scale , , [ 2.125, -13.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "7, HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "5", , @scale , , [ 2.125, -15.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "5, HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "3", , @scale , , [ 2.125, -17.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "3, HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "1", , @scale , , [ 2.125, -19.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "1, HEADER_2X20_PAD"); // Left hand side column of pins even pins #40 is at the top $$attribute( "COMPONENT_PIN_DEFINITION", "40", , @scale , , [-2.125, 19.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "40,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "38", , @scale , , [-2.125, 17.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "38,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "36", , @scale , , [-2.125, 15.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "36,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "34", , @scale , , [-2.125, 13.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "34,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "32", , @scale , , [-2.125, 11.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "32,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "30", , @scale , , [-2.125, 9.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "30,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "28", , @scale , , [-2.125, 7.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "28,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "26", , @scale , , [-2.125, 5.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "26,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "24", , @scale , , [-2.125, 3.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "24,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "22", , @scale , , [-2.125, 1.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "22,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "20", , @scale , , [-2.125, -1.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "20,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "18", , @scale , , [-2.125, -3.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "18,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "16", , @scale , , [-2.125, -5.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "16,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "14", , @scale , , [-2.125, -7.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "14,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "12", , @scale , , [-2.125, -9.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "12,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "10", , @scale , , [-2.125, -11.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "10,HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "8", , @scale , , [-2.125, -13.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "8, HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "6", , @scale , , [-2.125, -15.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "6, HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "4", , @scale , , [-2.125, -17.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "4, HEADER_2X20_PAD"); $$attribute( "COMPONENT_PIN_DEFINITION", "2", , @scale , , [-2.125, -19.000]); $$attribute( "COMPONENT_PADSTACK_OVERRIDE", "2, HEADER_2X20_PAD");