PCBNew - Modern interface D and G keys don't seem to work when creating a trace

I must be doing something really dumb, because using the modern interface in PCB new, I can’t see a way to route tracks other than at multiples of 45 deg when I first draw a trace.

Pressing D of for “Drag (free angle)” does not change the routing when first creating a trace.

It pressing D however does work, if I create a short stub of trace and then drag one end to where the connection really needs to go.

I’m using the latest version (5.1) on Windows 7, and the Modern interface.


You have to change the interactive router settings and check the “Free angle mode” to be able to route as you wish.


I’m confused here. Here (KiCad V5.1.6 “Modern Toolset Accelerated”) the D for Drag really likes to put track segments back on a multiple of 45 degrees.

G however moves a corner (or endpoint) of a track and does it under any angle.


I was hoping that I could switch between the 45 deg angle and the free mode, using D and G, but it sounds like that doesn’t work.

Perhaps its possible to write a macro to switch this on and off

Both G and D show up in the context menu (right click) when you are creating a trace.

However neither of these selections seems to do anything when creating a trace.

Can you post a screenshot or describe what your goal is here?
Maybe I can help with a workaround.

If you need many track segments with the same (unusual) angle, the simplest option may be to duplicate an existing track segment hover and [Ctrl + D].

I’m routing a RF board, and would prefer if the traces didn’t have unnecessary dog legs in them.

Technically at 50Mhz the dog legs will have little effect on the operation of the board, but it looks ugly

The workaround seems to be to make a very short stub of trace, and then Drag it to the desired end point, which is what I’ve started to do here, with the traces which are at approx 30 deg

Your current way seems to be a reasonable workaround with KiCad trying to maintain 45 degree track angles. the track segment does not have to be particulary “short”, cause when you drag an enpoint with G the length is also adjusted.

In your design you have lots of short tracks under different angles. Track segments can be easily copied and reused for another net. Just hover over any track segment, pres [Ctrl + D] to duplicate it, which grabs it by an enpoint, and then place that endpoint onto a pad of a different net. [Ctrl + D] works on the current selection, so multiple track segments can be copied.

Even slightly faster is probably to first draw it with 45 degree angles, from pad to pad, because KiCad ends drawing a track on a pad, and then use G to drag the unwanted corner into the pad.

Switching the interactive router back and forth to “free angle mode” is a bit of a nuisance if you have to do it often. You can experiment a bit with using the Interactive router in “Free Angle Mode”, and then draw an approximation of the parts you want in multiples of 45 degrees, and then later clean it up with the D key, which puts segments back in multiple of 45 degrees.

These are all slight variations of the same thing. but it’s a result of mixing free angle mode and 45 degree angle mode. Having shortcut keys to switch between these would help, or even 2 different keys to start a track. X for 45 degree mode and Z for Free Angle mode. But that’s currently not implemented, may be doable with a simple script, but I have no knowledge of KiCad scripting.


I’m OK using my work-around. With some tracks, the dog-legs can’t be avoided.

I could use a plugin I found which makes rounded corners, but it creates multiple very short tracks, and is only useful when the routing is finished, as it would be difficult to edit.

I’ll see if I can close this thread, and if not… Moderators please feel free to close it as resolved via work-around

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