Remove "All units are interchangeable" from the Symbol Editor?

Nooooo!
Just remove it. Period.

Not really. That was years ago. But I see new users being uncertain about what to do with this, and I raised a flag here.
That’s all. I know myself that the function is useless, but am trying to improve things a bit.
Perhaps I’m wrong. I should leave it to the Committee.

Well you could raise an issue on Gitlab. You certainly have enough discussion here to reference.

@ML9104

I’ll give it a thumbs up. As it currently is, that function is useless apart from a very few marginal cases.

I’ve seen the split Pot symbol used in audio, split Qs very occasionally and (I’d forgotten to mention way up) split double Diode packs used as rectifiers in SMPSs.

I’ve never seen split R arrays and signal diode arrays were often used as mickey mouse logic back in the days of VCRs, but never split.

I will give it a thumbs down.
It’s not the right feature request. the “All units are interchangeable” is a bit of a silly checkbox, I agree with that part. But it’s also pretty harmless. The real issue here is how to define a robust way to define several (but not all) units as the same / interchangeable.

2 Likes

Yeah, well getting rid of the “all interchangeable” will give a perfect excuse to introduce something better as a feature request. :slightly_smiling_face:

I’m sure there just has to be something better than this:

What about “select interchangeable units”, and if ticked, a chart pops up with the number of units shown in the package. Tick the appropriate boxes (which copies one symbol into all the ticked units) and manually create the other symbols for the unticked units.

This allows Kicad to know the complete symbol, gets rid of confusion for the user, saves copy/paste and works for all units the same, some different or all different.

So, how does this work then?

I started on the wrong end, and cobbled together a simple test project for this (Both schematic and PCB).

2024-03-17_asdf_gate_swap.7z (26.2 KB)

So assume I now want to swap U1A with U1C.
Sure, I can go to the schematic, and then manually change U1A to U1C and U1C to U1A, but that is not what is meant with gate swapping. The “classical” meaning of a gate swap is that you select two gates in the PCB Editor (during routing) and tell the software to swap those two. This also implies there is a method to port that info back to the schematic.

Pin & Gate swapping is an open issue since 2007.

“Pin swapping” is not intended as a hijack. They are both mentioned in the title of that Gitlab issue from 2007.

A part of the problem here is that KiCad would have to know that the opamps can be swapped. And that is a part that is still missing in KiCad. The “All Units are Interchangeable” checkbox was (likely) a (half hearted) attempt to implement this, but it never got finished.

Or when filling out the unit have the option to select “interchangeable with”. That’s way as many equivalence groups as needed can be created.

Yes, that seems OK. My comment was just a starting point to work on.

You’re right. But “All units are interchangeable” does not solve this issue.

KiCAD knows that, as they’re all “U1” or whatever. The subdivision is to “unit A”, “unit B” and so forth.
It still doesn’t matter.

Again: this is only an issue for the Symbol Editor, not Schematic or PCB!!!

You’re muddying the waters here, because the desired PCB gate swapping doesn’t work. But it’s irrelevant for this discussion.

This question alone shows that even you as experienced user don’t understand how this works.
So how should a new user?

Agree. PIn/gate swapping is an entirely different subject.

This thread is about unit creation in symbol packages.

@ML9104

Any comments on my possible solution about six posts up, under my screen grab?

This would clarify (and improve?) the function and keep the “no, don’t remove, brigade” happy.

Yes, I saw it, and decided not to go with it. It’ll just add one more complexity layer on top of something useless. My theory is, that it’s a relict from some ancient version of KiCAD.

BTW, I’ve changed my FAQ on this. I wonder if someone notices… Prolly not.

I agree that the option is confusing, and doesn’t get used much. I can understand that the reaction that it’s useless.

However I see that it could have been more useful until power units disrupted the idea. One of my first reactions on seeing units was wait, this option isn’t useful for the 7400 because of unit E?

So I think it needs work to cater for a revamped scheme which can fulfill the early promise, and provide more functionality. For example, with equivalence information if I want to swap a unit with another, KiCad could suggest candidates. At the moment you have to know not to swap with unit E (or whichever the last one is). In the meantime, that checkbox can be demoted to the bottom of the list and naturally default to unchecked.

OK, so, as the Daleks say: Exterminate.

and we will copy/paste or create units, just as we have been, because the feature is mostly useless.

I’ll thumbs up this as the only things affected are the “split” symbols. Someone wishing to create their own twelve part R_network_split may think otherwise though.

Could the last three posters please start their own threads instead of hijacking?

Thanks.

Sorry, but if you don’t want to discuss, the forum might be the wrong place. You asked, now you have to live with the answers.

Again, removing existing features is a bad idea - even if you don’t see any point in them.

I feel you need a teensy-weensy bit more “street-cred” to make such a statement.

I gave my opinion and even made a serious suggestion how to overcome the topic. Nobody hijacked your thread. It’s all related to your request. Calm down.

To come back to content: I occasionally use the “all units are interchangable” feature and do not want it to be removed. I do not use it for schematics for PCBs, but for drawing schematics that show test setups for industrial testing e.g. for a multi-channel oscilloscope or for similar instruments.