There are thousands of devices in the 'default' library that comes with EagleCAD but whaddyaknow, the exact package/device you need isn't always going to be one of those thousands. However, instead of making a brand new device from scratch every time you can often 'merge' two existing devices, or at least reuse the SMD package. Not only will you save time, but it can minimize mistakes. (Note I say it can - be sure to always always triple check pinouts, package sizes, dimensions and more!)

This little tutorial will show you how to create a new package for an existing device. It's not a beginner tutorial so you'll have to learn how to use Eagle first, but its one of those skills that can save you tons of time.

The chip I'll be looking to add today is this fine quad 2-input NAND Schmitt trigger. Specifically, I want to add the TSSOP package
We'll start by doing a basic search for this part. I've already made a new schematic in Eagle and using the Add button and searching for *4093* (that should pop up any existing devices if they exist)
The good news is this basic device is in the 40xx library, but its only there in the SO14 (SOIC 14) and DIL14 (DIP 14) packages. The package we want is TSSOP and it ain't there!

Instead of starting completely from scratch, though, I can at least use this device/symbol which will save me some time.
To keep my parts organized, I'll start a new library. If you have your own parts library, open that one up instead. The reason for doing this rather than editing the default libraries is that if you update Eagle, you wont forget that you have to go back to the old library and copy it over. Better to just keep all custom stuff separated!
Save it somewhere in your Documents folder or wherever you keep your files...
OK now keep this new library open but go back to the main Eagle window (not schematic/board/library) and browse in the folder hierarchy until you find where you found that close-but-not-quite device. In this case, it was in 40xx
Then find the device that you want and copy it to the library (the new one, you just made!)
OK now you have a copy of the 4093 device in your own library - again it has SOIC and DIP packages already
Now we have to make a TSSOP package for it. Again, I'm lazy, so lets do what we can to 'reuse' an existing package. This will save us a bunch of time!

Go to your board editor (create the board layout if you haven't yet) and click on the ADD button. This is a bit of a hack, the easiest way I've found to browse packages.
Search for *TSSOP14* - this will pull up all matching packages
The first package looks pretty good, its from the 74xx-eu library...Now go back to the main Eagle window and find that package by browsing to the 74xx-eu library and right-click Copy to Library
Before we continue, its good to check the package and layout. I find its best to go with whatever the datasheet suggests. If you scroll down usually at the end are package/layout diagrams like this one
In the device layout editor, change over to millimeters since you can see this diagram has DIMENSIONS: MILLIMETERS in the bottom right corner. I find 0.1mm is a good choice for gridding so you can get a feel for the dimensions but its not necessary
To make it easier to select the red SMD pads, hide tDocu and tPlace (this doesn't disable or delete them, just hides them)
Next we can select the pads. This will give us the size and center location of each pad. I selected the first pad to the left of the center line. As you can tell from the Position line, these pads are on a 0.65mm pitch and are spaced 2.925mm apart. From the Smd Size line, these pads are 0.35 by 0.9mm
Lets look again at the suggested layout
Looks like what we want are pads that are 0.36 by 1.26 and have 0.65mm pitch. So the pitch is right. Lets also check the spacing of the pads. Annoyingly enough, the diagram does not indicate the middle-to-middle spacing. We'll have to do a bit of math...
OK so 2.9mm apart as well. Lets edit that pad to change the center location and SMD size to match:
Repeat for all other pads, changing the size and the spacing but not the pitch. If you want to change a bunch of pads at once, you can use the change smd command
Anyways, once done, lets save and rename this package since its been modified. I used the command line but you can also use the Rename menu command
Finally, edit the description at the bottom by clicking on the blue Description link to open up the mini window
OK we have our symbol and our package, lets merge them! Open up the device in the library
Once its open, click on New in the bottom right to create a new package variant. Select the new TSSOP14 we made
Under Variant name I like always matching the datasheet, in this case it says that the TSSOP variant is called DT
Now we can connect the pins and pads up. Right click and select Connect
Here's another trick I use to save time and avoid mistakes, if you're creating a package and the package has the same number of pins as an existing package and the pinout is the same for both you can use Copy from to duplicate the pin connections
That's it! You're done! Now there is a new device package for TSSOP-14
Now you can add your new library to the project you are working on. Select Library -> Use... and find the library you made and saved
You can now search for the device and it will pop up in your new library with the TSSOP package
Don't forget, for many of the Logic device, you have to Invoke to get the power pins
You can go to the board layout and see your nice new package

This guide was first published on Mar 17, 2013. It was last updated on Mar 17, 2013.