Difference between revisions of "GEDA Resources"
From Evil Mad Scientist Wiki
(→Footprint-generating utilities) |
(→Simulating circuits with gEDA and friends: Remove dead link) |
||
(29 intermediate revisions by 10 users not shown) | |||
Line 21: | Line 21: | ||
* gEDA can be run on Windows natively, as a cygwin application, or in a virtual machine. | * gEDA can be run on Windows natively, as a cygwin application, or in a virtual machine. | ||
* "Official" Windows installers are available [http://www.delorie.com/pcb/geda-windows/ here], maintained by [http://www.delorie.com/ DJ Delorie], one of the core gEDA developers. | * "Official" Windows installers are available [http://www.delorie.com/pcb/geda-windows/ here], maintained by [http://www.delorie.com/ DJ Delorie], one of the core gEDA developers. | ||
− | * In case of difficulty with the latest, "official" versions, | + | * In case of difficulty with the latest, "official" versions, consider [http://bibo.iqo.uni-hannover.de/dokuwiki/doku.php?id=english:geda_for_ms-windows this set] of unofficial installers. |
− | |||
* Virtual machine method: Download [http://www.virtualbox.org/ Virtualbox] and download [http://www.ubuntu.com Ubuntu], so that you can run Ubuntu in a virtual machine on your computer. (It's fast and easy!) Then, install gEDA (gschem and PCB) from the Ubuntu software center. | * Virtual machine method: Download [http://www.virtualbox.org/ Virtualbox] and download [http://www.ubuntu.com Ubuntu], so that you can run Ubuntu in a virtual machine on your computer. (It's fast and easy!) Then, install gEDA (gschem and PCB) from the Ubuntu software center. | ||
Line 32: | Line 31: | ||
* Standard method 3: Use [http://mxcl.github.com/homebrew/ Homebrew] and "brew install geda-gaf pcb". | * Standard method 3: Use [http://mxcl.github.com/homebrew/ Homebrew] and "brew install geda-gaf pcb". | ||
* Virtual machine method: Download [http://www.virtualbox.org/ Virtualbox] and download [http://www.ubuntu.com Ubuntu], so that you can run Ubuntu in a virtual machine on your computer. (It's fast and easy!) Then, install gEDA (gschem and PCB) from the Ubuntu software center. Note: this is ''faster'' than the Fink method-- under 1 hour, if you have a reasonably fast internet connection. | * Virtual machine method: Download [http://www.virtualbox.org/ Virtualbox] and download [http://www.ubuntu.com Ubuntu], so that you can run Ubuntu in a virtual machine on your computer. (It's fast and easy!) Then, install gEDA (gschem and PCB) from the Ubuntu software center. Note: this is ''faster'' than the Fink method-- under 1 hour, if you have a reasonably fast internet connection. | ||
− | * Option 4: | + | * Option 4: We highly recommend the pcb-rnd fork of PCB, available at [http://repo.hu/projects/pcb-rnd/ http://repo.hu/projects/pcb-rnd/], which is an actively developed fork implementing additional features and emphasizing portability. On the Mac, this is certainly the best option for the pcb part of gEDA. |
Once you have gEDA installed on Mac you can launch the applications by running their specific apps (gschem, pcb, gerbv, xgsch2pcb) in the terminal. [http://www.msarnoff.org/geda-mac/ Matt Sarnoff wrote wrapper applications] which you can install into your applications directory to launch the appropriate file using the associated application just by double clicking on it. Depending on which option you used to install gEDA you may need to remap them in your PATH. Instruction are in his readme. | Once you have gEDA installed on Mac you can launch the applications by running their specific apps (gschem, pcb, gerbv, xgsch2pcb) in the terminal. [http://www.msarnoff.org/geda-mac/ Matt Sarnoff wrote wrapper applications] which you can install into your applications directory to launch the appropriate file using the associated application just by double clicking on it. Depending on which option you used to install gEDA you may need to remap them in your PATH. Instruction are in his readme. | ||
+ | |||
=== Installing gEDA on Linux === | === Installing gEDA on Linux === | ||
Line 40: | Line 40: | ||
* Similar packages are available for other Linux flavors, for example as [http://packages.debian.org/sid/geda Debian Packages]. | * Similar packages are available for other Linux flavors, for example as [http://packages.debian.org/sid/geda Debian Packages]. | ||
* Those familiar with git, those keen to contribute to the code base, and those seeking the latest version, should consider building from source under linux, see [http://git.geda-project.org/ git.geda-project.org] for further details. | * Those familiar with git, those keen to contribute to the code base, and those seeking the latest version, should consider building from source under linux, see [http://git.geda-project.org/ git.geda-project.org] for further details. | ||
− | * Alternatively, you can try the pcb-rnd fork of PCB, available at [http://repo.hu/projects/pcb-rnd/ http://repo.hu/projects/pcb-rnd/], which is an actively developed fork implementing additional features and emphasizing portability. It should build on most Unix platforms with a C89 compiler and either GTK or motif for the GUI. Debian .deb packages are now available. | + | * Alternatively, you can try the pcb-rnd fork of PCB, available at [http://repo.hu/projects/pcb-rnd/ http://repo.hu/projects/pcb-rnd/], which is an actively developed fork implementing additional features and emphasizing portability. It should build on most Unix platforms with a C89 compiler and either GTK or motif for the GUI. Debian .deb packages are now available. Support for gl acceleration is now available in the default svn configuration. |
== Introductory tutorials == | == Introductory tutorials == | ||
Line 47: | Line 47: | ||
* [http://www.delorie.com/pcb/docs/gs/gs.html PCB tutorial] (layout only) by DJ Delorie | * [http://www.delorie.com/pcb/docs/gs/gs.html PCB tutorial] (layout only) by DJ Delorie | ||
* [http://sites.google.com/site/abhijit86k/linux/geda Tutorials] by Abhijit Kshirsagar | * [http://sites.google.com/site/abhijit86k/linux/geda Tutorials] by Abhijit Kshirsagar | ||
− | * [http://www.fivemanconspiracy.com/node/14 PCB basics and gEDA/PCB Tips and Tricks] -- | + | * [https://web.archive.org/web/20150302220024/http://www.fivemanconspiracy.com/node/14 PCB basics and gEDA/PCB Tips and Tricks] -- Archived forum post from 5 Man Conspiracy |
− | + | * [http://vk5hse.blogspot.com/2017/03/converting-eagle-brd-layouts-to-geda.html Converting Eagle XML layouts ] to gEDA compatible layouts HOWTO | |
+ | * [http://vk5hse.blogspot.com/2017/02/altium-to-geda-pcbpcb-rnd-conversion.html Converting Altium layouts ] to gEDA compatible layouts HOWTO. See also [https://github.com/pcjc2/openaltium openaltium]. | ||
+ | * [http://vk5hse.blogspot.com/2016/05/adding-images-to-silkscreen-in-geda-pcb.html Adding images] to the silkscreen in PCBs, HOWTO. | ||
+ | * [http://vk5hse.blogspot.com/2017/03/exotic-and-complex-footprint-creation.html Complex and exotic] footprint creation using the no nonsense cross platform CAD tool FidoCadJ, which can export layouts to gEDA PCB / pcb-rnd. | ||
== In-depth documentation about gschem and PCB == | == In-depth documentation about gschem and PCB == | ||
Line 54: | Line 57: | ||
* [http://pcb.geda-project.org/pcb-cvs/pcb.html PCB manual] | * [http://pcb.geda-project.org/pcb-cvs/pcb.html PCB manual] | ||
* [http://geda-project.org/wiki/geda:pcb_tips PCB Tips] at the gEDA wiki. ''Extremely helpful.'' | * [http://geda-project.org/wiki/geda:pcb_tips PCB Tips] at the gEDA wiki. ''Extremely helpful.'' | ||
− | + | * In addition to supporting gschem and allowing parametric footprint attributes to be used, [http://repo.hu/projects/pcb-rnd/ pcb-rnd], a fork of gEDA PCB, also allows importing of KiCad Eeschema schematic netlists, LT-Spice schematic netlists, and TinyCad schematic netlists. | |
== Symbols and Footprints == | == Symbols and Footprints == | ||
Line 63: | Line 66: | ||
* [http://www.gedasymbols.org/cvs.html The gedasymbols repository accessible via cvs]: time spent learning to checkout a copy of the repository via [http://www.nongnu.org/cvs/ cvs] will be rewarded with a local copy of the gedasymbols content and the ability to share your symbols, footprints and utilities with others | * [http://www.gedasymbols.org/cvs.html The gedasymbols repository accessible via cvs]: time spent learning to checkout a copy of the repository via [http://www.nongnu.org/cvs/ cvs] will be rewarded with a local copy of the gedasymbols content and the ability to share your symbols, footprints and utilities with others | ||
* [http://github.com/erichVK5/translate2geda translate2geda] a java utility that will convert .bxl (Vendor neutral format), .ibs, .symdef (gschem utility), .bsd (BSDL), .lbr (Eagle XML format) device descriptions into gEDA gschem and geda PCB compatible footprints (.fp) and symbols (.sym). Gerber files can also be converted into a gEDA PCB footprint with translate2geda. | * [http://github.com/erichVK5/translate2geda translate2geda] a java utility that will convert .bxl (Vendor neutral format), .ibs, .symdef (gschem utility), .bsd (BSDL), .lbr (Eagle XML format) device descriptions into gEDA gschem and geda PCB compatible footprints (.fp) and symbols (.sym). Gerber files can also be converted into a gEDA PCB footprint with translate2geda. | ||
− | * [https://github.com/erichVK5/BXL2text BXL2text], a utility to convert manufacturer supplied BXL files; BXL files contain schematic symbols and footprints. | + | * [https://github.com/erichVK5/BXL2text BXL2text], a utility to convert manufacturer supplied BXL files; BXL files contain schematic symbols and footprints. BXL2text has been enhanced to support export of multiple schematic symbols from individual BXL files, and can now export eeschema .lib libraries of symbols for KiCad users as well. |
* [http://www.msarnoff.org/symbols/ Symbols] by Matt Sarnoff | * [http://www.msarnoff.org/symbols/ Symbols] by Matt Sarnoff | ||
* [http://ashwith.wordpress.com/2010/09/23/creating-your-own-symbols-in-gschem/ Tutorial] on creating your own symbols | * [http://ashwith.wordpress.com/2010/09/23/creating-your-own-symbols-in-gschem/ Tutorial] on creating your own symbols | ||
Line 75: | Line 78: | ||
* [http://github.com/erichVK5/translate2geda translate2geda] a java utility that will convert .bxl (Vendor neutral format), .ibs, .symdef (gschem utility), .bsd (BSDL), .lbr (Eagle XML format) into gEDA gschem and PCB compatible footprints (.fp) and symbols (.sym). The translate2geda utility can also convert LT-Spice (.asc) and QUCS (.sch) files into gschem compatible schematic (.sch) files. Gerber files can also be converted into a gEDA PCB footprint with translate2geda which is useful for extracting footprints or modifying legacy designs. translate2geda can now convert the ~51 EggBot hersheydata.py font descriptions into gEDA PCB compatible font descriptions. | * [http://github.com/erichVK5/translate2geda translate2geda] a java utility that will convert .bxl (Vendor neutral format), .ibs, .symdef (gschem utility), .bsd (BSDL), .lbr (Eagle XML format) into gEDA gschem and PCB compatible footprints (.fp) and symbols (.sym). The translate2geda utility can also convert LT-Spice (.asc) and QUCS (.sch) files into gschem compatible schematic (.sch) files. Gerber files can also be converted into a gEDA PCB footprint with translate2geda which is useful for extracting footprints or modifying legacy designs. translate2geda can now convert the ~51 EggBot hersheydata.py font descriptions into gEDA PCB compatible font descriptions. | ||
* [http://github.com/erichVK5/KicadModuleToGEDA KicadModuleToGEDA] a java utility that will let you convert Kicad legacy modules and the newer s-file modules into gEDA PCB footprints. Kicad is another FOSS PCB design tool. | * [http://github.com/erichVK5/KicadModuleToGEDA KicadModuleToGEDA] a java utility that will let you convert Kicad legacy modules and the newer s-file modules into gEDA PCB footprints. Kicad is another FOSS PCB design tool. | ||
− | * [https://github.com/erichVK5/BXL2text BXL2text], a utility to convert manufacturer supplied BXL files; BXL files contain schematic symbols and footprints. | + | * [https://github.com/erichVK5/BXL2text BXL2text], a utility to convert manufacturer supplied BXL files; BXL files contain schematic symbols and footprints. BXL2text has been enhanced to support export of multiple schematic symbols from individual BXL files, and can now export eeschema .lib libraries of symbols for KiCad users as well. |
* [http://www.penguin.cz/~utx/pstoedit-pcb/ PDF to PCB footprints] via pstoedit. | * [http://www.penguin.cz/~utx/pstoedit-pcb/ PDF to PCB footprints] via pstoedit. | ||
* [https://github.com/erichVK5/image2footprint Image file to silkscreen footprint elements] via a small utility image2footprint | * [https://github.com/erichVK5/image2footprint Image file to silkscreen footprint elements] via a small utility image2footprint | ||
Line 90: | Line 93: | ||
* [https://sourceforge.net/projects/dxf2pcb/?source=directory dxf2pcb ] a python script that will convert dxf files into either elements for use in footprints, or pcb layout snippets for uses such as defining board outlines and mounting holes, by Gabriel Denk. | * [https://sourceforge.net/projects/dxf2pcb/?source=directory dxf2pcb ] a python script that will convert dxf files into either elements for use in footprints, or pcb layout snippets for uses such as defining board outlines and mounting holes, by Gabriel Denk. | ||
* [https://github.com/erichVK5/SpiralInductorFootprintGenerator SpiralInductorFootprintGenerator ] a java based spiral pcb inductor generator for gEDA PCB, and also [https://github.com/erichVK5/PlanarTransformerWindingGenerator PlanarTransformerWindingGenerator], which makes rectangular spiral inductor footprints. | * [https://github.com/erichVK5/SpiralInductorFootprintGenerator SpiralInductorFootprintGenerator ] a java based spiral pcb inductor generator for gEDA PCB, and also [https://github.com/erichVK5/PlanarTransformerWindingGenerator PlanarTransformerWindingGenerator], which makes rectangular spiral inductor footprints. | ||
+ | * [https://ehennes775.github.io/gfootgen/ gfootgen] A GUI based footprint generator written in Ruby, by Edward Hennessy. | ||
=== Format documentation === | === Format documentation === | ||
Line 99: | Line 103: | ||
* [http://sourceforge.net/apps/trac/wedana/ Wedana]: Cross-platform browser-based tools to view and edit data from gEDA applications. | * [http://sourceforge.net/apps/trac/wedana/ Wedana]: Cross-platform browser-based tools to view and edit data from gEDA applications. | ||
* [http://www.designer-iii.com/gEDA/index.html A script] to convert gschem .sch files to SVG | * [http://www.designer-iii.com/gEDA/index.html A script] to convert gschem .sch files to SVG | ||
− | * [http://vk5hse.blogspot.com/2014/09/geda-pcb-font-utilities-and-options.html Additional fonts for PCB]: Hershey single stroke fonts for gEDA PCB, some of which are decorative, as well as Chinese, Japanese and Korean glyphs, as well as Hebrew, Cyrillic and Greek fonts for the intrepid. [https://github.com/erichVK5/translate2geda translate2geda] can now convert the ~51 EggBot font descriptions into gEDA compatible font descriptions. | + | * [http://vk5hse.blogspot.com/2014/09/geda-pcb-font-utilities-and-options.html Additional fonts for PCB]: Hershey single stroke fonts for gEDA PCB, some of which are decorative, as well as Chinese, Japanese and Korean glyphs, as well as Hebrew, Cyrillic and Greek fonts for the intrepid. [https://github.com/erichVK5/translate2geda translate2geda] can now convert the ~51 EggBot font descriptions into gEDA compatible font descriptions. These fonts can now be used alongside one another in the same layout in the latest version of pcb-rnd, the gEDA PCB fork. |
* [http://letsmakerobots.com/node/38709 Using pstoedit to create silkscreen versions of bitmaps]: How to add custom images to the silkscreen layer for gEDA PCB, using pstoedit | * [http://letsmakerobots.com/node/38709 Using pstoedit to create silkscreen versions of bitmaps]: How to add custom images to the silkscreen layer for gEDA PCB, using pstoedit | ||
* [https://www.youtube.com/watch?v=3gMjHpglVUM A video tutorial] on how to convert .svg and .ps graphics to silkscreen layer artwork using inkscape, pstoedit and a text editor. | * [https://www.youtube.com/watch?v=3gMjHpglVUM A video tutorial] on how to convert .svg and .ps graphics to silkscreen layer artwork using inkscape, pstoedit and a text editor. | ||
* [https://sourceforge.net/projects/eaglepcb2freecad/ eaglepcb2freecad] 3D modelling utility which allows gEDA PCB designs to be exported to FreeCAD for 3D visualisation. | * [https://sourceforge.net/projects/eaglepcb2freecad/ eaglepcb2freecad] 3D modelling utility which allows gEDA PCB designs to be exported to FreeCAD for 3D visualisation. | ||
+ | * [http://vk5hse.blogspot.com/2017/02/altium-to-geda-pcbpcb-rnd-conversion.html altium2kicad] can be used to convert Altium layouts into Kicad layouts which can then be loaded directly by gEDA pcb-rnd | ||
+ | * [https://github.com/pcjc2/openaltium/tree/master/libopenaltium libopenaltium] is a utility that can convert altium files into gEDA compatible formats. | ||
+ | * [https://github.com/erichVK5/inkscape2pcb inkscape2pcb] consists of extension scripts that can be added to an inkscape installation's extensions folder that allow the paths in an inkscape layout to be saved as either a gEDA PCB footprint, compatible with gEDA PCB, pcb-rnd, or KiCad, or a layout to be saved in .lht format for pcb-rnd. | ||
== Simulating circuits with gEDA and friends == | == Simulating circuits with gEDA and friends == | ||
* [http://ashwith.wordpress.com/2010/09/10/circuit-simulation-in-gnulinux-lets-begin/ Beginners tutorial] at Ashwith, the first of several | * [http://ashwith.wordpress.com/2010/09/10/circuit-simulation-in-gnulinux-lets-begin/ Beginners tutorial] at Ashwith, the first of several | ||
− | |||
* [http://github.com/erichVK5/translate2geda translate2geda] a java utility that can convert LT-Spice (.asc) and QUCS (.sch)files into gschem compatible schematic (.sch) files. This is useful for those who use LT-Spice or QUCS for circuit modelling, but lay out designs for manufacture in gschem +/- gEDA PCB, or require gschem to produce schematics suitable for publishing. Simulator compatible symbols in the repository need to be added to gschem's local default symbol library. | * [http://github.com/erichVK5/translate2geda translate2geda] a java utility that can convert LT-Spice (.asc) and QUCS (.sch)files into gschem compatible schematic (.sch) files. This is useful for those who use LT-Spice or QUCS for circuit modelling, but lay out designs for manufacture in gschem +/- gEDA PCB, or require gschem to produce schematics suitable for publishing. Simulator compatible symbols in the repository need to be added to gschem's local default symbol library. | ||
* [https://github.com/klammerj/ltc2pcb ltc2pcb] a utility for importing LT-Spice netlists into gEDA PCB. | * [https://github.com/klammerj/ltc2pcb ltc2pcb] a utility for importing LT-Spice netlists into gEDA PCB. | ||
+ | * [http://repo.hu/projects/pcb-rnd/ pcb-rnd] the gEDA PCB fork now supports importing of LT-Spice netlists (if exported in Mentor format) directly. | ||
== Platform-specific tips and resources == | == Platform-specific tips and resources == | ||
Line 119: | Line 126: | ||
== Related Projects == | == Related Projects == | ||
* [https://github.com/matthiasbock/gEDA-js gEDA-js] is an attempt to port gEDA to JavaScript, for in-browser schematics & PCB design + simulation. | * [https://github.com/matthiasbock/gEDA-js gEDA-js] is an attempt to port gEDA to JavaScript, for in-browser schematics & PCB design + simulation. | ||
− | * [http://repo.hu/projects/pcb-rnd/ pcb-rnd] The pcb-rnd fork of gEDA PCB is an actively developed fork implementing additional features and emphasizing portability. It builds on MacOS X and most unix systems with a C89 compiler and either GTK or motif for the GUI. It now supports export of footprints and PCB layouts to kicad legacy (.brd) and (.mod) format, as well as an advanced search dialog for finding features on a design, and supports scripting. pcb-rnd now supports import and export of kicad s-expression layouts, including modules, in addition to direct | + | * [http://repo.hu/projects/pcb-rnd/ pcb-rnd] The pcb-rnd fork of gEDA PCB is an actively developed fork implementing additional features and emphasizing portability. It builds on MacOS X and most unix systems with a C89 compiler and either GTK, with or without gl, or motif for the GUI. It now supports export of footprints and PCB layouts to kicad legacy (.brd) and (.mod) format, as well as an advanced search dialog for finding features on a design, and supports scripting. pcb-rnd now supports import and export of kicad s-expression layouts, including modules, in addition to direct export of the kicad legacy formats. Specctra DSN export for use with freerouter is supported, as well as Specctra DSN import. pcb-rnd also supports importing KiCad Eeschema schematic netlists, as well as TinyCad, Mentor Design Capture netlists and LT-Spice netlists, as well as MUCS autorouter layouts. pcb-rnd also supports import and export of Protel Autotrax/Easytrax layouts, as well as Eagle XML and Eagle binary (v3, v4, v5) PCB layouts (including embedded netlists) and Eagle binary & XML footprint library (.lbr) import. pcb-rnd also has support for HPGL import. |
+ | * [https://github.com/DarwinNE/FidoCadJ FidoCadJ] is a cross platform Java application that allows schematic and PCB layout. pcb-rnd now supports export of layouts to FidoCadJ format, and an export module from FidoCadJ to gEDA PCB/pcb-rnd has been incorporated into the FidoCadJ codebase. This ability to export to and from FidoCadJ allows PCB designers to take advantage of cubic spline and cubic Bezier curve support in FidoCadJ when designing artistic, freeform or complicated board outlines and trackwork in gEDA pcb-rnd/PCB. |
Revision as of 13:13, 12 June 2018
Useful resources for working with gEDA, the GPL'd suite and toolkit of Electronic Design Automation software.
- Note 1: This page is a continuing work in progress.
- Note 2: This wiki is publicly editable; topical contributions are welcome.
Contents
Basics
- gEDA Project Homepage
- gEDA Answers @ Launchpad: Have questions about how to do something with gEDA? You can ask the developers.
- All about gEDA at Open Circuits
Installing gEDA
Installing gEDA on Windows
- gEDA can be run on Windows natively, as a cygwin application, or in a virtual machine.
- "Official" Windows installers are available here, maintained by DJ Delorie, one of the core gEDA developers.
- In case of difficulty with the latest, "official" versions, consider this set of unofficial installers.
- Virtual machine method: Download Virtualbox and download Ubuntu, so that you can run Ubuntu in a virtual machine on your computer. (It's fast and easy!) Then, install gEDA (gschem and PCB) from the Ubuntu software center.
Installing gEDA on Mac
- gEDA can be run on the Mac as an X11 application or in a virtual machine.
- Standard method 1: Use MacPorts, and install both "geda-gaf" and "pcb." You may also want to use the Porticus GUI to make that process easier.
- Standard method 2: Use Fink, and install the "geda-bundle." You may also want to use the Fink Commander GUI to make that process easier. More about this process here.
- Standard method 3: Use Homebrew and "brew install geda-gaf pcb".
- Virtual machine method: Download Virtualbox and download Ubuntu, so that you can run Ubuntu in a virtual machine on your computer. (It's fast and easy!) Then, install gEDA (gschem and PCB) from the Ubuntu software center. Note: this is faster than the Fink method-- under 1 hour, if you have a reasonably fast internet connection.
- Option 4: We highly recommend the pcb-rnd fork of PCB, available at http://repo.hu/projects/pcb-rnd/, which is an actively developed fork implementing additional features and emphasizing portability. On the Mac, this is certainly the best option for the pcb part of gEDA.
Once you have gEDA installed on Mac you can launch the applications by running their specific apps (gschem, pcb, gerbv, xgsch2pcb) in the terminal. Matt Sarnoff wrote wrapper applications which you can install into your applications directory to launch the appropriate file using the associated application just by double clicking on it. Depending on which option you used to install gEDA you may need to remap them in your PATH. Instruction are in his readme.
Installing gEDA on Linux
- In Ubuntu, install gEDA (gschem and PCB) from the Ubuntu software center.
- Similar packages are available for other Linux flavors, for example as Debian Packages.
- Those familiar with git, those keen to contribute to the code base, and those seeking the latest version, should consider building from source under linux, see git.geda-project.org for further details.
- Alternatively, you can try the pcb-rnd fork of PCB, available at http://repo.hu/projects/pcb-rnd/, which is an actively developed fork implementing additional features and emphasizing portability. It should build on most Unix platforms with a C89 compiler and either GTK or motif for the GUI. Debian .deb packages are now available. Support for gl acceleration is now available in the default svn configuration.
Introductory tutorials
- The classic tutorial by Bill Wilson
- Getting started with gEDA 7 MB PDF tutorial, from Cambridge University Engineering Department, covering schematics, layout, and spice
- PCB tutorial (layout only) by DJ Delorie
- Tutorials by Abhijit Kshirsagar
- PCB basics and gEDA/PCB Tips and Tricks -- Archived forum post from 5 Man Conspiracy
- Converting Eagle XML layouts to gEDA compatible layouts HOWTO
- Converting Altium layouts to gEDA compatible layouts HOWTO. See also openaltium.
- Adding images to the silkscreen in PCBs, HOWTO.
- Complex and exotic footprint creation using the no nonsense cross platform CAD tool FidoCadJ, which can export layouts to gEDA PCB / pcb-rnd.
In-depth documentation about gschem and PCB
- gschem user guide at the gEDA wiki
- PCB manual
- PCB Tips at the gEDA wiki. Extremely helpful.
- In addition to supporting gschem and allowing parametric footprint attributes to be used, pcb-rnd, a fork of gEDA PCB, also allows importing of KiCad Eeschema schematic netlists, LT-Spice schematic netlists, and TinyCad schematic netlists.
Symbols and Footprints
Symbols: Schematic symbols for use in gschem
- gedasymbols, the largest single repository
- The gedasymbols repository accessible via cvs: time spent learning to checkout a copy of the repository via cvs will be rewarded with a local copy of the gedasymbols content and the ability to share your symbols, footprints and utilities with others
- translate2geda a java utility that will convert .bxl (Vendor neutral format), .ibs, .symdef (gschem utility), .bsd (BSDL), .lbr (Eagle XML format) device descriptions into gEDA gschem and geda PCB compatible footprints (.fp) and symbols (.sym). Gerber files can also be converted into a gEDA PCB footprint with translate2geda.
- BXL2text, a utility to convert manufacturer supplied BXL files; BXL files contain schematic symbols and footprints. BXL2text has been enhanced to support export of multiple schematic symbols from individual BXL files, and can now export eeschema .lib libraries of symbols for KiCad users as well.
- Symbols by Matt Sarnoff
- Tutorial on creating your own symbols
- KicadSymbolToGEDA a java utility that will let you convert Kicad symbol libraries (.lib) into gEDA gschem compatible symbols (.sym). Kicad is another FOSS PCB design tool. Large repositories of Kicad libraries are available online and by importing existing symbols, quite a lot of time and effort can be saved.
Footprints: component footprints for use in PCB
- gedasymbols, the largest single repository
- Footprints by Matt Sarnoff
- PCB Footprints by John C Luciani -- excellent collection
- Ronja Guidelines - Creating SMD footprints (simple guide)
- translate2geda a java utility that will convert .bxl (Vendor neutral format), .ibs, .symdef (gschem utility), .bsd (BSDL), .lbr (Eagle XML format) into gEDA gschem and PCB compatible footprints (.fp) and symbols (.sym). The translate2geda utility can also convert LT-Spice (.asc) and QUCS (.sch) files into gschem compatible schematic (.sch) files. Gerber files can also be converted into a gEDA PCB footprint with translate2geda which is useful for extracting footprints or modifying legacy designs. translate2geda can now convert the ~51 EggBot hersheydata.py font descriptions into gEDA PCB compatible font descriptions.
- KicadModuleToGEDA a java utility that will let you convert Kicad legacy modules and the newer s-file modules into gEDA PCB footprints. Kicad is another FOSS PCB design tool.
- BXL2text, a utility to convert manufacturer supplied BXL files; BXL files contain schematic symbols and footprints. BXL2text has been enhanced to support export of multiple schematic symbols from individual BXL files, and can now export eeschema .lib libraries of symbols for KiCad users as well.
- PDF to PCB footprints via pstoedit.
- Image file to silkscreen footprint elements via a small utility image2footprint
Footprint-generating utilities
- Footgen, Darryl Harmon's python-based footprint generator for geda/pcb
- Ruby-based footprint generator by Stefan Salewski
- Footprintbuilder interactive Java-based footprint design tool supporting gEDA/PCB and KiCad by Robert Fitzsimons
- Browser-based footprint generator
- Browser-based rectangular footprint generator by chlazza.net
- A method of making constraint-based footprints
- fped is a parametric footprint generation utility written by Werner Almesberger that now supports export of gEDA PCB footprints. A collection of well documented, available footprints can be found at kicad-libs-modules.pdf.
- FootprintTextForPCB a java utility to turn text into footprint silk line elements that can be used as footprints or added to other footprints. Cyrillic, Greek and German Gothic(!) are also supported.
- dxf2pcb a python script that will convert dxf files into either elements for use in footprints, or pcb layout snippets for uses such as defining board outlines and mounting holes, by Gabriel Denk.
- SpiralInductorFootprintGenerator a java based spiral pcb inductor generator for gEDA PCB, and also PlanarTransformerWindingGenerator, which makes rectangular spiral inductor footprints.
- gfootgen A GUI based footprint generator written in Ruby, by Edward Hennessy.
Format documentation
- gschem symbol creation guide at the gEDA wiki
- PCB Footprint guide at the gEDA wiki
- Footprint Creation Guide (1.1 MB PDF document)
gEDA Utilities
- Wedana: Cross-platform browser-based tools to view and edit data from gEDA applications.
- A script to convert gschem .sch files to SVG
- Additional fonts for PCB: Hershey single stroke fonts for gEDA PCB, some of which are decorative, as well as Chinese, Japanese and Korean glyphs, as well as Hebrew, Cyrillic and Greek fonts for the intrepid. translate2geda can now convert the ~51 EggBot font descriptions into gEDA compatible font descriptions. These fonts can now be used alongside one another in the same layout in the latest version of pcb-rnd, the gEDA PCB fork.
- Using pstoedit to create silkscreen versions of bitmaps: How to add custom images to the silkscreen layer for gEDA PCB, using pstoedit
- A video tutorial on how to convert .svg and .ps graphics to silkscreen layer artwork using inkscape, pstoedit and a text editor.
- eaglepcb2freecad 3D modelling utility which allows gEDA PCB designs to be exported to FreeCAD for 3D visualisation.
- altium2kicad can be used to convert Altium layouts into Kicad layouts which can then be loaded directly by gEDA pcb-rnd
- libopenaltium is a utility that can convert altium files into gEDA compatible formats.
- inkscape2pcb consists of extension scripts that can be added to an inkscape installation's extensions folder that allow the paths in an inkscape layout to be saved as either a gEDA PCB footprint, compatible with gEDA PCB, pcb-rnd, or KiCad, or a layout to be saved in .lht format for pcb-rnd.
Simulating circuits with gEDA and friends
- Beginners tutorial at Ashwith, the first of several
- translate2geda a java utility that can convert LT-Spice (.asc) and QUCS (.sch)files into gschem compatible schematic (.sch) files. This is useful for those who use LT-Spice or QUCS for circuit modelling, but lay out designs for manufacture in gschem +/- gEDA PCB, or require gschem to produce schematics suitable for publishing. Simulator compatible symbols in the repository need to be added to gschem's local default symbol library.
- ltc2pcb a utility for importing LT-Spice netlists into gEDA PCB.
- pcb-rnd the gEDA PCB fork now supports importing of LT-Spice netlists (if exported in Mentor format) directly.
Platform-specific tips and resources
For Mac users
- Using themes for fink
- Mac OS X Wrappers: Little mac-friendly "launcher" apps, to launch gEDA apps in the normal Mac way. By Matt Sarnoff.
Related Projects
- gEDA-js is an attempt to port gEDA to JavaScript, for in-browser schematics & PCB design + simulation.
- pcb-rnd The pcb-rnd fork of gEDA PCB is an actively developed fork implementing additional features and emphasizing portability. It builds on MacOS X and most unix systems with a C89 compiler and either GTK, with or without gl, or motif for the GUI. It now supports export of footprints and PCB layouts to kicad legacy (.brd) and (.mod) format, as well as an advanced search dialog for finding features on a design, and supports scripting. pcb-rnd now supports import and export of kicad s-expression layouts, including modules, in addition to direct export of the kicad legacy formats. Specctra DSN export for use with freerouter is supported, as well as Specctra DSN import. pcb-rnd also supports importing KiCad Eeschema schematic netlists, as well as TinyCad, Mentor Design Capture netlists and LT-Spice netlists, as well as MUCS autorouter layouts. pcb-rnd also supports import and export of Protel Autotrax/Easytrax layouts, as well as Eagle XML and Eagle binary (v3, v4, v5) PCB layouts (including embedded netlists) and Eagle binary & XML footprint library (.lbr) import. pcb-rnd also has support for HPGL import.
- FidoCadJ is a cross platform Java application that allows schematic and PCB layout. pcb-rnd now supports export of layouts to FidoCadJ format, and an export module from FidoCadJ to gEDA PCB/pcb-rnd has been incorporated into the FidoCadJ codebase. This ability to export to and from FidoCadJ allows PCB designers to take advantage of cubic spline and cubic Bezier curve support in FidoCadJ when designing artistic, freeform or complicated board outlines and trackwork in gEDA pcb-rnd/PCB.