Create new power symbol from a existing one

I have just updated from version 4 to 5.
Now I have the problem that my previous created power symbols are lost.
I would like to create new ones, but not from scratch.
Is it possible to take the 3V3 symbol and edit it and save it as a new symbol?

Sure, go for it. Remember to save your new power symbols to a new library somewhere in your user area of your HDD (not in the same location as the supplied libraries or your libraries will be wiped out again when you next upgrade).
The pin name of the hidden pin is what determines the net the power symbol will connect to so make sure you change that as well as the value.

Also, if you haven’t already you may want to check out these two FAQ entries:

And for full measure (before you make some organizational mistakes that might make future upgrades and library management difficult), you might want to read this FAQ entry on how KiCad 5 uses and access folders:

Did you save your old symbols in the system library? Because otherwise it should not have been lost. You might just need to add your personal library to the library table.

You can also restore symbols you lost from projects. As long as the cache lib exists there should not be a problem as kicad will rescue them. (rescue means it copies the missing or changed symbol from the cache lib to the rescue lib. You can then copy the symbol from the rescue lib to a new global personal lib to have it available in other projects)


Be aware that the pin name is what determines the net name. See the FAQ links posted above.

Thanks both.
I had a brief look at the new library management and must admit, I have to study it more to fully understand.
Now I have used quickly in the symbol editor “save a copy as” and gave it a new name. So I guess it will be in the KiCad libraries and gone after updating.

Anyway: I would like to aim to have only one library. So I will try to copy the whole KiCad library into my own folder and extend it with parts as I need it. Then I must delete all original Kicad libraries and paths to the installation folder. In my old installation installation I did it so, but there was still sometimes problem with the paths. Sometimes KiCad still used the original libraries.

This is not really a future proof plan to be honest. You will be unable to merge future improvements made by the kicad community into your lib. I really suggest leaving the official lib untouched and only extend it with a separate personal lib with things that are not in the lib. Give your personal libs a clear prefix to reduce the chances of a naming conflict. (There is no limit in how many libs you can have in kicad and you can even deactivate single libs if you want.)

Unless you have a differing personal standard, then just only copy the assets you need from the official lib into your personal one, adapt it to your standard and then use that adapted asset. (I doubt you would like to adapt all assets this way as you are unlikely to use a vast majority of them)

1 Like

I have downloaded now the libs for my version(5.1.5)-3 and will use it as a starting point of my user library. I can deactivate the KiCad lib from the installation folder but leave it there. Sounds that ok?

The point is that I have to check the parts every time the libs are updated for changes and I want to avoid that. When I have used some parts in the past and there was no issue with them, then I just want to go ahead and use them again.

BTW: Does KiCad plan to introduce some kind of revision number for symbolds and footprints when they upgrade the libs every time?

My solution is: I use my own libs. And more and more often my libs are a copy of the official libs.

I keep a copy of the official libs in my home directory. And my own libs in another directory.
When I need a new symbol, footprint or 3D model, I copy it from the official libs to my libs. If I don’t find what I want in the official lib, I create one from scratch.

From time to time I update the official libs from github. But the symbols and footprints of my libs are not updated. This way I can assure that the ones I used in the past are not modified.

I have made a copy of the original libs to my home directory and use it now. The additional to it I have added my old libs to it and can use them now as well. Works fine now.
So I can look and compare with the maintained libs from KiCad and see which ones to use.

Even with a copy of the official lib i still suggest to only make modifications in personal libs. There is not really a viable option to merge changes you make with changes made by the library team and separating your own (modified) assets is really the best option to be future proof in this regard.

The copy of the original lib is now my “personell lib”. :slight_smile:
Together with my own created symbols and footprints.
I will still keep the original lib maintained by KiCad Team in the installation folder and update my personell lib from there.
I think this is the best way which works for me.

Interesting. I would like to follow your path, since it works well for you. I too would like to use minimal modifications to the official symbols, footprints, and 3D models.

How exactly do you copy the symbol, footprint, or 3D model into your libs? Can you just use a text editor to append it (the descriptor inside beginning and closing tags) to the file?

How exactly do you specify to kicad to look at your libs first when rendering the PCB, and then at the official libs ?

For 3d models just use the file browser. Footprints can also be copied with the file browser. But i would use the library asset editors for copying both symbols and footprints.

KiCad does no longer support having alternative lookups for symbols and footprints (for symbols since v5 for footprints at least since v4)
Both of them are now specified in the schematic/PCB by “library nickname”:“asset name”.
What library file location is connected to the nickname is managed by the library tables so you can change this association if you want (i however suggest making your own independent uniquely named libs and only copy assets into it instead of copying full libs without renaming them.)
Any lib table only supports unique nicknames (but the same nickname can exist in both the global and local table, in that case the local table will win. I have not tested what happens if a nickname is in both tables but the local one is missing in the file system.)


If one really wants to have a personalized copy of the official lib then at least use git and make a separate branch. Then you can cherrypick or merge changes using git tools (I however doubt this will be viable if you make many personal alterations)

Again i think it is not future proof (5 years or longer timespan) to have a personalized copy of full libs (having modifed assets of interest in personal libs is different and the way i suggest to go. Mainly because this will massively reduce the number of assets you need to maintain.)

Footprints and 3D models: copy and paste with the operating system file manager.

Symbols: inside the lib editor I copy and paste. This option requires to load also the official lib. Once the official lib is no longer needed I deleted it from sym-lib-table.

I have changed all the environment variables to point to my libraries. I use the official lib folder as a warehouse for future needs.
I’m a freelancer and this is the way I work for my main company.
I use here the term “my libraries” for simplicity. In fact the libraries are stored in the company server and I am the only one with rights to write/delete in the lib folder.
But it doesn’t matter if the libs are in your /home/user directory or in a sever.

For example, with another company I have “per project” libraries. Each project has its own libraries that contain only the symbols, footprints and 3D models used in that project. In this case, all environment variable paths are relative to ${KIPRJMOD}. It requires more work but the whole project can be published and shared as self-contained.

Okay, Rene_Poschl, I gather from Mark_Stowe’s Jun 18 2019 post at Saving to libs in library editor you mean his checklist for a symbol change in eeschema, and
Tools…Update PCB from Schematic for a footprint or 3D model change in pcbnew.

I agree with you that only things that need to be changed should be copied.

Thank you.

In the second post above there is a link to library management in KiCad 5. I would suggest to read this at least one time. There are links to github further down where you can download the libs as zip files.
I have unzip them into my libs folder and then adjusted the paths in KiCad.
If you can’t adjust the paths, then you need to go into the system environment variables and delete the KiCad entries. In my case it is on Windows.
After that I have manually added some libs previously created.

kicad_paths

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