Component – footprint associations

I’m happy with the schematic the way it is now, so I think we are ready to move on to the next step. The next step is to associate the schematic components with the footprints. After that, we will go into Pcbnew and do the layout. To do the associations, we will use Cvpcb. Click on the Cvpcb button to start this app.


Start Cvpcb. The components that must be associated with footprints are in the middle pane.

It will take a few seconds for the panes to be populated with data from Github. The middle pane contains the components found in the schematic. We will associate these components with appropriate footprints.

Let’s start with the resistors first. In this project we are working with through hole components, so we will use resistor footprints from the “Resistors_ThrougHole” library. There are a lot of options to choose from in this library. Since we are working with footprints, we just need to find one that has the correct dimensions.


I want to use resistors with a 10mm pitch.

Take out your ruler and measure the pitch (distance) between the two ends of the resistors you would like to use on your PCB. In my case, the pitch is 10mm. With this information, I will look for a footprint that has a distance between the pads of 10mm.


This option is a resistor with a distance of 10mm between the pads.

Make sure the the L filter is selected, and scroll through the resistor options until you find on marked with “RM10mm” in its name. This resistor has a footprint of 10mm, which is the one I am looking for. You can confirm by creating a 3D view of the footprint (click on the button with the magnifying glass icon). Double click to select it and associate it with component R1. Continue double-clicking until all of the resistors are associated with the same footprint. In the end, your Cvpcb window will look like this:


The resistors (middle pane) are associated with the 10mm through hole resistor footprint.

In that library, So there is a library with resistors somewhere here, yes, I’ll manually going to look through it. All of the components in this project are through hole components. In the next project, in the last for this course, all of the components will be SMD, so for now I’m looking inside the resistor’s through hole library.

Next, let’s work on the connector. We are looking for a connector with five pins in a single row. So let’s look for this connector. A quick way to look for this footprint is by using the name filter. With the CONN_01x05 component selected in the middle pane, click on the name filter (the third button from the right). This will return 4 compatible footprints in the right pane:


The name filter can speed up searching for a footprint.

The options returned all involve 5 pins in 1 row configurations, either angled or straight. Use the pre-viewer to see what each one will look like on the board to help you decide which one to use.


The preview of the 5×1 straight connector. This is the one we’ll use.

So these footprints are here and there’s 1×05 pins that is angled and one that is straight. Double click on the first option to do the association. Your Cvpcb should now look like this:


The connector is now associated with the 1×5 straight connector footprint.

Next lets work on the seven-segment display. The keywords filter does not return anything useful, maybe it does, but maybe we need to augment it with a number of pins filter.


With the keyword and pins filter selected, the right pane contains a small list of footprints that I can potentially associate with. We must find the best one manually.

To find the best footprint for our seven segment display we must ensure that the type of pins (through hole) and the dimensions are correct. The name and the preview of each footprints will help us in this. Avoid components that contains the letters “SMD” since they represent surface-mounted components (we’ll work with them in the next project). Look for footprints that contain “7-segment” as a part of their name.


Footprint “7SegmentLED_LTS6760_LTS6780” has the right measurements and pin type.

Looking through the list, find one titled “7SegmentLED_LTS6760_LTS6780”. This footprint has through-hole pins, and the dimensions between the pins are an exact match of the seven segment display I would like to use on my board (see image above). You can use the previewer to make manual measurements in order to confirm that match. The status bar in the bottom of the previewer window shows the measurement results. Remember to press the space bar to zero the counters. The distance between the neighbouring pins is 2.54mm and the distance between the two rows of pins is 15.24mm. These are the dimensions of the real part as  measured with my ruler. Double click on it this footprint to associate it with the seven segment display component. Your Cvpcb should now look like this:


Completed with associating the seven segment display component with a footprint.

Finally, let’s work on the shift register. It’s a 74HC595 and I looked up the documentation and its data sheet, it’s up here in the NXP website. And the part that I want to use is this one here and you can see that the name of the package that my shift register uses is DIP16 or SO16.


As per the data sheet, the 595 shift register I wish to use comes in a DIP16 package.

So, we should search for a DIP16 footprint. The way that we configured the filters earlier return several options, one of which is the DIP-16_300 footprint, inside the “Sockets_DIP” library. In Kicad 4, this footprint is inside the “Housings_DIP” library.

Preview this footprints and ensure that its dimensions match the dimensions of the actual part.


It is important to cross-check that a candidate footprint matches the dimensions and pin type of the real part.

Just like with the seven segment display, measure the distances between the pins and rows of the real part and compare them against the preview of the candidate footprint. In this example, I have a perfect match (DIP16 packages are very common and standardised in the industry). Double click to setup the last association. Your Cvpcb will now look like this:


All associations are complete!

Now that the associations are complete, click on the Save button to commit them, and return to Eeschema. Before we forget, let’s save the schematic in Eeschema. The last thing to do before we move on to PCBnew is to export the netlist. Create the netlist and save it in the project directory. In the next chapter we will start working on the layout in PCBnew.

Back to top
« « The unconnected component | Create a 2 layer PCB in Pcbnew » »