Exchanging/updating footprints

As a new user I like the appearance of KiCad. I have not used any other PCB-Layout software before, so I am not fixated on any specific way how to realize a task.
What I found very helpful was the schematic overview of the workflow in the “Getting started”.

However, the organization with the component and footprint libraries is rather confusing to me.
I started to design a PCB and now I want to change components and footprints.
I modified some components and footprints in the library (or even worse, I moved footprints to another library), however, they seem not to be automatically updated after associating the components with the new footprints. (That’s what I would expect.)

So far, the only way how I could get the new footprints was to delete the components and basically start from scratch.
But that’s not the idea of KiCad, I suppose?

Also, I do net get along with the explanation in PCBnew documentation.
If right-mouse click on a component, select Footprint of this component (see image)
a) and select “exchange footprint” (I would expect that a window opens to select a new footprint), but nothing happens
or instead
b) select “edit paramters E”, I get to the menu described in the documentation.
There, if I select “change footprint(s)” I would expect that I can select a new footprint e.g. from another library as replacement for the existing one.
However, there I can “view footprints” but cannot “list footprints” because the old library does not exist anymore.
Where or how do I select a new footprint?

Thank you for help.
I am using a nightly build (2016-09-17 rev. 679eef1) because there you can import .step directly.

…Oh no, now I found that you obviously have to manually type the name of the new library/component (instead of simply selecting it from a list) such that the new footprint is taken. Argh! Is this the intended way to do it?

View footprints opens the library browser.
(I also work on nightly builds.)
Maybe there is a bug?

My test:

  • Delete one of my libs
  • Open Kicad and pcb new
  • press e on one of the footprints contained in the deleted lib
  • klick change footprint
  • klick view footprints (this button should be named something like change footprint with library browser)
  • library browser opens and i can select whatever footprint i want.

I found that list footprint works if you remove the missing lib from the fp-lib-table.
(otherwise it fails with a cryptic error message.)

1 Like

Sorry, @Rene_Poschl, that I haven’t given a response. I somehow solved it with the library (can’t remember how ;-).

Now, I am using KiCad 4.0.6, but struggling with a similar thing.
I changed the footprint of a several components in the Footprint Editor. And finally managed to get them updated in PcbNew. However, the ratsnest is not complete. The connections to these modified components are missing.

In Eeschma I run CvPcb and generate a new Netlist.
In PcbNew I read this Netlist.
Why are the connections not updated?

I am sure it’s a stupid thing… some check here or there, but don’t know what to search for in the manual.
Chapter 6 “Create and modiyfy a board” doesn’t help me… it says:

  1. Create a new netlist from the modified schematic.
  2. If new components have been added, link these to their corresponding footprint in CvPcb.
  3. Read the new netlist in Pcbnew.
    At least that’s what I think what I am trying.
    Thanks for helpful hints.

Try this:

  • Backup your current PCB file.
  • Open the “Netlist” dialog box (Icon in the top toolbar)
  • If you haven’t done so, import the updated netlist. I think you want to select footprints by “Timestamp”, and set “Exchange Footprints” to “Change”, but these may not be necessary. (And, if you first import the netlist in “Dry Run” mode you can see what KiCAD wants to do to the layout.)
  • In the Netlist dialog box, click on the “Rebuild Board Connectivity” button. (Right side, fourth button from the top.)

Dale

Thanks @dchisholm, “Rebuild Board connectivity” probably also helped.

The mistake probably was somewhere else…
Reading Netlist: Error message: Component xxx pad ‘1’ not found in footprint yyy …
NPTH does not allow for pad number. Changed back to Through-hole.
I wanted to have an unplated hole with a single sided pad and thought a NPTH would do the job.

I bet this can be done. There are certainly times when you want a ring of exposed copper surrounding a mounting hole, so that the fastener completes a grounding connection to the chassis or enclosure. As a first attempt I’d play with the parameters for the NPTH. Specify a through-hole pad on only one copper layer, with an NPTH in it. Or, stack two pads exactly on top of each other: one is the usual NPTH (pad diameter equal to hole size), and the other is a single-layer pad, perhaps an SMT pad, or perhaps a through-hole pad. Of course, the two coincident pads MUST have the same pad number!

Dale

Wouldn’t stacking confuse the manufacturer? A plated hole stacked with an unplated hole? What would it be in the end, plated or unplated?
I thought a through-hole is always plated (is it?), no matter whether it’s single or double sided copper. Seems that I need to read the basic definitions of holes…(if you have a good link, please let me know).

No, because the manufacturer just sees gerber and drill files.[quote=“theozh, post:7, topic:4082”]
I thought a through-hole is always plated (is it?), no matter whether it’s single or double sided copper.
[/quote]

Why would you plate holes on single-sided board?

Personally, I keep it simple and use PTH for all holes. I have never found a case where I really needed an NPTH.

It’s not a single sided board and therefore I assume that the through-hole will be plated although if I just have copper on the frontside (But I am lacking experience…)
I need to solder a sleeve for contact probes and therefore this is not acceptable if you have solder in the hole because the sleeve will not be flexible anymore and the contact probe will not fit in anymore.
The problem with the NPTH seems to be that it doesn’t allow a pad number thus cannot be connected. At least haven’t found it yet. So probably, some overlay of different pad types as @dchisholm suggested…

If you place an order for a single sided board (1 layer) it will not be through plated. Most of the cheap fab houses only offer 2-layer or up, so even if you don’t use one sided, regular (PTH) holes will be plated. There is probably a minimum size of annular ring, so even if you specify zero size, it will be bumped up to a min size.

Of course not, because a NPTH hole has no copper. Why would it need a pad number?[quote=“theozh, post:9, topic:4082”]
I need to solder a sleeve for contact probes and therefore this is not acceptable if you have solder in the hole
[/quote]
Well, this is new. What are these sleeves? Are they designed for board mounting, or is it a special? There are a few connectors that require special PCB fabrication, for obvious reasons these are only chosen if necessary. Do you have a datasheet?

This seems to be a classic XY problem If you tell us exactly what you are trying to do, we can suggest solutions.

That might work, but a board house might reject it as a bad form of PTH, and will need explicit instructions.

Thank you @bobc, I appreciate very much the fast response times in this forum and I am sorry for the XY question which drifted pretty much away from the original title. I should have opened a new thread as soon as I noticed that the type of pad is my “xy problem”.
So, now I hope to make it clear what the final goal is.
I need an unplated hole with single sided copper pad connected to some wire. The whole thing will be on a double sided board.
The following illustration (top view and cross-section) hopefully makes it clear.
Please tell me what you would call this, NPTH (KiCad does not allow pad number), Through-hole (plated hole) , Connector (KiCad does not allow hole)… ? What is it then?
green=PCB, red=copper, yellow=sleeve, orange=solder

It would help to know what the sleeve is. Assuming it’s metal, because you can solder it. Is this a DIY/home build? Or is it commercial manufacture? You said the sleeve needs to be flexible, but it is soldered and anchored in non-flexible FR4 (assumption). What tolerance is required? How is the board to be assembled? Are you making the board with wave or hand solder?

From the diagram, I can’t see why a PTH is not acceptable.

There are still too many unstated requirements to suggest a firm solution. What you are trying to do appears to be “non-standard”, so there may not be a straightforward solution. If you stack a NPTH on to an SMD pad, it will create gerber/drill files, maybe that will be enough to at least start a conversation with your board manufacturer.

See sleeve H708:
http://www.feinmetall.com/product-finder/contact-probes/contact-probes/?kid=F704&filter1=&filter2=&filter3=&filter4=&tags=H708
Hand assembly and hand solder.
There will be a minimal gap between the sleeve and the board (FR4) which is enough such that the sleeve still can deform slightly such that the contact probe sticks well to the sleeve. If you have a PTH and solder first you won’t get the spring contact in anymore because it can’t deform anyore. If you put the spring contact in first and solder the sleeve with the contact probe, the probe will not stick that well and may get loose. I had both ways already tested. This is some background info which hopefully gives a clearer picture.
Anyway, this will not change the fact that a NPTH with a single sided copper pad connected to a wire is needed which I don’t know to realize in KiCad.

Stacking is easy, create an SMD pad, number it whatever. Create a second pad, number doesn’t matter, change it to NPTH. Move over the first pad.