Skip to main content

PCB Footprint Creation in Allegro, Altium Designer and KiCad

Author Profile img: The Sierra Circuits Team

By The Sierra Circuits Team

August 31, 2021 | 0 Comments

Contents

webinar image

Seminar: Unintentional Antennas and Solving EMI Problems

by Karen Burnham

July 16th, 2024
9:00 am to 4:00 pm PT

Components that need to be assembled on a PCB will have designated locations according to the design. PCB footprint creation is the arrangement of plated pads where a component is supposed to be soldered.

It is also called the land/pad pattern and resembles the physical dimensions of the component. This footprint connects a component to the circuit board both physically and electrically. It gives an idea about the component placement and the trace locations.

The footprints on the board are interconnected using traces and vias. Irrespective of the type of component, there should be a footprint so that it can be soldered to the board at a later stage. Be it surface-mount, through-hole, or ball grid array (BGA), a land pattern is mandatory for PCB assembly.

How to create a PCB footprint

The footprint or land pattern is an arrangement of plated copper pads or through-hole plated pads on a PCB on which a component is soldered. Most of the time, the PCB footprint creation of standard packages are available in the PCB library of the design software. Only if it is not available, we will have to create one on our own referring to the datasheet of the component, while designing a circuit board.

The created circuit board footprint should always match the component physical dimensions or else it will not align properly with the pads. The land pattern gives information regarding the pad sizes, the distance between the pads (pitch), component boundary and keep-out, silkscreen outlines, part numbers, reference designators, and pin numbering.

 

better-dfm-tool.jpg

 

Standards for creating a board footprint

The IPC-7351 depicts the requirements for surface mount designs and land pattern standards. This standard ensures maximum solder joint quality after the component placement. The solder joint quality should meet the guidelines set by J-STD-001 as well. It also provides guidelines to make space for inspection, testing, and rework of the components.

The IPC-7351 standard provides instructions to utilize existing common footprints and to create new ones. A few tips mentioned in this standard are:

  • Whenever it is possible to use a common package type, use it. We have options to modify the existing package footprint to suit our requirements. A land pattern should only be created from scratch if the package type is not found in the library. This process is time-consuming and might lead to errors. Hence it is mandatory to stick to the PCB footprint creation guidelines in such scenarios.
  • Do not neglect manufacturer recommendations. Apart from the standards issued by IPC, there will be some special cases like soldering reflow instructions, keep out areas, courtyards, etc. These recommendations should be strictly followed for better efficiency.
  • Make sure that there is enough space around the component footprint for inspection and rework.
  • Test points for functional tests are required.

Also, check out our article on choosing smaller footprints for HDI.

Different parts of a PCB footprint

A component footprint has different parts. The common ones are:

  1. Pads/through-holes (pad stack)
  2. Pin numbers
  3. Silkscreen
  4. Assembly details
  5. Component centroid
  6. Pin 1 marking and component orientation marking
  7. Component boundary/component keep-out area (place-bound)
  8. Connectors and special components will have retaining holes/mounting holes
  9. Manufacturer part number
  10. 3D model step file

 

Design for Assembly Handbook - Cover Image

Design for Assembly Handbook

6 Chapters - 50 Pages - 70 Minute Read
What's Inside:
  • Recommended layout for components
  • Common PCB assembly defects
  • Factors that impact the cost of the PCB assembly, including:
    • Component packages
    • Board assembly volumes

 

What is the importance of using datasheets when designing pads and footprints?

The details of a footprint, mostly called ‘land pattern,’ are available in the component datasheet. These drawings are the basis for PCB footprint creation. All the specifications and dimensions mentioned are entered into the respective design tool to create the land pattern. These important dimensions include the height, pitch, length, and width of the components. Other details, such as pad pitch, finished hole size, etc., also help in the creation and placement of pads for the footprint.

To learn the defects caused by imprecise footprints, see manufacturing defects caused by land patterns.

What does the pad stack represent in a PCB footprint?

While PCB footprint creation, the pads that accommodate the component on the board should also be designed. The precise geometrical description of the exposed copper pads that accommodate the component pin is called pad stack. The components of an SMD pad stack are pad size, length, width, solder mask opening, and solder paste opening. For a through-hole component, the pad stack will consist of drilled hole size, finished hole size, pad sizes in the inner and outer layers, plane clearances, and anti-pad size (for the inner layers). Creating the pad stack is the first step in footprint creation. Multiple pads are used in a footprint, depending on the size of the component. For example, in an 8-pin SOIC footprint, there will be 8 pads of the same size. The pads are designed using the pad designers available within EDA tools.

