Are there any symbol --> image scripts? (or online viewers)

Hi All,

Long time forum follower, first time poster. Looking for a tool/script that can read and generate an image/preview of kicad symbols. If there’s a web based symbol editor, that would be even better (thought i remember seeing one from a university somewhere, but cant find it for the life of me), but baby steps… Anyway, i’m building a library / BOM management tool (Django) and would like some visual feedback when browsing the libraries. I’ll put it on github when its a little more mature, unless someone is interested in helping with development. Idea is that it would be somewhat comparable to CIS/CIP that could be used by small business/hobbyist’s for atomic part (centralized) library management.

On a similar note… is there any way to force KiCAD to refresh its symbol libraries if they’re edited from an outside tool (text editor, etc). My tool can edit the traits of component, but kicad seems reluctant to refresh a library if edited externally.


Yes, go into Preferences->Component Libraries then just click OK, I find that works in 4.0.6 at least.

1 Like

That one does footprints:

Thanks bobc- didn’t know about that trick, i’ve been closing and re-opening kicad wayyyy to many times recently.

Thanks Joan - This is perfect! Now just looking for a schematic symbol tool.

Quick preview before I turn in for the night-

Its a kicad library management tool that can independently handle symbols from components, based on a house PN/description (Material). Along with an integrated BOM management tool.

Built on Django, the tool has a nifty “Admin” site that can handle bulk uploading/editing of data…

Goal is to get a centralized library with multi-user functionality for practical business use cases. Still very much a WIP, but wanted to share :slight_smile:

More to come!

Keep it going, sitting on the sidelines here watching and cheering. :slight_smile:

A few more updates. Looking for gentle feedback :slight_smile:

I have the library manager implemented like the image below:

“Material” is anything you might have a datasheet on: Resistors, Enclosures, Screws, Manufacturing Specifications, etc.

“KiCad Components” are referenced to:

  • A specific material (110K Ohm Caddock Resistor)
  • A Library you want to place them in (Resistor Library)
  • A Footprint (0805_RES_SMD)
  • A Schematic Symbol (RES_US)

“Libraries” hold your kiCad components.

  • NOTE: To keep things modular and editable, there is Always a library called “Symbol Library” That has exactly 1x copy of every unique symbol. Editing these symbols will change all the components that use said symbol.

“Footprints” Are all grouped together in the same folder to keep management (and 3D models) straight forward.


Main Menu (Material–>Material Index)

  • Displays all the material currently in your DB. Clicking on the link will bring you to its BOM.

BOM Display

  • Displays all the structured items below, and everything the material is structured to, above.

New PN

  • Creates new material… Pretty self explanatory…

Schematic Symbol Index (Sch Symbols --> Symbol Index)

New Component (KiCad Components --> New Component)

  • Creates new KiCAD Components based off materials, Footprints, Symbols, and Libraries

If you’re interested in alpha testing it, please let me know. I don’t want to throw it on GitHub until its stable enough that it won’t discourage adoption. I’ll put together an install document, but familiarity with Python would be helpful for everybody.


Only nitpick would be ‘Material’… stock would be more fitting if you aim for an international audience :wink:

PS: I know ‘Material’ from back home in Germany :nerd:

Stock implies something that you have in hand, but material seems to be a commonly used term in industry - it’s the M in BOM of course. Maybe it varies by company? Our MRP system based on SAP calls everything a material FWIW.

Ah, ok, sorry… thought this would be a language thing again. Nevermind me then. :flushed:

Yeah, the ERP/MRP we use at work also uses “material” which influenced the term, but @Joan_Sparky brings up a good point about language for international use - TBH though, the thought of choosing terms for an international audience hadn’t crossed my mind before that.

Using the term “Symbol Library” also collides with the existing Symbol library, which might be be called Graphic Symbols

Good point. I’ll change that shortly. In the mean time, i’ve updated to include graphical previews, courtesy of @c4757p’s render library (link)

Hi ZoonSkiiz923,

Out of curiosity - how do you exchange data with KiCad? Do you keep the library files on a server, do you upload them for processing? Do you use any additional storage backend (database)?

Everything is DB centered, but in general for schematic symbols, there is one file that has every unique symbol that kicad can edit, and save to/from a network mapped drive. Then, the tool reads the changes, and implements them to every component associated with the symbol. To bulk import symbols for the first time, the user Can upload a .lib file to the server which will add all the unique symbols to the DB (and subsequently the" symbol file" mentioned above.) Footprints are still a WIP, but I will likely have a directory that is crawled by the tool, and adds the FPs to the DB as they show up in the directories.

Hi, just sent you an email with the info you asked about. Sorry I didn’t see it sooner. Hopefully there is a nugget or two that will help. Don’t mind alpha testing your work.