GEDA
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 started because of the lack of free EDA tools for POSIX systems with the primary purpose of advancing the state of free hardware or open source hardware. The suite is mainly being developed on the GNU/Linux platform with some development effort going into making sure the tools run on other platforms as well.
(Source: gEDA homepage)
Installation
Installing geda-gafAUR will give you the schematic editor and attribute editor. It may also be necessary to install ttf-dejavu and ttf-liberation to get the correct font scaling.
Installing pcbAUR will give you the PCB editor.
First PCB
Create schematic symbol
You can create new as you are creating schematics themselves. Open an empty file
$ gschem mysymbol.sym
and add pins with ap
and attributes with aa
. Check the geda wiki for details. After you are done, do not forget to translate your symbol to absolute zero with et
. If you do not, your symbol will probably be outside of your viewport once you are going to place it in your schematic.
Save the symbol with fs
and check it with
$ gsymcheck -vv mysymbol.sym
Schematic search path
Do not forget to place your symbol within the search path of gschem. It may also be helpful to extend this path to a folder in your own project by creating a file named
gafrc
in the project folder with the following content
(component-library "./symbols")
and then copy all symbols required by the project into a subfolder called "symbols".
Create schematic
Run schematic editor:
$ gschem
See also:
Create and route PCB
Once you have reached a point of your schematic where you want to start routing the PCB (you can do this in an iterative fashion), it is time to create a gsch2pcb project. Add the following lines to a newly created file, called firstpcb.prj
:
schematics firstpcb.sch empty-footprint nofootprint output-name firstpcb
This project will read from firstpcb.sch, ignore any parts having a footprint called 'nofootprint' and the output files will start be:
- The PCB: firstpcb.pcb
- The netlist: firstpcb.net
- Pin name commands: firstpcb.cmd
- ...
If you opted for a local symbols directory, you should include it here. Also you probably want a local footprint directory, too. So add these lines to the prj file:
elements-dir footprints elements-dir symbols
Now execute gsch2pcb with this project file:
$ gsch2pcb -f firstpcb.prj
gsch2pcb will tell you what to do next or if there were any errors.