[Solved] Netlist screwed-up; any way to re-generate/re-assign everything?

I have what looks like a “catastrophically broken” schematic in that it’s “irreparably” [*] producing errors that nets ‒5V and GNDA are connected, and +10V and +5V are connected (the ERC reports those errors/warnings, that is). I can no longer update the layout from schematic, since it would break.

[*] Whenever I fix the specific ERC warning (e.g., by deleting the GND or ‒5V symbol and placing one new), a new identical warning pops up at a different point in the schematic.

I think the thing broke when updating the schematic to change one op-amp that had power-rails ±5V to being powered with 0 and +10V. Since the op-amp has multiple power pins, with one per rail visible and the rest hidden, I suspect that the hidden pins remained connected to the old nets +5V and ‒5V.

Is there a way to “reset / recreate” the netlist from the actual/drawn schematic? Notice that the schematic, as you see it, is correct (as far as I can see/tell), so I would hope to be able to tell KiCAD to rebuild the netlist from what it sees in the schematic.

If not possible, what can I do? (other than entirely redoing the schematic starting from a blank sheet?)

Version info:

Application: KiCad x86_64 on x86_64

Version: 7.0.8-7.0.8~ubuntu22.04.1, release build

Libraries:
	wxWidgets 3.2.1
	FreeType 2.11.1
	HarfBuzz 6.0.0
	FontConfig 2.13.1
	libcurl/7.81.0 OpenSSL/3.0.2 zlib/1.2.11 brotli/1.0.9 zstd/1.4.8 libidn2/2.3.2 libpsl/0.21.0 (+libidn2/2.3.2) libssh/0.9.6/openssl/zlib nghttp2/1.43.0 librtmp/2.3 OpenLDAP/2.5.16

Platform: Ubuntu 22.04.3 LTS, 64 bit, Little endian, wxGTK, ubuntu, x11

Build Info:
	Date: Sep 30 2023 13:54:18
	wxWidgets: 3.2.1 (wchar_t,wx containers) GTK+ 3.24
	Boost: 1.74.0
	OCC: 7.5.2
	Curl: 7.88.1
	ngspice: 38
	Compiler: GCC 11.4.0 with C++ ABI 1016

Build settings:
	KICAD_SPICE=ON

Change your op-amp symbol to not use hidden power pins. If you are stacking multiple pins and hiding all but one of them, make sure the hidden ones are set to type “passive” rather than power.

1 Like

I find this hard to believe. It’s more likely it’s some small thing that you keep glancing over for some reason. In such cases it helps to put it aside for a day and try over, or have someone else have a look at the project (possibly by uploading the project here).

Yes, just restore the backup you made yesterday. :slight_smile: KiCad automatically makes backups by zipping up the project into the [Projectname]-backups directory, or at least, create a (manual) backup now to prevent the mess from getting any worse.

If you suspect the problem started with an opamp symbol, then just delete the opamp from the schematic, and see if it makes any difference. If it did not make a difference, then Schematic Editor / File / Revert to load the schematic from your file system again.

Hey Paulvdh,

Regarding your first comment — notice my phrasing “looks like” [catastrophically broken / irreparably producing errors] … But I know, I know — I hear you !!!

On the other suggestion: the situation is a bit more complicated; for reasons that would take me several long paragraphs to explain (and that would add zero value to this thread), there were lots (really, lots) of work on the board before I tried updating the PCB from schematic (during what was supposed to be the “final review” of the board — I noticed what looked like an inconsistency with one footprint, so I just tried Update PCB from Schematic to see … that’s when “hell broke loose”; that led me to running the ERC to see what was going on, and here we are).

FYI, Jon’s suggestion seems to have fixed the problem: I edited the symbol as he described, and to be safe, removed both op-amps in the schematic and added them anew, to get the updated library symbol. The issue went away entirely (thus, proving your first point :‒) ).

Thank you Jon — as you may have read in my reply to Paulvdh, your suggestion fixed the issue!

You can now edit the title of this thread and prepend a [Solved] string :slight_smile:

So it was a small thing after all, and your guess about the opamp was apparently correct too.

Another small thing, if you delete a schematic symbol and then insert a new one, you break the connection with the footprint on the PCB. Often it is better to: Schematic Editor / Tools / Update Symbols from Library, or (a little bit quicker) hover over your opamp, press e for edit and then Update Symbol from Library. This is the same dialog as from the Tools menu, but the name of the symbol is already filled in.

And then you can choose to either update one instance, or all of them in one go. Of course be careful with which options you select.

I was familiar with this feature, yes. And I deleted and re-inserted the op-amp only because of the present issue, you know, on the off-chance that the symbol present in the schematic may have had some “leftover contamination” — I was counting on doing “Re-associate by reference designator” when updating the PCB from schematic.

Minor detail: did you mean Ctrl-E (instead of E) ?? If not, then I may be missing something.

Hovering over a symbol and pressing Ctrl + e loads it in the symbol editor. With just e it opens a window to edit the Symbol Properties

I know (both counts). And I was coming to write “but the symbol properties library does not give me the option to update from library” … except that, sure enough, the option is there … :‒) (I normally use that dialog just for the more obvious properties, so I was not familiar with that detail; whenever I need to update symbol (or footprint, for the PCB), I do right-click and select there).

I thought you had meant Ctrl-E so that one edits the symbol, and then, later on as a separate menu selection, we update symbol from library… Anyway, we’re beating a dead horse by now, I guess! :‒O

Cheers!

With KiCad there are normally several different ways to get to the desired result.

1 Like

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