How to create a footprint in Allegro/OrCAD?

Allegro is a flagship PCB editor from Cadence. This design software also offers simple and easy methods when it comes to PCB footprint creation. In this demonstration, we create land patterns for Murata GCM155R71H104KE02J capacitor.

  • First, we need to download the datasheet of the part and understand the dimensions such as length and thickness.
Land pattern of GCM155R71H104KE02J capacitor
Land pattern of GCM155R71H104KE02J capacitor. Image courtesy: Murata
  • The next step is to select the units. Go to Setup > Design parameters > Design tab > User units. Select the unit (here we choose millimeter) and the tolerance in the accuracy option.
User unit selection window in Allegro
User unit selection window in Allegro
  • As per the dimensions given in the datasheet, we will draw the assembly outline. Select the required shape from the list of shapes available in the top menu. Here we choose a rectangle.
  • In the options menu on the right, from package geometry, select Assembly_Top as the layer. Under Shape Creation > Place Rectangle, give the length and width as per the datasheet with the tolerances mentioned.
Assembly_Top specifications in Allegro
Assembly_Top specifications in Allegro
  • After giving all the dimensions, the required shape will move along with the cursor, which we can place at any location. Move it to the center after placement.
  • Now choose Shape > Decompose shape, and in the options, under copy to layer, check off both the delete after decomposition and delete existing lines options.
  • We use lines with 4 mil thickness to accurately draw the package outline in the assembly layer. Select line option in the shapes menu and change the line thickness to 0.1016mm (4 mils). Then draw the assembly outline of the package.
Assembly layer outline in Allegro for footprint creation
Assembly layer outline in Allegro
  • The next step is to add the pads. We will first browse through the datasheet to see if the pad dimensions are given.
Component pad dimensions given in the datasheet
Pad dimensions given in the component datasheet. Image courtesy: Murata
  • In this particular case, the dimensions are available in the datasheet. We have two options here. One is for modifying the existing pads in the library to the required dimensions. This can be done by Tools >  Padstack > Modify library padstack.
Modifying pad stack in Allegro for PCB footprint creation
Modifying pad stack in Allegro
  • Otherwise, we can open the padstack editor and go to File > New. In the new window, give the name as per convention and choose the pad stack usage as SMD or through-hole. In this case, we are choosing the SMD pin. Select the required pad shape under default pad geometry.
Padstack editor in Allegro
Padstack editor in Allegro
  • As the component is SMD, we don’t need to give any details in the drill, secondary drill, drill symbol, and drill offset tabs.
  • In the case of through-hole pads, the finished hole diameter with tolerances (depending on plated and non-plated holes) should be given under the drill tab. Under the design layer tab, give the dimensions of the hole pad in the top, internal, and bottom layers. The next tab is the mask layer in which the pad’s Soldermask_Top and Soldermask_Bottom dimensions need to be mentioned.
  • Now back to the SMD pad in hand, go to the design layer > regular pad > begin layers (top layer), choose the pad geometry as a rectangle, and enter the dimensions. The same has to be provided in the Mask layer > Soldermask_Top and Pastemask_Top rows. Check in the summary tab if all the provided data is correct and click save.
  • We will close the padstack editor now and go back to the PCB footprint creation page. Click Setup > User preferences and map the created pad stack file path.
  • Insert the pad using the add pin icon on the top menu. In the options, choose the pad, give the pitch (as given in the datasheet), and other details such as the quantity, pin number, rotation, etc. Then, we can place the first pad on the board outline, copy it, and paste it with different pin numbers and rotations for the other pads.
Pad placement in Allegro for footprint generation
Pad placement in Allegro
  • For the texts, follow the template, if any, or adjust the text as per the requirements. To change it go to Setup >  Design parameters > Text.
  • The next step is to add the silkscreen layer. First, select the draw line icon. Go to the options menu on the right side of the screen and select Silkscreen_Top. Then add the required line width for drawing the silkscreen layer. Here, we are adding 0.1524mm (6mils).
