Assigning multiple components to a single footprint for Pick and Place

I have a single footprint which has multiple sets of 2x5 1.27 header pads on it for interfacing to a separate board, the associated symbol breaks these out for connections into the schematic. From a Gerber perspective this is fine, and the board looks good. I want to be able to set this up for PCB assembly, so my question is, how do I assign multiple components (the 2x5 header pieces) to the footprint, so that I can export their positions for pick and place?

I’ve tried adding additional header components and placing them over the top of the footprint, but I can’t find a way to filter them out of the Gerber and the DRC (otherwise it complains about overlapping parts). None of the component attributes (Do not populate etc) seem to do what I want.

Is there a feature in KiCad to achieve this? Or do I just continue with my workaround?

As far as I know, the only option to get coordinates for assembly is to add separate footprints for each of the 2x5 pin headers, and then delete the complex footprint.

1 Like

One untested (and likely overcomplicated) alternative would be to leave the complex footprint and place “placeholder” footprints (with no physical copper/holes) very carefully on top of the existing footprint that are only used as centerpoints for pick and place.

The complex footprint would need the attribute “exclude from position files”. The placeholder footprints probably would have the attribute “not in schematic”. Alternatively, if you are very determined, you could add placeholder symbols to the schematic that reference these footprints so you can use them to count how many physical connectors you need on the bill of materials (in which case only the complex footprint gets the attribute “exclude from bill of materials”).

1 Like

The normal way to do this, would be to create a mutlipart symbol for the schematic.
As it will will be only one symbol then it will match with one footprint.

as an example a multiunit connector : Samtec_ASP-134486-01 can be found in the standard lib.


Thanks for your suggestions! What I’ve done is made a new footprint, which was a copy of the 2x5 pin header, and drawn boxes on the user.drawings layer around all of the pads. I then deleted everything from the original footprint and saved this as a ‘guide’ footprint with only the user.drawings boxes in it. I then placed these over the top of the existing complex footprint (as suggested by @scandey) to get positions I can use in the placement file.

1 Like