
With a great deal of help from Claude AI, I've put together a tool for performing TRL calibration and generating corrected S2P output from standards and 2-port DUTs measured using a nanoVNA. TRL error correction is not a replacement for SOLT, it's a different technique with definite strengths and weaknesses. If you don't already know what it is you can probably stop reading now because I'm not writing this for casual amusement. Rather it should be considered an alpha-test program for those who know when, where and why TRL VNA measurements have use. It now doubt has bugs and areas waiting for improvement but I'm looking for knowledgeable users who might help test and perhaps improve it.
This tool is written in Python using tkinter for display. I've tried it on both Linux and Windows OSes where it seems to work the same. It creates a stand-alone window after being invoked from a command line with 'python3 [appname].py' since it is just a python program which can be examined and modified. It may require libraries not part of the standard python distribution be installed first. Advice on resolving those should appear when it is first executed. I'm not a Python expert but's recommended to do all of this in a virtual environment. By its nature it is Open Source so you can examine it first to become confident that it doesn't do something nefarious.
(T)hru, (R)eflect and (L)ine standards are measured and then used to correct DUT measurement afterwards, in the same way that SOLT calibration does in a native nanoVNA or using nanoVNA-qt software. The tool also returns an estimate of the characteristic impedance of the Lines used for calibration. Useful range is over frequency ranges where a line standard is 20-150 degrees long so this is a different environment from the more familiar 1-path 2-port SOLT calibration. Multiple lines need to be used to provide wider ranges.
If you think you qualify as a good candidate alpha-tester write me and I'll send you the .py code if you will share any improvements you make. Please don't if you are just kicking tires. I'm not offering any modifications, support or instructions. I'm not selling anything. Here's an example of the program's output using ~32" of RG62 with BNC connectors and SMA adapters and a shorter piece of .141" 50 ohm semirigid as Line standards measuring a 3 dB pad as DUT.
Glenn n6gn