DIY nanoVNA graphs
Consider:
- Programs' communications with nanoVNA is
simple and documented
- nanoVNA command behaviors and interactions can be unobvious..
- nanoVNA is conceptually simple
- It measures for some devices changes in RF signals phase and amplitude, for ranges of frequency samples.
It returns those in S11 (input impedance mismatch from 50 Ohms resistive) and S21 (gain and phase shift) format.
- Software to communicate with nanoVNA need not be complicated
- Pass commands to nanoVNA from cmd.exe or other terminal or shell scripts and capture results.
- Combine captured nanoVANA data into gnuplot (almost Touchstone) file format
using e.g.
cat
and paste
- Render Touchstone format to Smith
and rectangular plots by gnuplot
Calculate and plot e.g. resistance and reactance values from S11 data using gnuplot
scripts
- Batch processing advantages:
- task-oriented, easily duplicated, "self-documenting"
- let the OS handle multi-threading and process scheduling
- powerful and fairly easy using bash
and not necessarily horrible by Windows .bat scripts
- No commercial softwares (other than Window$) are injured during this production.
- Relatively simple scripts flexibly combine data for plots of interest.
- Batch and gnuplot scripting requires use of some text editor.
- Python edits only for changing USB port from 'COM3' in nVargs.py
- nanoVNA shell command scripting constraints:
reset
interrupts communications and should be avoided
clearconfig
wipes out calibrations and should be avoided
- nVargs.py will eventually prefix
pause
and append resume
to nanoVNA commands passed to it.
Otherwise, nVargs.py is intended to be so 'dumb' that any new nanoVNA shell commands should already work.