Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework DIP packages #58

Merged
merged 3 commits into from
Sep 3, 2023
Merged

Rework DIP packages #58

merged 3 commits into from
Sep 3, 2023

Conversation

dbrgn
Copy link
Contributor

@dbrgn dbrgn commented Jan 26, 2020

This is a total rework of DIP package generator. Another one of those PRs where I thought "let me quickly do those changes", but then I spent a total of 10-15 hours on it 😅 (Mostly research)

See LibrePCB/librepcb-parts-generator#75 for more details. Regarding the data used for generating the updated packages, please take a look at the docstring of the generator script. I spent quite some time collecting data about DIP packages.

Changes:

  • IPC 7351-C conforming names
  • Updated dimensions (based on JEDEC and real-world package sizes)
  • New silkscreen conforming to IPC 7351-C recommendations
  • Use lead span for pad x-offset, not package width
  • Added courtyard (0.4 mm excess)

Four DIP packages have been deprecated: DIP-36, DIP-48, DIP-52 and DIP-64. They have practically no real-world use, and if they do the packages sometimes deviate significantly from the standard sizes, so generic packages shouldn't be used.

Version has been bumped to v0.2.0.

@dbrgn dbrgn added fix Fix an error in an existing library element. ready for review Waiting for review by maintainers. labels Jan 26, 2020
@dbrgn
Copy link
Contributor Author

dbrgn commented Jan 26, 2020

Hmm, I'll fix the non-canonical file issues.

@dbrgn
Copy link
Contributor Author

dbrgn commented Jan 26, 2020

The problem was the version, LibrePCB prefers 0.2 over 0.2.0. Not sure if that's a good idea, but that's how it is 🙂

I also added courtyards to the packages. Ready for review.

@ubruhin
Copy link
Contributor

ubruhin commented Feb 8, 2020

Nice! 👍

Use lead span for pad x-offset, not package width

Although this might sound reasonable, it's very strange to have DIP packages with a pad distance which is not a multiple of 2.54mm. In probably every EDA library DIP packages have a pad distance of 7.62mm or 15.24mm. And these packages also fit on breadboards with 2.54mm grid.

The problem was the version, LibrePCB prefers 0.2.0 over 0.2. Not sure if that's a good idea, but that's how it is slightly_smiling_face

That's to make the file format more canonical by disallowing different representations for the same version number ("0.2" and "0.2.0.0.0.0" are different, but represent the same version number) 😉

@ubruhin ubruhin added needs corrections Pull request needs corrections before next review. and removed ready for review Waiting for review by maintainers. labels Mar 30, 2020
@dbrgn dbrgn force-pushed the rework-dip-packages branch 2 times, most recently from 94f165a to cb9d4cd Compare April 19, 2022 21:45
@dbrgn
Copy link
Contributor Author

dbrgn commented Apr 19, 2022

Finally updated 😂

@dbrgn dbrgn added ready for review Waiting for review by maintainers. and removed needs corrections Pull request needs corrections before next review. labels Apr 19, 2022
Those packages have practically no real-world use, and if they do, the
packages sometimes deviate significantly from the standard sizes, so
generic packages shouldn't be used in those cases anyways.
@ubruhin
Copy link
Contributor

ubruhin commented Sep 1, 2023

Rebased and re-generated with the changes from LibrePCB/librepcb-parts-generator#75 (comment).

In addition, I quickly resolved all warnings on the deprecated DIP packages. The auto-generated package outline and courtyard polygons are not as accurate as those from the parts generator, but I think that's good enough for deprecated packages and better than just approving all warnings.

This is the result of librepcb-parts-generator PR 75:
LibrePCB/librepcb-parts-generator#75

- IPC 7351-C conforming names
- Updated dimensions (based on JEDEC and real-world package sizes)
- New silkscreen conforming to IPC 7351-C recommendations

Version has been bumped to v0.2.0.
@ubruhin ubruhin merged commit 3821cef into master Sep 3, 2023
2 checks passed
@ubruhin ubruhin deleted the rework-dip-packages branch September 3, 2023 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
fix Fix an error in an existing library element. ready for review Waiting for review by maintainers.
Development

Successfully merging this pull request may close these issues.

2 participants