Skip to content

feat: implement SPDIP footprint (SPDIP-28)#703

Open
chengdazhi wants to merge 1 commit into
tscircuit:mainfrom
chengdazhi:feat/spdip-28
Open

feat: implement SPDIP footprint (SPDIP-28)#703
chengdazhi wants to merge 1 commit into
tscircuit:mainfrom
chengdazhi:feat/spdip-28

Conversation

@chengdazhi

Copy link
Copy Markdown

Closes #180

Summary

Implements the SPDIP (Skinny/Shrink Plastic Dual In-line Package) footprint — a narrow through-hole DIP that keeps the 0.3in / 7.62mm row width even at high pin counts. spdip reuses the existing dip generator with its standard defaults (2.54mm pitch, 0.8mm holes, 1.6mm pads, rectangular pin-1 pad), which matches KiCad's DIP-28_W7.62mm exactly.

Supported strings:

  • spdip28 / spdip<N>
  • SPDIP-28 (hyphenated alias, normalized like SOT-223-5)
  • parameterized forms, e.g. spdip28_w7.62mm_p2.54mm

Verification

  • New KiCad parity test (tests/kicad-parity/spdip28_kicad_parity.test.ts) compares spdip28 against Package_DIP.pretty/DIP-28_W7.62mm: courtyard IoU 99.84% and pads fully overlap (boolean-difference snapshot).
  • Snapshot + alias + geometry-equivalence tests in tests/spdip.test.ts.
  • Full suite: bun test → 437 pass / 0 fail. bun run build succeeds.

Note: this PR was prepared with assistance from an AI coding agent; dimensions were verified against the KiCad footprint library reference.

Add spdip as a footprint function for skinny/shrink plastic DIP
packages: 0.3in (7.62mm) row width at high pin counts, 2.54mm pitch,
0.8mm holes, 1.6mm pads. SPDIP-28 matches KiCad's DIP-28_W7.62mm.

- src/fn/spdip.ts: spdip function and spdip_def (reuses dip)
- footprinter string support: spdip28 and hyphenated SPDIP-28 alias
- snapshot tests + KiCad parity test vs DIP-28_W7.62mm
  (courtyard IoU 99.84%, pads fully overlap)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement SPDIP-28

1 participant