How can i assign a footprint to a symbol?


Disclaimer: The screenshots in this tutorial are from a pre version 5 nightly build. Current v5.0.2 should look very similar. Future 5.1 (current nightly) looks quite different to this in some places.

There are different options on how to assign a footprint to a symbol.

Option 1: Via the assign footprints tool (In the past known as CvPcb).

Found in eeschema: Tools->assign footprints to components (Might be called differently in your version of kicad.)
This tool allows you to edit the footprint field of all your components in a tabular form.
If you want to assign a footprint to a component, select this component in the middle column and click on the desired footprint in the right column. What is shown in the right column is determined by the filter settings.

Activate previews in cvpcb

It is possible to have a preview of both the footprint and it’s assigned 3d model. The preview windows are separate and can be placed anywhere on your screen.

They will loose focus (get pushed to the back) as soon as you select a new footprint. So place them somewhere outside the space taken up by cvpcb for easy usage.

Option 2: Via the footprint browser (Symbol properties dialog)

For this workflow simply hover your mouse above the symbol you want to assing a footprint and press e.
In the dialog that opens select the footprint field and either type in the correct footprint by hand or use the footprint browser to assign your footprint.

In the footprint browser you need to select the footprint lib in the leftmost column and the footprint in the middle column. (Single clicking updates the preview, double clicking assigns the footprint.)

Option 3: In KiCad v5 (or nightly), directly in the component selector.

KiCad v5 has an experimental feature to allow footprint preview and selection when browsing symbols. It must be enabled:

  1. Open Preferences → General Options.
  2. On the Display tab, enable “Footprint previews in symbol chooser (experimental)”.

The feature should be considered in “beta”, as performance is a bit poor and a few features are still missing, but what is there should work.

In this selection dialog the following options are available:

  • By default the footprint set in the symbols footprint field is selected.
  • The option “Other…” opens the footprint browser.
  • In addition to the default footprint, all footprints that result from the footprint filter defined in the symbol are shown as well.

Setting the default footprint for symbols. (Library editor)

More detailed description in the Tutorial: How to make a symbol

You can setup your lib such that your symbols have their footprint pre assigned. This is called a fully defined symbol. (This footprint will be automatically assigned in KiCad v4. In KiCad v5 you can change the assignment using the new symbol selector dialog.)

Setting footprint filters for symbols. (Library editor)

The footprint filters are used in CvPcb if you set the filter that way. (see above)
They are also used in the KiCad v5 symbol selector dialog to show alternative footprints.

Footprint filters can include wildcards:

  • ?: Exactly 1 character (1)
  • *: Any number of characters (0…n)

Further reading (related topics)

What is the difference between footprints and symbols?
Missing Footprint PcbNew
New to this. CVPCB doesn't have any footprints. Help!
Help with connector footprints
Library/component issue
FAQ Index Thread
Finding components in standard (downloadable) libraries
Suggestions to improve KiCAD
CVPCB - Error, component not found in any library
Assign Footprints 'Apply, Save Schematic & Continue' What does it do?
All pcb footprints missing from all libraries
CvPCB and FPID Conformation
Looking for thru-hole tactile switch with LED
Trying to create a PCB with holes
High level thinking
High level thinking
How to assign JST footprint to connector
Help to source, install and manage libraries?
How to view components in 3D viewer
Footprint viewer is empty
How can I assign a footprint to a symbol? - suggested edit
Newbie staring into the deep end of the pool w/ Cvpcb
Kicad 5 - unable to associate files in cv pcb due to missing libraries
Netlist Load Error
Transforming a schema into a pcb
KiCad 4.0.7 footprint library wizard
Create symbol, create footprint and bind them
Cvpcb picking footprint for scart and pin connectors
Guidance on chip selection during cvpcb process (first board!)
How do I change path segment?
Assigning footprint via library browser broken?
How to add G6K-2P-Y from github Lib to Layout
BGA pin mapping
Footprint preview
No PCB footprint libraries are listed in the current footprint library table
Type 2 errors in schematic
Designing the pcb and schematic problem
Netlist issue loading
Read netlist in pcbnew cant find the footprints that are on disk
Can not open .NET file
Where find resister (no smd)?
Filtering footprints with compatible pin count
CvPCB for association
Adding custom footprints
Noob Q... update footprint
[solved] Problem with "read the netlist" in newPCB
Doubts when using the LM324
New User footprint hell
First Schematic - Looking for Pointers
One symbol not in list (CvPcb)
KiCad EDA Newb Needs Help Getting Started
NPTH Mounting Holes ... AAAaarrgh! Or, how to get them right the first time
Why not included footprints for simple resistors
Some newbie questions
Matching (Reconciliation) the Footprint with its Symbol
Filter for footprints
How to add footprints