Kai-Martin Knaak

Kai-Martin Knaak
email: kmk@familieknaak.de

General remarks

The catalog of symbols and footprints presented here is self consistent. That is, the default footprint attribute of a symbol points to one of the footprints given in the footprint section.

Note: All my symbols, footprints and scripts are licensed GPL 2 or GPL 3 for distribution, and unlimited for use. See http://www.gnu.org/licenses.gpl.txt for the details

New Project Script

new_geda_project.sh is a little convinience script to starting a new geda project. When given a project name, it creates a simple directory structure and populates it with some config files (gafrc, attribs). In addition, it copies a documentation template in lyx format to the directory. It does the same with the bash scripts bomdruck.sh and layoutdruck.sh (see below).

Script to print a bill of materials (BOM)

The almost trivial bash script bomdruck.sh uses gnetlist to derive two versions of a bill of materials. The first lists one component per line. The other collates all components with the same value.

Scripted print of pcb layouts

The bash script layoutdruck.sh uses PCB actions on the command line of pcb to produce a set of printouts for use in documentation. These include a multi page PDF with top and bottom layout, each with values and with refdes. The layout can be spread between several sheets for large layouts.

In addition photo realistic PNG export of top and bottom side is produced. A drop shadow is added to the PNG to make the image even more photo realistic.

Note, there is a bug in pcb that prevents the execution of actions when printing from the command line. This script needs a bug patch of pcb not yet applied to the distributed version of pcb.

PDF export of all schematics in a hierarchy

The bash script schaltplandruck.sh uses print.scm from the gnetlist distribution and ps2pdf to create output. It recursively descends into subsheets of a hierarchy and collects prints every unique schematic it encounters.

More convenience scripts

  1. set_pinnumber.awk: Emits the footprint file given on the command line with the value of all pin and pad names set to the value of their number. Requires awk.
  2. set_name_value_description.sh: Sets name, value and description to the same string. I use this for footprint collections in the library.
  3. find-missing-symbols.sh: Searches all *.sch in $PWD and sub dirs for missing symbols.
  4. extract_footprints.sh: Extracts all footprints of a layout and writes them to individual files in the currrent working directory.
  5. collect_gedaconfs.sh: Collects the config files in $HOME/.gEDA and $HOME/.pcb into a compressed tar file. The path to the color file is absolute. It contains the path to the home directory of the user, who runs the script.
  6. set_number_of_pages.sh: Sets the attribute "number_of_pages" of all schematics files in the current working directory. This is a work-arround for the absence of methods to handle global attributes in gschem.
  7. set_net_of_port_symbol.sh: Sets the net attribute of port symbols to the value given by the refdes. With this setting gnetlist connects all ports of a kind. Else, only the first instance of the port with a given refdes receives connection to the parent sheet.
  8. set_linewidth.sh: Manipulates the width of selected lines. Divides or multiplies line width by 10. This is useful to temporarily suppress DRC warnings.
  9. layer_content.sh: Cut, or paste the content of a layer wholesale from a layout.

Templates

Essential Lib

The essential lib is an effort to put together an improved default library for geda/pcb. Unlike the current default it is supposed to be usable as is.

Symbols

The symbols in this sections are designed according to the following design criteria:
  1. they contain a default footprint attribute.
  2. the footprint attribute is visible on the schematic and printed with a smaller font size than the refdes and the value of the symbol.
  3. they contain a human readable description
  4. power pins of integrated circuits are split off to a seperate power symbol
  5. pin numbers are hidden, if they follow a generally accepted standard

Title blocks

These title blocks include attributes for date, author, project name and page number. These port symbols connect subsheet nets with pins of subsheet symbols on the master sheet.

Templates

Some convenience templates for symbol creation.

Analog

Generic Analog

Diodes

  • bridge_rectifier_SMD.sym - bridge rectifier, value preset to DIOTEC B40S
  • dus.sym - garden variety silicon diode, value preset to 1N4001
  • flyback_SOT23.sym - A pair of schottky diodes for flyback protection in SOT23, e.g. BAT64-04
  • laserdiode.sym - three pin laser diode
  • led_3mm.sym - LED, thru hole, 3mm diameter
  • led_SMD.sym - LED, SMD footprint, 1210.fp
  • photodiode.sym - garden variety photo diode, value preset to BPW34
  • photodiode_TO18.sym - three pin photo diode, value preset to S5972
  • schottky.sym - schottky diode, SMD minimelf, value preset to LL4148
  • tvs.sym - transient voltage suppressor diode (TVS), value preset to P6SMB18AC
  • tvs_vert.sym - TVS diode, vertical orientation
  • zener_minimelf.sym - zener diode, SMD minimelf, value preset to BZV55-Cxx
  • zener_SOT23.sym - zener diode, SMD SOT23, value preset to BZX84-Cxx
  • zener_thru.sym - zener diode, thru hole, value preset to ZPY-xx
  • Transistors

  • npn.sym - npn transistor
  • pnp.sym - pnp transistor
  • njfet.sym
  • nmosfet.sym - NMOSFET
  • nmosfet_power.sym
  • pmosfet.sym - PMOSFET
  • pmosfet_power.sym
  • igbt.sym - IGBT
  • igbt_diode.sym - IGBT with free wheeling diode
  • Opamps and Comparators

    Regulators

    Specific Analog

    Digital

    I don't do much digital electronics except for some basic 74xxx components...

    Connectors

    power symbols

    Misc

    block

    These are blocks of subcircuits I frequently use. They contain some of the above symbols. Add them to a circuit with the option "Include-as-individual-objects" checked. See the wiki for details. For some blocks preview does not work correctly because I did not embed the symbols. This is deliberate, because I want the blocks to track my changes to symbols in the library. Consequently, there is no way for gschem running on the geda-symbols server to find the symbols contained in the blocks. However, these blocks will work, if you have installed my symbols locally.

    Footprints

    template pcb

    The template.pcb may be used to start drawing footpints with the pcb GUI. Layers and sizes are set to reasonable default values.

    generic

    These footprints are meant to supersede the ones from the default library. They are designed to meet the requirement of densely populated boards with too little space to place the refdes or value between the components. Therefore the text is placed inside the frame. Pad size is sufficient to hand solder the parts.

    Connectors

    Discrete components

    Holes

    Mechanical

    Misc

    Specific

    Switches

    Changelog

    A changelog of this section of geda symbols is here



    Copyright 2011, all rights reserved unless specified otherwise.
    gedasymbols.org is maintained by DJ Delorie