Corrupted layout or schematic files ->schematic error

Hi,

I recently noticed that my layout shows a good portion of my previously routed component pins as disconnected. The source of this error appears to be a mismatch between the layout net names and the schematic net names. I haven’t figured out yet which tool created the mismatch, but I suspect that the schematic is not netlisting correctly, so when I import that netlist, instead of finding the connection from Pin A7 of U3 to pin B23 of U1, it sees only single pins at A7 and B23. It looks like the netlister is not following the hierarchy correctly (or it’s doing it differently), so the connection from one level up to the top level and into another hierarchical level produces different net names at both ends.

Backstory: I’ve been using the 5.0rc3 versions for a while, but thought it was doing something wrong with an export. I updated to what I hoped would be the 5.0.0 final release, but noticed it was actually the first version of 6.0rc1 (July 16 nightly). I used it for a few days and all appeared OK, until I noticed so many of my pins with no netnames on them. I’ve downgraded to the previous version I’d been using, but the error persists. If I netlist now and import that netlist into an older version of the layout that isn’t corrupted yet, it corrupts that layout.

I don’t see why 5.0rc3 would produce an incorrect netlist, but it sure looks like it does. Restoring old versions should help me figure things out some. I’d like to recover the work I’ve done in the 6.0rc1 version. Ideally, there would be some way to fix the corruption, but how can I recover the work? Is there a way to copy part of a layout from one file to another? Is there a surefire way to debug the error so I don’t have to?

Any help appreciated!

https://forum.kicad.info/t/is-it-a-good-idea-to-use-a-nightly-build-version/9309

I’ve found that the “Netlist” and “Update Pcb from Schematic” don’t always agree. You might try both tools and see if one gives a better result.

Sounds like https://bugs.launchpad.net/kicad/+bug/1782660

I’ve always thought using nightlies is like playing Russian Roulette…

Yes, that can be done, but that’s not really your problem here…
See the comments in the bug link above, about single pin nets.

Is that from an older SCH version too ?
Are you sure the netlist is incorrect ? ‘Not what you wanted’ does not mean incorrect… :wink:

It sounds more like you previously had single pin nets showing on pads, and net import can keep/remove single pin nets.

I’d check first that the nets are ‘as you expect’, and not split in an unexpected way
ie this

is what you need to focus on fixing.

There was a bug in 6.0 if the Remove Single Pad Nets option was set when using the Update PCB from Schematic function.

To recover from it simply run Update PCB form Schematic again, this time un-checking the Remove Single Pad Nets option.

(Or wait for the next nightly where the bug is fixed. But even then you’ll still have to run Update PCB from Schematic again.)

2 Likes

Thanks for all of the advice, but this has turned out to be a stupid user error, and not corruption. One of my hierarchical symbols had moved a grid space in one direction so that all of the wires and buses that were connected to it were no longer connected. It was moved in the direction of the wires, so the wires ended one grid space within the symbol instead of at the edge. I should have noticed this, but I now know to look more carefully at the connections after updating a symbol. If I just move the symbol, all the wires/buses stretch/shrink with the movement, so this must have been the result of some change at the symbol which wasn’t so obvious at the schematic level.

1 Like

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