KiCad symbol library for common modules

Good day

I'm working on a symbol library for common modules (breakout boards) that many beginners use in their Arduino environment; it might make there entry into KiCad a little easier.

The intention is that it can be used when drawing a schematic; this symbol library will not have footprints.

The library is designed in KiCad 8 and therefore it should not give problems in KiCad 8 and up.

Symbol naming convention

xx_yy_zz

  1. xx is either the common name or the main component on the module that provides the functionality. Examples are HC-05, HC-SR04, PCF8574
  2. yy is used to add some additional information and is optional. An example can be StemmaQT or Qwiic to indicate that the module also provides that functionality.
    This is done because some module manufacturers have older versions of a board without the StemmaQT or Qwiic` connector and vesrions with those connectors and those modules might have a different pinout.
  3. zz is the module's manufacturer. Examples are Adafruit, SparkFun and Generic; the latter for the stuff that comes e.g. from eBay.

Additional fields

I've added a number of fields that I considered useful.

  1. Product page. URL where product information can be found; can be manufacturer (e.g. Adafruit) or supplier (e.g. Mouser).
  2. Product code.
  3. Vcc. The operating voltage that can be used.
  4. Signal level. The IO signal level.
  5. Additional info. Some additional information if needed.

Examples

HC-05 symbol properties


HC-SR04 symbol properties


Adafruit PCF8754 symbol properties

Additional info indicates that there is a pull-up resistor on the board.


Waveshare PCF8754 symbol properties



Your thoughts and comments are appreciated.

OOPS

One mistake in the Waveshare PCF8574; duplicate pin 6 :frowning:

Thank you for doing this. I'm sure it will be useful for schematics.
What are your reasons for not including footprints?
Perhaps the modules don't have a standard footprint, or it's too much work, or the intended audience isn't expected to be making a PCB from the schematic. I'm just curious.
I know it takes a fair bit longer to make a footprint than to make a symbol.

Detail - numbers matter:
PCF8574 vs PCF8754

Or, was that deliberate?

This is from the sparkfun library
This is from the simple library

Makes your version look a little lame

Thanks

Mistakes corrected on my PC.

Thanks for the comment. Maybe one day I will beautify it.

My basic point is that some of those parts are already in some Kicad libraries like the Simple lib and the Sparkfun lib

I'm aware of the SparkFun library; if I however search (grep) for certain words I can't find a matching module.

But your point is taken.

I think, that without footprints it is missing lot of functionality and will present KiCad as tool just for drawing schematic, not to also create real connections, PCBs etc.

Because some beginner will put the parts in Schematic Editor, but the next step - PCB Editor - would leave him without all the interesting parts with no simple way to fix this problem.

I know, that for me it is easier to make new symbol, then to make the footprint for it, not mentioning make 3D model too.

If your target is beginner, who cannot easily make symbols for himself, that it would be nearly impossible for him to make correct footprints for the symbols. So impossible to somehow see the realistic parts placements and wiring (PCB window).

In this state it is kinda like explaining to someone, how to properly jump into watter and when he follows your teaching, he is in the watter and have "just somehow learn to swim to have some use from it"

I mean, it is good and nice begin, but IMHO it also need to have some following steps to be really usefull for beginners.

Thanks for sharing!

The idea is good and clearly involves a lot of work to create a comprehensive library. Did I miss where you are intending to publish it ?

For creating basic Kicad schematic symbols I use this: KICAD quick library generator
The results are not necessarily pretty but it is reasonably quick to create something usable.

The PCB footprints can be a big issue especially if you get no-name modules from Aliexpress etc. I can spend some considerable time with a vernier caliper taking measurements before I can create one. This problem could apply to any module which has been designed for direct soldering onto a PCB but for which no Eagle/Kicad design files are published.
The next time I am confronted with this problem I may try my luck with AI, handing over a picture or scanned image of the underside and see how far I get. But hopefully, in the mean time, someone else will have pioneered this path (if that has not already happened, that is).

Thanks for the comments.

Not adding a footprint indeed makes KiCad, as gilhad said, only a tool for drawing schematics. That is the main functionality that I intend to achieve; a "better" schematic when people post a schematic on the forum.

Footprints are a lot of work. I either have to work with available PCB files (often designed in another CAD program so pray that KiCad can (correctly) import them) or base the footprint on images on the web.

No, you did not miss it.

Once I have a reasonable library I will post it on the Arduino forum.
Once I've wrapped my head again around git/github (again) I will publish it on github.

I tell them to use EasyEDA. It already has many of the commonly used modules.