How to find the symbol if I found the footprint?

Some components have rather specific footprints. If I know the footprint, is there a way to find back associated symbols ?

In my case I looked yesterday, and did not found the best symbol for

It is a small reset button for a uC

The footprint is SW_SPST_TL3342 in standard libraries.

Help welcomed :wink:

Best regards,


There is a symbol library ‘Switch’ with plenty to choose from.

I browsed the symbol library several time without finding the right one:

  • 4 pins,
  • pin 1 connected to pin 2
  • pin 3 connected to pin 4
  • 1 contactor that closes 1/2 and 3/4

frustrating to have the KiCAD footprint identified and not finding the associated symbol. If I select a 2 pin switch, I will have a mismatch with the footprint. 4 pin switch symbols I found don’t connect the right pins… :frowning:


As you can see, the footprint has only two pad numbers, 1 and 2. Therefore the normal 2-pin symbol is fine for it. The downside is that you need to connect the pads of the same number in the layout with tracks or zones.

If you need 4 independent pins/pads (so that for example you don’t have to connect the two internally connected pins with copper on the board) you can use the 4-pin symbol or draw your own symbol and connect only the needed pins in the schematic.

In my opinion this isn’t an ideal situation, but it’s how KiCad works.

1 Like

This is the footprint I’ve been using for similar push buttons. There are two of pins 1 and 2 so both are connected when routing. The symbol is just a generic NO push button switch with pins 1 and 2.

It is why I have reported:

but as I see there is not acceptation for my concept :slight_smile:

IIRC this happened automatically. Pcbnew knew both pins 1 were on the same net, same for pin 2.

Of course it knows it, but it doesn’t connect them automatically with copper.

Rather use gitlab:

There seems to be some acceptance, but not for your most straightforward solution.

1 Like

Maybe it was because I used an autorouter.

:astonished: :scream:

Worked fine, saved me a lot of work. :stuck_out_tongue: One of the advantages of being naive. Picked the obvious switch, picked an appropriate footprint, and it all worked.

Actually now that I think of it, both pins of the same number were joined by a rats nest line so this would have come to the attention of a human router.

KiCad cannot be changed the way you suggest, because it would break a lot of existing use cases.

For example, what happens if you have an IC with multiple GND pins that need to be connected? You want DRC to flag an error if one or pins are not connected, and you don’t want to use the IC as a jumper.

Pretty sure we went over this stuff in another thread, unfortunately people tend to have a singular view of their own use case without considering related issues.

1 Like

Maybe you didn’t read carefully. Piotr suggested interpreting the pads with the same number being internally connected. That wouldn’t affect any existing IC footprint (unless made in a nonstandard way, violating datasheet).

Sorry that is nonsense. Not everyone uses the official libraries or their conventions. You can’t tell users their existing footprints are wrong “because they didn’t make a footprint in (your newly defined) standard way”. Ridiculous!

Existing behaviour is that KiCad expects all pads with the same number to require external connection. You are proposing to break that behaviour.

Unfortunately, if you don’t understand the implications of a proposed change, it will never be adopted by KiCad, and you will be forever wondering why.

Wasting my time again, giving up.

The :slight_smile: at the end of my sentence (you bothered to cut out) was to signal that that sentence is not to be understand exactly as was said.

Ok, for the benefit of non-mindreaders can you in future write what you mean. I cut the smily because it was not important or relevant to what you wrote.

I think footprints with few pads having the same number and really requiring that pads to be connected externally are extremely rare, but questions about 4 pin tact switches are frequent.
At that moment I can’t imagine any such footprint but of course my imagination is limited.
Do you have any example?

No I’m not. As you can see in the gitlab bug report. I’m not proposing that KiCad should behave that way.

What is needed/wanted is a way to tell KiCad “these pins are connected outside the board; connecting them in the board is allowed but not necessary”. If you have something constructive to say, you can continue in the given bug report.