Local nets in hierarchical blocks

I have a hierarchical project that was imported from Altium. There are 5 sheets, and one sheet is replicated 12 times. When I push the schematic changes to the PCB, the local nets in the replicated sheet are indiscernible between instances. For example, in Altium, if there were NET1, NET2, and NET3 in the sheet, after it was replicated and pushed to the PCB, they’d become NET1A, NET2A, NET3A, NET1B, NET2B, and NET3B, etc. What I have on the PCB now are 12 instances of NET1, NET2, and NET3. Any change I make to the sheet propagates through to the others, so I can’t really manually work around it without breaking the hierarchical design down. Is there something I need to change about the net labels to make this work? What can I do to fix this?

KiCad does support multiple instances of the same sheet, but you do have to set it up correctly.

KiCad has three types of labels. Global, local and hierarchical. Are you familiar with those? (description and use is explained in the manual).

Another possibility is confusion because of the way KiCad displays net names in the PCB editor. KiCad V8.0.4 displays the full hierarchical net name on tracks and pads in the PCB editor. KiCad does not append letters, but it prepends local labels with the sheet name of the sheet they are used on. I am not sure if KiCad V7 does display the full hierarchical names on nets and pads, or only the base name of labels. You can use the net highlighting and cross probing functions to check whether KiCad interprets your netlist correctly.

Another potential problem is with the references (a.k.a. RefDes). When a project is first imported, it is possible that schematic symbols are not matched properly with PCB footprints. If there is a problem here, then this needs to be fixed first.

1 Like

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