Working with my custom libraries and new projects, and realized it is a minor annoyance dealing with these. Since I have been struggling with my own library management, I sometimes get footprints crossed, and yes, this is my fault. However, when I am working in PcbNew, and I want to check a footprint I typically open the footprint editor from the footprint on the board (“Cntl+e”).
If I notice there is something that I want to change, I’d like to be able to make the change and save it. And, this would work for me, if the “**REF” and “%R” fields and locations were automatically added back to the symbol.
To not disrupt the consistency of my libraries, I have to close the editor and re-open it and navigate to the footprint in the library, then after making changes go back to the board and update the footprint on the board.
I have text in the footprint that the text is “**REF” and “%R”.
If I click on my board, for which the footprints have been annotated, both of those fields are updated to, for example U5.
If I click “Cntl+e” the footprint brings in the annotation; ie: “U5”.
If I want to make a library change, I often forget to change the fields back to “**REF” and “%R”. This dorks up my library symbol.
Yet, I feel that sometimes seeing the footprint on the board gives me a better “mental picture” of how the footprint should look/work in the actual design instead of just it’s lonely self in the footprint editor.
When laying out a board and one notices that one of the footprints on the board can be made better, one obviously wants to fix it. So one clicks on the footprint on the board and then presses “e” to get footprint properties. Then clicking footprint editor to edit the footprint in the board file. (Ctrl-e shortcuts going through the properties window.) One makes the changes to the embedded board footprint.
This footprint already has reference and value properties inherited from the netlist import. If this now edited embedded footprint is saved out to a library, the saved version in the library will now have the reference and value of the part you saved instead of the default dummy text that creating and saving a footprint directly in the footprint editor would have. This doesn’t break anything, but makes the libraries look ugly with random references and values where the place holders would normally be.
I also noted that because I double checked this behavior on a sample project that I had been using to help test a python script for archiving 3D footprints locally to a project, the 3D object’s path of the part saved from the board to a library now points to ${KIPRJMOD} and would obviously break if I were to load this library object into a different project. This does potentially break things, but I don’t know how to suggest any changes. Maybe a warning if the 3D object path being saved is different than the library one with options to either overwrite or not that property of the library object?
It would be handy if the footprint editor gave you the option of loading the current footprint from the library. Or the “Load Footprint From Library” dialog could default to the currently loaded footprint if there is one.
While we’re on the subject, currently if you have a footprint loaded in the footprint editor and click the “Load Footprint From Library” icon, the current footprint is cleared so selecting “Cancel” doesn’t get you back to the footprint you had loaded. Not a big deal but this has annoyed me a few times in the past. Perhaps it has changed in the nightlies?
Another feature I have often wished for is to have the footprint’s library and name displayed in the Footprint Properties dialog. It is there if you click the “Change Footprint(s)” button but then you can’t get back to the properties dialog. Just another minor thing.
Edit: I should clarify, there are two “Footprint Properties” dialogs, one in PCBNew and one in the footprint editor, the one in the footprint editor does display the name of the footprint while the one in PCBNew does not.
By the way, my workaround for this issue mentioned by the OP is to open the footprint in the footprint editor then open the footprint properties dialog, copy the footprint name and then select “Load Footprint from Library” and paste the footprint’s name.