I sometimes edit a footprint from the PCB editor (Rightclick->Open in Footprint Editor) in order to make minor changes to the silkscreen such as moving the polarity marking for an electrolytic capacitor. Afterwards I lock the footprint. However, locking appears to only prevent me from selecting it. Updating footprints on the PCB will revert that edited footprint back to the library version.
Is there a method to lock a footprint such that it is ignored if I update all footprints on the PCB (Tools->Update Footprints from Library…)?
The closest is to export the footprint to a project specific library and then use that as the source of the footprint. That way it will be updated with changed settings. But remember you have to push that change to the schematic too (With: PCB Editor / Tools / Update Schematic from PCB) because the schematic is the source of all info in KiCad.
“File > Save as” the footprint you wish to modify into a Global Personal Footprint Library using the Footprint Editor.
Give the footprint a new name.
Make the changes and save.
Your new footprint is available for this, and any other project, forever more.
Finally, link the new footprint in your personal library to the symbol on the schematic.
Quicker to do than type the instructions (not counting the footprint modifications).
This is one of the main reasons Personal Libraries exist.
paulvdh -
Using KiCad version 7.0.8 on Windows 10. Should have added that in my first post.
I exported the footprints to a project specific library and updated the schematic. Updating footprints from the library in the PCB editor continues to return the modified footprint’s silkscreen to it’s pre-modified condition.
I must be missing something in my process, or some portion of the footprint’s original definition is not being updated in the PCB Editor:
In the PCB Editor:
File->Export->Footprints to New Library…
Select “Project”
Save “Library.pretty” to the project directory.
Update footprints on board to refer to new library? - Yes
File->Save
In Schematic Editor
Tools->Update Schematic From PCB…
Select the following:
Re-link footprints …
Values
Footprint assignments
Net names
click the Update Schematic button
File->Save
In the PCB Editor
F8
Select the following:
Re-link footprints to schematic …
Delete footprints with no symbols
Replace footprints with those specified in schematic
Click the Update PCB button
File->Save
Close the PCB Editor and Schematic Editor
Close KiCad
Start Kicad
Open Schematic
Open PCB
In the PCB Editor: Tools->Update Footprints from Library…
Result: Silkscreen on the modified footprint returns to its previous (non-modified) condition
jmk -
Creating a custom footprint for each instance of a modified silkscreen may indeed be necessary. I was hoping not to have to proliferate several versions of the, otherwise, same footprint.
For reference, I only use personal libraries that I create myself though I do usually start by copying KiCad components/footprints.
Updated the links in the PCB (as part of the footprint export).
Updated the links in the schematic (from PCB).
That should have been the whole procedure, and I don’t know if / what you may have missed.
You can verify the footprint links with: Schematic Editor / Tools / Edit Symbol Fields
You can verify whether the footprints you put in your library are what you thought they should be by loading the footprint in the footprint editor.
Yeah, that is a bit annoying. But if all you want to change is a polarity mark… Currently KiCad apparently uses two lines to create a “+” sign in a capacitor footprint. If you replace those lines with a text string containing the “+” character, then you can move the text independently of the rest of the footprint.
Using a text field for the ‘plus’ sign is a good idea for this particular issue.
I would think that ‘Locking’ a footprint on a PCB layout should prevent any modifications and lock it in it’s current state, not simply make it unselectable (if that is what happens). I’ll explore submitting a feature request.
The “Locking” of a footprint is supposed to only mean it is not movable. It only concerns it’s postition, not it’s status. For example mounting holes. Apart from that, there is a checkbox for “Locked Items” in the bottom right corner, and if that checkbox is off, the locked items will not get selected.
For anyone having a similar issue, here’s my solution (KiCad version 7.0.8, Windows 10):
Apparently, exporting the footprints from the PCB Editor will not preserve any changes that have been made locally to the footprints (at least as far as silkscreen changes) so they don’t show up in the exported project library.
Once the footprints are exported to a project specific library one must then open each component they wish to customize (from the saved project library) in the Footprint Editor and make any required edits and then save the project library.
The downside is that if the footprint is used multiple times on a PCB layout then each instance will show the new changes.
The solution to this is to open the project library in the Footprint Editor and duplicate the affected footprints with new names. Each version could then be customized and would be confined to the project Footprint library. Next change the footprints on the PCB to match the newly renamed footprints in the project library. After that is done, update the schematic (Tools->Update Schematic from PCB…).