Changing the unchangeable - a power symbol's value

According to the code, the value of a power symbol cannot be changed. But I didn’t realise this, and have gleefully been changing them:

As you can see, the field is perfectly editable. Although, in the properties dialog, it is not:

So am I unwittingly playing with fire, by changing it?

The background is important here: what I’m actually trying to do is create all my separate power symbols with a library name prefix of “power_”, so I can stick with an existing one-custom-symbol-library convention and not lose my power symbols amongst all the others.

So what I did was create the symbol with a symbol name of say “power_VBAT” and then set the value to “VBAT”. I recall I had to do this in the correct order, because setting one would automatically set the other, but not the other way around. How ever I managed it (which I’m not exactly sure of now), I achieved my goal and had a set of library symbols with names like “power_VBAT” and “power_VIO”, but whose values and pin names were “VBAT” and “VIO”. I was even able to have symbols like “power_VBAT_Source” with a different graphical representation but the same value and pin name, which was important in a few peculiar projects.

I’ve just gone back to add a few more - same computer, same v7.0.0-0, although I’ve moved the symbols into a different library - and noticed the restriction! Indeed, in the symbol editor’s properties dialog, I cannot set the value to be different to the symbol name, but if I dismiss the properties dialog I’m free to independently edit the value text visible on the symbol itself:

So now I’m a little worried my library is going to become untenable in an upcoming bug fix. I wonder if I should jump ship now, go back and add a new field to each symbol so I have something I can set on the schematic that isn’t tied to the symbol name. That’s a pretty revolting prospect, but better to know now!

It is one of your libraries that has the modified symbols, not Kicad’s library?

Yes. Sorry the second screenshot was a little misleading because that was a part from KiCad’s power library. Indeed, the edibility glitch applies to those too. But my requirement is only for symbols I’ve created (albeit, by copying an existing symbol) and am storing in a local library (evidenced in the final screenshot).

I made my own Power library with major name and value changes back in the beginning of 5. It’s still working, no problems at all.

It has just been copy and update the copy for 5.99, 6, 6.99, 7, & now 7.99.

That is how I created most of my libraries, including Power, in case my post wasn’t clear.

To be clear, my doubt is around the future ability to maintain power symbols where the Value is different to the Symbol Name. That’s my understanding of the origin of this “cannot be changed” message. That is, I understand there’s an intention to restrict editing a power symbol (lest people get confused because the pin name quietly remains unchanged, I imagine) and instead encourage people to create new power symbols to suit.

I’m happy to create (copy and edit) new power symbols to suit, but I do wonder about my continued ability to create them such that their Value is different to their Symbol Name.

@jmk do any of those parts of yours have a value distinct from its symbol name?

Yes, I can’t see how Kicad would interfere with personal libraries. It doesn’t even complain if you set pins on a 49mil grid

A power symbol is just another symbol I thought. I don’t know how ERC finds and treats them, though.

I assume as the symbol is labelled Power Input, ERC will connect all of a similar name and assume a connection, so eg. all those named PWGND2 will be assumed connected just as all GND are assumed connected.

Someone may enlighten further.

the only thing to keep in mind is NOT TO CHANGE the type of the pin from ‘power input’ to any other thing. The magic behavior of the power symbols depends on that.
In V8 (and currently in 7.99) power symbols will be editable directly in the sch.


This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.