Table of Contents

gEDA/gaf Symbol Creation Document

by: Ales V. Hvezda / July 6th, 2004

The latest version of this document may be found at: http://geda.seul.org/wiki/geda:scg

This document is released under the GNU Free Documentation License (GFDL).

Overview

This document describes the creation of component symbols, including style conventions, and hints/tips and things to look out for when drawing symbols for the gEDA/gaf system.

Component symbol creation

Component symbols (from here on known as “symbols”) are drawn using gschem just like drawing a schematic sheet. Here are the steps in a symbol in the gEDA/gaf system:
1. Run gschem and find a blank page or run: gschem filename-1.sym
2. Draw the symbol (see the style guide below for some conventions).
3. Translate the symbol to the origin using Edit/Symbol Translate…

Translating the symbol to the origin is a required step. To translate a symbol elsewhere, enter a offset (in mils) which is a even multiple of 100. Make sure all pins are snapped to a 100 mil grid point.

4. Save the symbol using Save or SaveAs… Here are some symbol naming conventions:

5. Place the symbol in one of the directories specified by the componentlibrary keyword in the system-gafrc file. Once this is done, the symbol should be visible immediately and can be selected and placed with the “Add/Select Component…” menu item.

Requirements

This section describes the various requirements which must be met in order to create a valid symbol which will display and netlist in the gEDA/gaf system. Most of the requirements center around having certain attributes attached or inside the symbol.
Running gsymcheck will check that all of these requirements are met. gsymcheck will output fatal errors which are quite serious and must be corrected. gsymcheck will also output warnings on things which should be fixed but are not fatal.
For more information on the attributes presented here, please see the Master Attribute Document.

Style

This section describes the style in which is used in the standard gEDA/gaf symbol library.

Text

Attributes

Graphics

Pins

Electrical

Footprint naming conventions

This section describes the conventions for naming of footprints used in gEDA/gaf.
The purpose of the naming convention is to establish a standard to maintain the same naming convention through the different phases of the CAD chain. This helps in ensuring that the collaborative effort of gEDA/gaf is not lost.

Notes

Integrated circuit packages

Integrated circuit SMT packages

Basic semiconductors

Basic SMT semiconductors

Passive components

Passive SMT components

Hints and Tips

This section describes some hints and tips which will make your symbol creation experience easier.

Example

This section provides a simple example which tries to follow all of the above rules. This symbol is of a 7400 (NAND gate).

v 20031231 1
L 300 200 300 800 3 0 0 0 -1 -1
T 300 0 9 8 1 0 0 0 1
7400
L 300 800 700 800 3 0 0 0 -1 -1
T 500 900 5 10 0 0 0 0 1
device=7400
T 500 1100 5 10 0 0 0 0 1
slot=1
T 500 1300 5 10 0 0 0 0 1
numslots=4
T 500 1500 5 10 0 0 0 0 1
slotdef=1:1,2,3
T 500 1700 5 10 0 0 0 0 1
slotdef=2:4,5,6
T 500 1900 5 10 0 0 0 0 1
slotdef=3:9,10,8
T 500 2100 5 10 0 0 0 0 1
slotdef=4:12,13,11
L 300 200 700 200 3 0 0 0 -1 -1
A 700 500 300 270 180 3 0 0 0 -1 -1
V 1050 500 50 6 0 0 0 -1 -1 0 -1 -1 -1 -1 -1
P 1100 500 1300 500 1 0 1
{
T 1100 550 5 8 1 1 0 0 1
pinnumber=3
T 1100 450 5 8 0 1 0 2 1
pinseq=3
T 950 500 9 8 0 1 0 6 1
pinlabel=Y
T 950 500 5 8 0 1 0 8 1
pintype=out
}
P 300 300 0 300 1 0 1
{
T 200 350 5 8 1 1 0 6 1
pinnumber=2
T 200 250 5 8 0 1 0 8 1
pinseq=2
T 350 300 9 8 0 1 0 0 1
pinlabel=B
T 350 300 5 8 0 1 0 2 1
pintype=in
}
P 300 700 0 700 1 0 1
{
T 200 750 5 8 1 1 0 6 1
pinnumber=1
T 200 650 5 8 0 1 0 8 1
pinseq=1
T 350 700 9 8 0 1 0 0 1
pinlabel=A
T 350 700 5 8 0 1 0 2 1
pintype=in
}
T 300 900 8 10 1 1 0 0 1
refdes=U?
T 500 2250 5 10 0 0 0 0 1
footprint=DIP14
T 500 2450 5 10 0 0 0 0 1
description=4 NAND gates with 2 inputs
T 500 2850 5 10 0 0 0 0 1
net=Vcc:14
T 500 3050 5 10 0 0 0 0 1
net=GND:7
T 500 2650 5 10 0 0 0 0 1
documentation=http://www-s.ti.com/sc/ds/sn74hc00.pdf

This example produces the following (using gschem):

:geda:symbol_7400-1_hidden.png

This is the same symbol with all the hidden text visible (via Edit/Show/Hide Inv Text):

:geda:symbol_7400-1.png

Document Revision History

September 14th, 2002Created symbol.tex from symbols.html
October 31st, 2002Fixed bad example symbol
February 11th, 2003Footprint naming conventions added
September 27th, 2003Applied Dan McMahill’s QFP and QFN patch
July 6th, 2004Added a bunch more details/hints to the pin section