Designing printed circuit boards (PCB)

 <<This is a compilation of Dave Jones’ PCB design tutorial [1] >>

General Rules for PCB Design

The major document that covers PCB design is IPC-2221, “Generic Standard on
Printed Board Design”. This standard superseded the old IPC-D-275 standard (also Military Std 275) which has been used for the last half century.


So which units do you use for what? As a general rule, use mils for tracks, pads, spacings and grids, which are most of your basic “design and layout” requirements. Only use mm for “mechanical and manufacturing” type requirements like hole sizes and board dimensions

Snap grid

100 mils is a standard placement grid for very basic through hole work, with 50 mils being a standard for general tracking work, like running tracks between throughhole pads. For even finer work you may use a 25 mils snap grid or even lower.

Good PCB layout practice would involve you starting out with a coarse grid like 50 mils and using a progressively finer snap grid if your design becomes “tight” on space.


Real world typical figures are 10/10 and 8/8 for basic boards. The IPC standard recommends 4 mils as being a lower limit.  As a start, you may like to use say 25 mils for signal tracks, 50 mils for power and ground tracks, and 10-15 mils for going between IC and component pads.


As a simple rule of thumb, the pad should be at least 1.8 times the diameter of the hole, or at least 0.5mm larger. Pads for leaded components like resistors, capacitors and diodes should be round, with around 70 mils diameter being common. Dual In Line (DIL) components like IC’s are better suited with oval shaped pads (60 mils high by 90-100 mils wide is common). Pin 1 of the chip sould always be a different pad shape, usually rectangular, and with the same dimensions as the other pins.


Holes in vias are usually a fair bit smaller than component pads, with 0.5-0.7mm being typical


Make sure you place polygons after you have placed all of your tacks and pads


At least 15 mils is a good clearance limit for basic through hole designs, with 10 thou or 8 thou being used for more dense surface mount layouts. If you go below this, it’s a good idea to consult with your PCB manufacturer first.

For 240V mains on PCB’s there are various legal requirements, and you’ll need to consult the relevant standards if you are doing this sort of work. As a rule of thumb, an
absolute minimum of 8mm (315 thou) spacing should be allowed between 240V tracks and isolated signal tracks. Good design practice would dictate that you would have
much larger clearances than this anyway.

Component Placement & Design

We have already looked at the grids and track/pad sizes, these should be the first things that you set up before you start doing anything. No exceptions!
The best way to start your layout is to get ALL of your components onto the screen first.
As a general rule, your components should be neatly lined up. Having ICs in the same direction, resistors in neat columns, polarised capacitors all around the same way, and connectors on the edge of the board. Although, electrical parameters should always take precedence over nicely lined up components. Good placement is a good majority of your work done.
Getting someone to check your board may sound like an overly bureaucratic process, but it really is a vital step. No matter how experienced you are at PCB design, there will always be something you overlooked. A fresh pair of eyes and a different mindset will pick up problems you would never see.
  • Set your snap grid, visible grid, and default track/pad sizes.
  • Throw down all the components onto the board.
  • Divide and place your components into functional “building blocks” where possible.
  • Identify layout critical tracks on your circuit and route them first
  • Place and route each building block separately, off the board.
  • Move completed building blocks into position on your main board.
  • Route the remaining signal and power connections between blocks.
  • Do a general “tidy up” of the board.
  • Do a Design Rule Check.
  • Get someone to check it

