gEDA FAQ

What is the gEDA project?

The gEDA project has produced and continues working on a full GPL'd suite and toolkit of Electronic Design Automation tools. These tools are used for electrical circuit design, schematic capture, simulation, prototyping, and production. Currently, the gEDA project offers a mature suite of free software applications for electronics design, including schematic capture, attribute management, bill of materials (BOM) generation, netlisting into over 20 netlist formats, analog and digital simulation, and printed circuit board (PCB) layout.

The gEDA project was launched by Ales Hvezda in Spring 1998 in order to advance the state of free hardware and open source hardware. Over the past ten years, the gEDA software and the community have grown considerably. A few people are contributing to the original tools, while others are doing their own development on their own tools. “gEDA” does not refer solely to the original tools anymore (those tools now stand on their own), but instead to all the projects which are free and are somehow associated with this webpage or the gEDA mailing lists. By associating with gEDA, free software authors do not give up any control over their tools, but they gain a community which cares about quality and free (as in freedom) EDA tools.

gEDA can be pronounced “gee-daahhh” (rhymes with cheetah) or “g-dahhh (short g).

What is gEDA/gaf and how does it relate to gEDA?

gaf stands for “gschem and friends”. It is a subset of the entire tool suite grouped together under the gEDA name. gEDA/gaf is a collection of tools which currently includes:

The gEDA/gaf tools share a common file format (.sch) and also share a common link library (libgeda.so). The gEDA/gaf source distribution can be found on this website (http://www.geda-project.org).

Even though gaf is very much a part of gEDA, the gEDA name does not necessarily only apply to gaf – tools gathered under the “gEDA” moniker include many other programs. Indeed, gEDA refers to any GPL'd EDA tool which decides to associate itself with the gEDA website/mailing list. Important examples of gEDA tools include the layout program PCB, the Verilog compiler Icarus Verilog, the analog circuit simulator gnucap, and the open-source SPICE simulator ngspice. Many other gEDA programs also exist.

For historical reasons, on freshmeat gaf is known as the package “gEDA”.

What is the gEDA suite?

The gEDA suite is the collection of all the various tools that are part of, associated with, or just plain work with the gEDA project’s software. Currently the gEDA suite includes:

Why? What makes gEDA so different from other EDA tools?

Tools in the gEDA suite and associated tools have the following characteristics:

gEDA may not have all the latest cutting edge features found in other packages and may be viewed sometimes as being on the trailing edge of EDA technology, but the tools are becoming useful to a lot of people for the above mentioned reasons.

Why does the gEDA Suite seem like a collection of random programs, and not a single integrated application?

The gEDA suite is indeed a confederacy of somewhat independent programs. This happened for reasons of history: Ales Hvezda started the gEDA project more or less on his own. The original vision was to produce an end-to-end software suite for creating PC boards so that robotics hobbiests could design their own boards. However, as the gEDA project progressed the large magnitude of this task became clear – and coding many of the proposed apps had not even begun!

Meanwhile, other software developers – with their own independently written applications – found the gEDA project vision compelling. The authors of those applications joined Ales and contributed their programs to the gEDA project. Amongst the contributed projects was “pcb”, a ten year old (at that time) PCB layout program. With the contribution of “pcb”, gEDA’s originally planned layout tool “gpcb” was scuttled. At the same time, other developers contributed analog and digital simulators, waveform viewers, and so on.

In this way the gEDA suite came together. It is not shared code, or a common user interface which distinguishes the gEDA suite. Rather, the shared vision of an open-source EDA environment is the thread which holds the project together. Today, the gEDA Suite is a collection of many different programs contributed by many different authors. The apps strive to work together, and usually succeed. But the separate beginnings of each program in the suite are still observable. Nonetheless, with a little work the various components of the suite are interoperable, and many people have completed quite complex board designs using the gEDA suite.

In the end, the best way to think about the gEDA suite is as an EDA toolkit. This toolkit approach gives the end user considerable control. End users can modify or completely replaces parts of the design flow to suit their own requirements.

So which is better, a suite (i.e. confederacy) of programs or an integrated application?

This is ultimately a matter of religion. I’ll summarize some of the pros and cons (as I see them) of each approach here.

Suite (confederacy) pros:

Suite (confederacy) cons:

Monolithic application pros:

Monolithic application cons:

Tool XXX is missing critical feature YYY! What can I do?

Newbies sometimes show up on the gEDA mailing lists and flame the project for missing features, perceived bugs, and supppoesd UI quirks. The gEDA developers are very interested in receiving constructive feedback and criticism, so we do welcome feature requests and bug reports. But please keep in mind that the developers are full-time professional EEs or software engineers, and work on gEDA as an unpaid, fun hobby. Unconstructive or ill-informed flames are not the way to get new features implemented.

If you need a new feature implemented in one of the gEDA tools, here are your options:

What license does gEDA use?

All of the tools and associated files in gEDA will be released under the GNU General Public License version 2 (GPL), from the Free Software Foundation.

From the license:

“When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.”

This cannot be stressed enough: gEDA is GPLed software. Therefore nothing proprietary can be distributed with gEDA like part libraries from proprietary EDA products. Conversion programs for proprietary libraries will be available, but any converted files which are part of a proprietary product must never find their way into gEDA. Contributed files must be GPLable (or be placed under another free license). Please keep this in mind if you wish to contribute something.

Even though the focus of gEDA is GPLed software, other software licenses are more than welcome to be mixed with the existing software, as long as they are compatible with the GPL.

For more information about the license used by gEDA, please read the licensing page.

Where can I get more information about and download gEDA?

The official website is gEDA Project.

There are several mailing lists. Please look at the mailing lists page for how to subscribe and post.

You can download all the software from the download page.

You can find the latest set of documentation on the top-level documentation page.

Okay, how do I start using gEDA?

The most important thing to do is to read and understand one or both of the tutorials available online:

Also be sure to check out the other gEDA documentation. An installation guide is contained in this Wiki, as is some general information about how to use the tools. Spend some time browsing, download the gEDA Suite, and try it out for yourself!