I have some elements that I want to include in my schematic and BOM but that do not have a footprint. One example may be FPC cables or RF antenas or even a case for a PCB.
I was wondering if there is a generic component in KiCad libraries that can be used for this purpose or if should be added to the libraries in case it doesn’t exist.
As I did not find a simple solution for this, I’ve decided to ask the librarians for a solution in Github.
The librarians suggested to ask for opinions on this forum in order to include a greater public.
For the time being I understand that there is people that think of this as a hack that does not really do the job properly and there is also people that thinks that ECAD solutions do not provide a good solution to this type of management but they should.
What are your opinions on the topic? Do you think that including this components in the BOM is a good feature? Can you provide a better solution than a generic component without a footprint?
Seems like making a mountain out of a molehill if you ask me… just create your own generic component library. Job done! I can’t see any benefit in having official support for an empty component.
That is a solution for me. It has worked until now. I don’t know how other people handle this situation or if there is a better approach to this. Maybe I am missing a solution that better suits my needs.
Also, if this can improve in any way KiCad for many users it is worth talking about it in my opinion
I don’t need this feature. Have you tried KiBOM? Since there will be a few components without a footprint in a schematic, like heatsinks for example, they can be added to KiBOM easily, though they will not be in the schematic as a component.
This solution wouldn’t work: the netlist loader will complain about a component without footprint.
I agree with @bobc. These are specific use features, best handled on a case-by-case (no pun intended, but still fully appreciated) basis.
A thought for the case, especially if the case drives physical features on the board (like mounting holes). Make a custom footprint for the case you plan on using that has mounting holes where the case expects them. Include the case in your schematic just like one would include mounting holes. Then every time you use that case in your designs the footprint will already exist with mounting hole locations (and maybe some indications on a non-fabrication layer of the maximum board size) so you don’t have to manually place them for every board.
Something that I’ve done is I created footprints for socketed ICs that only has silkscreen (no holes) and a generic chip 3D object offset above the board. On my schematic I include symbols for the sockets with an XU? reference designator that I manually set to match the U? number for the chip. So (for example) U5 will have an associated socket XU5. This allows a couple things:
The BOM will automatically contain both the ICs and the sockets without having to manually massage anything.
I can quickly look at the BOM and comparing the U numbers to the XU numbers I can remind myself of the pin count of a specific chip. Very useful when loading components. (For example, I’m looking to load U5 but I don’t remember how many pins this LM385 dual opamp has. Oh, look XU5 is an 8-pin socket, so let me look at my pile of 8-pin chips and I should find the LM385s there. And scanning across the board I only have to look near the 8pin sockets to find the location to insert U5.)
It seems a little backwards, but for the footprints I would assign a socket footprint to the IC (U? part), and the “socketed IC” footprint to the socket (XU? part). The 3D object offset for the “socketed IC” part is enough to make it show inserted into the socket in 3D view.
That’s a complete non-issue for me. It seems sometimes people slavishly follow the tools instead of using a little brain power. The tool is there for my benefit, not the other way round!
However, there is a way around that alleged “problem”.