Schematics component(s) get disconnected after library edit

I think I first mentioned this for KiCad 6.x a few years back. Anyone know if this is possible to avoid now in version 8.x? My apologies for making a YT video to explain.

No.

By changing the position in the Symbol Editor (another method of changing the Anchor) and then “Saving”, you have created a new symbol to replace the old one.

The other Cap. symbols are still the old ones held in the Schematic, but if you replace them with the new symbol, they too will drop the same amount on your schematic.

This is an strange/unsafe/dangerous behaviour, isn’t it? What is the software purpose/meaning with this? Yes, now I know I have to avoid “making a new symbol” (with still the same name as the old one) but should this even be possible?

Why is this strange? The position of the symbol in the schematic is stored by its origin/anchor. (like any 3D cad object is positioned by the position of its origin in the worlds coordinate system) When you edited the symbol, you moved the symbol and its connections relative to this origin. Of course the result is that the saved symbol also has the new position of all its elements and connections relative to its origin/anchor (which has not changed unless you moved the symbol again after the save).

You effectively manually moved the symbol. KiCad behaves exactly as needed. What did you expect?

I don’t think so.

  • You know you changed the symbol/footprint.
  • The only symbol/footprint affected is the one you select under the mouse cursor.
  • I’m not sure if you can change all similar symbols/footprints simultaneously, but even if you can, you are aware you are using that particular function.
  • Symbols/footprints are usually finalised before they are placed on schematics/PCBs.

After editing symbol in library and then double clicking on symbol at schematic and selecting Update from library and then selecting All… I’m writing from memory so wording may be little different.
As I keep all symbols in line with library whenever I want to update one symbol I always do it for all.

Your instructions are good enough for me to use. :grinning: Thankyou.

I may have used that function in the past, but had forgotten. I’ll blame it on my age. :rofl:

My point still stands though; this function requires deliberate effort and cannot be made accidentally, so I see no strange/unsafe/dangerous behavior.

I fully agree with you. I just wanted to share the knowledge.
I have never meet an OPs problem. Probably because my first work with KiCad was to develop my libraries to look as I want them.
All my symbols are as small as it is rationale what helps me to not use multi page schematics.

For example my npn symbol compared with one from Device library:
Tranzystor

I keep symbols similar in size to Kicad, but I usually use A3, sometimes A2, in Page Setup, to keep most schematics to a single page. I print to A4, if I ever print.

But we diverge from the OPs questions…

I see this as a very serious bug.

Why do you see this as a very serious bug?
Because you can alter a part in your library?
Because you can replace your earlier part with the newly altered part?
Because Kicad follows your actions?

Do you wish Kicad to refuse to place altered library symbols/footprints?

I, too, see this as expected behavior, “as designed”. You want to edit a library symbol and want to update the symbol in the schematic. KiCad can’t know what you actually want, it works just like any sane software, it does what you ask it to do. I can see only one thing it could do better: it could warn in some non-intrusive way that connections have been altered by the update.

You don’t need to avoid that. You just need to understand that changing a symbol in fact changes the symbol. Your use case is just supper banal so its hard to understand why the software couldn’t automatically fix the situation and easy to wonder why am i allowed to do this.

Well lets take a example as to why you’d want to do this that also explains why it cant fix anything. Imagine the following schematic:

Image 1: a hypothetical schematic

Its ugly right. Bea cause the wires are going everywhere. So you could make it much cleaner if you moved the pins around a bit. 6 and 2 could be next to each other and 3 on a different side. Well we can fix this by editing the symbol.

Image 2: Maybe this is easier to read?

Well its now has no crossings. Okay so that’s why you would want to do this. But obviously the drawing wont automatically update to be nice how could it know what you intended.

As I had the wires connected to the component pins in the schematics and just moved the pins a tiny bit in the symbol editor I don’t want Kicad to abandon these connections. Why should it? If I move a component around in the schematics editor it will not just drop and forget its connections. Please don’t be angry, be kind.

Because you moved both pins. Its not so clear because you have only one simple object. but if you had 3 pins and moved two should the 3rd be disconnected? Or the two moved? Or if you move one pin on the other side of a box symbol how should the software reroute the wires?

PS if the software was capable of automating this why would you draw anything?

1 Like

Then it would be a software knowing better then me what I want, what I hate te best.

Indeed, aggravating as hell.

Please check here, again my apologies for making this one also as a video:

You should have told it’s your workflow in Eagle. No KiCad there.

It’s told it’s in another software, to not make people angry, people might get angry instead of stay easy and calm and that’s not needed. This is just to question if there’s a need/possibility for this. Isn’t it a “design security” issue if a software allows this to happen, just like letting a design netlist run wild and loose its main functions?