VNA (Vector Network Analyzer)
- distinguished from antenna analyzer by having two ports instead of one
- distinguished from scaler analyzer e.g. SWR (Standing Wave Ratio) bridge by sorting resistance vs reactance instead of lumped magnitude.
thanks to cho45
thanks to Joe Smith
thanks to IMSAI Guy
thanks to Volker Block
70dB (50kHz-300MHz), 50dB (300M-600MHz), 40dB (600M-900MHz)
Measurements per scan
602035 3.7V 350mAh 20x35x6mm
Type C except for Micro-USB B on white gekkos
output signal thanks to dk1vi:
10 MHz -12,13 dBm 50 MHz -12,57 dBm 100 MHz -13,21 dBm 200 MHz -14,85 dBm 300 MHz -7,92 dBm 400 MHz -8,07 dBm 500 MHz -8,25 dBm 600 MHz -8,90 dBm 700 MHz -8,57 dBm 800 MHz -8,76 dBm
One LED (between USB and power switch) blinks @ 1/2Hz while charging,
then illuminates constantly;
- remaining on for 40 seconds after disconnecting USB or powering off,
perhaps discharging capacitors?
Another LED, between power switch and multi-directional switch,
illuminates while nanoLED is powered;
- this may be vestigial from nanoVNA prototypes lackng LCD displays.
Pressing this launches menu or selects menu item;
nudging left or right migrates among menu items or moves selected marker.
nanoVNA Calibration Considerations
PDF @ groups.io thanks to Larry Goga
Calibration for 4 track nanoVNA
click for calibration stepsthanks to Alan Victor
Some notes:A second 50 ohm termination and female-female SMA adapter
are wanted for ISOLN and THRU calibration.
Supplied and used are TWO matched cables, LOADS and one SMA adapter.
Each NUMBERED step below represents your PRESS (SOFT KEY TOUCH).
Turn on the VNA and note register 0 is ON.
CONNECT MATCHED CABLES to `CH0` and `CH1`.
2. TRACE 0
4. TRACE 1
Now `S11` and `S22` both display ONLY as LOGMAG.
6. START 100KHz
7. STOP 500MHz
Note! No softkeys (right side of touch screen) are highlighted.
Place an OPEN on end of CH0 cable and this will be followed by a SHORT.
Connect 50 ohm LOADs to ends of CH0 and CH1 cables.
Connect cables, replacing LOADs with female-female SMA coupler.
Finally save to a desired register.
That's it. Check that the open, short and 50 ohm display properly.
Note, the cables are CONNECTED to CH0 and CH1a,
and calibration reference plane is at those cables ends.
However, phase is subject to error and needs addressing in another message.
Also, with SMA coupler connecting cables to CH0 and CH1,
`S21` should measure nearly `0dB`.
click for calibration procedurethanks to Larry Rothman:
For best behavior, nanoVNA devices need touchscreen calibraton,
which requires USB connection to your PC/MAC/Terminal.
1. install STM USB drivers, if required.
2. connect the nanoVNA and determine which serial port has been assigned (e.g. COM5)
3. use a serial terminal emulator such as TeraTerm to access the nanoVNA console.
4. you may need to hit the ENTER key once or twice
to bring up its command shell prompt.
5. at the command prompt, enter: `touchcal`
6. the nanoVNA should now display a calibration point at the upper-left corner of the display.
7. touch that corner - a new calibration point will appear at the lower right corner of the display.
8. touch that corner - the screen is now calibrated - BUT NOT SAVED
touchcal- produces calibration touch points in the upper left and lower right corners
- console output:
touchcal first touch upper left, then lower right... done touch cal params: A B C D (upper left and lower right x-y co-ords)
touchtest- test touch accuracy - touch, hold and drag pointer
Now, save this touchscreen calibration:- saveconfig - saves current configuration
- console output:
Verify touch calibration using the menu boxes.
saveconfig Config saved
NOTE: saveconfig command probably also saves calibration data
Software and Firmware
firmware mitigation for nanoVNA
300MHz, 600MHz spikes
Some nanoVNAs fail when overclocked to
300MHz by standard firmware;
nanoVNA_800aa*.dfu firmware for reflashing problematic devices.
Get latest edy555 firmware here as
On powered-off nanoVNA connected to PC by USB:
- jumper BOOT0 pins, then power on.
- flash firmware from Bash or Windows Command Prompt:
dfu-util -d 0483:df11 -a 0 -s 0x08000000:leave -D ch.bin
Here is more software information.
Here are nanoVNA Console (shell) Commands
- command instability workaround
- Integrating nanoVNA shell with Bash or Windows Command Prompt e.g. for gnuplot
VCO (Voltage Controlled Oscillator) harmonics
thanks to Warren Allgyer:
Unusually, nanoVNA stimulus waveform is square, rather than sinusoidal.
300MHz, nanoVNA boosts
Si5351 output and uses its 3rd harmonic.
thanks to email@example.com:
Si5351 internal VCO (Voltage Controlled Oscillator) maximum
operating frequency decreases with increasing temperature.
Fully enclosed cases, raising component temperatures, may be problematic.
The specified maximum is
900MHz for a divide-by-4-frequency of
300MHz output, VCOs are overclocked to
1200MHz, which some cannot.
If significant spike artifacts are noted (>
800MHz firmware is recommended.
nanoVNA principles of operation
Largely as described in Michael Knitter DG5MK’s YouTube video:
Hamradio 2018 FA-VA5 presentation-UK
Instead of nanoVNA’s
(also used by EU1KY analyzer),
the FA-VA5 uses
74LVC4066 analog switches.
Analog switch ICs have better linearity, dynamic range and GHz bandwidths,
but switching times > 1ns limit local oscillators to
200MHz or so..
FFT "quadrature mixing", Hilbert transform and filtering DSP
… after quadrature sampling by Si5351 and SA612A.
Lacking access to the famous July, 2015 QEX magazine article by DG5MK..
- Richard Lyons’ Quadrature Signals: Complex, Not Complicated is approachable theory referenced by DG5MK.
- Hamradio 2018 FA-VA5 presentation-UK video
- DG5MK’s FFB SSB Modulation PDF avoids digging into mathematics.
- DG5MK’s Labview-based SDR provides software insights.
- DD4WH’s detailed DSP description in UHSDR wiki, based on Teensy SDR
- UHSDR IQ correction and mirror frequencies @ GitHub
- relevant Teensy-ConvolutionSDR (Si5351, ARM) Arduino source code
- Here is nanoVNA bridge analysis
Linked from DISPLAY
In addition to selecting values to be displayed,
CHANNEL submenu selects whether signals are from CH0 (TX) or CH1 (RX).
linked from TRACE
Up to 4 simultaneous color-coded data can be plotted.
Some firmware instead supports only 2.
OFF disables this trace; SINGLE disables all other traces...?
linked from SCALE/DIV
Change vertical scale e.g. dB/div
linked from NUM KEYS
thanks to Mike Brown
Numerical input seems a bit flaky,
although it works better for e.g. CW frequency than position.
Touchscreen typically wants calibration.
Antenna analyser firmware has a larger font;
touchscreen [mis]calibration is more critical for other firmware..
Numeric entry displays no decimal point, but one may be implied. eg:
- When in logmag reference adjust mode,
digits appear to represent steps of
so a change of +1000 moves the reference
- In CW Freq setting, digits seem to represent steps of
Rocker switch input
- Tapping on a digit makes it adjustable;
step it up or down using the multi-directional switch.
- If you hold the multi-directional switch in,
that digit is ‘highlighted’ and its background goes black.
- The multi-directional switch can shift highlighting to another digit.
- Press in again, highlighting disappears and the digit becomes adjustable.
- Press in again briefly to store that numerical setting.
NB waiting a few seconds between rocker switch presses seemingly helps.
- Tapping far right of numbers brings up a numeric keyboard,
which may be operated either by touchscreen taps
or by multi-directional switch movements.
- With 2-trace
900MHzantenna analyser firmware,
multi-directional switch movements seem buggy.
In reference position adjust mode,
the ‘enter’ button doesn’t seem to do anything
but if it is held the keyboard clears from the screen.
- The keyboard works fine when setting e.g. CW Freq.
Frequencies may be entered as GHz, MHz or kHz;
just enter the digits then tap G, M or k to enter the set value.
(eg to set
800MHzyou can enter 0.8G, 800M or 800000k.)
linked from REFERENCE POSITION
thanks to Mike Brown:
- for e.g. LOGMAG
- Entering 1-8 (0001 to 0008)
places the REFERENCE line 1 to 8 grid spaces from the BOTTOM.
With default setting 7 000, changing it to 8 000 moves the trace reference
(shown by a small marker at left of screen) up one grid space, to screen TOP.
- for e.g SWR 1:1
- trace is below screen bottom.
Changing reference position to 180 raises trace to screen bottom
linked from ELECTRICAL DELAY
Calibration data can be modified by electrical delay in picoseconds.
Hugen customized short and accurate calibrations kits.
linked from MARKER
While displayed markers can in theory be manipulated by hand or stylus,
touch calibration inaccuracy typically frustrates that.
Better to use the multi-directional switch..
.. or try the touchscreen calibration procedure.
Select (by push) any of MARKER 1 - 4.
Selecting that same marker again toggles it off.
Sliding the multi-directional switch moves a selected marker.
A selected marker can change START, STOP or CENTER of sweeps.
SPAN changes sweeps when 2 markers are active.
link from PAUSE SWEEP
This button freezes data collection.
thanks to Gary O’Neil:
The nanoVNA must remain powered on to successfully capture data via USB.
With the data you wish to “save” and port to your workstation,
navigate to STIMULUS > PAUSE SWEEP.
Data at the top of the screen will freeze, confirming sweep is paused.
Take care to not inadvertently alter the current state…
either by the toggle switch or touchscreen.
Remove the NanoVNA from the DUT,
observe that the desired data remains on the display,
transport it to your workstation, hotplug the device into a USB port,
then tap on the display a couple of times.
This appears to initiate handshaking
and establishes a connection with the workstation.
- Launch the nanoVNAsharp app and connect.
App display should match that on the nanoVNA.
- Use nanoVNAsharp facilities to save the data.
To be clear, data is not otherwise saved within the NanoVNA.
Once PAUSE is cancelled or the nanoVNA is power cycled,
data is flushed and replaced.