Ratsnest when placing component - still

I updated to the most recent version 5.1.9 a while ago. Now that I am in the process of layouting I was extremely irritated by the rats nest behavior. I expected the local rats nest to show as soon as I move a component. Placing components without that function is more than just a pain. It literally makes KiCADs Pcbnew tool useless in my opinion. So I am a bit puzzled on why this seems to be an accepted state. I see that in “legacy toolset” it still is working. But since this toolset is unusable due to its performance I am stuck.

How are users placing their components these days? Is there a setting that I am missing? Is there no semi-professional user base that rely on efficiency? I mean using the local rats nest function is completely out of the question as so many klicks are needed.

What am I missing here?

I’m not sure I understand. Are you saying you would like to see NO ratsnest shown until you click (or hover) over a component then the ratsnest associated with that component would become visible?

1 Like

In short: Yes that is pretty much what I expect.

I know for a fact, that version 5.0.2 did it “correctly”. Maybe I am missing a setting but I am really curious on how people place and rotate their components without seeing the connections at least in a moderately complex design where you have to deactivate rats nest globally.

Actually what I’d prefer is for the global ratsnest to be dimmed so that I have context and the ratsnest of the selected components to stay normal while being translated or rotated. I don’t know if this is the way it will be in v6.

It’s a bit clunky but try the following

turn off global rats nest
click on display local rats nest (right toolbar, third icon down)

click within the area of the footprint you want to move (not on a pad)
the local rats nest is shown

press the ‘m’ key and move the footprint

click on display local rats nest again and click the footprint again to turn off the local rats nest… or
click the icon to turn on/off the global net display

Application: KiCad
Version: 5.1.9-73d0e3b20d~88~ubuntu20.10.1, release build
wxWidgets 3.0.5
libcurl/7.68.0 OpenSSL/1.1.1f zlib/1.2.11 brotli/1.0.9 libidn2/2.3.0 libpsl/0.21.0 (+libidn2/2.3.0) libssh/0.9.3/openssl/zlib nghttp2/1.41.0 librtmp/2.3
Platform: Linux 5.4.0-26-generic x86_64, 64 bit, Little endian, wxGTK
Build Info:
wxWidgets: 3.0.5 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.71.0
OpenCASCADE Community Edition: 6.9.1
Curl: 7.68.0
Compiler: GCC 10.2.0 with C++ ABI 1014

Build settings:

Well, I am sorry but I can not accept this as any kind of solution. From my perspective new versions must not reduce productivity.
The behavior that @retiredfeline described would be perfectly fine as a evolution of the feature of 5.0.2.
I really am interested in how people place a PCB with a couple of hundred components with the current KiCAD version efficiently. While I like the layout-schematic connection of later versions, I think over all there was a major step back.
When companies like Microsoft do these kind of schemes, there is a clear monetary incentive behind it to force people to buy the next version but here I do not see the strategy. Therefore I sill hope I am just overlooking the magic function.

Just to clarify: I regularly donated since version 4.0. Not that I expect special treatment but I am a firm believer in good work needs to be compensated!

I think the magic function is the time the developers need to incorporate everything into the new versions beyond version 5. With major changes taking place there are going to be some things that get left behind temporarily.

I can accept changes (while not a fan :slight_smile: ) but I struggle with crippling a tool for an unforeseeable time.
But It seems this is accepted by the user base, so I still wonder what I do different than all the others. Is there an auto-placer function that I miss (not counting writing python scripts)? How are you guys placing components in an efficient way and decide where to place what in what angle (without local rats nest)?

There is: Pcbnew / Place / Place Footprints Automatically, but I have not used it seriously, so don’t know how usable it is.

I rember several posts here about people getting dizzy from rats nest lines. Some people temporarily flood the top of the PCB with a GND plane to reduce the amount of ratsnest lines. Others are manually editing the netlist to remove GND and VCC nets during initial footprint placement.

So at least you’re not alone. There is room for improvement here.

I am not bothered by it much. I have relatively simple PCB’s. After the initial start of the PCB I usually start by putting Eeschema on one monitor, and Pcbnew on the other, and then use the t shortcut and type a RefDes to get a footprint and place them roughly in groups that fit together. After that initial grouping ratsnest lines mostly stay in those groups


