Library Design Recommendations


From @dbrgn on Wed Apr 04 2018 19:49:13 GMT+0000 (UTC)

We should try to come up with consistent, practical and beautiful-looking recommendations for designing libraries. This should include all things like package design, signal naming and category naming.

First question: When designing footprints, e.g. for an SOT-23-5:


…should we (1) include the outline of the plastic case in the footprint?

According to @ubruhin, “the solder mask is automatically subtracted from silkscreen to avoid silkscreen on copper”, so this would work.


Or should we (2) make the rectangle smaller to avoid the pads?


Or should we (3) work with lines?


I tend to favor (1) because it looks best in my eyes, as long as silkscreen - copper is not a problem.

On a sidenote, I’m not sure if a single RFC issue is a good place to discuss these questions. Maybe we should open a separate repo / issue tracker where every question can be discussed in a separate issue, similar to

Copied from original issue:


I like #1 myself for sure. It doesn’t make sense not to match the real outline.

Other questions:

Where should the text “U1, R3, etc” and the value go by default, and what font and size is used?

What kind of polarity mark should be used? Dot, notch, or both? (I like both).

What marking should indicate pin 1 of a connector?

For batteries and capacitors in the schematic symbol, do we want an explicit plus sign, or is the long and short line notation enough?(I’m a fan of explicit).

Should IC pins on the schematic match the layout of the actual chip, or ba arranged logically?(I like a chip-based arrangements, but logical seems more popular).


In the meantime we have started with a library conventions section in the docs :slight_smile:

After some discussions with @ubruhin I think that it would be best to follow the IPC standard as much as possible when designing footprints. First, your questions:

This is answered here.

I’d stick with IPC and extend a line along pin 1, like this:


In contrast to a notch on the silkscreen, it has the advantage that it’s still visible after assembly.

Note that only the top and bottom line are silkscreen, the center rectangle is on the documentation layer. The documentation layer should include the projection of the actual package, see the package conventions for reference.

Regarding a notch, if there is one on the physical package, I’d put it on the documentation layer.

That’s a good question that could be discussed in a separate thread. I definitely wouldn’t put plus signs next to SMD capacitors, but probably next to battery connectors.

This is part of the symbol conventions, where we have decided to go with logical for now.

If you want to discuss any of those decisions or open issues (even the ones already in the docs), feel free to open a separate issue per discussion item so we can find a consensus there :slight_smile: We’re still trying to figure out what works best.

And make sure to take a look at the current library conventions section in the docs.