Eagle: Extract a symbol from a project to a library

Eagle – a widespread PCB design tool – comes with a huge amount of libraries but sometimes it is missing the exact device you need for your project. A common way to add a new device to your libraries is to copy an existent but similar one and to adapt it to your needs.

Another more comfortable solution is – assuming you downloaded an existent eagle project from the internet – to generate a complete library with all the devices used in the schematic or board file of that project.

It’s done amazing easy with a few clicks only. In your menu toolbar there’s the ULP tool. ULP stands for User Language Program which is the language used to write scripts to add new functionality to eagle. These scripts can be seen as a kind of plugins such as there are add-ons in firefox to give it new abilities.

After clicking on the ULP tool you have to choose the exp-project-lbr.ulp ULP script.

Update (April 11th, 2013):

As of version 6.4 the export of schematic and/or board libraries has been integrated into the EAGLE GUI, available in the File menu under Export/Libraries while the new ULP exp-lbrs.ulp is replacing the existing exp-project-lbr.ulp.

The new script hasn’t been tested yet and thus the rest of this article is still referencing the old ULP. Please leave a comment if this howto cannot be applied any longer.

The script will ask you for some options but chances are that you leave them unchanged. Just click on the Collect data and Create library afterwards.

Optionally also the mechanical packages can be generated. Make your choice.

The generation can take a while now depending on the schematic and board complexity. The ULP script will finally create a file with the file name of your schematic but uses lbr as the file extension then.

You should have got now what you were looking for.

3 Comments

  1. Thanks. Your posting has been very helpful, and I was able to extract some opto libraries from this posting, http://wiki.dxarts.washington.edu/groups/general/wiki/4dd69/ which I need for my Arduino controlled AC dimmer

  2. Cyrille

    Hey,

    It seems that this is not possible with the free/trial version. Perhaps it’s due to the schematic having multiple layers…

    Cheers,
    Cyrille

  3. slopjong

    I was using the light edition. What version are you using and did you try exp-lbrs.ulp or exp-project-lbr.ulp?

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>