Basic Routing

  • Keep nets as short as possible. The longer your total track length, the greater it’s resistance, capacitance and inductance. All of which can be undesirable factors.
  • Tracks should only have angles of 45 degrees. Avoid the use of right angles, and under no circumstances use an angle greater than 90 degrees. Contrary to popular belief, sharp right angle corners on tracks don’t produce measurable EMI or other problems. The reasons to avoid right angles are much simpler – it just doesn’t look good, and it may have some manufacturing implications.
  • “Snake” your tracks around the board, don’t just go “point to point”. Point to point tracking may look more efficient to a beginner at first, but there are a few reasons you shouldn’t use it. The first is that it’s ugly, always an important factor in PCB design! The second is that it is not very space efficient when you want to run more tracks on other layers.
  • Enable your Electrical grid, which is sometimes referred to as a “snap to center” or “snap to nearest” option.
  • Always take your track to the center of the pad, don’t make your track and pad “just touch”. There are few reasons for this. The first is that it’s sloppy and unprofessional.
  • Use a single track, not multiple tracks tacked together end to end. It may make no difference to the look of your final board, but it can be a pain for future editing. Often you’ll have to extend a track a bit. In this case it’s best to delete the old one and place a new one. It may take a few extra seconds, but it’s worth it. People looking at your finished board may not know, but YOU’LL know! It’s the little touches like this that set good PCB designers apart.
  • Only take one track between 100 mil pads unless absolutely necessary. Only on large and very dense designs should you consider two tracks between pads.
  • For high currents, use multiple vias when going between layers. This will reduce your track impedance and improve the reliability. This is a general rule whenever you need to decrease the impedance of your track or power plane.
  • “Neck down” between pads where possible.
  • If your power and ground tracks are deemed to be critical, then lay them down first. Also, make your power tracks as BIG as possible.
  • Keep power and ground tracks running in close proximity to each other if possible, don’t send them in opposite directions around the board. This lowers the loop inductance of your power system, and allows for effective bypassing.
  • Keep things symmetrical. Symmetry in tracking and component placement is really nice from a professional aesthetics point of view.
  • Don’t leave any unconnected copper fills (also called “dead copper”), ground them or take them out.
  • Do not place vias under components.
  • Try and use through hole component legs to connect top tracks to bottom tracks.

Finishing Touches

  • If you have thin tracks (<25 thou) then it’s nice to add a “chamfer” to any “T”
    junctions, thus eliminating any 90 degree angles.
  • Check that you have any required mounting holes on the board
  • Minimise the number of hole sizes.
  • Double check for correct hole sizes on all your components
  • Ensure that all your vias are identical, with the same pad and hole sizes.
  • Check that there is adequate physical distance between all your components. Watch out for components with exposed metal that can make electrical contact with other components, or exposed tracks and pads.
  • If you wish, add “teardrops” to all your pads and vias

Single-Sided Design

Jumpers: the lesser, the better.

Double Sided Design

Stick to using good component placement techniques and efficient building block routing. Double sided design can also give you the chance to make use of good ground plane techniques, required for high frequency designs. This will be discussed later.

Other Layers


When laying out your own component footprints, were possible, make sure that you add a component overlay that reflects the actual size of your component. This way you will be able to tell at a glance how close you can physically position your components. Ensure that all polarised components are marked, and that pin 1 is identified

Solder Mask

The gap it leaves between the pad and the solder mask is known as the “mask expansion”. The mask expansion should usually be set to at least a few thou. Be careful not to make it too big, or there might be no solder mask between very fine pitch devices

Mechanical Layer

The mechanical layer (which may go under other names depending on the package) is used to provide an outline for your board, and other manufacturing instructions. It is not part of your actual PCB design, but is very useful to tell the PCB manufacturer how you want your board assembled. There are no hard and fast rules for this layer, use it however you like, just make sure you tell your PCB manufacturer.


The keepout layer generally defines areas on your board that you don’t want auto or manually routed. This can include clearance areas around mounting hole pads or high voltage components for instance.

Layer Alignment

When the PCB manufacturer makes your board, there will be alignment tolerances on the artwork film for each layer. This includes track, plane, silkscreen, solder mask, and drilling. If you don’t allow for this in your design, and make your tolerances too fine, you can end up in big trouble. Consult the manufacturer for what alignment tolerances they can achieve, and also what alignment tolerance you are paying for!

Multi-layer Design

read more about: blind and buried vias

Power Planes

Split power planes

“1. Splitting a plane is done to permit more than one voltage or ground return region to be used on a single layer. For example, you could have 5VDC, 3.3VDC, 12VDC, and 1.2VDC all on the same layer by splitting the plane into isolated regions of copper for each voltage. Likewise, you could have an analog ground region on the same plane layer as a digital ground region by splitting the copper into isolated regions.
2. Each EDA package has its own way of defining the net assigned to a split plane region. It depends on what software you are running.
3. The “rules” for split planes really are design considerations for the signal layers that are adjacent to the planes. For example, you want to avoid routing a signal trace over the void between splits – it creates a discontinuity in the trace impedance that has to be compensated for with bypass capacitors. You want to avoid running a signal trace over a split that is unrelated to the signal (for example, you wouldn’t want to run an analog signal trace over a region of digital ground returns, or a sensitive signal over a split used to supply power to relays).
4. You can have splits on as many plane layers as you want. Just keep in mind the signal sensitivities noted above. Also remember that the splits on different plane layers that belong to a single net have to be connected together such that you have a sensible current flow from source to sink. All of that copper couples to nearby board structures capacitively – you need to be sure that you control that coupling to protect signal integrity and prevent EMI. ”

