Tuning track length is difficult

I have a differential pair where P and N track lengths do not match exactly.
I was able to get two wrinkles or whatever to shorter track, but it was slow. And at first the tool seemed to say that track was too short, and then after one more “wrinkle” it said too long. Isn’t the tool supposed to stop at desired length? And at what length? There are several different lengths.

Edit: I know this feature has problems. So this is to say that one more user would like to have this fixed.

This is:
Application: KiCad PCB Editor (64-bit)

Version: (6.0.9), release build

wxWidgets 3.2.1
libcurl/7.83.1-DEV Schannel zlib/1.2.12

Platform: Windows 10 (build 19044), 64-bit edition, 64 bit, Little endian, wxMSW

Build Info:
Date: Oct 29 2022 23:44:28
wxWidgets: 3.2.1 (wchar_t,wx containers)
Boost: 1.79.0
OCC: 7.6.0
Curl: 7.83.1-DEV
ngspice: 37
Compiler: Visual C++ 1929 without C++ ABI

Build settings:

You have to tune the length matching if you want to have good results. if you select the differential pair tuning tool there is a context menu under right click → ´Length Tuning Settings´. I also have a shortcut for this menu (CTRL+L) but not sure if this is the default one. needs a bit playing with it before one can figure out optimal values.

I didn’t know how to use differential pair length tuning as I had resistors in serie and other (+ESD protection) in paralel and I wanted to have only the total length (not each section) being matched so I used Single Track Length Tuning (+ some spredsheet calculations). It was in V5 and worked as expected. The key was to find Ctrl+L hotkey.

Thanks. Luckily I just found out from Raspberry Pi forum that here in my board, it is not critical to have all pairs at equal length. But the length of two wires in a differential pair are very critical. And it looks like they are difficult to tune. There are for example more than one total length of tracks in Kicad, and the tools uses the one which is harder to find.

Oh, how critical they are depends on the rise time of your signals, Z(common mode) vs Z(diff) of your diff pair and the termination on both sides (among other things). Homework: “differential to common mode conversion” :slight_smile: