tscircuit / tscircuit/footprinter
tqfp44 generates a 0.5mm pitch with 0.30mm pads, but TQFP-44 is a 0.8mm-pitch part
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 29
- Forks
- 128
- Avg merge
- 16h 30m
- Merged PRs (30d)
- 6
Description
What happens
fp.string("tqfp44") (and tqfp44_w10) produces a 44-pin QFP on a 0.5mm pitch with 0.30mm-wide pads.
What it should be
TQFP-44 is standardized as a 10x10mm body on 0.8mm pitch (JEDEC MS-026 BBA). KiCad's TQFP-44_10x10mm_P0.8mm uses 0.8mm pitch with 1.475 x 0.55mm pads. footprinter already emits exactly those values for its sibling TQFP-32, which is also a 0.8mm-pitch part. The current output matches no real TQFP-44, so a board that uses tqfp44 gets pads at 0.5mm pitch instead of 0.8mm and too narrow to sit under the leads.
Root cause
In src/fn/tqfp.ts the pitch and pad-width defaults place case 44 in the 0.5mm-pitch, 0.30mm-pad group with 48/64/100. TQFP-44 belongs with case 32 (0.8mm, 0.55mm).
Evidence
footprinter tqfp44 |
KiCad TQFP-44_10x10 | |
|---|---|---|
| pitch | 0.5mm | 0.8mm |
| pad width | 0.30mm | 0.55mm |
| pad length | 1.475mm | 1.475mm |
I have a fix ready with a kicad-parity test and will open a PR.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in src/fn/tqfp.ts and inspect the defaults for cases 32 and 44, then run the kicad-parity test mentioned in the issue. Confirm that tqfp44 and tqfp44_w10 match the KiCad TQFP-44_10x10mm_P0.8mm pitch and pad dimensions, while preserving the existing sibling behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 48/100