Encoder Front Page
SRS Home | Front Page | Monthly Issue | Index
Google
Search WWW Search seattlerobotics.org

PCB Software Update

Kevin Ross

kevinro@nwlink.com

Last June, I wrote an article about my search for a new schematic and PCB capture program. If you recall, my previous conclusion was that Eagle seemed to be the best bet for your hobby dollar (in other words free!). Its been about 6 months, so I thought I would take the time to update you on the current status of my search for PCB software.

Eagle 4.0

I had been using Eagle v3.55, which in my previous opinion, really stunk, had lots of short comings, but was the best program available at the time. However, my important boards are still done using Protel for DOS. Cadsoft has recently released Eagle 4.0, which addressed many of the problems I pointed out from the previous versions. The major change for this new version is the drastic improvement in the library functions. The previous versions really didn't have any way to manage library parts. This new version has a pretty decent start at it.

The Good Stuff

Eagle 4.0 has a new library editor that allows you to browse through devices, add descriptions of what the devices are, and to create devices of your own. A device consists of a schematic symbol and a PCB package. The Schematic symbol defines what pins and layout will appear in your schematic. When you create a PCB based on this schematic, you need to have a package definition so it will know what the physical layout of the part is. Both of these make up a device. A single device is allowed to have several variations. This is a good feature as it allows you to use the same schematic symbol even though you might have several different physical sizes. For example, you can have a capacitor symbol and select a variant that has a specific hole spacing. This is a nice way to organize your parts.

eaglelibrary.gif (18738 bytes)

Another new feature is an updated 'Control Panel'. Eagle starts up with a component they call a Control Panel. It contains a list of all the files in Eagle, such as the libraries, example files, scripts, and your schematic and board files. The previous version put all of these into a single window, which ended up with several hundred files in it. The previous version wasn't useful at all!

You can also now browse through all of the libraries when you are looking for a part. There are tons of library parts in Eagle, and the new browse functionality works way better than the previous version.

The Eage 4.0 solution is an explorer like interface to the data. As you can see below, Scripts, Projects, Examples, and the host of other auxillary files have been combined into a directory like structure. It also allows you to organize all files related to your project into a subdirectory. This is a nice improvement. Here you can see that I have started a project for a 912D60 board, and all files related to that are in a subdirectory. I can also add descriptive comments to the files so I can remember what they are. Nice touch.

controlpanel.gif (14929 bytes)

All of the other nice points that I expressed in my previous article still hold true. The autorouter is well done, the DRC and ERC functions work well, and it looks like the start of a really great program.

The Not-So-Good Stuff

The only real significant changes to the program are the library and control panel functions. The rest of the schematic editor and PCB editor came through the upgrade relatively unchanged. The program still doesn't follow the Windows UI guidelines, such as being able to drag/drop and cut/copy/paste. Often times unexpected things happen. For example, if you have the delete tool selected, and accidently click somewhere on the drawing, the closest entity is deleted, even if it is on the far side of the window. This is a really strange behavior.  It isn't apparent sometimes that you have deleted something. The program should require the pointer to be within some small distance of the thing you are deleting.

I have found several strange bugs, such as the schematic editor sometimes allows you to use the mouse wheel to zoom in and out. Other times, the wheel does nothing. Switching to the PCB editor and back will cause it to start working again. Obviously a bug somewhere.

The Bad Stuff

As previously stated, the library and control panel functions are drastic improvements to the previous version, but still have some problems. For example, you still can't copy a device from one library to another. This really stinks, and really quenches my enthusiasm for this program. You also can not reference a package in another library, which means that each library device that needs a 1206 SMD package must have its own copy of the layout. You also can only have one library open for editing at a time, which is no fun at all since to copy a package and a symbol, you go through a contorted set of steps of opening and closing libraries with something on the clipboard.

My expectation would be that I can grab a device, package, or symbol and drag/drop it into another library. Anything short of this stinks. Sorry, thats just how Windows programs are supposed to work! At a bare minimum, there should at least be a copy function that does the correct thing.

In theory, the Eagle authors are working on a better way to copy parts. They really should do it soon. It appears to be one of the most common questions in their support forums, and is the one reason I haven't been willing to spend any serious money on the program.

The other bad stuff is the lack of useful documentation. The help files are for the most part useless! If you look up a keyword, it will still show you the most relavent scripting command, but doesn't tell you how the UI is supposed to work, nor does it really help you solve your problem.

Conclusion

I love it, I hate it less than before, I could learn to live with it. I might even be willing to pay for it someday! I look forward to the next version. In the mean time, it still appears to be the best bang for your hobby buck. If you are looking to get started with a schematic/PCB program, I am recommending you take a good look at Eagle.

Eagle by CadSoft

http://www.cadsoft.de/

Best of luck,

Kevin