Sorry if this is a bit of a rant, but I'm curious to hear other people's opinions about this.
Until about half a year ago, I've always used EAGLE and DipTrace but eventually I've had to abandon them because both are, in the end, too clunky and/or too slow to do serious work in. I still don't want to pay up for Altium and so I've switched to KiCAD, and I've been quite happy with it.
But I've only just realized that KiCAD maps symbols to footprints purely based on the pin/pad number?? There is also a pin name field, but that does not seem to be used. The pin number field also does not have to be a number, it can be a string, and multiple pins/pads can have the same "number".
To me, this seems like a very strange decision. Initially, I thought that they have done this to keep a symbol purely a symbol, so that you don't have to worry about the footprint while doing schematic capture. However, since the pin numbers are directly mapped to footprint numbers, you do have to worry about it. For example, there are at least 3 "generic" N-MOSFET symbols, namely "drain/gate/source", "drain/source/gate" and "gate/drain/source", referring to the ordering of the pins.
So, you cannot really speak of a generic symbol anymore, and you have to think about which MPN you want to use while designing your schematic. At this point, why not have a "component", which is basically one mapping from a symbol to a footprint, like EAGLE and DipTrace do? It seems strange that I have to worry about pin numbering when creating a new symbol, just to make sure that it will match up with the footprint.
Am I doing something wrong? Is anyone else confused by this?
Curious to hear your thoughts.
Jim