KiCad 6 BOM missed a part

Hi,

My schematic had a part C6 and it was showing up in a BOM CSV file. I updated the schematic, however, now C6 does not show up in the BOM CSV file. I re-ran annotate and footprint assignment, but it still does not show up in the BOM. Is that a known issue or am i missing some prep step?

thanks

Every schematic symbol has a check mark for the option: “Exclude from bill of materials”. Is that set?

Yep, that was it. THANKS!

It would be nice if KiCad had some kind of overview screen to such attributes of all used schematic symbols. Maybe a bit like the pin table in the Symbol Editor.

Is it possible something like this is already implemented but I just missed it?

I feel like this could maybe be added to a more general “Symbol Fields Table” (Tools → Edit Symbol Fields… in the Schematic Editor).

Currently, only the fields are shown. I think a way to view the attributes as well would be useful (with good UX, hopefully).

Yes, the Symbol Fields Table would be the most appropriate place for this info.
The same missing feature in v7.

v7 has introduced the “do not populate” attribute, which should now be preferably used when you want the footprint on the layout but do not want the part in BOM (this attribute didn’t exist in v6, so all we had was “exclude from BOM”). It does show the corresponding symbol on the schematic with a large cross over it, so you can’t miss it. (But I wish there was maybe some a bit less obnoxious way of showing that.) Could be useful to show the “exclude from BOM” attribute on schematic as well, in some different, and still not too obnoxious way.

But there’s still no summary of those attributes anywhere, so it’s still much too easy to miss one or more parts with it, and sc*ew up a BOM. That is, to me and in my very humble, much obliged, opinion, a long-standing missing feature that looks very necessary for professional work. There’s no way we should have to check BOMs with hundreds of parts manually just to see if we haven’t excluded something by mistake, or just finding out what we have.

Be aware that all attributes, including these two, get copied when you copy/paste or duplicate a symbol in the schematic editor. So if you duplicate an excluded part and you didn’t want the copy to be excluded, and you didn’t notice, you’re done. (Been there, done that!)

I haven’t found an obvious way of extracting this in a Python script, but there probably is. The thing is, last I tried, when some symbol was “excluded from BOM”, it just wouldn’t be listed when enumerating parts using the KiCad Python API. I haven’t tried with the “Do not populate” attribute, to see if the same issue exists. But I didn’t find a way of getting those excluded parts from Python.

So I really, strongly, fervently suggest the team to add this in the next version. Still very humbly.

But meanwhile, if I’ve missed a simple way of extracting this info reliably from Python, that’ll be good enough. If anyone knows.

That is an excellent idea.
At the moment I will not make a feature request for it (yet). I first have to update my linux distribution to be able to install and test with KiCad-nightly V7.99 first. V7.99 apparently uses some newer python version that is not in my Mint 20 *&^%$#@!

But I’ll bookmark this post so I won’t forget.

1 Like

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