To avoid having my custom symbol libraries overwritten by updates, I created libraries in a different folder for KiCad 5 (not the global folder under C:\Program Files\KiCad). I added my custom libraries as global to all projects.
After installing KiCad 6, I was surprised that these libraries were not migrated.
I was presented with a dialog on library tables, and I chose “recommended” since I was not sure which option to select. I incorrectly assumed the “recommended” scenario would be to upgrade and migrate existing KiCad 5 installation.
Here’s the process to do it manually (Windows)
- From the main KiCad 6 project window (no project loaded), Preferences / Symbol Libraries.
- Scroll down the list and use the + button to add a row.
- Open a file explorer window to your custom library folder, sort by Type to bring all the .lib files together.
- Click on a lib file name and copy it into Nickname and Description (or edit as you desire)
- Shift-right-click on the lib file name and use copy as path.
- Paste the full path into “Library Path”. Remove leading and trailing quotes - they are not allowed.
- When all libs are entered, click OK. After a delay the dialog should close if all is OK.
- Re open the Preferences / Symbol Libraries dialog and scroll down to your custom libs
- They should be showing as “legacy” in the library format column.
- Select (highlight) the rows with Legacy, and click the “migrate libraries” button.
- Accept the confirmation, and you should see new .kicad_sym files in your custom library folder. The library format will change to KiCad.
Now open some KiCad 5 projects, and select your custom components. You should see the library listed correctly in the status at the bottom of the page.
When I followed the same steps for Footprint, I saw the same dialog for “Configure Global Footprint Library Table”. This time I knew “recommended” was not correct, so I tried “copy custom”. However, the suggested file was the same as for Default, and pointed to something for KiCad 6. So I used Browse and looked around. Apparently KiCad 5 is moved to “C:\Program Files\KiCad\share\kicad” and the footprints are in “C:\Program Files\KiCad\share\kicad\template”. I selected the “fp-lib-table” file in that folder.
That was a mistake - now I only have the footprints from KiCad 5 in the global table. I can look in “C:\Program Files\KiCad\6.0\share\kicad\footprints” and see there are more footprints now that are not in my table. But there is no way to go back and undo. I will have to compare line by line and add the new footprints manually.
EDIT - after further exploring it appears there is a way to undo: Exit KiCad 6 and copy the table file again from the template. From “C:\Program Files\KiCad\6.0\share\kicad\template\fp-lib-table” to C:\Users\YourUserName\AppData\Roaming\kicad\6.0. Then you can go in and add any user footprint libraries manually.
Note that the file I used above wasn’t even my user library. It was the default template from KiCad 5. If I wanted to use my KiCad 5 customized footprint table, I should have copied from “C:\Users\YourUserName\AppData\Roaming\kicad\fp-lib-table”
For others who are migrating, stick with “recommended” and manually edit any custom footprints into the global footprint table.