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
Libraries:
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:
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=ON
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_PYTHON3=ON
KICAD_SCRIPTING_WXPYTHON=ON
KICAD_SCRIPTING_WXPYTHON_PHOENIX=ON
KICAD_SCRIPTING_ACTION_MENU=ON
BUILD_GITHUB_PLUGIN=ON
KICAD_USE_OCE=ON
KICAD_USE_OCC=OFF
KICAD_SPICE=ON

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

2 Likes

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.

3 Likes

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.