Taking the pain out of making custom Eagle parts

eagle

Cadsoft’s Eagle is a great tool for the independent maker. It’s a relatively easy to use PCB layout program with a ton of part libraries available for just about any project. If you’re using a part this isn’t included in these libraries, though, creating them by hand is a pain. [Dave] sent in a project he’s been working on that makes parts for Eagle with a Perl script, allowing for easy creation of custom parts that aren’t included in any library.

One thing that’s really convenient for custom Eagle parts is that most components are DIPs or some sort of leaded SMD component. [Dave]‘s script takes the dimensional data from any chip’s datasheet and creates a custom outline for each part. The inputs and outputs can also be ripped directly from the datasheet and assigned to the footprint, making for a relatively automated process that creates custom parts in Eagle. Now for someone to use this script with a little OCR to make a ‘create Eagle part from PDF’ app…

Comments

  1. 94b says:

    why don’t we start a database of ic-footprints and pin-names that is not bound to a application.
    you can define your parts with a little gui in your browser, or by a ini-style like syntax. you can fork existing parts, or add a smd variant of a existing dip part by just moving around some pins. all parts have a wiki like history and you can mark them as correct or wrong.
    when your done, you click export and you will get your footprints for kicad, eagle, fritzing, or you write your own converter and just download the definition file,..

  2. Rob Gray says:

    Nice job but it looks like the usual unintelligible crap that Eagle produces. Can you make it legible? Or is that just how Eagle presents labels etc?

  3. Nick Johnson says:

    You wouldn’t actually need OCR – most manufacturer datasheets are text, not scanned images.

  4. AGMLego says:

    Seems to me there is already a ULP script that does a lot of this… Oh yeah, make-symbol-device-package-bsdl.ulp.

    • make-symbol-device-package-bsdl.ulp is great for doing a one-off part. But sometimes I need to modify a part. Does this ULP provide any way to recall all the information I typed into it previously so I can make just a small modification? Does the ULP have a way to make several package variants and then link them all to the same schematic symbol? If I have a library of parts and decide to make a global change to them, is there some way to run the ULP in a batch mode and regenerate the entire library without a bunch of manual point-and-click? That’s what I was trying to avoid with my perl library.

      Different tools solve different problems.

  5. Arlet says:

    I use a short perl script to convert a flat text file to a bunch of xml. The text file has two columns: pin number and pin name. I copy the xml output directly in the parts library using a text editor, and then I open it up in Eagle to rearrange the pins and draw an outline.

    If the manufacturer cooperates, the pin numbers/names can be extracted from the datasheet.

  6. Joejoedancer says:

    After the painful switch to KiCAD I don’t have to worry about this crap anymore.

  7. Tron9000 says:

    Farnell already do this for popular IC’s not already in EAGLE, they must have some guy punching out EAGLE scripts, admittedly they are crap! but a few tweaks compared to starting from scratch saves more time.

  8. JB says:

    >If you’re using a part this isn’t included in these libraries, though, creating them by hand is a pain.
    Not at all.
    Creating a new part is a walk in the park. It wont be for the new user of course, but it is really easy.
    Read the manual and/or follow a tutorial and make a few devices as a test. It’s super simple.
    And, you’ll be able to make ANYTHING, not just the devices that this script supports.
    I’d say that the packages supported by the script, are to 95% already in the standard EAGLE libraries. The pin-outs are not, obviously.

    Scripts like this reminds of the “Give the starving man a fish and he’ll have food for a day, teach him to fish and he’ll have food for life”.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 93,838 other followers