
// file:  m3_2x4_ltch_horz_4_wall.txt

//
//  date:  29-Jan-2026   Start work on  8 pin  metric version  of the header
//                                     -------
//
//          2-Feb-2026   Fix some typos
//


//  This is the geometry for the  8 pin
//  Latched 4 wall 90 deg male 3M header
//  0.1" x 0.1"  2x4  Horizontal Mount

//
//  3M part number:  N3889-5202RB
//  3M part number:  N3889-5302RB
//
//  xxxx-x2xx  is the Short Latch Ejector  0.424 inch
//  xxxx-x3xx  is the  Long Latch Ejector  0.573 inch
//
//             The AMP contact Housings require the Longer latch/ejector
//
//  The final 2   xxxx-xxx2   is for the shorter
//  solder tails for  62 mil  thick pcb.
//
//  The final 3   xxxx-xxx3   is for the longer
//  solder tails for  94 to 125 mil  thick pcb.
//

//
//  This geom uses the Pin-Pad_Stacks from the   m3_2x3_ltch_horz_4_wall.txt  geom.
//
//  This layout will be all metric.
//
//  The long axis of the pin array is horizontal.
//
//  The Center of this geometry is in the center of its pin array.
//
//  This connector  does  have latches.
//
//  Overall external size:  29.5 mm in X  by  17.4 mm in Y
//
//  The distance between mounting hole is:  19.43 mm
//
//  The diameter of the mounting holes is for 2-56 screws
//
//     Recommended pcb mounting holes 0.106" or 0.116" diameter.
//
//     The two mounting screws on this connector will be made
//     as component pins 9 and 10  so that these two screws
//     may be grounded.
//
//  In the foot print the mounting holes are between the 2 pin rows.
//
//     The mounting hole centers are  0.74 mm  from the center of
//     the even numbered pin row which is next to the board edge.
//
//     The mounting hole centers are  1.80 mm  from the center of
//     the odd numbered pin row which is away from the board edge.
//
//  This geometry is written with Pin #1 in the SW corner,
//  pin #8 is in the NE corner,  the latch ears are facing
//  up in the positive Y direction.
//
//  When placed on the West edge of the DK board this geometry
//  needs to be rotated by 90 degrees and set back  11.7 mm
//  from the edge of the card  (as an initial placement position).
//
//  The pins closest to the board edge are about  10.4 mm from the edge.
//
//  Connector Part Number with final digit 2  --->  Pin tails are  2.84 mm
//  Connector Part Number with final digit 3  --->  Pin tails are  3.94 mm
//
//     Pin tail length is measured below the standoffs.
//
//  They specify a    0.89 mm Dia  finished hole for the pins.
//  I will make them  0.90 mm Dia  drill hole  as that size is in
//  the Drill Table.
//
//  The silkscreen for this part is drawn showing the longer
//  type of Latch/Ejection Ears.
//


$abort_enable = @false;
$$lock_windows(@on) ;
$$snap_diagonal(@off) ;
$$snap_orthogonal(@off) ;

//
//  Now the actual  3M  8 pin Horzontal Header  Geometry
//

$$create_component("M3_2x4_Horz_Header");

$$page(0.0, 0.0, 0.0, @mm, 0.0, 0.0, [0.0,0.0,'CO$M3_2x4_Horz_Header'] );

$$point_mode(@vertex);

$$attribute( "COMPONENT_HEIGHT", "", , @scale , , [ 10.0,  0.0 ]);

$$attribute( "COMPONENT_OUTLINE_OVERHANG", "yes");

$$attribute( "COMPONENT_LAYOUT_SURFACE", "both");




//  Setup the Component Placement Outline for this connector.

$$initial([   14.80,   5.00 ], , @nosnap );
$$terminal([ -14.80,   5.00 ] );
$$terminal([ -14.80,  -2.54 ] );
$$terminal([  14.80,  -2.54 ] );

$$attribute( "COMPONENT_PLACEMENT_OUTLINE", "", @mark, @scale );




//  Setup the SilkScreen for this connector.

//  Silkscreen on the Top Side   start in NE corner and go CCW

$$template_line_style( @Solid );

