Cannot select custom component values from shared hierarchical schematic sheet

Bug #1819065 reported by Mike Sanchez
18
This bug affects 4 people
Affects Status Importance Assigned to Milestone
KiCad
Fix Released
Unknown

Bug Description

Running current KiCad for MacOS version 5.0.2.

I have some schematics that I converted over to a hierarchy with a reusable block saved as an individual schematic file. I instantiate this sheet multiple times on a root sheet, with multiple unique sheet names, but a shared underlying schematic file.

When I annotate this root sheet, each sub-sheet gets specific component designations, which is correct. Changes to the underlying sheet propagate to all instances of the shared 'children' as expected. However changing the component value also changes it in all instances, which isn't correct.

For example, if I create a simple RC low-pass filter as a shared schematic sheet, with a single resistor and capacitor, and instantiate it twice with hierarchical sheets in a root schematic, then use the annotate tool to assign component designations, I see it assigns R1/C1 to the first instance, R2/C2 to the second instance, etc.

When I assign PCB footprints, I can assign individual footprints to each of these components, even though each RC pair belongs to the same 'logical schematic'. When I generate a netlist for pcbnew, I see each individual instance of R1, R2, C1, and C2. Looking at the .sch file in a text editor it appears that eeschema 'collapses' the hierarchy into the root schematic as I would expect.

My current workaround it to assign a value of "FIXME" for the part values that are different, then assign all footprints in the footprint assignment tool, then generate a netlist for pcbnew. After this, I manually edit the .net file, and replace the "FIXME" text using a text editor to the real values that I intent to use in the layout for each individual component, which appears to work properly, although it is a pain because I have to go through this process every time I make a change and forward annotate through to the pcbnew layout program.

Why can't each component have a unique tuple of name, value, and footprint, given the schematic file representation appears to support this already (at least for names and footprints)?

Revision history for this message
Rene Poeschl (poeschlr) wrote :

This is how hierarchical sheets have ever been in kicad. But yes a more flexible implementation that allows changing things other than the reference designator might increase the usefulness of this feature.

Revision history for this message
Wayne Stambaugh (stambaughw) wrote :

The point of complex hierarchies is reusable identical circuits. The suggestions in this bug report would require a completely new paradigm. I'm not necessarily opposed to the idea but it would not be trivial and would not be part of the next development cycle.

Changed in kicad:
status: New → Opinion
importance: Undecided → Wishlist
Revision history for this message
KiCad Janitor (kicad-janitor) wrote :

KiCad bug tracker has moved to Gitlab. This report is now available here: https://gitlab.com/kicad/code/kicad/-/issues/3404

Changed in kicad:
status: Opinion → Expired
Changed in kicad:
importance: Wishlist → Unknown
status: Expired → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.