What software rule decides if the last track segment is fixed

When connecting to pin-header THT connectors I like to start routing with wider track (0.4 or 0.5) and then route rest with typical width (0.2 or 0.25). For 40 pin connector I wanted to make short wide track starts with 45 angle short end segment and I had a problem with doing it. After some experiments I found that in ‘Interactive Router Settings’ flag ‘Fix all segments on click’ is my problem source.
On the following screen-shot (with this flag not set) when I finish routing with double-click in two first tracks last segment is not fixed (and I had to add it later) and at the third is fixed.

I’m just curious what rule decides this.
Track width = 0.4mm, grid=0.1mm. In first track the last segment end is inside previous segment. In second and third it is out of it. Picture to let you see details:

FixSegm_trans

But second track behaves like first and not like third so having end inside previous segment is not the rule.
The length of last segment is also not a rule. If you use 0.2mm track then second behaves like third.

The problem for me is that when I double click then last segment instead of only not being fixed it disappears. If it was only not fixed I would be able to fix it in next step but I have to start routing once more. Do you think this disappearing is a bug or there is any reason it should disappear (so it can be named feature)?

I tried your experiment and had exactly the same result.

I do not know what decides whether the last segment is fixed. I tried all the Clearances in Board Setup, to no avail.

Maybe a Developer could explain why.
I changed your title and category to perhaps help attract someone knowledgeable with this subject. :slightly_smiling_face:

I am not able to store such details in my memory. Apart from that, it may also change with KiCad versions. And therefore, I do not even try to figure out the details (unless it really starts annoying me for some reason).

I understand and agree with making the last track segment to a pad wider (especially for THT connectors), as very thin tracks may develop cracks due to fatigue over longer times. Olimex also uses this method in several of it’s PCB’s (For example the Olinuxino A64, (project on github)). The way I do it is in stages. At first I try not to get distracted by such small details and just route tracks (The Interactive router will shove them around a bunch of time before the project is done). And then near the end, I go around the connectors, make the stubs wider and may even lock them so they won’t move nor can’t get optimized away. I should start a checklist of “things to check before sending Gerbers to a Fabhouse” and this will then be near the bottom of the chekcklist, as one of the last things to check (Before a final ERC / DRC).

You may want to look at the teardrop feature. It is under Edit->Edit Teardrops in the pcb editor. It should allow a tapered track connecting to through-hole pads.

Hi @SteveFalco

I don’t think Piotr is looking for alternatives, he just wants to know why there are differences in actions depending on the length of the tracks.

I have to admit I’m now curious also.

Yes, you are right. Spending Sunday without PC I had this what I have written in my mind and I got idea, that I have only checked what is going on when I double-click at my track end (because it was what I was trying to do - short tracks from 40 pads and I had to do most of them with second try to add second segment). But the check-box is about one click. I plan (later) to check what happens with one click (now I’m writing from Win7 without KiCad 8 here). If the last segment disappears (instead only being not locked) on first click than it certainly looks like a bug to be reported. What happens on first click can be the reason of effect after my double clicks.
Probably I’m right here, but will check it later.

I have filled a bug-report:

While doing it I found that ‘Shift’ key makes all segments being fixed by click even flag ‘Fix all segments on click’ is unchecked.

Do you think it is a bug or somewhere it is written than ‘Shift’ forces all segments to be fixed by click?