As a matter of course, you should place “tracks” completely around the outer edge of your board. This will ensure that the power planes do not extend right to the edge of the board. Power planes on the edges of your board can short to not only one another, but also to any guide rails or mounting hardware.


  • Run separate ground paths for critical parts of your circuit, back to the main filter capacitor(s). This is known as “star” grounding, because the ground tracks all run out from a central point, often looking like a star. In fact, try and do this as matter of course, even if your components aren’t critical. Separate ground lines keep current and noise from one component from affecting other components
  • If using a ground plane, utilise “split” plane techniques to give effective star grounding.

Good Bypassing

As a general rule, you should use at least one bypass capacitor per IC or other switching component if possible. Common values of bypass capacitors are 100nF for general purpose use, 10nF or 1nF for higher frequencies, and 1uF or 10uF for low frequencies. Special low Equivalent Series Resistance (ESR) capacitors are sometimes used on critical designs such as switch mode power supplies.

High Speed Designs

A “critical length” track is one in which the propagation time of the signal starts to get close to the length of the track. On standard FR4 copper boards, a signal will travel roughly 6 inches every nano second. A rule of thumb states that you need to get really concerned when your track length approaches half of this figure. But in reality it can actually be much less than this. Remember that digital square wave signals have a harmonic content, so a 100MHz square wave can actually have signal components extending into the GHz region

There are many ways to create controlled impedance “transmission” lines on a PCB. But the two most basic and popular ways are called Microstrip and Stripline.

  • A Microstrip is simply a trace on the top layer, with a ground plane below.
  • A Stripline is similar to the Microstrip, but it has an additional ground plane on top of the trace. The advantage of stripline over microstrip is that most of the EMI radiation will be contained within the ground planes.

Some useful information and rules of thumb for high frequency design are:

  • Keep your high frequency signal tracks as short as possible.
  • Avoid running critical high frequency signal tracks over any cutout in your ground plane. This causes discontinuity in the signal return path, and can lead to EMI problems. Avoid cutouts in your ground plane wherever possible. A cutout is different to a split plane, which is fine, provided you keep your high frequency signal tracks over the relevant continuous plane.
  • Have one decoupling capacitor per power pin.
  • If possible, track the IC power pin to the bypass capacitor first, and then to the power plane. This will reduce switching noise on your power plane. For very high frequency designs, taking your power pin directly to the power plane provides lower inductance, which may be more beneficial than lower noise on your plane.
  • Be aware that vias will cause discontinuities in the characteristic impedance of a transmission line.
  • To minimise crosstalk between two traces above a ground plane, minimise the distance between the plane and trace, and maximise the distance between traces. The coefficient of coupling between two traces is given by 1/(1+(Distance between traces / height from plane)^2))
  • Smaller diameter vias have lower parasitic inductance, and are thus preferred the higher in frequency you go.
  • Do not connect your main power input connector directly to your power planes, take it via your main filter capacitor(s).

Design For Manufacturing

more on: Design for Manufacture


Talk to your manufacturer.

Tooling Strips

Tooling strips are strips of blank board down the top and bottom side of your board. They contain tooling holes, fiducial marks, and other manufacturing information if required. Standard tooling holes are required for automated handling of your board. 2.4mm and 3.2mm are two standard hole sizes. Four tooling holes per panel is sufficient, one in each corner. The tooling trips connect to your board(s) with breakout tabs or V Grooves.

Fiducial Marks

Fiducial marks are visual alignment aids placed on your PCB. They are used by automated pick and place machines to align your board and find reference points. A video camera on the machine can identify the center of fiducial marks and use these points as a reference.
On a panel there should be 3 fiducial marks, known as global fiducials. Bottom left/right and top left corners. They should be at least 5mm away from the board edges. They can be mounted on the tooling strips. The fiducial mark should be a circular pad on the copper layer of diameter 1.5mm typically. The fiducial should not be covered with solder mask, and the mask should be removed for a clearance of at least 3mm around. The pad can be bare copper or coated like a regular pad.

  • Two local fiducial (one in opposite corners) is also required next to each large fine pitch surface mount device package on your board.

Thermal Relief

If you solidly connect a surface mount pad to a large copper area, the copper area will act as a very effective heat sink. This will conduct heat away from your pad while soldering. This can encourage dry joints and other soldering related problems. In these situations a thermal relief connection, which comprises several (usually 4) smaller tracks connecting the pad to the copper plane. Thermal relief options can be set automatically in many packages.


