Librevna Manual
Librevna Manual
Librevna Manual
Contents
1 Overview 3
1.1 USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 External Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 RF ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 LEDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 Reference Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.6 Reference Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Getting started 4
2.1 GUI element types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Common GUI elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.1 Reference Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.2 Device Log Dock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.3 File Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.4 Device Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.5 Window Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1
4 Signal Generator 30
5 Spectrum Analyzer 30
5.1 Acquisition Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.2 Tracking Generator Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6 Graphs 31
6.1 General graph settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.2 Creating and positioning graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.3 Adding and removing traces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
6.4 Smithchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
6.5 XY-plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
6.5.1 Limit lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.6 Waterfall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6.7 Polar Chart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
7 Markers 40
7.1 Creating and deleting markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
7.2 Marker Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7.2.1 Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7.2.2 Maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7.2.3 Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7.2.4 Delta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
7.2.5 Peak Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7.2.6 Lowpass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7.2.7 Highpass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.2.8 Bandpass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.2.9 TOI/IP3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.2.10 Phase noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.2.11 P1dB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.3 Marker Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
7.4 Linking markers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.4.1 Creating a new linked group . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.4.2 Adding a marker to an existing linked group . . . . . . . . . . . . . . . . . 49
7.4.3 Removing a marker from a linked group . . . . . . . . . . . . . . . . . . . 49
8 Compound Device 49
8.1 Creating a compound device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
8.2 Connecting to a compound device . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
8.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
9 Amplitude Calibration 51
9.1 Source Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
9.2 Receiver Calibration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
10 Troubleshooting 53
2
1 Overview
Port 1
LEDs
Ready
Debug
Port1
Port2
Ext. Reference
Source unlocked
LO unlocked
FPGA unlocked
Booting
Power
External Power
(optional)
USB
Port 2 Reference
Output
Reference
Input
1.1 USB
The LibreVNA uses a USB-C connector as the power supply and for data transmission. The hardware
supports the USB power delivery standard1 , requires 5 V and draws up to 1.2 A of current.
The implemented USB device is limited to USB 2.0 Fullspeed and data transmission will work
with any USB 2.0 or 3.0 port (no USB-C required). However, the current consumption exceeds the
specifications for USB 2.0 and 3.0 ports and the LibreVNA may be unable to fully boot when no
external power is applied and the USB host limits the current.
1.3 RF ports
RF connector to connect the DUT. Both ports are identical and the device architecture support full
S-Parameter measurements (S11, S21, S12 and S22).
1
Work in progress, the device will not negotiate USB-PD yet
3
4
! The RF ports have no input protection, do not apply a signal with more than +10 dBm of power.
1.4 LEDs
Ten LEDs indicate the status:
Source unlocked (red) The source PLL failed to lock (it may turn on briefly during a sweep, this
is not a problem)
LO unlocked (red) The 1.LO PLL failed to lock (it may turn on briefly during a sweep, this is not
a problem)
Booting (red) Indicates boot process, also used for error codes
i Due to the high impedance input, the external input may detect a valid signal when picking up
external radiation. If this is a problem, either terminate the reference input connector or disable
automatic reference switching.
2 Getting started
1. Connect the LibreVNA to a computer using the USB port. After a couple of seconds, only the
"Power" and "Ready" LEDs should stay on. If the "Ready" LED does not turn on or the "Booting"
LED indicates an error code, there is a problem und the device will not function properly. See
section 10 for possible solutions.
4
2. Start the PC application to connect to the LibreVNA. The window should look similar to this:
Most entry fields support SI prefixes. To set a new value, type in the number followed by an SI
prefix (e.g. to set 3.2 GHz press 3 , . , 2 , + G ). The accepted prefixes vary depending on
the input (e.g. pico is a valid prefix for a capacitance while it will not be accepted for a frequency).
5
2.2.1 Reference Toolbar
The reference toolbar controls the external reference output as well as the input.
The reference can be set to "Int" (internal TCXO), "Ext" (external 10 MHz signal) or to automatic
mode. In automatic mode, the reference will switch to the external input when a signal is detected,
otherwise it will use the internal TCXO.
The external reference output may either be disabled or set to 10 MHz or 100 MHz.
4
! If any part of the setup references another file (i.e. a trace imported from a touchstone file), only
the filename is saved. Opening a setup file after moving/deleting any of the referenced files will
result in missing data.
6
• Manual Control: Starts the manual control dialog in which all hardware settings are accessible
(mostly used for testing purposes):
• Firmware Update: Load a new microcontroller firmware and FPGA configuration into the
LibreVNA. Do not disconnect power while updating the firmware!
7
in the four S-parameters S11 and S21 (when the source signal is routed to port 1) as well as S12 and
S22 (when it is routed to port 2).
VNA Hardware
Calibration
De-embedding
individual S parameters
Traces
imported files CSV/Touchstone export
Math
Graphs
The central element of the signal flow is the concept of traces. A trace is created from a single S
parameter across frequency (either measured by the LibreVNA or imported from an external file).
Once the data is captured in a trace, optional math operations may be applied to it (e.g. performing a
TDR to transform the data into the time domain) and the result of these operations are passed on to
the graphs.
When capturing data from the LibreVNA, additional operations take place before the data is fed
to the traces. First, the LibreVNA measures the four S parameters between its two ports. The raw
measurements are transferred through USB. The first processing block is the calibration (see also
section 3.5), followed by optional de-embedding procedures. After the de-embedding, the four S
parameters are split into individual S parameters and the relevant traces are updated.
This concept has several consequences when using the LibreVNA, some of which are:
• You can always take calibration measurements. No matter how the de-embedding or math
operations in the traces are set up, they will never influence the calibration routine
• A valid calibration is required before using de-embedding options (otherwise, most de-embedding
options won’t be able to work properly)
• Applying a calibration or de-embedding to traces imported from files is not possible
• Once the data arrives in the traces, the S parameters are no longer associated (e.g. there is no
connection between S11 and S21 anymore. It is possible to "pause" the trace capturing S11 while
S21 continues to get updated)
8
3.2 Sweep Toolbar
This toolbar sets the swept frequency range.
The start/stop and center frequency as well as the span can be set directly.
Additionally, the sweep toolbar contains buttons for zooming in/out around the center frequency
and a preset to set the sweep to the full frequency range.
• Level: The amount of power used for stimulus generation. The dynamic range decreases when
using smaller values. It is recommended to use the highest available settings when measuring
passive networks. When measuring active devices (e.g. amplifiers), decrease the stimulus power in
such a way that the input power into any port does not rise above −10 dBm to stay within the
linear range of the LibreVNA.
• Points: Amount of measurement points in one sweep. More points provide finer frequency
resolution but also increase sweep time.
• IF BW: Bandwidth of final IF measurement. Low bandwidths increase the sweep time but improve
the noisefloor. At higher frequencies (roughly above 3 GHz), the dynamic range is limited by
the isolation between the ports and decreasing the IF bandwidth does not improve the noisefloor
anymore.
• Averaging: Moving average across multiple sweeps.
3.4 Traces
Adding/configuring traces is handled by the Trace Dock (by default on the left side):
The list shows all available traces, by default the four S parameters S11, S12, S21 and S22. Different
icons in front of the trace names indicate the state of the trace. Clicking on one of the icons toggles
the state:
• / : Enable/disable global visibility: Shows/hides the trace an all graphs it is enabled on.
• / : Play/pause. Only available when the trace is fed from live VNA data, not when it was created
from a touchstone file. Pausing a trace freezes the current data, new measurements from the
LibreVNA will not update the trace.
• M/ M: Enable/disable math. Only available if at least one math operation is present.
Creating a new trace or double clicking on an existing trace opens the "edit trace" window:
9
On the left side, additional trace parameters can be changed, while the right side of the window
handles math operations that will be applied to the trace data. The available trace parameters are:
• Name
• Color
• Velocity factor (only relevant when transforming into the time domain)
• Data source (Live Capture/From File/From Math)
The trace is constantly updated by the data received from a connected and sweeping LibreVNA.
Available settings are the S parameter from which the data is updated and a simple Max Hold and
Min Hold function (based on signal magnitude).
10
3.4.1.2 From File
The trace data is extracted from a specified file. If the file contains data for multiple traces, the correct
parameter must be specified as well.
4
! When saving a setup with traces created from files, the actual trace data is not saved. Instead,
the path to the source file is added to the setup file. Opening the created setup file will result in
empty traces if the original source file is no longer present.
i This section is about creating a trace based on data from other traces and combining them with
math operations. If you are looking to change or transform the trace data itself without using
any data from other traces, see section 3.4.2.
11
The trace is created from other traces and user-defined math operations. To create a trace from math,
perform the following steps:
1. Select "From Math" as the trace source
2. Check all traces on which the trace should depend. Not all traces can be used, there are the
following limitations:
• All used traces must have the same output domain
• There can be no circular dependencies between "From Math" traces
3. (Optional) Change the variable name for the selected traces
4. Enter the formula using the chosen variables
i This section is about transforming the already acquired trace data. If you are looking to create a
trace by combining data from other traces and math operations, see section 3.4.1.3.
The "math operations" section on the right contains the additional calculations that are performed
on the trace data before it is displayed. Initially, it contains only one line (representing the measured
data). New operations can be created using the buttons on the right. Each math operation adds a
new line to the list, consisting of three columns:
• Status: Visual indication whether the calculation succeeded. On warnings or errors, a mouse-over
text gives a hint about the problem.
• Description: Short description of the configured math operation. Double clicking will open an
(operation dependent) editing dialog providing more details.
• Output Domain: Domain (Time or Frequency) of the data after this math operation. Certain
math operations can only be applied to time domain data, others only to frequency domain data.
The output domain at the last line decides in which domain the trace is displayed on the graphs.
Populated with several math operations, the window could look like this:
12
3.4.2.1 Median Filter
The median filter filters values across frequency (or power or time, depending on acquisition settings
and previous math operations). For every point in a trace it takes the point and several surrounding
points, sorts them and uses the middle point of the sorted list as the filtered value. It is a great option
to get rid of fixed spikes (e.g. due to LO feedthrough or unwanted external signals). In comparison,
the averaging function from the toolbar will smooth captured traces over time but is not able to
remove static spikes.
Adjustable settings:
• Kernel size: Number of sample points that are used for the sorted list
• Sorting method: As most input values are complex, there are different options to sort the values:
– Absolute Value
– Phase
– Real part
– Imaginary part
3.4.2.2 TDR
The TDR takes frequency domain data and transforms it into time domain data. The number of
output samples as well as the time span is determined by the number of input samples and the selected
13
frequency span.
Adjustable settings:
• Mode: A TDR can be performed in two different modes:
– Lowpass: Input samples should start at near DC, i.e. the start frequency must be small compared
to the span. A step response can be calculated as the DC point can be extrapolated.
– Bandpass: Input samples may use any frequency and span. Only an impulse response can be
calculated as the DC point is unknown.
• Compute Step Response: Enable calculation of step response as well (only available in lowpass
mode)
• DC point: Chose between extrapolating the DC point from frequency data or specifying it
manually (only available in lowpass mode)
• Window: A window is applied before performing the transformation. Available windows are:
– Rectangular
– Gaussion
– Hann
– Hamming
– Blackman
3.4.2.3 DFT
The DFT is the inverse operation to the TDR and is used to transform time domain data back into
the frequency domain.
Adjustable settings:
• DC frequency: Depending on the original source data of the input time domain data, it may have
been calculated from a frequency range that does not start at DC. Transforming the time domain
data back into the frequency domain will result in frequency data at and around DC. This setting
allows to move the transformed frequency data to the correct frequency.
14
– Automatic: The DC frequency is determined automatically by looking at the last TDR operation
that resulted in the time domain data and extracting the correct frequency from that. Usually,
this results in the correct frequencies.
– Automatic: If for any reason a different frequency range must be used, the actual frequency of
the DC bin can be specified manually.
• Window: A window is applied before performing the transformation. Available windows are:
– Rectangular
– Gaussion
– Hann
– Hamming
– Blackman
The custom expression allows user-specific calculations on the trace data. It can only use a single
data point as the input value. Access to other data points (e.g. at a lower/higher frequency or from
an earlier sweep) is not possible. Custom expressions can work with input data of any domain and
result in output data of the same domain. Depending on the input data domain, different variables
are available and shown in the dialog.
If the expression contains syntax errors, check the mouse-over text in the status column of the
trace edit dialog.
15
3.4.2.5 Time Gate
The time gate allows filtering data in the time domain. It can either be used as a bandpass (only
passing time domain data within a specified window) or as a bandstop (blocking time domain data
in a specified window). The displayed graph allows for easier adjustments. The green trace is the
time domain input data and is updated live. The red line is the currently selected gate filter.
The gate filter can be adjusted by manually specifying the start/stop or center/span times. As an
alternative, the filter edges can also be moved on the graph with the mouse. Adjustable settings:
• Window: The window function influences the filters pass- and stopband. The filter is constructed
by first calculating the ideal filter coefficients in the frequency domain. Afterward, the coefficients
are windowed to limit spectral leakage and finally transformed into the time domain (which is
displayed in the graph).
– Rectangular
– Gaussion
– Hann
– Hamming
– Blackman
3.5 Calibration
This section is about the VNA calibration which is used to remove the effect of connectors and cables
(as well as imperfections from the LibreVNA itself ). For the amplitude calibration see section 9.
Some general knowledge about the different calibration types is assumed, this manual only
explains how to use them with the LibreVNA.
3.5.1 Introduction
This section contains some implementation details of the calibration. It can be skipped but under-
standing them can be helpful when using the calibration.
Section 3.5 uses the following definitions:
• Calibration standard: A single calibration standard (e.g. an Open standard). Most standards can
either be defined by coefficients or a measurement file.
• Calibration kit: It contains the definition of the calibration standards. When the calibration error
terms are calculated, these definitions are taken into account.
• Measurement: Raw (uncorrected) measurement of a calibration standard. Depending on the type
of desired calibration, different measurements are required.
• Calibration type: The calibration type determines which errors are corrected by the calibration
and how the error terms are derived from the measurements.
The calibration type is followed by the ports for which the calibration corrects errors. For example,
when using a SOLT calibration on ports 1 and 2, the calibration type will be shown as "SOLT_12".
16
For the most accurate results, the calibration should be performed with the same settings (span,
number of points, stimulus level, ...) as the intended measurement. However, it is possible to change
these settings after the calibration. The calibration will be interpolated when a different span is used.
3.5.2 Types
Several different calibration types are available:
17
The three text fields (Manufacturer, Serial number and Description) are meant for easy identifi-
cation of the correct calibration kit. None of the contents are used anywhere by the GUI and the
user is free to enter any text.
Calibration standards can be added, deleted and sorted with the buttons to the right of the
calibration standard list. Double-click a standard to edit its definition.
The Open standard can either be defined by its coefficients or by a touchstone measurement file. If
defined by a touchstone file, the file limits the span of the calibration for which the standard can be
used.
Coefficients:
• Z0: Impedance of the transmission line from the reference plane to the open termination
• Offset delay: One-way length of the transmission line
• Offset loss: Loss/attenuation of the transmission line
• C0–C3: Parasitic capacitance of the open termination
18
3.5.3.2 Short Standard
The Short standard can either be defined by its coefficients or by a touchstone measurement file. If
defined by a touchstone file, the file limits the span of the calibration for which the standard can be
used.
Coefficients:
• Z0: Impedance of the transmission line from the reference plane to the short termination
• Offset delay: One-way length of the transmission line
• Offset loss: Loss/attenuation of the transmission line
• L0–L3: Parasitic inductance of the short termination
19
3.5.3.3 Load Standard
The Load standard can either be defined by its coefficients or by a touchstone measurement file. If
defined by a touchstone file, the file limits the span of the calibration for which the standard can be
used.
Coefficients:
• Resistance: Resistance of the termination resistor
• Z0: Impedance of the transmission line from the reference plane to the termination resistor
• Offset delay: One-way length of the transmission line
• Offset loss: Loss/attenuation of the transmission line
• Parallel C: Parasitic capacitance in parallel to the termination resistor
• Series L: Parasitic inductance in series to the termination resistor
• Load Parameter Model: Two different Load models are implemented, with the order of the
parasitic elements swapped:
– Series L first:
Z0 Series L
P arallel C Resistance
– Shunt C first:
20
Z0 Series L
P arallel C Resistance
The Reflect standard doesn’t have any coefficients as it is an unknown standard. The only available
choice is whether it is assumed to be a short or an open.
The Through standard can either be defined by its coefficients or by a touchstone measurement file.
If defined by a touchstone file, the file limits the span of the calibration for which the standard can be
used.
Coefficients:
• Z0: Characterisitc impedance of the Through standard (fixed to 50 Ω for now)
• Delay: One-way length of the transmission line
• Loss: Loss/attenuation of the transmission line
21
3.5.3.6 Line Standard
The Line standard is an unknown standard and is not accurately defined by coefficients. The only
parameter is its delay to determine the usable span when using this standard in a TLR calibration.
The delay mustn’t be specified with high accuracy either.
3.5.4 Measurements
The calibration measurements can be found in Calibration Calibration Measurements . Initially, the list
is empty. Measurements can be added and removed with the buttons on the right of the list. For
convenience, the required measurements for common calibrations can also be created automatically
(select the desired calibration type from the drop-down list on the top).
22
3.5.4.2 Short Measurement
• No settings available
23
3.5.4.9 Taking measurements
To take a measurement, select the corresponding measurement and press Measure . Multiple measure-
ments may be taken at the same time if they use different ports.
i All measurements required by a calibration type should have the same start and stop frequencies
as well as number of points. Do not change the span between measurements.
3.5.6 Saving/Loading
Once a calibration is active, it can be saved by selecting Calibration Save . All raw measurements are
saved together with the calibration type and the calibration kit.
Similarly, a saved calibration can be opened by selecting Calibration Load . It is applied immediately
after opening.
2
https://github.com/jankae/LibreCAL
24
4
! The electronic calibration will delete and replace any currently active calibration and also the
calibration kit standards. Please store any unsaved calibration data before starting the electronic
calibration.
25
3.6 De-embedding
The de-embedding options are available under Tools De-embedding . The GUI works similar to the
math operations for traces (see section 3.4.2) but the de-embedding is performed before the data
reaches the traces (compare with section 3.1).
Just like with the math operations, a list shows the de-embedding options. Once a new option
is added (or is double clicked) a window opens which allows to configure the option. Depending
on the de-embedding option, there might be some user adjustable parameters (e.g. the length and
attenuation of a port extension) or the option needs a measurement from the LibreVNA to calculate
the de-embedding parameters (e.g. take a measurement to automatically measure the port extension
length). If a measurement is required at any point, a new window opens with two choices to provide
the measurement data:
The first possibility is to click the measure button (with the LibreVNA connected) which starts a new
measurement. The LibreVNA connections must have been setup properly before (e.g. in the case of
the port extension: extension cable connected and terminated either into an open or short. The exact
26
setup depends on the de-embedding option). The other possibilty is to provide the measurement by
using traces. This is useful if the same measurement has already been taken but the physical setup has
changed since then. Select the correct traces for all required S parameters and click the "OK" button.
The port extension allows moving the reference plane relative to the plane used during the calibration.
The port extension is defined by two characteristics:
• Distance/Time: The one-way distance or time the reference plane will be moved. Setting either
parameter will automatically calculate the other by using the velocity factor.
• Loss: The additional loss introduced by the physical component that caused the reference plane to
move. It is further split into two parameters:
– at DC: One-way loss at 0 Hz
– at a specific frequency: One-way loss at a chosen frequency, typically higher than the DC loss
All these parameters can also be calculated automatically by measuring the port extension with
either an open or short connected instead of the DUT.
If a port extension is required at multiple ports, add this option once for each port.
27
3.6.2 Two Thru
The two thru option is an advanced de-embedding option for when there are additional fixtures
between the reference plane and the DUT that can’t be easily calibrated out by either a SOLT
calibration or a port extension. The are a few prerequisites for using this option:
• The LibreVNA must be calibrated at a reference place which does not include the fixtures
• The fixtures (everything between the reference plane and the DUT) must be identical for both
ports
• It must be possible to connect the fixtures directly to each other as well as directly to the DUT
28
3.6.3 Matching Network
The matching network allows the user to (de-)embed lumped components and arbitrary transmission
lines between the DUT and a measurement port.
Available components are:
• Series R/L/C: Lumped component in series between the port and the DUT
• Parallel R/L/C: Lumped component from the signal path to GND
• Defined Through: Any two-port network as defined by a touchstone file
Any combination of these components can be dragged into the signal path between the port of
theLibreVNA and the DUT.
Further settings:
• Operation: Chose between embedding and de-embedding
• Port: Port of the LibreVNA
If a matching network is required at multiple ports, add this option once for each port.
29
4 Signal Generator
In the signal generator mode, measurements are stopped and the LibreVNA only outputs a CW
signal.
The hardware is not optimized for signal generation which means that the output level is not very
accurate, especially at higher frequencies (also see section 9). Also, the signal will contain higher
levels of harmonics than one would normally expect from a signal generator.
5 Spectrum Analyzer
Although the LibreVNA hardware is not designed to be used as a spectrum analyzer, the general
hardware architecture of a spectrum analyzer is similar enough to that of a VNA to implement basic
two-channel spectrum measurements. This is in no way on the same performance level as a dedicated
spectrum analyzer but for simple measurements it might suffice if no other equipment is available.
The main differences to a real spectrum analyzer are:
• No input attenuator or pre-amplifier: This means that the measurement range is essentially
fixed to approximately −110 dBm to −10 dBm.
• No amplitude calibration: The displayed signal level is not very accurate, especially at higher
frequencies (also see section 9).
• No image rejection filters: This is probably the most severe limitation, because it means that for
every real signal several other signals will show up in the spectrum that are not actually present at
the input. Most of the images can be filtered out by signal identification but some will remain (at
lower amplitude) in the reported data.
• Highest resolution bandwidth is quite low: The sweep speed is too slow to cover the complete
frequency range of 1 MHz to 6 GHz in an acceptable time.
Most control elements (Frequencies, Span, Traces, Marker, ...) are indentical to the vector
network analyzer mode.
• RBW: Resolution bandwidth. Lower values allow differentiating between signals at closer fre-
quencies. Lower values also result in a reduced noisefloor but significantly increase sweep time.
For low RBWs, a faster DFT acquisition method is available. Instead of tuning the LOs to look at
each frequency point by itself, several points can be measured at once by performing a DFT of the
final IF. Due to limitations in the hardware and the available processing power, the DFT is limited
to 96 points and can only cover up to 30 kHz at a time. Whether the DFT is used (and at which
RBWs) can be selected in Window Preferences
• Window: Window type used in the DFT of the final IF. If in doubt, use Flat Top.
• Detector: For every displayed point, several measurements are taken. The detector type determines
which one of these measurement will be displayed:
30
Detector Displayed data
+Peak Highest amplitude
-Peak Lowest amplitude
Sample Only uses the middle measurement
Normal Highest amplitude on odd points, lowest amplitude on even points
Average Average all measurements for each point
• Signal ID: Signal identification. This can help to determine whether a displayed signal is actually
present or the result from internal imaging. When enabled, the LibreVNA changes the LO
frequencies for every measurement point and observes how the final IF signal is affected by that.
This removes almost all of the mirror images but at the cost of increased sweep time.
The following example shows the effect of signal ID. For both measurements the only signal at the
input was a 1 GHz tone with a level of −10 dBm. On the left, signal ID is turned off, resulting in a
lot of extra tones. On the right, signal ID has removed most of these tones:
A tracking generator at either port is available in the spectum analyzer. If the tracking generator
is active at a port, measurements from that port are still available but meaningless. The tracking
generator also includes an optional frequency offset. To get accurate results, a Source/Receiver
Calibration (section 9) should have been performed when using the tracking generator.
DFT acquisition is not available when the tracking generator is active. Also, due to hardware
limitations, the tracking generator is unable to reach every frequency exactly. For narrow spans
this could result in "drops" in the spectrum where the signal of the tracking generator is outside of
the RBW filters passband. The frequency resolution is frequency dependent. A warning message
appears if this could be a problem with the selected span and stop frequency.
6 Graphs
In VNA and spectrum analyzer mode, the trace data in displayed on graphs. Several different graph
types are available and most can be customized as well.
31
Most of the settings are related to graph colors and sizes, allowing adjustments to personal preferences
and different monitor resolutions.
Each graph type also has some specific settings. They can be reached by right-clicking on an
existing graph and selecting Setup... or Axis Setup... .
32
i For a quick enlarged view of a graph, double-click it. The graph will take up the whole tile
area. Another double-click returns the graph to its original size.
6.4 Smithchart
The smithchart is the default graph for reflection measurements (S11, S22,...). Adding through
measurements (S12, S21,...) is not possible.
There are a few smithchart specific settings in the setup dialog:
33
The left side of the dialog contains settings on how data is displayed:
• Display mode (Frequency) There are three options on how much of a trace is visible in the
frequency range:
– Limit to current span Shows all traces only in the frequency range of the currently selected
span, even when the trace contains data outside of the span
– Show complete traces Always shows the complete trace, regardless of the selected span
– Manual frequency range Allows selection of an abitrary frequency range to display
• Display mode (Impedance) There are two options on how much of a trace impedance is visible:
– Limit to visible are Clips the trace data at the edge of the smithchart circle
– Show complete traces Always shows the complete trace, even when the trace data falls outside
of the smithchart circle
• Zoom Allows to change the center position and zoom factor of the smithchart. Zooming is also
possible by using the mousewheel on the graph
The right side of the dialog allows the user to add lines of constant values to the smithchart for a
quick visual comparisation of trace data to these values. Four types of lines are available:
• Constant VSWR
• Constant resistance
• Constant reactance
• Constant Q
For each line, the color and constant value must be manually selected.
34
6.5 XY-plot
The XY-plot is the most versatile graph. It can display every trace type if configured correctly. The
XY-plot consists of up to three axes:
• X-axis Always present
• Primary Y-axis Optional, on the left side of the graph
• Secondary Y-axis Optional, on the right side of the graph
Different types can be used for the X-axis and the selected type must match the output domain of all
displayed traces. Available types are:
Different types are also available for the Y-axes. The Y-axis type determines how the trace data
is plotted on the graph. The underlying trace data is not affected by the Y-axis type, the graph itself
performs the required calculations to display the correct data. Available types are:
35
Y-axis type Description
Disabled No Y-axis displayed
Magnitude Magnitude in dB (or dBm in spectrum analyzer mode)
Magnitude (dBuV) Magnitude in dBuV
Magnitude (linear) Magnitude of the complex S-parameter
Phase Phase in degrees, confined to ±180°
Unwrapped phase Unwrapped phase in degrees
VSWR Standing wave ratio
Real Real part of the complex S-parameter
Imaginary Imaginary part of the complex S-paramter
Series Resistance Real part of the impedance from a reflection measurement
Reactance Imaginary part of the impedance from a reflection measurement
Capacitance Extracted capacitance from a reflection measurement
Inductance Extracted inductance from a reflection measurement
Quality Facotr Quality Factor of the impedance from a reflection measurement
Group Delay Group Delay of a transmission measurement
Impulse Response (real) Real part of the impulse response from a TDR
Impulse Response (magnitude) Magnitude of the impulse response from a TDR
Step Response Step response from a TDR
Impedance Impedance as calculated from the step response from a TDR
Not every Y-axis type can be combined with every X-axis type. The possible combinations are:
In VNA mode:
X-axis Y-axis
Magnitude
Magnitude (linear)
Phase
Unwrapped Phase
VSWR
Frequency Real
Power Imaginary
Time (Zerospan) Series Resistance
Reactance
Capacitance
Inductance
Quality Factor
Group Delay
Magnitude
Time Impulse Response (real)
Distance Impulse Response (Magnitude)
Step Response
Impedance
X-axis Y-axis
Magnitude
Frequency
Magnitude (dBuV)
The axes types can be selected in the setup dialog for the XY-plot:
36
For every axis, the displayed range can either be determined automatically or manually. Additionally,
the X-axis can be displayed either in linear or logarithmic mode. Logarithmic mode for the Y-axes
is not supported yet.
Limit lines can be added and removed in the bottom part of the Axis Setup Dialog. Each line is a list
of manually defined points, a selectable color and can be configured either as a high limit, low limit
or just as a constant line without any limit checking:
37
6.6 Waterfall
The waterfall graph can display the amplitude trend of a single trace over multiple sweeps. Its specific
settings are mostly a subset of the XY-plot, the Y-axis configuration is almost identical.
38
• Direction: Determines whether the waterfall graph is filled from the top or bottom
• Pixels per line: Provides a simple vertical zoom feature
• Mode: Determines whether sweep data that doesn’t fit onto the graph anymore is kept or deleted
(a resize of the graph would reveal kept data)
• Number of sweeps: The maximum number of sweeps kept if mode is set to "Keep offscreen data"
• Alignment: The waterfall can be aligned to a XY-plot of equal size and peaks in the trace data of
both plots will line up.
4
! Both plots are still completely independent of each other. For the alignment to work, they
must have the same width and one must be placed exactly below the other.
The Polar Chart looks similar to the smithchart but doesn’t perform the transformation from S-
paramter to impedance. Furthermore, through measurements can be displayed as well. The available
settings are identical to the smithchart but the Polar Chart does not support adding custom constant
lines:
39
7 Markers
Markers provide an easy read-out of trace data at specific points. Each marker is assigned to one
trace and will show up on any graph that show the trace at the marker position.
Some general marker settings are available in the preferences:
• Show data on graphs: Marker data (X-coordinate, trace value) will be shown by default to the
right of any graph the marker is visible on
• Show data in all available formats: All available formats for the marker data will be shown by
default
• Positioning: When moving markers by hand, the can either snap to the individual trace points
or be interpolated along the plotted trace
• Sort order on graphs: Defines the order of marker data to the right of a graph
• Symbol style: Various symbol styles for drawing markers on the graphs are available
40
Example of a marker with all data formats shown:
41
• Selecting the marker in the marker dock and either pressing DEL or using the "Delete marker"
button
7.2.1 Manual
This is the default marker type. It can be positioned at any position by the user and will never move
on its own.
7.2.2 Maximum
The marker snaps to the maximum amplitude of the assigned trace (within the limits of the "restrict"
column).
7.2.3 Minimum
The marker snaps to the minimum amplitude of the assigned trace (within the limits of the "restrict"
column).
7.2.4 Delta
The delta marker can be positioned by the user. It will show the trace data relative to its assigned
reference marker. The reference marker is selected by its marker number in the "type" column.
42
7.2.5 Peak Table
The peak table lists all peaks in the signal above a specified signal level. It will create a helper marker
for each peak. The peak threshold level can be adjusted in the "settings" column.
7.2.6 Lowpass
43
The lowpass marker determines the cutoff frequency of a lowpass filter. At first the filter attenuation is
calculated by finding the maximum signal amplitude. Afterward, the cutoff frequency is determined
by finding the frequency at which the signal level has dropped by a specified amount. The threshold
for this signal level drop can be adjusted in the "settings" column.
This marker type is only available for through measurements.
7.2.7 Highpass
The highpass marker determines the cutoff frequency of a highpass filter. At first the filter attenuation
is calculated by finding the maximum signal amplitude. Afterward, the cutoff frequency is determined
by finding the frequency at which the signal level has dropped by a specified amount. The threshold
for this signal level drop can be adjusted in the "settings" column.
This marker type is only available for through measurements.
7.2.8 Bandpass
44
The bandpass marker determines the center frequency and bandwidth of a highpass filter. At first
the filter attenuation is calculated by finding the maximum signal amplitude. Afterward, the cutoff
frequency in each direction is determined by finding the frequency at which the signal level has
dropped by a specified amount. The threshold for this signal level drop can be adjusted in the
"settings" column. Finally, the center frequency is set to the middle of the higher and lower cutoff
frequency.
This marker type is only available for through measurements.
7.2.9 TOI/IP3
This marker type calculated the third-order intercept point. It is only available in spectrum analyzer
mode. Initially a peak search is executed to find the two highest peaks. The frequencies of the
intermodulation products are calculated from these peak frequencies and helper markers placed on
each of these frequencies. Finally, the third-order intercept point as well as the tone and distortion
signal amplitudes are calculated.
45
7.2.10 Phase noise
This marker type calculates the phase noise of a signal. Is is only available in spectrum analyzer mode.
Initially a peak search is executed to determine the signal frequency. Afterwards, a helper marker
is placed at a specified offset. The offset can be configured in the "settings" column. By using the
signal amplitudes from the peak and the offset marker, the phase noise is calculated.
7.2.11 P1dB
This marker type is only available for through measurements on power sweeps. It calculates the 1dB
compression point of amplifiers.
46
7.3 Marker Data
The trace data at the marker position can be displayed in the marker dock and on the graphs in
various formats. The available formats depend on the marker type as well as the domain of the trace
data. Only one of the available formats can be displayed in the marker dock at a time. On graphs,
any amount of formats can be displayed at once. The shown formats can be selected in the context
menu of the marker.
47
Trace domain Marker type Available data formats
dB
Manual
Time Real/Imaginary
Delta
Impedance (if step response available)
Manual dBm
Delta dBuV
Time (zero span)
Maximum Noise
in SA mode
Minimum
Peak Table
dB
dB + angle
Manual Real/Imaginary
Delta Impedance
Time (zero span)
Maximum VSWR
in VNA mode
Minimum Series Resistance Only for reflection
Manual dBm
Delta dBuV
Maximum Noise
Minimum
Frequency Peak Table
in SA mode Phase Noise
Phase Noise
dB
third-order intercept
TOI/IP3 Average tone level
Average modulation product level
dB
dB + angle
Manual Real/Imaginary
Delta Impedance
Maximum VSWR
Minimum Series Resistance Only for reflection
Frequency
Peak Table Capacitance measurements
in VNA mode
Inductance
Quality factor
48
7.4 Linking markers
Normally, markers can be moved individually and are only connected to one trace. This creates a
problem when reading out trace data from multiple traces at the same position. If the position is
changed, all markers need to be moved manually to the new position. Linked markers provide a
solution to this problem: All markers within a linked group always use the same position. If one
marker is moved, the others move as well. The linked group of each marker is indicated in the
marker dock (empty if the marker does not belong to any linked group.
Only markers that are movable can be added to linked groups. If a marker type performs
automatic positioning of the marker (e.g. the maximum marker type), it can not be added.
8 Compound Device
The LibreVNA supports combining multiple hardware units to a "Compound Device". When used,
the configured physical LibreVNAs are combined into a virtual device with more ports. When
connected to such a device, additional measurement paramaters are available (e.g. measuring S23 in
VNA mode or port 3 in spectrumanalyzer mode).
4
! When connected to a compound device and in VNA mode, there is no phase information for
through measurements between different physical devices. This is a hardware limitation and
the phase is set to zero in the software. Through measurements within a physical device and all
reflection measurements retain their phase information.
49
Create and remove compound devices with the buttons on the right. Edit an existing compound
device by double-clicking it:
50
• At most four physical devices can be combined with a maximum of eight virtual ports
4. Assign the serialnumbers for each physical device. Serialnumbers for all currently connected
devices are available as suggestions but it is also possible to enter a different serialnumber manually
5. Assign the virtual ports of the compound device:
• Each port number must appear only once
• Port numbers must start with port 1
• Port numbers must be consecutive, e.g. port 1,2 and 4 is not allowed because port 3 is missing
• Physical ports may be left unused
i Through measurements between physical devices depend on precise matching of the stimulus
frequency. Depending on the accuracy of the internal frequency source and the selected IF
bandwidth, the stimulus signal from the generating device may fall outside of the IF bandwidth
of the receiving device, resulting in a reported lower amplitude than actually present. Either
align both internal oscillators precisely with the frequency calibration or (recommended) switch
to using the external reference input when using a compound device.
8.3 Limitations
Certain features are not available when connected to a compound device. To use them, disconnect
from the compound device and connect directly to the individual physical devices:
• Firmware update
• Manual control
• Source calibration
• Receiver calibration
• Frequency calibration
9 Amplitude Calibration
This section is about calibrating the source output level and spectrum analyzer level. It does not affect
VNA measurements at all. For the VNA calibration, see section 3.5.
Both the internal signal source and the receiver paths used in the generator or spectrum analyzer
mode have no means of ensuring accurate amplitudes (as imperfections are removed by the VNA
calibration, the hardware is not optimized for absolute amplitude accuracy). In order to improve
the accuracy of both the generator and the spectrum analyzer (especially with enabled tracking
generator), frequency dependent amplitude calibrations are available. They are permanently stored
in the device and are only required to be performed once. The Source Calibration corrects the
ouput of the (tracking) generator, while the Receiver Calibration corrects the measurement of the
spectrum analyzer.
For both calibrations, other test equipment is required, ideally covering the whole range of 1 MHz
to 6 GHz (a calibration of only the partial frequeny range is also possible but signals/measurements
outside the calibrated range will be inaccurate). The Soure Calibration requires a way to measure
the output of the LibreVNA (e.g. a spectrum analyzer or power meter), the Receiver Calibration
requires a signal source (e.g. a signal generator). Once either calibration has been completed, the
LibreVNA can also infer the other one with reasonable accuracy.
51
9.1 Source Calibration
Select Device Source Calibration . A window showing the current source calibration opens:
52
itself to determine the coefficients of the Source Calibration.
10 Troubleshooting
If there was an error in the boot process, the "Booting" LED will blink an error code repeatedly:
Error
Meaning Possible solution
Code
1 Failed to detect FLASH memory Hardware failure, check soldering
2 Invalid FLASH content Perform firmware update
3 Failed to configure FPGA Check FPGA bitstream generator settings
Verify that FPGA bitstream and uC
4 Hardware initialization failed
firmware are created from the same release
53