Skip to content

fix: correct pin numbering for sot723, msop, son, and make sot343 symmetric (#686, #677, #667) - #697

Open
sagarmaurya64-ai wants to merge 10 commits into
tscircuit:mainfrom
sagarmaurya64-ai:fix/sot723-msop-son-pin-numbering
Open

fix: correct pin numbering for sot723, msop, son, and make sot343 symmetric (#686, #677, #667)#697
sagarmaurya64-ai wants to merge 10 commits into
tscircuit:mainfrom
sagarmaurya64-ai:fix/sot723-msop-son-pin-numbering

Conversation

@sagarmaurya64-ai

@sagarmaurya64-ai sagarmaurya64-ai commented Jul 6, 2026

Copy link
Copy Markdown

This PR resolves #686, #677, and #667 by correcting the pin coordinate mapping logic for sot723, msop, and son footprints to adhere to standard layouts, and fixing the lopsided sot343 footprint.

Changes Details:

  1. SOT-723 Footprint Pin Mapping (fixes sot723 footprint numbers pins 1 and 3 on the wrong pads (1↔3 swapped vs datasheet) #686):

    • Corrected getCcwSot723Coords in src/fn/sot723.ts to map coordinates correctly: Pin 1 (top-left), Pin 2 (bottom-left), Pin 3 (alone on the right). This resolves the previous swap of Pins 1 and 3.
  2. MSOP and SON Footprints Pin Mapping (fixes msop and son footprints number the right-column pins in reverse (pins 5↔8, 6↔7 swapped on 8-pin parts) #677):

    • Corrected getMsopCoords in src/fn/msop.ts and getSonPadCoord in src/fn/son.ts so that the right column pins are numbered counter-clockwise (counting upwards rather than downwards). This resolves the swapped/reversed pins on the right side (e.g. 5↔8, 6↔7 on 8-pin variants).
  3. SOT-343 Footprint Symmetry (fixes sot343 footprint is lopsided — the right pads sit too close to the center #667):

    • Corrected getCcwSot343Coords in src/fn/sot343.ts to multiply the right column coordinates by 1.92 (matching the left side) so that the pads are symmetric about the center.
    • Updated sot343CourtyardOutline to make the courtyard outline symmetric as well.

Verification:

  • All local unit tests passed successfully (bun test).
  • Re-generated SVG snapshots for sot343 and sot343_pl1.2_pw0.9_p2_w5.2_h5 to match the correct, symmetric geometries.

Closes #686
Closes #677
Closes #667

sagarmaurya64-ai added 8 commits June 4, 2026 23:17
…sion

- Extended dfn_def schema to accept ep (bool), epw, eph parameters
- dfn generator now places an exposed/thermal center pad (pin N+1) when ep=true
- Added UTDFN-4-EP(1x1) normalisation in normalizeDefinition() mapping to
  dfn4_w1.00mm_h1.00mm_p0.65mm_pl0.30mm_pw0.25mm_ep_epw0.50mm_eph0.50mm
- Added generic utdfn -> dfn fallback for other UTDFN sizes
- Added test cases in tests/dfn.test.ts verifying pad count, EP position, and alias parity

Closes tscircuit#183
@sagarmaurya64-ai

Copy link
Copy Markdown
Author

/claim #686

@sagarmaurya64-ai

Copy link
Copy Markdown
Author

/claim #677

@sagarmaurya64-ai

Copy link
Copy Markdown
Author

/claim #667

@sagarmaurya64-ai

Copy link
Copy Markdown
Author

Hi @seveibar, friendly follow-up! This PR is ready for review - all tests pass locally. Would appreciate your feedback when you get a chance. Happy to address any changes needed. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant