Kicad 5.99 -- Pick&Place files generation

I’ve been recently surprised that my Components placement file was full of stuff that shouldn’t be there (like Logos, holes etc.)
The project is an import from 5.1, where we had a choice between SMD, TH and “Virtual” components.
These influenced the Pick&Place output.
Even if the part is marked as TH, it ends up in the CPF. I’ve even issued a ticket for this:

What I actually missed, is that now there’s a separate option to Exclude part from CPF. I’m a bit confused on what is the use of the compoent type (SMD/TH/Other) and what are the options (“Not in schematic”, “Exclude from position files” (that’s rather staraighforward), “Exclude from BOM”) used for? Are they related anyhow? Could anyone explain this to me so I get a better understanding?

Testpoint is both on schematic and on PCB, but makes no sense to include it into placement file or BOM.

Logo might be only on PCB, not on schematic, no point including it in BOM and placement file.

All this is obvious.
The thing is, how these can be properly achieved in nightly Kicads?
Previously we had “Component type”, now it’s still there plus individual options.
“Not in schematic” what it does? What’s the effect/benefit/use case for this option?
“Exclude from BOM” rather obvious, I’m just not used to generate BOM from PCBNew.

If you want to add a footprint to the board but not in the schematic. Then it’s not lost in schematic -> board update even when “Delete footprints with no symbol” is selected.

What @eelik said, plus it’s not reported as a DRC error if you have the layout-vs-schematic DRC check turned on

With changes in 5.99 it’s now fairly practical to design a board without any schematic, which is one reason that exporting a BOM from the PCB makes sense to some people.

OK, I think I grab the options.
But what’s the “Component type” now (TH/SMD/other)? Is this attribute used anywhere?

It is at least used as meta-data that is included in the file (as well as in the Gerber X3 placement file, if you export that format)

There is more context about the changes that happened here in this issue:

Basically, there are a number of cases where the position file is desired to have all components (SMD + TH) so the logic was changed to no longer exclude TH footprints unless they are specifically excluded by turning on that option.

1 Like

OK, so I understand that now the “Component type” is not the data that directly influences exporting the Pick&Place files, and there are specific options used to control the export (“Exclude from position file” specifically).
Thanks for the explanation, I will close my earlier ticket on Gitlab.

1 Like

Not entirely true. Test points may be more than pcb features, they may be placeable components.

1 Like

Hi Fred,

There are a few changes in footprint properties. The fabrication attributes options have changed as follows.

Now the component type has changed to “Other” from the previous “Virtual”. It is not clearly evident what the “Other” option can be used for.
new options

I checked the footprint properties of the internal KiCad footprint library for different types of components.

First of all, I tried footprints which consists of both through-hole as well as SMD pads, but such footprints are marked as “SMD” and not “Other”.

Even fiducials are marked as “SMD” and not “Other”. Mounting holes and few test points are marked as “Other”.

However, there is one clear difference between “Virtual” and “Other” is with respect to the position file. Previously selecting “Virtual” meant the component would not appear in the position file but selecting “Other” doesn’t affect the position file at all.

There is an option in the position file export window “File -> Fabrication output -> Footprint position” to “exclude all components with through hole pads”. If we mark a component with SMD pads as through hole component in footprint properties it wont affect the position file. Since the option to “exclude all components with through hole pads” considers only those footprints which actually has through hole pads.

If a footprint consists of only through hole pads and both SMD as well as through hole pads then selecting “exclude all components with through hole pads” will exclude the component from the position file.

The next option is “Exclude from position file”. This is a straightforward option to exclude any type of footprint from position file. Selecting this option in footprint properties will exclude that footprint from position file.

I recommend selecting this option while creating the footprint itself in the footprint library because if we import 10 components from schematic to board layout with the same footprint it will reflect in all the footprints in the board.

However, if we don’t want it to reflect in all the footprints then we can manually change it in the board file.

The third option is “Exclude from BOM”. This option doesn’t have any relation with the position file. Selecting this option for a particular footprint will cause that footprint to exclude from the BOM file.

We can export the BOM file from “File -> Fabrication output -> BOM” in the board layout file. BOM and position files have no direct connection, they can be compared using reference designators.

Another option is “Not in schematic”. Suppose we add a footprint (Ex: Mounting hole or fiducial) in board layout directly using footprint library and these component symbols are not present in schematic.

There is an option in board layout file “Tools -> Update schematic from PCB”. When we select this option, to avoid any errors due to directly added footprints in the board file, “Not in schematic” option is provided.

It simply means symbols for these footprints are not present in schematic so kindly ignore.

  1. With error

  1. Without error

The next issue about the logo and hole positions popping up in the position file doesn’t seem to be a problem. I imported a logo DXF in Top silk and added text in the Top silk layer on the board. This doesn’t seem to affect the position file in any manner.

Also mounting holes and SMD test points are marked as “exclude from position file” and hence don’t turn up in the position file, it works fine. I had imported the Kicad file from version 5.1.6 to Version 5.99.

However, I would recommend following while installing V 5.99. Try doing this and see if the issue resolves.

  1. Uninstall V 5.99 from your PC.

  2. Do not uninstall the previous version of kicad from your PC from which you will be importing file to V 5.99.

  3. Keeping the old version of setup on your PC doesn’t affect the new V 5.99 setup since they are both installed separately and both will be available on PC simultaneously.

  4. V 5.99 is being updated on everyday basis, so keep checking kicad website and update to the latest version. Last updated on 24th Jan 2021,

  5. While installing V 5.99 again select the recommended setting as shown in below image.

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.