Program to remove GND net. Please

Dear programmers.

Can someone be so kind and write for me few lines of Python code and than explain what to do to have it working (Windows 7) ?
The task for program is: Remove GND net from KiCad Netlist file.

About Python I know only that such language exists and probably is the best choice to process the files like in KiCad.

At the beginning of my using KiCad I plan to do it manually and then to automate it. I can write it in C++ but I suppose Python program will be much shorter, as I suppose it has build in text processing, but not sure.
I expect problems when I come to generating Bom, and from KiCad documentation (I have read 6 months ago) I remember that there is a file containing all information and I shoud use python script to get what I need - so Python is in front of mine. I believe this deleting GND net example would help me start learning.

And why I need it. My PCBs are two layers with bottom 100% GND. During elements placement I get back to schematic many times mainly to reconnect wires from one microcontroller pin to another to allow me to have all connections on top layer. During placement I need to see connections I will have to route to unknot them, and GND is not among them. So each time I have new Netlist I would have to delete GND net.

Even I ask for software I put it under Layout category as it is not about KiCad software itself.

With the hotkey ‘H’ you can highlight the layer you are working on.
Also on the left toolbar there is a button to show/not show copper planes

I think he is looking for a way to hide specific ratsnet lines not copper features.

Ah, ratsnets. If thats what he wants to partially remove then I dont know

Hi Rene,

Yes, I need to remowe one net from netlist file.
I tried it manually few months ago, and decided that when (and if) I will be using KiCad I will sonner or later need it be done automatic.


I think gEDA has this feature. You can bring up a list and individually select which rats you want to see. It is a nice feature when placing parts. Why have the ground and power rats showing if you are going to have separate planes for them?

That said, if you choose the routing option and click on a pad it will light up all the relevant stuff. I’ve adjusted my work flow to doing the schematic and board in sections anyhow so this becomes less of an issue for me. I even use reference designators to indicate sections. 10’s, 20’s,100’s, … I try and keep the numbers in order on the schematic also so that I have a clue during layout.

Like any tool you need to find the path most effective for you. It doesn’t seem like the individual rat choice is coming anytime soon.

gEDA - I hear first time. If it would be better than KiCad I suppose I would have heared about it.
The problem is - you could spend all the time reading what people done, but you need some time to do anything yourself :slight_smile:

If you switch off ratsnest visibility in Default (Legacy) Canvas it will only show the ones for the footprint you have currently selected. Not a feature of the OpenGL canvas though…


It is certainly not enough for me. I have to see all nets (except GND) to imagine which way I will route the connection I have in mind to avoid crossing other nets. Till now only at one PCB (with Ethernet WIZNET IC) I had to add 2 wires (to not brake GND anywhere) which was not enough to go for 4 layers.
At that stage of design I sometimes put elements not in their desired locations but at the places to see how this connection will be routed (to have this strait connection line pass under the element I plan to route under it).
I don’t suppose to change this my strategy even KiCad offer much easier routing than my 20 years old Protel.

Making VCC red (Protel allows) also helps - I see when wider routes will be.


One work around I’ve used to get around seeing the ground net is to put in a ground plane (turn off the fill) and make liberal use of the B key to refill the zones after moving a part.

1 Like

Years later I actually stumbled upon this while looking for a tool myself. Since there wasn’t one I wrote a little python script myself, maybe it helps someone. You can find it here with an explanation on how to use it. Python and Terminal knowledge very helpful :smiley:

1 Like