How to create a symbol with multiple pin functions efficiently

Hi everyone,

I wanted to create a symbol with many pins (µController) and most of these pins have multiple functions.

I’m aware that one can define alternative functions for each pin. However, this is a pain to do for more than 10 pins…

Is anyone aware of a solution where one could edit the alternative functions of all pins in one place?
The Pin Table was my first stop. But this does not provide a column with “alternate function 1…n”

Unless you want to reverse engineer the symbol file and edit it directly, I think you’re stuck with the pain.

There is no need to reverse engineer the symbol library format. It is described at:

You can also generate a skeleton for your symbol in KiCad’s symbol editor, then export it to a .kicad_sym file, open it in a text editor and add the rest of the data.

Another possibility is to have a look what is on gitlab. Especially the STM32 libraries make a lot of use of this feature, and I guess these are either script generated, or there is a script to make such symbols from tables.

1 Like

I love those tidbits turning up after reverse-engineering myself (on other issues).
Why is all this stuff so hidden?

There is a uConfig tool that extracts pin information from PDF datasheets discussed here:

and lives here:

It took quite a bit of processing time to build, but I see there are a prebuilt Windows package and a snap package. I didn’t explore it further because my projects are hobby so I’m not fussed about having all the pin functions on the symbol. Some of those MCU dev modules could also use such a tool.