# CuriousMeasurements ## Objective This library will _eventually_ be resposible for providing a uniform interface for measurement equipment calibartion and control. This will be used for automated scripting of tests. # To-Dos - [x] Develop scripts to use nanoVNAV2 H4 - [ ] Develop metaclass which will import correct subclass based on argument (class factory) - [ ] Document VNA classes - [ ] Optimize VNA calibration proceedure and get away from "datapoints" - [x] Turn curiousVNA into a submodule / python package (That's Curious Measurements, yay!) - [ ] Add analog discovery support - [ ] Add sig gen support using - [ ] Add oscilloscope support using signlent - [ ] Ass powersupply support # VNA Example ```python from curiousmeasurements.VNA.NanoVNA_V2 import NanoVNA_V2_H4 from curiousmeasurements.VNA.Hardware import get_interfaces # setup interface iface = get_interfaces()[0] iface.open() vna = NanoVNA_V2_H4(iface) # configure sweep vna.set_sweep(140e6,4.4e9,1001) # load cal vna.load_cal(cal_path / 'test2.cal') # measure f, s11, s21 = vna.measure() ``` ## Credits 1. NanoVNA code (for calibration mainly) was shamelessly ripped from the NanoVNA-Saver project. Thanks guys!