The PCB design software market is admittedly a little stagnant. Newcomers often traverse old forum posts where PCB veterans suggest the same few design applications for the same few superficial reasons. The bottom line is that until recently, there were only a few good offerings and most engineers choose by experience or comfort with a particular brand of PCB software.
EAGLE is one very popular PCB design software created by Germany-based Cadsoft Computer GmbH. The name “EAGLE” is almost ubiquitous with amateur PCB design, probably due partly to its freeware option but certainly mostly due to the fact that everyone keeps mentioning it whether for better or worse. Yeah, I’m guilty too.
In a number of forums you’ll see mentions of KiCAD, EAGLE, gEDA, Fritzing, ExpressPCB, and AutoTRAX DEX. They range from free to commercial products, but regardless of their cost they all seem to be good for different reasons and it’s best to try out a bunch of them before deciding which to use for a project. Take a look at this comparison on Wikipedia for starters.
EAGLE is an old-timer: it’s been around for a while and as such has become somewhat of a standard. In fact, Sparkfun usually uploads EAGLE format files for their open-source hardware. The problem is that if you spend some time with EAGLE and then some more time with other, newer EDA (that’s Electronic Design Automation) software and you will realize that EAGLE’s UI is definitively out of date. In an industry of software where the features are similar across the board, it’s the user interface and user experience that makes all of the difference.
With the number of more modern EDA products on the market that are free, many of which have fewer (to no) board size restrictions than EAGLE Free, I think it’s worth taking a detailed look at several EDA options for PCB design newcomers.
This article will take a look at DesignSpark PCB. It’s completely free, but supposedly “commercial quality” software. Developed by Allied Electronics and RS Components (both of which are the North American and European branches of the same company) in 2010, DesignSpark is a product that tries to meet the technical needs of a wide range of engineers while still being accessible. In fact, DesignSpark PCB is one part of a group of DesignSpark products and resources.
There are a few reasons DesignSpark PCB is my first reviewed program. First, it’s a free program without limitations like freeware versions of commercial products, so it’s great for budding engineers and makers. It’s supported by a major electronics distributor which seems determined to maintain the software for the foreseeable future. There’s a serious attempt to develop a supportive community which means better tech support, fewer bugs, and more native libraries. Lastly, it supports EAGLE files and libraries which means the transition from EAGLE doesn’t mean losing past work.
Let’s dig in.
Getting To Know DesignSpark
DesignSpark starts out pretty empty: you see more functionality when editing either a schematic or a PCB layout. When creating a new file, you can choose to create standalone schematics, PCB layouts, or a project. Projects can contain an unlimited number of schematics and a single PCB layout, as well as some supporting files. Projects are for file management as well as handling schematic to PCB layout synchronization. When you want to add files to a project, you must create and save them first and then add them to the project.
Taking a look at the schematic view – see image below – there are three frames and two toolbars that form your editing experience. The left side shows your basic options for the current view and the top toolbar is mainly settings. The right frame has four possible tabs: Goto, Add Component, Component Bin in schematic view, and Layers in PCB view. The Goto tab lets you search your file for any type of net, component, whatever. Add Component is the library access window, shown in the screenshot below, which gives a list of components based on chosen library. If you need a more in depth search for components, you can open the Components window from the toolbar. Component Bin is storage for unused components. It’s good for if you want to keep your schematic uncluttered without removing component properties that you might need later. In PCB Layout mode, the right pane has a Layers tab that allows selection/hide/show options.
Schematic manipulation is easy. While I’ve had experience with PCB software before, I know that using DesignSpark has an easier learning curve than EAGLE. There are two big reasons: component creation and ModelSource. DesignSpark has a very intuitive component creation wizard. Technically, it’s three wizards: symbol, PCB symbol, and component. They’re very easy: you are presented with a choice of standard templates to help you get started. Then it’s a matter of drawing some lines and placing pins. For the most common PCB footprints, a visual dialogue lets you define the dimensions of the chip without needing to do any hand drawing. For example, for an SOIC package (such as the one in the image below, right) you can specify pad count, pad shape, chip width, and pad dimensions.
One little annoyance I had in EAGLE that still exists in DreamSpark is that while there is plenty of space in the toolbars, there is no quick select icon for basic passives, power, or ground symbols. While it was rather cumbersome to find a capacitor in EAGLE’s library system, Dreamspark alleviates the frustration by including a small “DreamSpark” component library that contains all of the basics – easily accessible from the frame on the right.
Probably one of DreamSpark’s best features is ModelSource. ModelSource is a library of component schematics and PCB footprints made free by RS Components. According to DesignSpark, the library contains over 80,000 entries. The files are available for download from their website. Having free components is good, but DreamSpark’s ModelSource integration is even better. The bottom frame of the main program window is reserve for ModelSource. When in use, you have to expand the frame to see everything, but it’s not much of a hindrance. There are three drop-down menus that allow you to narrow down your search category. Once you find the right category, a large spreadsheet-like list will download. From there, you can narrow your search even more using the parameter columns.
From there, you can load the part data, which is automatically added to a library named after its category. For example, I/O Expanders or Connectors.
It’s not perfect, though. Notably, when you want to use a part that isn’t there. ModelSource has most Atmel chips, but doesn’t include the 32-bit D-Series, or it’s also missing the I2C version of an I/O expander. Fortunately, if a similar part exists, you can make a copy of the component into your custom components library and edit the pins.
Also, sometimes I found that I had to close and open a file before the downloaded parts from ModelSource displayed in the components library frame.
The PCB layout is similarly intuitive. DesignSpark has options for auto component placement as well as auto routing. After a few adjustments to the technology file – the grand master of all PCB design rules – the auto-router was able to route with 100% completion. Copper fill was similarly easy. In the image above, I made a ground plane by drawing a rectangle covering the entire bottom layer. Trace avoidance was automatic, and if you look closely ground traces were automatically connected.
When your design is complete, DesignSpark PCB outputs industry standard files to send to manufacturers. Unlike other company-sponsored free EDA software, DesignSpark doesn’t attempt to tie you to any particular manufacturer. In fact, they have a PCB quote tool that gives an estimate from a few different manufacturers. On the other hand, the BOM quote is straight from RS Components. It’s non-committal: I promise.
A little icing is that DesignSpark includes a handy set of design calculators including heat sink dimensions, track impedance, and via resistance. It’s nothing special, but it’s a nice bonus.
Program stability is moderate. I had one issue when back annotating a change from the PCB layout to the schematic. During back annotation, the program crashed, even after repeated attempts. This had to do with an issue where similarly named nets across schematics were given qualifiers that made the PCB layout think they were different traces, so I had to manually remove the qualifier for each one. I’m hoping this is a one-time problem because otherwise this can get problematic whenever a project requires multiple schematics.
Something I didn’t like about the PCB layout view was that auto-DRC errors are displays at scarlet components on the layout. So, when you have a row of components too near the board edge, a bunch of small letters appear underneath which have to be manually deleted. You can disable “Online DRC” by un-checking the option under the Tools menu.
The online community is fairly active, but it’s hard to find much attention given to the program outside of DesignSpark forums. At least the forum is fairly active with about 7000 and 1000 posts in its top two categories: General Electronics Design Questions and Schematics Entry and PCB Layout. You should be able to find a solution to your problem there.
- Simple Layout
- Integrated 80,000 component online library (ModelSource)
- Active community
- Frequent updates
- No board size or schematic limits
- Options and properties hidden in menus
- No undocking of different tabs
- Stability problems with PCB to Schematic back annotation
- Not much mention of program outside of official community
- Windows only! *thanks jayfehr for pointing this out*
Overall, DesignSpark PCB is a very accessible, comprehensive, community-driven PCB Design program. For its minor faults, it still feels almost commercial. The UI is definitely better than EAGLE, with a more smaller learning curve. It can be a little rough on the edges, with more properties and options hidden in menus than desired, but at least they’re there. For a free package, DesignSpark PCB is a great deal, and definitely worth giving a shot if you’re looking for new EDA software.