Legacy HP/Agilent ECals with open source control to cal any* VNA - Page 1
Forum section: electronics / rf-microwave

author: Marsupilami
author_rank: Frequent Contributor
timestamp: May 18, 2024, 08:15:46 pm
content: Hey People,This is an unashamed internet approval solicitation post. I must as my brain is melting.I made a thing. It is not done yet, but I'm ~2000 lines of Python code deep in it and my determination is waning.Some folks on the HP/Agilent/Keysight-Equipment groups.io list (or at least that's where I found them) reverse engineered the control interface and Flash memory format of old HP/Agilent VNA ECal modules. Normally there's either a separate rack mount controller, a closed source hard to find PC interface box or built in functionality in newer VNAs to control these modules.Based on said prior work, I started writing an extensible Python library, that performs calibration, controlling the VNA and the ECal modules.Cal math (currently one port 3-term overdetermined and full two port 12-term overdetermined) and touchstone file functions are from the Scikit-rf library.The ECal modules are controlled over easily DIY hardware. I have examples and code for an Arduino and an FTDI thingy based version, but new ones can be added relatively easily. (I fancy a custom PCB for this, but maybe in the future.)Currently the only supported VNA is the HP 8720C over GPIB as that's what I have, but it'd be relatively easy to add support for basically anything that is capable of transmitting sweep data and receiving error coefficient over a digital interface.(The code might work without any modification or minimal touch up with 8xxx series analyzers.)All of the lower level implementation is done and working. I however somewhat underestimated the complexity of high level functions.It's mindbogglingly difficult to come up with a fair implementation to automatically split the frequency range between two ECal modules for example. I'm adding support for using pre-charaterized adapters and the possibility to perform adapter characterization on insertable port ECal modules.During first use the software pulls the standard definition S-Parameters from the modules. In subsequent runs it can load these files automatically, thus saving some time. Moreover it'd be possible to re-characterize the ECal modules, by just measuring them on a well calibrated VNA (e.g. if you have access to one at work, or have a good mechanical cal kit) and use those files instead, without needing to mess with the Flash contents.There is a callback mechanism for operator prompts. Currently I have implementations that either do it via a simple terminal on the PC or in case of the HP 8720C on the analyzer screen, with the soft buttons.If you're interested check out the current WIP version here.:https://github.com/OwlvilleWol/VnaCalWizardThere's a bit more detailed although still to be finished readme, with the hardware interface schematics, supported ECal list, etc.

author: Tony_G
author_rank: Super Contributor
timestamp: May 18, 2024, 08:27:38 pm
content: I have an 8720C but I don't have any ECal devices however I've followed your posts on the HPAK group and I want to thank you for doing this - All I can tell you is that people out there do appreciate it and hope you continue.TonyG