Are there any forbidden/discouraged characters in footprint/symbols?

As I am making footprints and symbols for components, are there any forbidden or discouraged characters for use in the names of the symbols/footprints? I will only use characters from the printable 7-bit ASCII set. In other words, I won’t use anything from extended ASCII, nor will I use any of the symbols from 0x00 to 0x1F (that excludes all whitespace except for a single space).

I’ve learned that I need to specify both manufacturer & common names of package footprints in the footprint name, as some of the common names like TSSOP, etc. are ambiguous (TI, for example refers to several incompatible packages as TSSOP).

I want to use a format something like . Ultimately I am trying to choose a delimiter to separate the three fields, and in doing so I am trying to avoid symbols that appear in manufacturer part or footprint names. It’s the manufacturer part names/numbers that is more concerning, as it is not uncommon to see #, <, >, -, :, ~, and a variety of others in manufacturer part names/numbers. Because I see both spaces and underscores, I’d like to avoid those for the delimiter.

As I set this up, I want to know if there are any forbidden characters or any that I should generally avoid?

I’m no expert at this but being a Linux user, using a forward or backward slash, or backslash, is not a good idea. The forward slash is used to indicate directories, called folders on Windoze, and the backslash is used to indicate certain characters that follow are actual characters. As a example, if I have a directory with a space in it, I have to put a backslash before the space to let bash know it is a actual space, called escape I think. Some other characters require the same.

I’m sure Windows has similar characters as well. I’d make a list of both and remove them from the list of usable characters so that no matter what OS a person uses, there won’t be any problems. Keep in mind, KiCad has Windows, Linux and Mac users. I think the list for Mac would be the same as Linux, since Mac is sort of Linuxy.

I found this info with a web search:

Linux/Unix:

/ (forward slash)

Windows:

< (less than)
> (greater than)
: (colon - sometimes works, but is actually NTFS Alternate Data Streams)
" (double quote)
/ (forward slash)
\ (backslash)
| (vertical bar or pipe)
? (question mark)
* (asterisk)

That should be a good start. Others may add or say some are allowed now.

Have you looked at the KLC?

This is a good starting list as you say. I’m a windows & linux user, so I take your point. It seems that there are no specific forbidden characters from a KiCad-specific standpoint, but I invite people to correct me if I am mistaken.

I’m thinking a double underscore would be a good delimiter within my footprint & symbol names.

1 Like

I was not aware of this - thank you.

1 Like

I can’t comment on what has/hasn’t changed in Kicad since I posted this, but, worth knowing that some font’s are Glyph based (meaning, graphic based and not really a Font)…

I think using a colon ( : ) might cause issues, as it’s used as a delimeter for libraries and items. I just don’t quite know how much things would break (if at all) if you did use it…

A single underscore will do it as well. Stay with the KLC as linked to above and you’ll be OK.

1 Like