There are three basic soldering techniques – hand, wave, and reflow

Wave soldering: The major thing to watch out for when designing is ensuring that small components are not in the wave solder “shadow” of larger components

There’s also solderless connections, like press-fit.

Basic PCB manufacture & design submitting

Gerber files are the traditional and industry recognised file format, all major manufacturers will accept them. Many PCB designers still insist on generating and supplying Gerber files themselves, in order to have total control over the manufacturing process. In all but a few extreme cases, generating Gerber files is not necessary and a thing of he past. Generating gerbers adds an extra step of complexity to the PCB process where errors can creep in. So avoid the use of gerber files were possible, they can be troublesome unless you know exactly how to generate them correctly. The manufacturer will ask for a lot of information before they quote, ask them what you need to provide with your file. Here is a basic checklist:

  • A reference code and revision for your board. This makes it easy for both parties to track the progress of it.
  • Desired manufacturing time, known as the “turn-around”. 24 hours will cost a LOT more than 2 weeks!
  • Quantity of boards required
  • Board thickness (1.6mm, 0.8mm, 2.4mm etc). 1.6mm is standard
  • Type of board (FR4, Teflon etc). FR4 is standard
  • Number of layers
  • Surface finish (SMOBC, HAL, Gold Flash etc). SMOBC and HAL is standard.
  • What colour you want your solder mask and component overlay.
  • Copper weight (1oz, 2oz etc). 1oz is standard.
  • Whether or not you want electrical testing. This is pretty necessary for multi-layer boards.
  • The Track/Space clearance of your board
  • How your board dimensions are defined. Eg, on the mechanical layer.
  • Whether you want boards “panelised” or supplied individually cut.

Many manufacturers will have “prototype” services where they will fit as many of your boards onto a standard “panel” as they can, all for one fixed price. In most cases you will be charged a “tooling” cost. This is the cost of printing the photo masks for your board, and also setting up their machines. This is usually a one-off cost, so if you get the same board manufactured again, you won’t have to pay the tooling charge.


[1] Jones, D.L., 2004. PCB design tutorial. June 29th. available at


[3] track calculator

[4] Clearance and Creepage

[5] Clearance

for high speed:

high current

for other day:




thou = mil = 1/1000 of an inch


pollution degree: empirical estimation of pollution to adapt your design. more on:


Sugested Changes

before any routing:

ARM-M development

The Architecture

cortex m0 generic guide:

m4 generic guide

m4 tech reference guide

Choose a board and a toolchain

When choosing a board or SoC, make sure the manufacturer have a good library support. That would make your development process easier.

Common boards:

  • Stellaris Launchpad
  • Arduino arm board
  • STM discovery





Code Composer Studio


Libraries / HAL / LL


101 Course on embedded systems using arm






The arm Infocenter:

The arm university program (AUP):

STM32 on Linux

ARM development tools:



Atollic blog entries

How to Debug FreeRTOS Projects on ARM Cortex-M Devices

Automate your ARM Cortex-M debug sessions [advanced GDB development and debugging]

Learn How to Become a More Efficient ARM Cortex Developer [Use Our White Paper Library]


Design for Manufacture–DFM–to-PCB-development-

Howto: open source

While I’ve been studying about open source projects, I found this very interesting reference about creating and maintaining an open source initiative: Producing Open Source Software by Karl Fogel. The book is available at:

Karl compiles a list of resources and learnings about how to run an OSS project: techinical issues, communication, political and social environment, etc.




Arduino Yún

Hardware Description

Getting Started Guide

Some Inspiring Projects


Related Libraries

Guia de como usar \LaTeX em trabalhos acadêmicos da UFSC

Este guia é para que alunos da Universidade Federal de Santa Catarina que desejam desenvolver seu trabalho acadêmico utilizando o LaTeX. Para quem não conhece a ferramenta,  o LaTeX é uma ferramenta antiga de formatação de texto com resultados muito bonitos e famoso pela sua abordagem WYSIWYM em detrimento da WYSIIWYG, tradicional no word e etc.

Se você está aqui é provável que não tenhas obtido sucesso usando o template \latex da Biblioteca Universitária. Infelizmente, esse não é o forte deles. Da última vez que chequei o site da biblioteca, nem um modelo em .odf (open document format) eles possuem.

A primeira dica é: não use latex.

LaTeX é uma merda e o libreoffice/word conseguem imprimir bons resultados se comparado com antigamente. Uma breve leitura de tipografia e layout e tá tudo certo.

Use o UFSCThesis