Is there a way to make a "master" index of all devices in the libraries

Not a big deal but it would be useful to me to have a master index of all the parts in all the libraries.

My reasoning is, if I’m faced with a new part on a schematic, sometimes its not perfectly clear which library it is in. That is if it already exists.

I have been performing a simple text search on the library folder but that is cumbersome.

Thanks
John

You already have access to “everything” by virtue of the search feature. When you insert a new item in the schematic, you can start typing a part number (at the top of the window) and gets partial or full matches, regardless of which library contains the item. This really is better than a long explicit list.

Does this help?

The search bar when adding components does more then just searching for part numbers. It searches for example also in the description texts of the schematic symbols. and it has a regular expression like syntax. You can also use multiple search terms separated by spaces just like any regular search engine on internet.

But unlike internet searches, it is not limited to whole words.
Have a look at the search below. If finds all kind of connectors which have a 02x04 pin orientation.

1 Like

Perhaps silly to post the obvious but…

• Recognize that the “Parts” are not really called “Parts”
• There are different file types but, if considering an interest in the “Parts” (such as Transistors, LCD…etc, as opposed to WRL and STEP files, used for 3D imagery of the parts)
Then, Use your computers Search tool (Finder, Explorer… whatever - I like EasyFind for Mac)

What you call “Parts” have the extension “.kicad_mod” Thus, search for .kicad_mod
Stock mod’s are in folders called .pretty
And, you can have your own .mod’s…

The point being, ‘Use your search tools’ with common-sense and you’ll find (or, should say) “I Find” over 12,199 of them! So, it’s important to be selective before Printing reams of paper…

Know the location the folders - on my Mac, the stock ones are in:
Hard_Drive>Library>Application Support>kicad>modules

[EDIT] also, eeschema uses different file types, such as .dcm

Example

Thanks for all the answers.
As I said, I’m already using an external program with a search where I can specify the file must contain for example “AD9485”

Also I was under the impression that in eschema if I don’t have the library containing the part I want it will not be found from the eschema search box.

So my search continues (pardon the pun)

Blackcoffee has a point.
What do you mean with “parts”?

  • Schematic Symbols.
  • PCB Footprints.
  • 3D Models.
  • Other?

I find the search for Schematic Symbols in KiCad V5 quite nice (as poster earlier). For the Footprints there is a similar search option in the Footprint Editor, and this also does much more then just searching for file names.

For mating Schematic Symbols with Footprint there is also an application (previously called?) CvPcb which is accessible via:
Eeschema / Tools / Assign Footprints …
It has some powerful filters, but it does take some time to learn to use it effectively.

Usually I’m looking for IC’s for a schematic.

Digikey sells IC’s and has a search engine. So do sites like https://www.findchips.com/
But your answer does not clarify what part of KiCad you are referring to, or you are rubbing my blind spot.

I clearly know what I am thinking but seem to not be able to describe it adequately.

So an example:

My current schematic requires an AD8495. In whatever libraries I had made active in eschema did not include this device. So my next thought was how to find it if it exists, rather than just go ahead and recreate the device…hmmmmm

I guess I could make every library active and redo my search, but that seems like a PIA. So I used Dopus file manager to search through all the Kicad library files to find AD8495. Voila! I found it in the “Sensor_Temperature” library.

So my thought was if I could create a text or xls file with all the device names in alpha order It would be slightly easier to find if it currently existed in the existing Kicad libraries.

John

Is this a random, pulled from thin-air part number example? I couldn’t find AD9485 in KiCad, then couldn’t find an IC with that name quickly using Google, and then tried Octopart and was still unable to find that example. A better example might have been an IC part number that actually exists but isn’t in KiCad’s library (shouldn’t be that hard to find, KiCad’s library isn’t all encompassing).

That is true. KiCad cannot magically come up with a symbol for something that it doesn’t know about. (Libraries are how to let KiCad know about symbols and footprints.) Often I find it faster to create my own symbol from the datasheet of the device that I can’t find in KiCad’s library than to search the internet and ask on forums for the symbol. I might change my mind if I ever need a super-high pin-count IC (FPGA anyone?), but even then creating a symbol from scratch isn’t much more effort than checking a symbol with unknown provenance for errors.

Oh, that must have been a type-o above… So, again poor example unless you don’t know how to use the search feature built into KiCad.

I opened a schematic, clicked on the add part tool, clicked on the sheet area and typed AD8495 into the search bar and came up with this:


The libraries that I have installed came with KiCad 5.1.8

Ah! I didn’t understand your workflow. I leave all the libraries active. I’m guessing you have some reason to deactivate libraries when not needing them?

OK, so this at least (finally?) confirms that you are looking for Schematic Symbols.

For an initial search I usually start with the a shortuct key in Eeschema to add a symbol, and then type the numeric part of a schematic symbol name. Just typing “849” shows some Thermocouple amplifier with type number “AD8495”:

You can’t have it both. First tell KiCad to not use it’s own libraries, and then still expecting KiCad to find parts in disabled libraries.

I have also disabled a bunch of libraries to speed up searching a bit on my old PC, but those are only some libraries which I am extremely unlikely to ever use such as 3/4 of the microcontroller libraries and FPGA libraries. (Oops, just noticed all lib’s are enabled now in nightly-V5.99 which I installed recently).

KiCad’s search capabilities are better then simple file searches. An intermediate option for you can be to create a KiCad project in which all libraries are enabled, and use that project for checking for rarely used parts. 16928 Symbols is quite a lot to search through manually. If you use a special KiCad project for this, then it does not only tell you if a part exists, but you can also see its description, graphic representation and footprints. ( The Footprint preview in the “Choose Symbol” dialog is a new feature in V5.99)

If you want to go this way, then the simplest way to do it is probably to copy the contents of the global “sym-lib-table” file to the “sym-lib-table” file in your “browser project” with a text editor.

Offtopic

Hey, Dopus… as in Directory Opus? I remember using that on my Amiga. I didn’t know development was still active and had expanded beyond Amiga. Nifty.

Its just that when I’m scanning through the libraries for a part I want I find the plethora of devices cumbersome. This goes especially when I’m looking for a part that isn’t an IC. Say perhaps a relay or switch. I often want a DPDT switch and don’t care what type it is for the schematic. Same goes for relays.

I wasn’t expecting anything. I was simply asking if somebody know if this was possible (without a large project effort). I don’t use py scripts but I see a bunch of them, I though perhaps such a script was available.

I really didn’t mean this question to become so “active”. It was a small wonder if question.

It is very active with meaningful updates occurring at a pretty good clip. It has far surpassed my ability to use even 1/10 th of the capability, but I love it :slight_smile:

FYI, generic symbols are usually in the devices library. But searching on DPDT only gets hits on the switch and relay libraries. Probably because pin numbering is anything but standard among switches and relays. Since KiCad’s primary purpose is to develop PCBs, mapping schematic pins to physical footprint pin locations is kinda a big deal and KiCad does that with pin numbers. :wink:

I’m a circuit designer first, actually its now that I’m retired I designing my own boards. Before it was always the in-house board designer or a service. So I design right on eschema hence my perhaps “different” view on the workflow. In a schematic a DPDT relay is a DPDT relay. The pin numbers don’t come into play until I have a specific part for my relay. Then I deal with the pin numbers or perhaps make my own (or downloaded footprint).

I have found Kicad very intuitive and have made a half dozen boards so far. As I said I didn’t intend this question to be so involved.

Thanks for response.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.