A guide to the NanoVNA
A guide to the NanoVNA
By
To Agnieszka,
a patient wife
and a loving mother.
First Edition
Copyright 2020 © Christoph and Maximilian Schwärzler
10 9 8 7 6 5 4 3 2 1
This book is written for the practitioner and you will not find a lot of
math inside. If you read this book, you are most probably a ham radio
hobbyist or even professionally enclined with high-frequency
electronics. Maybe studying EE or just best friend to a soldering iron.
This book is four you!
After having read through chapter Two about the firmware you will
know about the various charts and how to read them and be able to
control the NanoVNA as a standalone device. You will also learn how
you can upgrade the firmware.
Before getting any reliable results, the NanoVNA needs to be
calibrated. Chapter Three shows why and how.
From the left side, light is shed upon the DUT. When this incident
light hits the DUT, part of it is reflected and part is transmitted
through. If the intensity of the incident light is known, and the
reflected as well as the transmitted intensity is measured, the DUT is
well characterized with regards to its optical features. The reflected
light tells a lot about the air/DUT interface and the transmitted light
about the translucence of the DUT.
The same holds true for radio frequencies. The following figure
shows a typical VNA setup.
Fig. 2: RF measurement
Now it gets clear, why a VNA needs two ports. Through one (the
left one in figure 2) the incident HF-signal is emitted towards the DUT
and at the same time, the reflected signal is measured. Through the
other port, the transmitted signal is measured. Both ports measure
amplitude as well as phase, see above.
The current design of the NanoVNA and the name was created
several years ago by a Japanese ham under the pseudonym
“edy555”. His first design ideas with a different DDS (frequency
generator) seem to date back to 2013, but the current design with a
significantly reduced parts count and based on the Si5351A was
published by him in 2016.
There is also a spin-off design with a larger 4'' screen, called the
NanoVNA-F. Running on a different microprocessor, the NanoVNA-F
also needs different firmware. This device is marketed and readily
available too, but comes with a significantly higher price tag of about
130 € (150 US$).
3. Hardware versions
PCB: 54 mm x 85.5 mm x 11 mm
Frequency range: 50 kHz to 1.5 GHz
RF output:-13 dBm (typ.)
Frequency error: < 0.5 ppm
Measurement range: 70dB (50kHz-300MHz), 60dB
(300M-600MHz), 50dB (600M-900MHz)
Port SWR: < 1.1
Display: 2.8 inch TFT (320 x240)
Tracks: 4, marks: 4, saved settings: 4 or 5 (depending on
firmware)
USB interface: USB type-C communication mode: CDC
(serial)
Power: USB 5V, 120 mA or internal battery (if available)
Number of scanning points: 101
Enclosure
Shielding
Accessories
Most probably, you will also need cables to connect the DUT.
These are short (0.2 to 0.3 m) coaxial cables with male SMA
connectors on both sides. Models on the market differ in including
those or not. If they are included, they are mostly of the RG 174 type,
which is perfectly fine for the lower end of the frequency range.
However, if you intend to measure at frequencies of 600 MHz and
above, you might want to consider using RG 316 cables, which must
be ordered separately and will cost a few dollars each. You will need
two of those.
Fig. 8: RG 174 and RG 316 cables
4. Buying hardware
We will not talk about adding shields since this is demanding and
the possible improvement still under discussion (see the previous
chapter).
Retrofitting a battery
Now open the bottom screws of the NanoVNA and remove the
bottom cover. You will have direct access to the solder side of the
PCB. If you put the SMA connectors to the right side, look at the
upper part on the left side. It will look like this:
Fig. 9: Battery connector and D2 missing
There are empty solder pads next to the ''BAT'' and ''D2''
silkscreen. Close to the left battery pad, there is a ''+'' sign, this is
where the (red) lead to the positive side of the LiPo has to be
soldered to. The other pad is for the (black) negative lead. The diode
''D2'' connects the battery with the voltage sensing input of the MCU.
Therefore the voltage drop of the diode directly influences the battery
level as shown on the display. Standard firmware assumes a 0.7 V
drop, but there are firmware versions which allow for changing this
through serial port communication (see chapter Four). When
soldering the diode, it is important to ensure the right direction, which
is with the bar facing downwards. The following figure shows the PCB
after soldering:
Fig. 10: Retrofitting a battery
Adding an enclosure
The first firmware dates back to 2016 in conjunction with the kit
sold by edy555. This is open-source, so people picked it up and
several streams of firmware evolved since. You can write and compile
your own version if you want.
edy555: https://github.com/ttrftech/NanoVNA/releases
hugen79: https://github.com/hugen79/NanoVNA-H/releases
qrp73: https://github.com/qrp73/NanoVNA-Q/releases
reald: https://github.com/reald/NanoVNA/releases
You will now probably ask, which one you should aim for when
upgrading. The answer is: it depends, but it does not matter too
much, since all four cover all major functionality and they do so using
very similar user interfaces. Many users, including I, have problems
with a small text size on this tiny screen. Thus, my favorite at the time
of writing is hugen79s ''AA'' version, since this provides a larger text
size. By the time you are reading this book, there might be other
versions with other advantages as well. My best advice is to
subscribe to the NanoVNA user group at groups.io and check the
Wiki pages. There, people like Gyula Molnar try their best to keep up
to date and from time to time provide comparison tables between the
various versions.
2. First steps
Although we very much doubt that you have not already switched
on your NanoVNA by now, let's do this again and together. If you
have a model without a battery in front of you, connect the NanoVNA
with the USB-C cable to a suitable power source like a computer USB
port. At this time, nothing else needs to be connected to the device.
On the NanoVNA, there are very few control elements, all of them
located on the far side of the device.
Fig. 12: Control elements
Text and lines on the screen come in up to four colors plus white.
All information shown in a specific color is linked to the respective
graphical information. How many of these lines are shown, is
configurable as we will see later on. You can also choose for each
color, whether this information is related to S11 (= CH0) or S21 (=
CH1) measurements.
On the left side of the screen, you will see which calibration set is
in use and some details about it. This will look like ''C0'' and some
letters below it. We will deal with calibration in chapter Three.
On the right side of the top line, there is a number, most probably
''1:'' and a frequency next to it. This is the frequency, where the
marker with this number currently resides. You can choose to have up
to four markers. On the charts, markers are shown as triangles with
their numbers inside.
If you use a stylus, but you constantly miss the intended spot,
your screen and touchpad might be misaligned. In this case, jump to
section 7 of this chapter first and calibrate your screen.
Now either push down the multi-switch or tap on the screen. Any
of these actions will open the top menu.
Two blue LEDs next to the power switch indicate the status of the
device, however, you do not need to pay a lot of attention to them.
The LED to the left of the power switch blinks during a charging
process and is permanently enlightened during the power-on of the
device. The LED to the right of the power switch blinks with each
frequency sweep.
3. Traces
For each trace, there is a text line in the left upper part of the
screen and a line of the same color (yellow, blue, green and
magenta) in the chart. As mentioned earlier, up to four traces can be
displayed on the NanoVNA at the same time. For the sake of clarity,
however, it is often better to reduce the number of traces. Each trace
can be switched off and on individually. And for each trace the
channel and the format, as well as the display scaling, are user-
definable. At any time, there is always exactly one trace active for
manipulation. It is identified by the inverted channel information in the
text display.
Talking about the text lines, let’s look at them closer. The structure
of a line is always the following:
Channel_Format_Scale_Measured value(s)
Examples include:
CH1 LOGMAG 10dB/ -20.74dB
CH0 SMITH 1.0FS 8.75Ω 7.61µH
CH1 SWR 1.00/ 1.38
CH0 PHASE 90°/ -161.928°
Such a line always starts with the channel on which the data is
measured. This can either be “CH0” or “CH1”.
Next is the format of the measured data. The following formats are
currently available:
After the format and separated by a blank space is the scaling for
the charts. For linear charts, this gives the delta value between two
horizontal lines. A typical example is "10dB/". This means, that
between any two horizontal lines the value changes by 10 dB. For
Smith and polar charts, the scale is relative to full scale. Most
probably, you will keep this at the default value of 1.OFS, if you set
this to a value of 2.OFS on a polar chart, for example, the radius of
any point shown on the chart will be halve of the value at a setting of
1.OFS.
At the end of any line, there is the direct reading of the measured
data. This can be either one number, as for SWR or phase, or two
numbers plus units as for complex impedance values. When using
the NanoVNA standalone, these numbers will give the most precise
measurement results.
4. Markers
5. Chart types
There are three types of charts used on the NanoVNA. These are
automatically selected together with the type of information chosen by
the “FORMAT” command. They are:
Linear
Fig. 14: Linear chart
Smith Chart
Fig. 15: Smith chart
Polar Chart
Polar charts are used for displaying complex numbers, like real
and imaginary parts of the complex reflection or transmission
coefficient, which is defined as:
Formula 1: Complex reflection coefficient
If more than one trace is displayed and if they are using different
chart types, all of them are printed at the same time. This is the case
with the default calibration C0 and has the potential to baffle the first
time user.
We will now show with some examples, how traces, formats, and
markers are handled. Not all possible combinations will be dealt with,
but having worked through the examples you should be in a position
to set your NanoVNA working environment in any way you want to
have it. These examples are for getting familiar with the menu
structure only, you will find examples for real live measurements in
chapter Five. It is a good idea, to have a printed menu structure map
in front of you for reference now.
When you switch on the NanoVNA for the first time, it will start up
using the factory calibration, which has four traces active. Especially
for the beginner, this can be very confusing. Thus, in our first
example, we will deactivate all but one trace. Afterward, we will add
complexity as we familiarize ourselves with the device.
Either push down the multi-switch or tap with the stylus anywhere
on the screen. Instantly the home menu will be opened on the right
side of the screen:
Open Home menu > DISPLAY > TRACE > TRACE 1 > TRACE 1
TRACE 2 > TRACE 2
TRACE 3 > TRACE 3
Close Menu
There is only one trace left - which is good - but this trace still
shows the logarithmic magnitude of the reflected signal in dB. Which,
by the way, should be a number close to zero for the whole frequency
spectrum, as currently there is an open-end (infinite impedance) on
CH0.
Now, we will switch the trace to SWR measurement. Open the
menu by either pushing down the multi-switch or tap anywhere on the
screen. The menu will open at the last screen, which in our case was
the traces-menu. We have to go up one level by selecting the ''←
BACK'' command. Next choose the ''FORMAT'' command, as we
want to set the current trace to another format. You will see a list of
formats. More formats are available on the second format page,
which would be accessible by selecting ''→ MORE". We do not need
this second page, as the ''SWR'' command is already on the first
page (if you switched to the second page accidentally, just go back to
the first one by using the ''← BACK'' command). Now select the
command ''SWR''. That's it: You just turned your NanoVNA into an
antenna analyzer!
Open Home menu > DISPLAY > TRACE > TRACE 2 > TRACE 2
TRACE 3 > TRACE 3
There are now only the yellow and blue traces left. The first,
yellow text line is set on CH0 with a LOGMAG format at a 10 dB
scaling. The measured value should be close to 0.00 dB as the open
end completely reflects the incident signal. The second trace in blue
is set to CH1, again in a LOGMAG format and a 10 dB scaling. As
CH0 and CH1 are currently not connected, there is no transmitted
signal and any reading is solely due to noise or non-perfect isolation.
Numbers can differ but should be below -60 dB at the lower end of
the frequency span, which is 50 kHz. If one or the other trace is not
set to LOGMAG format, this can be changed by the process which
we learned in the first example. In case the traces are not set to
''CH0'' and ''CH1'' resp., highlight the affected channel by selecting
the trace, go back to the next menu level and select ''CHANNEL''.
Now select the correct channel.
We will now set the lower end of the frequency span to 1.5 MHz
with the command ''START''. Most probably, you will still see the trace
menu on your screen now. Hit the ''← BACK'' command to move one
level up. Now select ''← BACK'' again and you are on the home
menu. At the home menu, select ''STIMULUS''. You will see a choice
of the following commands for controlling the frequency range and
sweeps:
You will find the numbers 0 to 9 and delete (''←''), as well as units
(''x1'' to ''G''). When using the multi-switch, move the cursor through
the field by pushing the switch left or right until the intended symbol is
highlighted. Then push the switch down to select this symbol. With a
stylus, just tap on the symbol. First enter a number, followed by a
unit. After selecting the unit, the entered frequency is set and the
numeric keypad disappears. Any combination of numbers and units is
possible. In our case, entering 1500 followed by selecting ''k'' will set
the lower frequency end to 1.5 MHz. As will 1.5 followed by ''M'' or
even 1500000 followed by ''x1''.
Summing up, this is, what we did to set a new frequency range:
Home menu > STIMULUS > START > 1 > 5 > 0 > 0 > k
Open menu > STOP > 3 > 0 > M
Next, let us adjust the scale of the reflected (S11) signal on CH0.
There are two settings, which affect this scale. One is the scaling per
division of the vertical scale, which can be set with the command
''SCALE/DIV''. The other one is the origin of the vertical scale, set
with the command ''REFERENCE POSITION''.
Before changing either, the trace has to be selected, for which the
scale will be changed. This is done by selecting the respective trace
at the ''TRACE'' menu. In our case we select ''TRACE 1''.
In the last section, the following commands have been applied for
changing a scale:
Home menu > DISPLAY > SCALE > SCALE/DIV > 5 > x1
Open menu > REFERENCE POSITION > 4 > x1
This section is only relevant for users who chose to control the
NanoVNA with a stylus. Sometimes the screen and the resistive pad
on top of it get out of sync. This happens on other similar devices as
well. On the NanoVNA, such a misalignment can be corrected in
most firmware versions.
You will get two tools: DFU File Manager and DfuSe Demo. The
DFU File Manager is not needed if the firmware is available in the
.dfu file format, which is usually the case. If there are S19, HEX or
BIN file formats available, you can generate a .dfu file out of these
with the DFU File Manager first.
Now the NanoVNA must be switched off and on to start it with the
new firmware.
Three: Calibration
1. Reason and definitions
2. Calibration management
For now, we will talk about calibrations in the context of using the
NanoVNA on a standalone basis. If you use the device connected to
a computer and with software, the calibration process might no longer
take place inside the firmware but can be moved to the software on
the PC. Such an external calibration is discussed in chapter Four.
The letters below the first line indicate which type of error
correction is available with the active calibration set. Directivity
requires calibration with a load, Reflection an open and Source Match
a short calibrator. These three are the minimum required for an S11
calibration. The through connector is necessary for Transmission
Tracking and for the Isolation, and you will need at least one load
(better: two loads). For a full calibration, all five letters must be
shown.
3. Calibration process
Most users connect their DUTs with short (15 to 30 cm) coaxial
cables (''pigtails'') to the NanoVNA. These can be made of RG 174 or
RG 316 (see chapter One) with male SMA connectors and stay
attached to the device. Their other ends define the reference plane.
This is the position where the SOLT calibrators have to be connected
via a female-female through connector.
Before starting a calibration process, you have to set the
frequency range. The NanoVNA measures and calibrates at 101
equally spaced frequencies within this range. For all other
frequencies, the firmware needs to inter- or extrapolate. Accordingly,
it is best if the calibration range is exactly the same as the
measurement range later on. Use the process as described in
chapter Two. You can also set traces, formats, and markers to your
liking as these will also be saved, but this can be done later (even
after the first time saving) as well.
Now the calibration is safely stored and the device is ready for
measurements now or some other time. Retrieving the calibration is
as easy as selecting ''RECALL'' on the home menu, followed by
''RECALL n'' with n being the storage space number.
1. NanoVNA Saver
The software comes as one .exe file, which after starting opens a
black, DOS-like window for a couple of seconds. A few seconds later
the main window will pop up and fill the screen of your computer.
Fig. 26: NanoVNA Saver
Connect the NanoVNA with the USB cable to any USB port of the
computer and switch it on. Check the ''Serial port control'' area at the
lower, left corner of the NanoVNA Saver window. It will look like in
figure 27.
Now push ''Rescan'' and the field to the left of the button will be
populated with the port number assigned to the NanoVNA. In my
case, this is Port 4. Push ''Connect to NanoVNA'' to start the
connection.
Fig. 28: NanoVNA connected to NanoVNA Saver
The sweep (e.g. frequency range) control resides in the upper left
corner of the window. Not only can you set the range in many ways
(start/stop, center/span, numbers in Hz or other units), but there is
also the fantastic feature of segmented sweeps. You will record from
earlier chapters, that the NanoVNA firmware sweeps with a fixed set
of 101 points. This can be a major shortcoming when trying to scan a
wide frequency range and still needing high-frequency resolution.
NanoVNA Saver tackles this issue by allowing to cut a sweep into
several segments of 101 points each. Afterward, these segments are
seamlessly put together to give a wider range. The number of
segments used is manually entered in the ''Segments'' field.
The sweep control also offers the ''Sweep settings…'' button for
increased functionality, out of which the possibility to average over
multiple sweeps and eliminate outliers reduces noise significantly.
There is also the possibility to set sweeps for most ham radio bands
with the push of one button.
NanoVNA Saver does not use the firmware calibration sets of the
device. It ignores them. But the software allows superior handling of
multiple calibration sets and enhanced error correction by including
data about the calibration standards, i.e. the S, O, L and T calibrators.
2. NanoVNA-Web-Client
3. NanoVNASharp
5. Serial communication
Now click “Open” and a window for the serial communication pops
up.
Fig. 37: Serial communication window
In each section we describe the DUT and the targeted results first,
before the chosen measurement setup is shown. Finally the results
and insights gained are illustrated by charts and pictures.
1. Loading coil
DUT
Setup
With this connector, the coil will be attached to CH0 via a pigtail
cable with male SMA connectors on both ends. We decide to use the
NanoVNA in conjunction with the NanoVNA Saver software for
superior calibration and the possibility to average over several
sweeps. Accordingly the NanoVNA is hooked up to a laptop PC by
the USB cable.
Fig. 39: Measurement setup
Results
The measured quality chart confirms, that the coil is suitable for
the 40 m band, as its quality peaks around 7 MHz. The right chart
reveals, that the coil is self resonant at about 29 MHz.
DUT
Setup
At 14.3 MHz the insertion loss is 1.77 dB, which is good. And the
impedance of 38.6 – j12.8 Ω leading to a SWR of 1.47, shouldn’t
pose any problem in the receiver where this filter belongs, too.
DUT
Setup
Now we attached the first cable to the CH0 pigtail, using a SMA-
female to BNC-female adapter.
It goes without words, that there are many more use cases, tips
and tricks than a book can realistically cover. Like in most similar
situations, the WWW is your friend here. We specifically invite you to
join the nanovna-users group at groups.io where you will find lively
and supportive discussions.