Hi Scott,
This is great, thanks for sharing!
I gave it a shot, but wanted to run it by you, in case I’m doing something wrong. I’m not a calibration expert, so I apologize if I’m making basic mistakes here. On the other hand, if I can use it, then almost anyone probably can! : )
I have an OSL kit called
SDR-Kits Female Calibration Kit of Rosenberger parts (PDF datasheet) and it comes with offset delay (or electrical length) values. Ordinarily, I would plug those values into the VNA, but I recently got a Nano-VNA (the H4 variant), and I’m completely new to these Nano instruments. I don’t think I can configure those values into the instrument.
The NanoVNA appears to be applying some default calibration, I left that calibration enabled (with hindsight I would have switched the default calibration off, I can do that if you think it’s needed). I left the NanoVNA at all the default settings for now, and it is set to a span of 50 kHz – 900 MHz.
Next, I connected a short length of cable (~ 90 mm) to the NanoVNA, and then attached the open/short/load, and obtained the .s1p files for the Open/Short/Load standards in that kit.
I named the files
open_meas.s1p,
short_meas.s1p and
load_meas.s1p (attached in the zip file).
Next, I ran the program
cal_create.py, and it generated a file called
1x1.vnacalThen, I attached a DIY 100-ohm load (two 200-ohm resistors in parallel across the back of a SMA female connector) and saved the measurement as
dut_meas.s1pI ran the program
cal_apply.py, and it converted to a file called
dut_meas_corrected.s1pIt certainly looks spot-on (Smith chart output attached). Have I done it right? It feels odd not having typed the calibration standard offset delay (or electrical length) values anywhere, so I was wondering if I've done something wrong.
Many thanks.