Silkscreen layer in Allegro
Silkscreen layer in Allegro
  • Now, we will add the DFA_Bound_Top layer. In this layer, we are supposed to cover the pad and assembly outer layers. So we select a rectangle as the shape and draw a rectangle that covers both the component outer layer and pads.
  • Next, we will add the Place_Bound_Top layer. We select the layer in the right-hand side menu and give the required offset. This is followed by the addition of the No_Probe_Top layer.
PCB footprint after addition of all layers in Allegro
Footprint after the addition of all layers in Allegro
  • In the next step, we will add the reference designator. The layer to which we add this is the Assembly_Top. We have to choose text from the options menu. Since the footprint we are generating here is of a capacitor, the reference designator is C*. This is also added to the silkscreen layer (Silkscreen_Top) layer. The reference designator for the assembly layer is added inside the land pattern while the one for the silkscreen is placed outside.
PCB footprint creation with reference designator in Allegro
Addition of reference designator in Allegro
  • The 3D version of the package can be downloaded from the repository and mapped to the created footprint. Finally, we will save the footprint as per the IPC naming conventions. Once finished, go to Tools > Database check, to analyze the footprint and find out any errors associated with the creation. In this example, the package didn’t have any pin 1 markings. When packages require pin 1 marking, it will be added to both the silkscreen and assembly layer, using the required shape from the menu.

How to design a footprint in Altium Designer

Let us have a look at the different steps involved in Altium Designer for PCB footprint creation. Here, we are generating a land pattern for the part number: TPD4S014 from Texas Instruments.

The first step is to create the pads for the component. For that,

  • Go to File > New > Library > PCB library. This will create a new library in which all the new footprints for a particular project will be saved.
  • Before placing the pads, make sure to check the units in the upper left corner of the window. To change the dimensions, go to View > Toggle units.
  • You can place the pads by clicking on the pad icon in the toolbar (alternatively, Place > Pad).
  • Place the pad in the middle of the window temporarily, then right-click > Properties, and give the required shape and dimensions (x/y). A plated through-hole pad will be created by default, and the hole will be automatically removed when a single-layer pad template is selected.
  • The paste array option in the top menu can be used to multiply the newly created pad into an array. In the new window, give the number of pads and the X-Y spacings needed.
  • The pads are copied and pasted to form the array on the other side. After copying each pad, the properties should be changed as per the datasheet. After placing all the pads, the origin is set from Edit > Set reference.
Pad placement in Altium Designer for footprint creation
Pad placement in Altium Designer
  • After placing the pads, the assembly layer will be drawn. In Altium, this layer is termed Mechanical 13. To draw, choose the line symbol from the top menu and set the required line width. Here we are using 4 mils.
  • Silkscreen layer will be added next. Under the properties window on the right, choose Top Overlay as the layer and draw the outline to be printed on the silkscreen as shown below.
Silkscreen layer in Altium Designer
Silkscreen layer in Altium Designer
  • The place-bound layer is termed Mechanical 15 here. Draw the outline by choosing the required line width.
  • Click on the text symbol on the top menu to place the reference designator. It is placed on the Mechanical 13 layer. The properties of the text should be customized using the properties menu.
  • Pin1 indication is also done on the Mechanical 13 layer. This is copied and pasted onto the Top Overlay layer so that it gets printed on the board.
  • The 3D package can be mapped by choosing Tools > Manage 3D bodies for library.
  • Once the 3D package is mapped to the Mechanical 13 layer, the PCB footprint creation is complete.
Complete footprint generated in Altium Designer
Complete footprint in Altium Designer

Also check out, PCB Via design using Altium Designer.

 

KiCad Design Guide - Cover Image

KiCad Design Guide

8 Chapters - 98 Pages - 110 Minute Read
What's Inside:
  • Creating a component symbol library
  • Setting up board parameters and rules
  • How to route differential pairs
  • How to place of components

 

How to create a footprint in KiCAD

For our KiCad demo, we are creating a footprint for C0402C100K4GACTU capacitor from KEMET.

  • From the project manager in KiCad, click Tools > Run Footprint Editor.
