Skip to content

fix: add footprint test for spdip-28#426

Open
joncherry wants to merge 4 commits intotscircuit:mainfrom
joncherry:spdip-28
Open

fix: add footprint test for spdip-28#426
joncherry wants to merge 4 commits intotscircuit:mainfrom
joncherry:spdip-28

Conversation

@joncherry
Copy link
Contributor

@joncherry joncherry commented Nov 17, 2025

/closes #180

Summary

It appears to me that the issue for SPDIP-28 fits into the dip function at src/fn/dip.ts so I have added a test for that.

Evidence

I looked at this doc. When converting from inches to mm in the doc, the my new test seems to have good dimensions that match the doc. 0.300 inch width and 0.100 inch pitch become 7.62mm and 2.54mm respectively. The pin diameter of 0.018 inch becomes 0.457 mm which should fit into the default ID of the pin holes on the test which seems to be 1.0mm
https://ww1.microchip.com/downloads/aemDocuments/documents/corporate-responsibilty/environmental/material-compliance-documents/28L_SPDIP_300_SP_C04-070B.pdf

also the footprint visually resembles the footprint from jlc search:
https://jlcsearch.tscircuit.com/components/list?package=SPDIP-28
Screenshot from 2025-11-17 13-36-27

Here's the Google AI overview of what SPDIP-28 means:

expand In a PCB context, SPDIP-28 refers to a specific type of integrated circuit (IC) package, describing its physical characteristics and pin count. Meaning of each part
S - Shrink or Skinny. This indicates a smaller form factor compared to a standard Plastic Dual In-line Package (PDIP), typically meaning:
    Narrower body width: Often 0.3 inches (300 mils) wide, whereas a standard high-pin-count DIP (like 28 pins) might typically be 0.6 inches wide.
    Denser pin pitch (less common): In some cases, it can refer to a package with a smaller pin-to-pin pitch, such as 0.07 inches (1.778 mm), instead of the standard 0.1 inches (2.54 mm) pitch. The 0.3-inch width with 0.1-inch pitch is the more common use for 28-pin devices from manufacturers like [Microchip](https://www.microchip.com/mymicrochip/filehandler.aspx?ddocname=en595838).
PDIP - Plastic Dual In-line Package. This describes the type of construction (plastic body) and the arrangement of pins in two parallel rows along the longer sides of the rectangular package.
28 - 28 pins. This specifies the total number of electrical connecting pins the component has. 

Key characteristics for PCB design

Mounting: It is a through-hole package, meaning its pins are designed to be inserted into holes drilled in the PCB and soldered on the other side.
Dimensions: The most crucial dimensions for PCB layout are the number of pins (28), the pin pitch (usually 0.1 inches/2.54 mm), and the row spacing (typically 0.3 inches/300 mils for "skinny" versions).
Application: These packages were widely used for microcontrollers and other ICs, and they require a compatible PCB footprint or a DIP socket, especially in prototyping or older consumer electronics.

Copy link
Contributor

@nailoo nailoo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dip and spdip are same???

@joncherry
Copy link
Contributor Author

dip and spdip are same???

They are as far as I have been able to tell. See the "expand" part of my description comment above for the Google AI overview of what SPDIP-28 means.

Copy link
Member

@techmannih techmannih left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@joncherry i think you need to implement spdip footprint cc @seveibar
Screenshot_2025-11-22-08-48-44-66_40deb401b9ffe8e1df2f1cc5ba480b12

@joncherry
Copy link
Contributor Author

joncherry commented Nov 22, 2025

@joncherry i think you need to implement spdip footprint cc @seveibar

@techmannih that AI answer is still saying basically the same thing as the AI answer in my "expand" section. The S in SPDIP stands for skinny. The only difference is the width and perhaps pitch as far as I can find online.

@joncherry
Copy link
Contributor Author

joncherry commented Nov 22, 2025

@techmannih see https://ww1.microchip.com/downloads/aemDocuments/documents/corporate-responsibilty/environmental/material-compliance-documents/28L_SPDIP_300_SP_C04-070B.pdf from my description comment above which is the pdf that I used as my source for dimensions.

Edit: looks like kicad viewer has smdip but doesn't have spdip.

@joncherry joncherry requested a review from techmannih November 30, 2025 01:45
@techmannih
Copy link
Member

@joncherry I reviewed your PDF — it documents the CAD model, but it doesn’t cover the footprints. It looks like you converted a dip into an spdip, but dip and spdip are distinct footprints and shouldn’t be treated as the same. Please either update the PDF to include the correct footprint details and implement a proper spdip footprint.

@joncherry
Copy link
Contributor Author

@joncherry I reviewed your PDF — it documents the CAD model, but it doesn’t cover the footprints. It looks like you converted a dip into an spdip, but dip and spdip are distinct footprints and shouldn’t be treated as the same. Please either update the PDF to include the correct footprint details and implement a proper spdip footprint.

@techmannih the PDF is just one that I found online and not mine. I don't know what differences there are between spdip and dip except for primarily width. If there is no other difference, but you just want a separate file for spdip, that is one thing -- But if there is another difference in the footprints, then I would need you to tell me about it, because I have not found any online after looking through a lot of docs.

I can also just close this PR if this is just something needs to be handled by someone with greater understanding of spdip.

Copy link
Contributor

@rushabhcodes rushabhcodes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add kicad parity test too if possible

@joncherry
Copy link
Contributor Author

@joncherry
Copy link
Contributor Author

@techmannih I have moved on to other projects, so I won't be working on this anymore. Anyone can feel free to take over or borrow from this PR. I hope the work I have done is useful to someone.

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

4 participants