$$initial([   11.50,  14.80 ], , @nosnap );
$$terminal([   7.60,  14.80 ] );
$$terminal([   7.60,  11.20 ] );
$$terminal([  -7.60,  11.20 ] );
$$terminal([  -7.60,  14.80 ] );
$$terminal([ -11.50,  14.80 ] );
$$terminal([ -14.80,   4.90 ] );
$$terminal([ -14.80,  -2.51 ] );
$$terminal([ -12.20,  -2.51 ] );

$$terminal([ -11.10,  -3.30 ] );
$$terminal([  -8.40,  -3.30 ] );

$$terminal([  -7.30,  -2.51 ] );
$$terminal([   7.30,  -2.51 ] );

$$terminal([   8.40,  -3.30 ] );
$$terminal([  11.10,  -3.30 ] );

$$terminal([  12.20,  -2.51 ] );
$$terminal([  14.80,  -2.51 ] );
$$terminal([  14.80,   4.90 ] );
$$terminal([  11.50,  14.80 ] );

$$path( "SILKSCREEN_1", 0.20 );


//  Pin #1 Arrows on the Top Side.

$$initial([  -3.82,  -5.30 ], , @nosnap );
$$terminal([ -4.82,  -3.00 ] );
$$terminal([ -2.82,  -3.00 ] );
$$terminal([ -3.82,  -5.30 ] );

$$path( "SILKSCREEN_1", 0.20 );


$$initial([   -3.82,   7.00 ], , @nosnap );
$$terminal([  -5.12,   9.70 ] );
$$terminal([  -2.52,   9.70 ] );
$$terminal([  -3.82,   7.00 ] );

$$path( "SILKSCREEN_1", 0.20 );


//  Reference Designator on the Top Side.

$$text( "SILKSCREEN_1", "^$ref",  0.0,  -7.5,  2.5, @BC, 0, 1.00, 0.20, "std", "None", 0.0, 0.0 );



//  And now some silkscreen on the Bottom Side

//  Pin #1 Arrow on the Bottom Side.

$$initial([  -3.82,  -5.30 ], , @nosnap );
$$terminal([ -4.82,  -3.00 ] );
$$terminal([ -2.82,  -3.00 ] );
$$terminal([ -3.82,  -5.30 ] );

$$path( "SILKSCREEN_2", 0.20 );


//  Reference Designator on the Bottom Side.

$$text( "SILKSCREEN_2", "^$ref",  0.0, -9.0,  2.5, @BC, 0, 1.00, 0.20, "std", "None", 0.0, 0.0 );


//  End of Silkscreen




//  Now define the Pins used on the 3M Horizontal Header


$$attribute( "COMPONENT_PIN_DEFINITION",     "1", , @scale , , [  -3.81, -1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "1, M3_Norm_Signal_THD");

$$attribute( "COMPONENT_PIN_DEFINITION",     "3", , @scale , , [  -1.27, -1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "3, M3_Norm_Signal_THD");


$$attribute( "COMPONENT_PIN_DEFINITION",     "5", , @scale , , [   1.27, -1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "5, M3_Norm_Signal_THD");

$$attribute( "COMPONENT_PIN_DEFINITION",     "7", , @scale , , [   3.81, -1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "7, M3_Norm_Signal_THD");



$$attribute( "COMPONENT_PIN_DEFINITION",     "2", , @scale , , [  -3.81,  1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "2, M3_Norm_Signal_THD");

$$attribute( "COMPONENT_PIN_DEFINITION",     "4", , @scale , , [  -1.27,  1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "4, M3_Norm_Signal_THD");


$$attribute( "COMPONENT_PIN_DEFINITION",     "6", , @scale , , [   1.27,  1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "6, M3_Norm_Signal_THD");

$$attribute( "COMPONENT_PIN_DEFINITION",     "8", , @scale , , [   3.81,  1.27 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "8, M3_Norm_Signal_THD");



//  The two  Mounting Screw  Component Pins

$$attribute( "COMPONENT_PIN_DEFINITION",     "9", , @scale , , [ -9.72,  0.53 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE",  "9, M3_THD_SCREW_TERM");

$$attribute( "COMPONENT_PIN_DEFINITION",    "10", , @scale , , [  9.72,  0.53 ]);
$$attribute( "COMPONENT_PADSTACK_OVERRIDE", "10, M3_THD_SCREW_TERM");



