Skip to content
GitLab
    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
    Projects Groups Topics Snippets
  • Register
  • Sign in
  • kicad kicad
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
    • Locked files
  • Issues 1,481
    • Issues 1,481
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 49
    • Merge requests 49
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • KiCadKiCad
  • KiCad Source CodeKiCad Source Code
  • kicadkicad
  • Issues
  • #8908
Closed
Open
Issue created Aug 02, 2021 by Albin Dennevi@denneviContributor

Misleading Symbol Attribute ‘Exclude from BOM’

Description

In the symbol properties there’s a checkbox saying “Exclude from bill of materials”. I initially thought that I was supposed to enable this checkbox when I for example didn’t want a particular resistor to be mounted on my board. A so called Do Not Populate/Place/Mount/Assemble feature. It took quite some time in different discussions before I learned that this is not the intention of this checkbox.

image

Since it’s not just me but several people who misunderstood this feature, I’d like to suggest a change of name for this checkbox. Maybe something like: “Virtual (exclude from BOM)”?

If I understand correctly, this checkbox has the exact same purpose as the ‘Virtual’ attribute in Pcbnew footprints?

image

I guess that it could still be used as a DNP feature if someone really wants, but it doesn't really make sense to have a DNP attribute which is not visible in the schematic. Therefor one must always add a DNP field manually to these components and then there's hardly any point in using this checkbox. It makes much more sense to have a dedicated 'Virtual' attribute than a multi-purpose 'Exclude from BOM' attribute.

When #2131 is implemented there may be even more confusion if this checkbox still exists, and if it changes name when people have started using it there will also be a lot of confusion.

Quote from @charrasjp in this issue thread.

There is here a misunderstanding about the "Exclude from BOM" (i.e exclude from XML netlist) checkbox purpose.

It is not intended to be used for a "Do Not Place" info.

Its purpose is to exclude virtual components from the XML netlist, because these components (edge card connectors, some microwave components like an antenna, logos, holes...) are just drawings on the board, and do not need a "physical" component.

KiCad Version

Application: KiCad Schematic Editor (64-bit)

Version: (5.99.0-11586-gbaf6798695), release build

Libraries:
	wxWidgets 3.1.5
	libcurl/7.74.0-DEV Schannel zlib/1.2.11

Platform: Windows 10 (build 19042), 64-bit edition, 64 bit, Little endian, wxMSW

Build Info:
	Date: Jul 30 2021 08:59:19
	wxWidgets: 3.1.5 (wchar_t,STL containers)
	Boost: 1.75.0
	OCC: 7.5.0
	Curl: 7.74.0-DEV
	ngspice: 34
	Compiler: Visual C++ 1928 without C++ ABI

Build settings:
	KICAD_USE_OCC=ON
	KICAD_SPICE=ON
Assignee
Assign to
Time tracking