Creating high pincount schematic symbols, especially for things like FPGAs, is a real pain. I built a script called KiPart for generating multi-unit KiCad symbols from pin lists stored in CSV files. You can read more about it here, download the source here, and install it like this:
One suggestion, though: I see that when set to stack identical power pins, it marks most of them hidden. You donāt want to do that. Hidden+PowerIn pins are automatically, implicitly connected to the net of the same name, which is probably undesirable. I recommend making the extra pins ālessā visible by setting the pin number text size to zero, instead.
Itās one of KiCadās silliest āfeaturesā. Itās used to implement power ports, but also the ghastly hidden pins on ICs (like in the 7400 lib) that are implicitly connectedā¦
There have been issues in the past with things set to zero size not rendering properly in eeschema - but I use that so often that if there are any more issues with it, Iāll just fix them myself in eeschemaā¦
If that becomes a problem, I can always bump the āinvisibleā pin number size up to 1 mil. Thatās still a better solution than having to redo a board spin.
Does Kipart need any specific version of the Python installed? I just tried it with Python 3.4 on Win7 64bit, install via pip went ok, but any call to kipart.exe results in this:
Considering that the function call syntax is equally valid in 2.7 as long as youāre not using the optional features (omitting EOL or printing to a different file), perhaps you should consider using that syntax. There are a lot of simple Python scripts that would be both 2- and 3-compatible if the developers would just put parens in their print statements.
āIn fact, I tend to define something like this at the top of my scripts so I can use the rest of the features too
Iām working on the port to Python 3. Iāve used āfuturizeā to do the conversion. Itās mostly working, but there are a few issues that arenāt as simple as converting the print built-in to a function.
Iām talking about symbol pin coordinates as they defined in the KiCad symbol format. That would allow to define gaps between pin groups (for more complex symbols) in the CSV itself instead of rearranging pins in the symbol editor afterwards.
So you donāt really want (X,Y) coordinates. You want something like a āgapā pin thatās listed in the CSV file but doesnāt turn into an actual pin in the symbol and leaves a space instead. Possibly this could be specified by placing an asterisk in the pin number column.
OK, I added the ability to insert āgapā pins. Just insert a row with a pin number that is a ā*ā (or starts with one) and that will create a non-existent pin that inserts a gap in the sequence of pins on the symbol.
This only works if youāre using KiPart with the -s row option. (Using the -s name or -s num options will sort the pins by their names or pin numbers and that makes it impossible to tell where the gap pins should be placed.)
If youāre building a multi-unit symbol or using multiple sides of the symbol, remember to also specify the unit and side for the gap pin.