Tuesday, November 04, 2008
Open Source EDA
Posted by Duncan Drennan at 08:30 Tags: electronic design automation , electronics , engineering , processesElectronic design automation tools like OrCAD, PADS and Altium Designer are part of an electronic engineer's day–to–day life. We need these tools to tell the story of our designs – to lay out the concepts in a symbolic form in the schematics and a physical representation in the PCB files (and much more).
Most companies use expensive commercial tools (like those mentioned above) which offer many features and benefits, but these do have some disadvantages. The biggest hurdle for smaller companies is cost, which makes it difficult to get going – you cannot earn money to pay for the tools without using the tools, which is a vicious circle. Another big disadvantage of commercial tools is their closed nature – file structures are closed and it is difficult to add custom features to the tools. Further to this, if you need improvements or bug fixes you may have to wait a long time before these become available, especially if you are a small customer. In some cases companies are bought out, forcing you to change software and go through a whole new learning curve. To phrase it differently: small users have little say in the direction of the development of the tools.
The big advantages of commercial tools are the multitude of features (if you need them), and commercial support.
gEDA. I have been using gEDA since the middle of 2007, and have completed a number of projects with it. At first I just did my schematic layout with gschem and outsourced the PCB layout which was done in PCAD. Recently I completed some PCBs for a project which where done with gEDA's PCB programme (this was my first entirely gEDA project).
I initially made my choice based on the free price of gEDA, but as I used it and learned more about how the suite works as a whole I discovered that there are far more compelling reasons to choose an open source EDA suite over a closed one.
The open nature of both the file structure and the source code is an incredibly powerful tool for productivity. Think about this simple example: the creation of PCB footprints (or land patterns). Creating footprints is often a long and arduous process which involves graphically drawing out exactly what it should look like and vetting the details. Each subtle variation on the footprint requires more time drawing and checking. The well documented open file format and excellent documentation on the creation of footprints for PCB allows scripts to be written to automate the creation of footprints resulting in a significant time saving. Similar scripts are also available for schematic symbol creation. These are really simple examples of what can be accomplished when the file structure and code is open and documented – far more exciting things can be done, just about anything you can think of!
gEDA is also blessed with a very active support and development community, which operates mainly through the gEDA mailing lists and the gEDA wiki (which provides excellent documentation). I have asked many questions and received quick and helpful responses. How long did your last support request with a commercial company take to be resolved?
Using an open source EDA suite provides more stability and control over the future of your tool chain. If a large commercial tool set is either bought out, or decides to change how it works significantly you have little choice but to embrace that change, whatever the cost or learning implications are. An open source EDA tool provides you with a never ending upgrade path for the future, as well as access to the direction the tool takes. This stability comes with a responsibility to be a part of a community, rather than just a consumer. By becoming a part of the community you create a mutualistic relationship where everyone benefits.
gEDA (or other open source EDA tools) may not be suitable for everyone, or for every project, but there are a large number of projects that can be supported by these flexible tools. Using gEDA does require a shift in the way you work, but so does any other change to your EDA tool chain. Putting in the effort to learn how to use gEDA is certainly worth it and offers the opportunity for large productivity leaps. These productivity leaps are important, as they ensure that engineers spend more time creating, designing and solving problems, rather than wasting hours on repetitive tasks. I am using it exclusively to provide solutions to my customers, and you should take a closer look at it too.
Here is a list of open projects created with gEDA. One of the most impressive open hardware projects that I have seen which uses gEDA is the Free Telephony Project, which not only shows the quality of these tools, but also the magnitude of what can be achieved with open hardware development.
Please note that files and projects created by you are entirely yours and can be used for commercial purposes without any ramifications. The projects noted above have chosen to share their work under open licenses.
There are no up–to–date Windows binaries available for gschem and I found that the PCB binaries were really slow. I run the entire suite on Cygwin. Here are the install instructions for gEDA on Cygwin. I also recommend compiling PCB on Cygwin for significantly improved performance.
I posted my thoughts on creating my first PCB with PCB to the gEDA mailing list – this may give you some ideas of initial hurdles and ideas that you will need to get through.
Get the latest posts immediately
or enter your email address:
About this blog
About Engineer Simplicity
Engineer Simplicity specialises in the design and development of electronic products.
We are in the middle of an energy crisis and each of us need to make some dramatic changes to ensure that we have electricity, and that the ...
The advert ends with the line, "The walls between art and engineering exist only in our minds." There are a couple of ways to i...
As engineers we spend a lot of time solving problems. A customer has a problem and it needs to be fixed. The electronic boards you have just...
Electronic design automation tools like OrCAD , PADS and Altium Designer are part of an electronic engineer's day–to–day life. We need...
I was pondering processes while making some tea today. Most of my process pondering these days is inspired by what Sig is doing . I think o...
eWaste is a particularly difficult issue to deal with as it contains many different materials and lots of extremely hazardous substances. I...
Load shedding and Eskom have been on the lips of many South Africans over the past few weeks. We have had some of our worst electrical outag...
Every time information is duplicated there is the possiblity of an error. Let me say that again, every time information is duplicated there ...
Mercury in compact fluorescent tubes (CFLs) is a health hazard and therefore we should not use CFLs....at least that is the false message b...
I am an advocate of making sure that every device consumes as little power as possible at all times. Indicator lights should be off, process...
- October (5)
- September (1)
- August (2)
- July (3)
- June (4)
- May (3)
- April (2)
- March (2)
- February (4)
- January (1)