I mentioned this some months ago, what I suggested as most design systems do is … as you move a component it dynamically moves the rats lines to the shortest connections… as it seemed it was impossible to achieve I had to resort to a different design system that had this functionality…

1 Like

Local ratsnest shows up just fine when moving a footprint with the global ratsnest disabled in the nightly version (had to check that, as I never disabled the global ratsnest before). So that will be fixed in the future version 6.

You’ll have to live with the global ratsnest enabled until then …

I agree that lack of this feature in 5.1 is a step back but it’s not intentional crippling as you described it.

This is just something that was available in legacy toolset but was not ported over into new modern toolset, at least in time for 5.1. Priorities and pro/cons of such decision can be debated but ultimately it’s a matter of developer resources.

As already mentioned above, this is back in nightly.

Even more, in nightly you can disable ratsnest of specific nets so even on a busy design you can typically disable gnd and couple more busy nets and leave the global ratsnest on and be fine.


Well, I actually might check the nightly just for fun, BUT this snake seems to bite its tail. I already stated that not having the dynamic rats nest option might be fine for hobby blinking LED projects. Yet I am not capable of handling my projects with a few hundred components with global rats nest on. I just lose the over view. And since nightly is more edgy it is certainly not the way to go for a larger project since there is a risk involved. In the 4.x versions I crashed a project and after a I edited it with a nightly version it was unusable with the stable version anyway.
So in my personal opinion this strategy is bad for the “more advanced” users. Which is exactly the opposite the developers claim for KiCAD in all their talks…
So I wanted to get some thoughts of other users… And by the way. Thank you :slight_smile:

The ability to turn off specific nets in the rats is very nice.

Was this fixed in 5.1.10? I have the same problem.

Edit: Ratsnest shows up in Legacy toolset, but not in accelerated or fallback. Legacy looks terrible.

No! I just checked 5.1.10-1-1_14 (macOS) and the issue is the same. “Legacy Toolset” as unusable as it is would work correctly. “Modern Toolset” does not show dynamic ratsnest…

I imagine if this feature was really gone, there would have been an uprising. I think we have an isolated issue based on what I just observed.

Original Incorrect Findings

I opened up an older project in KiCad 5.1.5 (on another PC) and the ratsnests are visible when moving components (in accelerated toolset). I then opened my 5.1.9 project in 5.1.5, and the ratsnests are not visible when moving components (in accelerated toolset).

Perhaps it’s a rogue setting or corrupted netlist. Need to look into it more.

EDIT: For the sake of thoroughness, I opened the v5.1.5 project on my v5.1.9 instance PC, and the ratsnest lines do show up. So it’s a problem with the project, not global to KiCad. The issue follows my original v5.1.9 project.

This text will be hidden

EDIT2: My original findings were wrong. When I opened the 5.1.5 project it was completely routed so when I went to move a module, the dynamic ratsnest showed up because I had global ratsnest on. :man_facepalming:

The expectation being sounded in this thread is that we expect the dynamic ratsnest lines to show up only when moving a module, with global ratsnest off.

This does not reflect my experience.
When I open a project created with 5.1.x with version 5.0.2 and use the “modern toolset” the ratsnest does dynamically become visible on the part I move.
So from all I can see, this “feature” has been removed from 5.1.x upwards or it is just broken and the developer do not care.

I’m not sure if understand well what are you speaking about.
I use 5.1.10 Accelerated (Windows 7).
Situation - rats lines goes through my element (one line comes from one side and next one goes to other side.
When I move this element one of lines disappear (only the shortest remains). The line follows my element. When I move it to place that that second line is shorter it is now visible and the other one disappears. I think it is intentional behavior even the ratsnest is broken (one line disapperas) during moving this element.

I edited my previous post because my “observations” were false because I had global ratsnest on on a fully routed project, so it seemed like dynamic ratsnest was working. When in fact, it wasn’t. So I concur with you now

If this is truly how everyone using 5.1.x is using KiCad, how in the world do you position parts in the best orientation, without the giant mess of the global ratsnest enabled?

What’s funny, is that the documentation shows an icon that used to exist called “Display footprint rats nest dynamically as it is moved.”
Pcbnew | 5.1 | English | Documentation | KiCad