First, a brief description of what I’m trying to accomplish:
It is relatively common to build different configurations or variants of a PCBA, which share the same PCB (layout) but different component selections (schematic annotations). Is there, today, a recommended way of maintaining such variants within a KiCad project?
Associating multiple schematics to the same board file is a non-solution, since it is not smoothly handled by KiCad, and allows the two schematic files to diverge in topology.
Semi-solutions I am aware of, but not satisfied with:
- KiBOM is a great tool, but as far as I can tell it only handles configuring whether a symbol is DNP for various configurations. It’s equally important to handle a change in the symbol’s sourcing information, or at the very least its native KiCad value.
- Keeping the schematic “agnostic” and maintaining BOM configurations outside of KiCad is of course a nightmare. For most cases we are able to make component selections and maintain sourcing information within the KiCad schematic, which both makes the schematic informative (correctly annotated) and allows automation of BOM exports.
Is there a tool I’m not aware of, or would this be something new to the community?
As a potential solution for this problem, I imagine an extension of KiBOM (or a new tool entirely) which essentially allows you to save different copies of the symbol field table (maybe just use the XML as output for the BOM tool) and to “apply” them as a sort of view on the schematic. There would be an integrity check to make sure footprints and reference designators don’t change.
A hairy bit would be making sure that none of these symbol field changes result in a silk change on the board, either, but users with this use case in mind would probably not have e.g. values for passives in silk on their board anyway.
My understanding is that the schematic editor will soon get a more mature plugin system the way the layout editor currently has. Is it best to wait for that capability before undertaking any kind of development effort on more sophisticated schematic manipulation tools?
Thanks everyone!
P.S. If such a mechanism for “symbol field set” swapping were available, it would replace the KiBOM configuration scheme. It would also provide the benefit of visually updating the schematic, so that you can print off copies with DNP, part number, etc. correctly annotated for each configuration.