In library editor, changing pin numbers checkbox doesn't cause an update, but drawing a line does

Here’s what looks like a bug. I create a new schematic symbol in the library editor. That works fine. I can insert the symbol into a schematic. But the pin numbers are not displayed. So I go to the library editor, open the part, click the “edit component properties” icon, and check the “Show pin numbers” checkbox. Then I save the part, delete the old version from the schematic, and place it again. The pin numbers still don’t appear. And if I close and reopen the part, in the library editor, the checkbox now isn’t checked.

Exiting and restarting KiCAD doesn’t help.

However, if I add a line to the schematic symbol, set the “Show pin numbers” checkbox, save the symbol, and then insert it into a schematic, the modified symbol, with the extra line, appears, along with the pin numbers. I can then edit the symbol again, remove the extraneous line I added, save the symbol, delete and re-insert it in the schematic, and now the pin numbers appear.

Probable bug: changing the “Show pin numbers” flag doesn’t set some “symbol has changed and must be saved” flag, and saving silently does nothing.

Related to this, when I change a symbol in the library editor, I save it by clicking on the “Update component in current library” icon. This does update the symbol, but it always produces a “Part XXX already exists, change it” dialog. I answer yes to this. Then, when quitting the library editor, I get a dialog “Library XXX was modified, discard changes?” dialog. Answering “No” won’t let me quit. Answering “Yes” quits, but with what effect? The save logic seems to be slightly off here.

Application: kicad
Version: 4.0.4+e1-6308~48~ubuntu14.04.1-stable release build
wxWidgets: Version 3.0.2 (debug,wchar_t,compiler with C++ ABI 1002,GCC 4.8.4,wx containers,compatible with 2.8)
Platform: Linux 3.13.0-95-generic x86_64, 64 bit, Little endian, wxGTK
Boost version: 1.54.0
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=OFF
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_WXPYTHON=ON
USE_FP_LIB_TABLE=HARD_CODED_ON
BUILD_GITHUB_PLUGIN=ON


EEschema has a cache so you will see such kind of odd behaviors… this part of KiCAD is being worked on to behave like PCBnew now anyway, so we’ll have to wait and see how that turns out. Don’t hold your breath though, it will take a while.

Solution for you:
If I edit a symbol, I hit the ‘save current library to disk’ button. Works flawlessly and will also update the symbol in EEschema right away. Never used the ‘update symbol in library button’…
But this would explain your experience, as the library only get’s updated when you save it and then EEschema will reload it and apply any changes to already placed symbols.

PS:
That’s also why, when you delete a symbol in the editor via the ‘delete component in current library’ button only ‘sticks’, if you use the ‘save current library to disk’ button afterwards :wink:

1 Like

A boring old Open/New/Save/Save As/Close type interface probably is best for something like this. The problem fits that model, and users will get it immediately.

Joan_Sparky: Except that “Save current library to disk” is almost always greyed out. Doesn’t work at all for me.

If that button is grayed out, it might be because you try to alter a library that is write protected.