Skip to content

Implement UTDFN-4-EP(1x1) footprint#641

Open
ChandraDvitiyah wants to merge 1 commit into
tscircuit:mainfrom
ChandraDvitiyah:implement-utdfn-4-ep-1x1
Open

Implement UTDFN-4-EP(1x1) footprint#641
ChandraDvitiyah wants to merge 1 commit into
tscircuit:mainfrom
ChandraDvitiyah:implement-utdfn-4-ep-1x1

Conversation

@ChandraDvitiyah
Copy link
Copy Markdown

Summary

  • add a UTDFN footprint generator backed by the existing VSON pad layout
  • normalize KiCad-style UTDFN-4-EP(1x1) strings to the new utdfn4_w1mm_h1mm_ep footprint
  • cover the alias, exposed-pad output, and SVG snapshot

Fixes #183

Testing

  • npx biome check src/fn/utdfn.ts src/fn/index.ts src/footprinter.ts src/helpers/zod/AnyFootprinterDefinitionOutput.ts tests/utdfn.test.ts tests/__snapshots__/utdfn4_w1mm_h1mm_ep.snap.svg
  • npm run build
  • node -e 'import("./dist/index.js").then(({fp})=>{const cj=fp.string("UTDFN-4-EP(1x1)").circuitJson(); const pads=cj.filter(e=>e.type==="pcb_smtpad"); const same=JSON.stringify(cj)===JSON.stringify(fp.string("utdfn4_w1mm_h1mm_ep").circuitJson()); console.log({pads:pads.length, sameAlias:same, thermalPad:pads[pads.length-1]})})'

Note: bun is not installed in this environment, so I could not run bun test. A full npx tsc --noEmit currently fails on existing test typing issues unrelated to this change.

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 UTDFN-4-EP(1x1)

1 participant