Footprint editor in KiCad
Footprint editor in KiCad
  • In the window, go to File > New Footprint. Give an appropriate name to the footprint.
  • Now, we have to save this footprint in a new library for the project. Go to File > Save Footprint in the new library. A window appears where we can browse the location of this new library and name it. Make sure that the location is the current project directory. (Note that .pretty will be the extension of this footprint library file.)
  • Next, at the top of the page near the footprint editor title, we can see that no active library is written. We have to let KiCad choose the library we just created as the active library.
  • To do this, go to Preferences > Footprint Libraries Manager. Select Append with Wizard and choose Files on my computer in the consecutive window and click Next.
  • Now, browse and expand the project directory, and find the new library file we added a while ago with the extension .pretty and click Next.
  • In the consecutive window choose if the library should be a global one (to be used later for other projects) or just for the current project, and click Finish. We can see that the selected library is now listed under project-specific libraries.
  • Go to File > Active library and choose the library name. Now on the top instead of no active library, we can see the name of the new library.
  • Now we will go to the datasheet of the part and check the land pattern given for the dimensions.
  • We can change the units to inches or mm as we like from the options displayed on the left of the window.
  • Unlike Allegro and Altium, the name of the part and the reference designator will appear by default.
  • To place the pad, go to Place > Pad (alternatively click on the place pad option on the right). Place the pad on the screen and double click on the pad to open the pad properties window.
Pad properties window in KiCad
Pad properties window in KiCad
  • In the pad properties window, choose the type of pad (SMD in this case). Then all the relevant details associated with it are given. If we choose a through-hole pad, then drill details such as drill shape, drill hole size, etc., should also be given.
  • Similarly, we can copy and paste the same pad and alter the dimensions and pin number.
  • The next step is to draw an outline of the component body on the top fabrication layer (F.Fab) so that it will support drawing the silkscreen layer later.
  • Now we will go to View > Grid settings and give half the values of the length and width of the package under the user-defined grid.
Setting the grid properties in KiCad for footprint generation
Setting the grid properties in KiCad
  • Go to the grid drop-down menu on the top and select the user grid that was just defined.
  • To draw the outline, go to Place > Line (or go to the right-hand side menu and select Add graphic line option) and draw the lines, right-click > Edit to change its dimensions, and choose F.Fab as the layer.
Assembly layer outline in KiCad
Assembly layer outline in KiCad
  • To draw the pin 1 indication, go to Place > Arc. Make sure that the layer is F.Fab for this one also. Pin1 indication (mark) is also added in the F.SilkS layer so that it gets printed on the PCB. We will copy the pin1 mark of the F.Fab layer and paste it and change the layer to F.SilkS in the properties window.
  • Once this is done, the outline for the silkscreen layer needs to be drawn. We will check the datasheet for the dimensions and set the grid. Then, select the F.SilkS layer. Now using the Add graphic line or Polygon we will draw the required shape.
Silkscreen outline in KiCad
Silkscreen outline in KiCad
  • The next task is to set the grids again to draw the outline on the courtyard layer, F.CrtYd.
  • Now we can move the REF** that came by default initially and the name of the part towards the footprint. The default reference designator will be on the F.SilkS layer. We will copy that and then paste it on the F.Fab layer as well.
  • We will go to the footprint properties option on the top and edit the width, height, and thickness of these texts. So one REF** will be on the F.SilkS layer, and the other REF** and name will be on the F.Fab layer.
Footprint creation in KiCad
Finished footprint in KiCad
  • The REF** on F.SilkS will be kept next to the footprint and the F.Fab REF** will be placed inside the footprint as shown above. With this, the PCB footprint creation in KiCad is complete.

 

kicad_quote_plugin_blog_banner_small_1920x300_02

 

  • The plugin reads your design for a smooth quote process.
  • Order standard PCB products (assembly and components optional).
  • Your project is priced by square inch or number of layers.
  • The interface is simple and user-friendly.

 

To know more about component placing in KiCad, read how to place components in KiCad.

Creation of footprints is based on the ground rules set by IPC. Different PCB editor tool has slightly different methods for this. But in general, the basic idea is the same even though layers are named differently in each tool. Once we have an outline of how it is done, this process becomes simple enough.

If you have any queries regarding footprint generation then do let us know in the comment section. We will be happy to help. Try our new KiCad plugin to generate an instant quote without exiting the KiCad user interface. You can download our KiCad design guide to learn about creating component libraries, set up design rules, routing differential pairs, etc.

 

pcb-design-services-banner.jpg

post a question
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments

Talk to a Sierra Circuits PCB Expert today

24 hours a day, 7 days a week.

Call us: +1 (800) 763-7503
Book a Meeting with a Sales Rep
Email us: through our Customer Care form