Length Tuning Tool ignores Vias

I just used the tune track length tool of KiCad and realized that vias are not taken into account for the total tracklength. Is this as it should be or is it a bug?

To test it I placed 10 vias on a track and it gave the length of 11.315 mm.
I then routed the exact same track, but without the vias and it gives a length of 11.315 mm as well.

I’m new to pcb-design, but shouldn’t the “depth” of the via from one copper layer to the next taken into account for the total track length?

Thanks for your help!

As far as I know there is no option to set the board thickness in KiCad, so KiCad can not adjust for this.

For dual layer boards often 1.6 mm is used, but there is no guarantee.

@paulvdh the nightlies do have it fully broken out, however they also do not include via length in the length.

1 Like

The script that was used to calculate track lengths with Eagle v7 also ignores vias, so KiCad is not unique in this. This does seem broken to me.

Wouldn’t it be a good approach to take the board thickness as the vias thickness ? After all, the difference in most cases would be below a millimeter.


p.s. The PCB thickness value, influences the thickness of the board’s 3d model generated by StepUp

As the board stackup is available in 5.99 it should be a straitforward task to add the appropriate length between the respective layers when a via is present in the measured track.
Does someone know if this is planned?

The board thickness is only an approximation in the case when the via takes the track from front to back or back to front. If the board has 4 or more layers, the approximation will be quite poor for vias between a surface layer and the inner layers.

Beside it is a bug or not…
If you play with “length tuning” and differential lines you should avoid vias as much as possible.

BR, Rabbit

1 Like

I agree, it should be easy to include the distances between different layers if they are already defined.

Yes, thank you. That is what I have been trying to do, but unfortunately in some cases they are unavoidable. That is why I wanted to take the via lengths into account and was surprised that they weren’t.

This is good to know. I would not have expected it to work like this. Is it measuring trace length from the edge of the annular ring on the via? So if you change the size of the annular ring on the via, will it measure a different trace length?
I will try this with Altium. I have only used length for differential tuning so absolute length was not important at the time.

1 Like