Just looking for some advice on a schematic symbol. I’m generating this from a little program that reads text files (which, in turn, are copied from PDFs) because a 900+ ball BGA is really not something I want to do by hand.
It appears that by default, if I create a symbol as per the KiCAD documentation, it gets imported with the “all units are interchangeable” box ticked - but they are definitely not interchangeable in this case.
From exporting the symbol again after clearing that box, it appears that the only way to make a symbol where the units are not interchangeable is to use the “ki_locked” property, which is listed as reserved but with no other documentation to be had.
So, is that what everyone else does? Just use the undocumented property?
I did a grep ki_locked in the standard symbols directory and a handful of hits was returned. I viewed the 74xx library, looking for 74HC00, which is definitely not all units interchangeable as it has power unit E. No ki_locked in this symbol. So your conjecture fails.
Looking for a symbol with interchangeable units, I found the optocoupler ILD74 which has 2 units. No keyword jumped out at me in its definition.
I suspect the interchangeable property is inferred from the way the units are named, but this is beyond my pay grade as they say. A dev will have to answer your question.
Open the footprint in KiCAD and immediately export it → no ki_locked.
Change the properties in KiCAD and re-export it → ki_locked.
The presence of the ki_locked property was the only difference between the files (as confirmed with diff). But as you say, maybe there’s something else going on too.