How do I save all component fields in library part?


Is there a way to add to the default component fields so say when I place a 1k resistor it also contains a default footprint, part number, and datasheet? This would save me a lot of time.


If you edit the footprint (Ctrl+e) may work.
But, if you will edit a default library you may execute KiCad as PC administrator / sudo.


I don’t understand what you are saying? Ctrl-e pulls up the editor for the part but I want know how to add default fields (footprint, datasheet, part number) to it. I use similar parts for different projects and it’s time consuming to add details to a resistor when it’s almost always the same


Search for ‘atomic’ or ‘integrated’ on the forums… plenty of posts regarding this.

Be aware that you need to run your own libraries (in another folder + setup paths in KiCAD for this) and only import from the official ones, what you need.


There is also kiField. It allows you to use a csv file to populate fields of symbols.


Wow should be much easier than that!

I will try using kiField script but something simple in the library editor is needed,


In the lib editor you can only edit one part at a time. Adding a field (and populating it) is already possible for that usecase.

KiField has the bonus that you can edit all symbols of a project.
I think in the newer nightlies there is a table editor that does the same from within eeschema. (Similar to cvpcb but for all fields. I have only read about it somewhere. I currently can’t use recent nightlies because my operating system is a bit out of date.)


For a single component, just click on the “T” icon on the tool bar in the component editor and you can add whatever fields you like.

In eeschema, you can define template field names with Tools->Schematic Editor options instead of adding them every time. Then you just need to add the values.


Thank you! The “T” icon is what I needed to know.

So now I’m thinking I should make R_0603 and C_0603 libraries and fill them with my standard components.

I’m curious what you all do though?


Okay still having an issue…

I loaded a transitor from devices.lib edited the default fields and then saved it in my own library.

I go into library editor and verify new default fields are indeed there.

I click the “add component” icon, browse to my library and add the component to the schematic

However, the new fields aren’t there! and the library editor says the component is in devices.lib still!

So when I try to add my new component, it is coming from devices.lib instead of my library, what gives?


You have a naming conflict. In kicad symbols need a unique name over all libs. If there are multiple symbols with the same name, eeschema will take the one form the lib that has the highest priority. The priority is defined by the position of the lib in the components lib dialog.

More details: (Click on it to read the whole thing)