← Back to team overview

kicad-developers team mailing list archive

Re: Question about attributes and complex hierarchies


Hi Lorenzo,

Welcome back.

It sounds to me like you are describing a variant system to allow for different populations of the same board layout from a single schematic design. This is already planned for version 7 so you wont have to use any hacks like you are suggesting below to create a variant. I'm not sure when in the V7 development cycle this will get implemented but it's definitely on the list.



On 11/17/21 3:39 AM, Lorenzo Marcantonio wrote:
…I'm back from the grave after something like 10 years because I'm busy
*using* kicad rather than doing developement work.

Today I incurred in a (rather big) eeschema nuisance and I'd like to ask
if already there are plan for that.

Since there is no population variation for schematics (hint hint :D) I'm
using custom attributes to tag the modifications. For this concrete
example the board has a 12V and a 230V variations so I'm tagging with a
'#' (or something) in the relevant field if the component has to be
omitted and then postprocess the BOMs to filter out the unneeded parts,
and everyone's happy.

The requirements of the day is that while there are three exact
subcircuits in the design, the 12V board only has populated two of these
three instances so the idea would be to set the DNP12 attribute on the
parts of the third instance.

This board uses a complex hierarchy (the same sheet instanced three
times in the root, to be exact) and after looking at the new format I've
seen that this use case can't be supported:

- The complex instances are now held in the root (for some reason)
   in the (symbol_instances …) section

- Each (path …) element contains only some stock fields: reference,
   unit, value, footprint;

- The editor actually enforces the change on value and footprint to all
   the instances so why they are saved in the instance data eludes me;

- The only things that can be actually altered for each instance is the
   designator (reference + part);

Now it wouldn't probably be *too* difficult to extend the file to handle
the extra attribute (just add the custom attributes in the (path …)
entity) but the UI would need some serious tought to avoid the symbol
editor mess (the magic 'present in all instances' checkbox). In fact the
design issue is substantially the same (multiple subparts vs multiple

Is there already some plan or idea to handle this?

Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp