Dear people,
I’m new to KiCad, having used Eagle for 6 years before this. I’m very confused as to the way devices are made. I do not use ‘generic’ components like most people seem to do. In the past years all parts and libraries I maintained where fully specified. i.e. they had an manufacturer, an orderable part number and additional information about the exact component in question. This way it is avoided that designers are making on-the-spot decisions on footprints and component selection when converting the schematic to layout, and when processing the BOM. After an component had been added to the library, it could only be used one way, always resulted in the same exact ordered part number and was guaranteed to have an IPC footprint generated for it based on the manufacturer datasheet. Or at least that’s how we did it for the past few years.
With Eagle this is easy. A device (component) is made using a footprint and a symbol. The device holds the pin mapping and all parameter fields. I used to have hundreds of fully-specified devices for even the most simple parts like resistors and capacitors, but only a few symbols because symbols for most passives where shared with many devices. Footprints where designed for each manufacturer specific series of components, and then shared between devices that only deviated in value within this series. So for example the CL05xxxxxx5yyyy by Samsung for general 0402 capacitors, or the RC0603FR-xxx series by Yageo for general 0603 type resistors.
In KiCad this seems more difficult. I’m still trying to figure this out, but the symbol is used to store much more then just the graphics and pin names. The footprint, parameters and pin mapping is also in there apparently. So (I think) when I add custom library-defined fields and a fixed footprint to a symbol, the symbol itself becomes non-generic as well, despite how simple that symbol may be.
As far as I see, this poses two problems:
-I’m going to get a great number of duplicate symbols that will be very difficult to maintain. If I’d ever want to change the text sizes, layers, positions etc. I would need to do this separately for all these fully-specified parts. At some point this becomes impossible.
-It seems like the “value” field is also used to actually name the component. So instead of text of my own choosing, it now shows as ‘100n’. This is problematic because I might have a dozen different capacitors with this value but differing in manufacturer, footprint, automotive qualification, packaging type you name it. If I needed to add all this to the value field just to make sure that I can find and differentiate between parts the schematic becomes unreadable. Just having the value field as a name is not enough. Can I change the name that shows up in search, but keep the displayed value on the schematic as-is? The actual defining parameter is the manufacturer product number, but showing that in full instead of just ‘1K’ is worse then unhelpful.
tldr:
Is there any way to use one footprint and one symbol to create multiple devices/components with varying custom parameters and values but still be library defined? Can the name of components be determined by something else than just the value field?
Since I’ve been looking into the program for only a week, it is possible I overlooked basic things.
Any help is greatly appreciated.