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

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.

I agree with this wholeheartedly.
(although there may be some anti-features that are best removed or replaced with something better)

In it’s current form, it’s a useless checkbox, but removing it does not help much. What needs to be done is to implement functionality to re-use graphics of a unit for another unit, without that silly and error prone copying you keep mentioning. LM9172 seems to be so focused on this little checkbox that he refuses to see the bigger picture.

Any comments on this idea @paulvdh

No, this is no good:

No copying!
It’s not only creation of a symbol, but also maintenance and modifications later on. There should not be a path that breaks things by forgetting to redo some kind of copy operation.

Ways that may work, are:

  • The multiple pin numbers I mentioned earlier.
  • A way of "Reuse graphics & pin locations of another unit.
  • Probably many more How do other programs handle this? (I already asked that too here).

I also do not have much experience with designing multi- Unit symbols. I once figured it out for a 2 deck rotary switch, (and made a half writeup / tutorial on this forum for the steps). And that was about the only time I did this. I remember some fidgeting to get the pin locations in the right place. If the same graphics is used for another unit, then in my book this implies the pin locations are also the same.

Copy in the best word to use.

When creating a new multi part symbol, if “all units are interchangeable” is selected, the graphics, pins and pin locations are copied to each part of the symbol. The only thing able to be edited in the pin number, so, if you make a 74xx gate IC, your fifth part must be the same graphic as the first four.
If you change the fifth part, the first four parts will follow suit, and change to match the edited fifth unit.

This function is worthless unless the graphics and pin locations are identical for every part.

My thought were for another window to open if “select interchangeable parts” is selected. This new window will list the number of parts required for the symbol, and you tick which parts are interchangeable.

eg. A 74xx gate IC has 5 parts. you tick only the first 4 parts, so each in turn when selected allows only the pin number change (same as the current feature), but because the fifth part is not ticked, this allows a different graphic with different numbers and locations of pins.

If you want this new feature to behave as the old feature, you tick all the parts listed in the new window.
If you want three the same and two different, just tick the appropriate three.

Here is a rough example.
You want to create a symbol of six parts, with the first five interchangeable.

You select the “select interchangeable units”, a chart pops up with 6 (in this case, because that is what was selected in the number of parts).

You mark the parts you want interchangeable (graphics and pins the same, pin numbers only alterable), and any part not selected can be edited as you wish (different graphics and pins).

If you place a cross in all the boxes, you have the same result as the current feature.

I wouldn’t worry about the exact details of the UI now. Let the boffins work it out.

I think the safest way ahead is to leave this option in place until a more encompassing feature can be developed to fulfill the promise of capturing the equivalence information for use downstream. This could allow more than one group as I have suggested. As you have noted, the current option is simply the special case of all units belonging to the only equivalence group for the symbol.

As a librarian for my company I have to contest the claim that the current implementation does no harm. I had more then enough cases where colleagues used the function without knowing what it does and in the process creating a completely crippled symbol which I then had to redo from the ground. I don’t think I ever have used it for its intended purpose with how our internal library rules are laid out. As it cost me a lot of time I am fully on the “exterminate the ‘feature’” side.

I would like to see all of these confusing to newcomers features hidden behind an “advanced” button and all defaulted to off.
I would like to be able to define unit groups that are equivalent. Copying can be a nuisance if you go off grid

I have seen that tried in several programs (for example VLC) and in my opinion, the feature is useless and counter productive. In such programs I very often go searching for some “advanced” setting, very early after starting to use a program, and then can’t find it, and have to enable the “advanced” menu’s, just to have access to a single (but important to me) setting. For newcomers it is also common to not know all functions of a program, and just ignore most of them. I often remember menu locations, and when menu options change later when the advanced feature set is enabled, the positions of functions in menu’s change, and that triggers re-learning, which is a nuisance. When I see an option to enable “advanced” menu’s in a program, I’ve learned to enable them the first time I become aware of it.

But I also see that KiCad is loosing it’s simplicity and ease of learning it now it is getting many more advanced features. When I started using KiCad (about 10 years ago) I was quite impressed by it’s simple but yet powerful capabilities. Different people have different minds, that work in (subtle) different ways. I guess it may be beneficial for some to start with a sub set of the menu’s.

4 posts were split to a new topic: Part with different units and all units interchangeable

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