RSP SpectrumAnalyser V1.0 B
RSP SpectrumAnalyser V1.0 B
RSP SpectrumAnalyser V1.0 B
0b
Release notes
Known problems
19 August 2019
RSP-Spectrum Analyser V1.0b
User manual
The analyser requires access to the SDRplay API DLL in order to control the RSP device. The API
is installed as part of the analyer's installation procedure.
Top Panel
The Start button starts the analyser. Some controls will be disabled while the analyser is running.
The Stop button stops the analyser and enables any controls that were disabled while the analyser
was running.
The Save button is used to save the current analyser settings to a custom set-up file. Users may
specify a name for the setting so that multiple set-ups may be saved, and later re-loaded. This button
is disabled when the analyser is running. Settings files are stored in the user's Documents folder
under RSP-Spectrum Analyser/SpecSettings. The folder is created when the analyser is run for
the first time. In addition default settings and current settings files are generated and stored in the
SpecSettings folder.
The Load button is used to load a previously saved set-up. This button is disabled when the
analyser is running.
The Screenshot button allows a screen shot of the main spectrum display be taken at any time by a
single click of the button. The screenshot is saved in bitmap format in the user's Documents folder
under RSP Spectrum Analyser/Screenshots.
Each screenshot is numbered, with the number being incremented with each screenshot taken. The
folder is created automatically when the analyser is run for the first time. The default file name for
screen shots may be changed in the options dialogue box. The start number may also be set in the
options dialogue.
The current screen-shot file name and number are saved in the CurrentSettings file when the
analyser is closed. They are also saved in the user-specified settings file if one has been loaded.
Clicking on the Hide controls button hides all control panels, except for the top bar.
The Options button displays an options dialogue box, and may be used while the analyser is
running.
The About button displays the current version and any additional information.
Input Panel
When the analyser is launched, it attempts to find whatever devices are connected. If none are
found, a message will be displayed. If this happens, check that a device is connect and then re-
launch the analyser.
RSP Select lists the available RSP devices and allows the user to select the device to use. Devices
that are detected, but are in use by another application, including another instance of the spectrum
analyser, will be listed, with the device's name followed by a 'U' to indicate the device is present but
unavailable. The device's serial number is also displayed. Note that the RSP1 does not have an
embedded serial number, it's serial number will displayed as 0000000001. Access to the device
selection list is disabled while the analyser is running.
Antenna selectors Ant A and Ant B, Bias T, and filter selectors BC/FM and DAB will be enabled
or disabled depending on the device selected. Full support is offered for the RSPduo operating as a
single radio. When using an Rspduo, Tuner 1 or Tuner 2 may be selected as required. BC/FM and
DAB filters may be set separately for each tuner. BiasT is available at all times.
dBm Trim may be used to add a fine adjustment to the displayed signal level, in order to
compensate for any small gain differences between devices. The control may also used to
compensate for FFT windowing loss. Refer to the notes on windowing and FFT averaging at the
end of this document.
PPM Trim may be used to correct for any slight frequency differences between radios.
dBm Trim and PPM Trim settings are saved when the analyser is closed, and loaded when the
analyser is launched.
The ADC panel is used to indicate when the ADC is overloaded. Under non-overload conditions,
the panel will be Green. If an overload condition occurs, the panel will turn Red. On wide spans the
ADC panel may flicker between Red and Yellow, this indicates that a previous overload condition
was cleared.
The Cal panel will turn Red if either dBm Trim or Offset dBm is selected and indicates an
uncalibrated condition. LNA gr, System gr and Current gain displays display the current gain
settings.
Span Control Panel
Centre freq is used to set the centre frequency of the current span. There are two ways of entering
or changing the centre frequency.
Place the mouse pointer over the decade you wish to change, The selected decade will be
highlighted. Use the mouse scroll wheel to increase or decrease the decade's value. Blank decades
to the left of the most significant decade may also be highlighted and changed.
Text entry may be carried out by clicking on the decade you wish to change. The selected decade
will be highlighted with a flashing cursor. Type the value required, use the Left and Right arrow
keys to move the cursor if required, use the Up and Down arrow keys to change the selected
decade's value. Press Esc or Enter to exit text edit mode.
If a combination of the selected sweep width and centre frequency results in start frequencies of less
than 0KHz, or end frequencies greater than 2GHz, the centre frequency will be automatically
adjusted to keeps the start or end frequencies within range.
Start–MHz and End–MHz labels display the frequency limits of the currently selected sweep
width in conjunction with the centre frequency. The MHz label will be set to kHz when appropriate.
The Span buttons are used to select the required frequency span in MHz or kHz. At wider spans, the
available ranger of NFFT values may be automatically reduced, and a lower NFFT set. Note that if
switching from a wide span, with a reduced NFFT, to a narrow span, the NFFT value is not
changed. It is up to the user to selected the required value.
For spans greater than 2MHZ, an additional button marked Filter is enabled. This control allows a
limited amount of video filtering on wider spans and is simply the average of the previous and
current sweep results.
The IF-kHz buttons are enabled or disabled depending on the selected span. If Zero IF is selected
then 6 and 8MHz sampling rate options are made available.
The Window drop-down box allows the user to selected the required window that will be applied to
the signal prior to Fourier processing. The default is set to the Blackman window but this may be
changed if required. Users may experiment with the different windows available, but the Blackman
window is suitable for most work. There are subtle differences in the way each window type affects
the displayed signal, particularly at very high FFT resolutions. Refer to notes on windowing loss at
the end of this document.
The NFFT drop-box allows the user to select the number of bins used for the Fourier transform, a
larger number of bins will result in a higher resolution, or narrower bandwidth but may result in a
slower sweep time. Higher resolution is only really required at narrow sweep widths. A higher
number of bins will result in an apparent lowering of the noise floor. Refer to the notes on
windowing and FFT resolution and averaging at the end of this document.
The figure to the right of the Hz/bin label displays the current spectral resolution.
Ref – dBm
Sets the reference level at the top of the display screen.
Range – dBm
Sets the range in dBm from the top to the bottom of the display screen, and in conjunction with the
Offset – dBm control, may be used to provide a level of vertical zoom.
Offset – dBm
Offsets the entire display vertically.
Enable
Toggles the Offset on or off.
The trace enables panel controls the enabling, displaying and holding/pausing of each trace. There
are five available traces. The Main trace has the same properties as any of the the other traces.
Clicking on Main, 1, 2, 3, or 4 will enable the selected trace, and the trace's button will turn green.
When a trace is enable, the Hide and Hold buttons for the selected trace are enabled. Clicking on a
trace enable button when it is already enabled (green) will disable the trace, and the Hide and Hold
buttons.
The Hide button is a toggle action control so clicking it will either hide or show the trace.
Hold is also a toggle control and may be used to either freeze/pause or release the trace.
The Trace select panel is used to set the trace type for the selected trace. Select the required trace by
clicking on Main, 1, 2, 3, or 4. If a trace is not enabled, then the relevant trace select button will be
disabled as well. The trace colour is displayed below each trace if the trace is enabled,
Select the trace type by clicking on Raw, Peak or Avg. If the trace is to be averaged, select the
number of sweeps to average by clicking on the Sweeps combo box. Averaging is not currently
available for frequency spans greater than 2MHz. Note that the displayed value is an average of the
video display and not power based on average voltage.
Markers panel
The marker control panel handles the allocation of four markers A, B, C and D. Each marker may
be allocated to one of the five available traces, provided the trace is enabled. In addition, the panel
controls the peak find functions and marker mathematics.
Enable the markers panel by clicking on Enable, all controls on the panel will be enabled.
Select a marker you wish to allocate by clicking on A, B, C or D, then allocate the selected marker
to a trace by clicking M, 1, 2, 3 or 4. If the selected marker is already allocated to another trace, it
can be re-allocated by clicking on the trace you want to allocate the marker too. Selecting a marker
and allocating it to None will clear the marker's allocated trace. If there is more than one marker on
the screen, the active (selected) marker is drawn as a filled inverted triangle, all others are drawn as
non-filled.
A marker may be positioned by holding the left mouse button down and dragging the marker to the
required frequency. The marker may be set to automatically track the signal amplitude by ensuring
the Float or Track button is clicked so it displays T, clicking the button so it displays F allows the
marker to be placed as a free or floating marker. The marker can be locked to the signal amplitude
at any time by changing the Float/Track mode from F to T.
To move a marker, select the marker using the Marker buttons, and then left-click on the display
screen to drag the selected marker to it's new position.
Up to four markers may be used, there is no limitation on how many markers may be allocated to a
single trace.
Marker maths calculates the difference (delta) between two selected markers. The markers may be
allocated to separate traces. Select the required markers by selecting Mkr 1 and Mkr 2 from the
drop down boxes. Frequency and Level deltas will be displayed.
Note: There is always a floating or free marker on the screen and it tracks with mouse movement.
This marker may be used in calculations and is designated marker F. For quick measurements you
may only need one marker and the F marker.
Peak find
Enab peaks
Enables the peak finder and finds and displays peaks according to the set parameters. Each found
peak is marked with a small circle. If no markers have been enabled, a peak marker (inverted
unfilled triangle) is displayed at the selected peak. The frequency and level of the selected peak is
displayed on this panel. The peak find function may be used without any markers allocated.
First, Prev and Next buttons are used to select the first, previous or next peaks. If a marker is
allocated to the selected trace then the peak marker is not used, the currently selected marker will be
used instead.
Min peak - dB
This control sets the minimum peak height threshold. Note, this is not the peak level relative to the
noise floor, but peak levels relative to adjacent peaks. Reducing the threshold will result in more
peaks being found, but they may be nothing more than noise.
Win width
The peak finder algorithm looks for peaks in a window centred on the frequency being tested. Only
the highest peak in this window is reported. Using a narrower window may help to resolve some
fine peaks.
Min peak – dB and Win width are set to defaults of 10. You may want to change these settings to
suit the signals you are displaying. These settings are not saved at shut-down.
Tracking Generator Panel
The tracking generator system is inactive until an Arduino device running the Trackgen firmware is
detected. On launching the analyser, the software builds a list of available comms ports but does not
display them in the Comms port drop down list. A red square to the right of the drop-box indicates
that Trackgen is not connected.
Click on the Comms port drop-box and select the port that you think the Arduino is connected to. If
the correct port is selected, the square will turn green and the message Trackgen Vn will be
displayed in the text box at the bottom of the panel. If an Arduino is detected but is not running
Trackgen firmware, then nothing will be displayed in the message box and the indicator will remain
Red. There is a time-out of 5 seconds allowed for detection of Trackgen
If Trackgen is detected, a signon message is displayed, showing Trackgen version, Arduino type and
DDS type and the On/Off control is enabled. Note that although the analyser detects Trackgen
firmware, the Trackgen firmware does not detect the presence of a DDS device..
Clicking the Get pins button will display the ports the Arduino is currently using to control the
DDS device. The ports used may be changed using the Options dialogue box, available on the top
panel. The ports are displayed as R:n D:n C:n U:n and S:n, where R is the Reset pin, D is the
Data pin, C is the Clock pin, U is the Update pin and S is the sync output port.
Clicking on the On/Off control to On will start the generator in spot mode and will set the selected
DDS to the spot frequency set in the Spot - MHz box. If Off is selected, the DDS device frequency
is set to 0MHZ, effectively turning the generator off. The On/Off button text displays the current
generator output status.
The Step-MHz control sets the frequency step taken by the DDS when tracking. You may use the
mouse scroll wheel to change frequency. Right-click on this control to set the scroll-wheel
frequency increment. Numeric text may be typed in followed by pressing the Enter key.
The Spot-MHz control sets the spot frequency when in Spot mode. You may use the mouse scroll
wheel to change frequency. Right-click on this control to set the scroll-wheel frequency increment.
Numeric text may be typed in followed by pressing the Enter key.
The Spot mode button sets the generator to spot mode. A single frequency is be generated and may
be varied by using the Spot-Mhz control. The Start sweep button will be disabled.
When Track mode is selected, the generator is set to tracking mode, and the Start button is
enabled. Clicking on the Start button will start the sweep generator. The generator start and end
frequencies are set automatically according the centre frequency and span selected in the frequency
control panel.
Trackgen will ignore frequencies that exceed the maximum output frequency for the selected DDS
device. Frequency limiting does not apply if the device type is set to Custom in the options dialogue
box.
Step time – ms Allows the step time between each frequency step to be set.
Clicking on the Start/Stop button again will stop the sweep and return the generator to spot mode.
Note that a sync pule is output on the Sync port at the start of every seep. The port output goes high
for around 1ms.
Options Dialogue Box
The options dialogue box is displayed by clicking on the Options button on the top control panel. If
Trackgen is connected then the current version number, Arduino type and DDS type are displayed.
If Trackgen is not connected, a not-connected message is displayed instead.
Colours
The user may optionally change the display colours for the traces, markers, graticule and screen
background colours. To edit a colour, click on the colour bar of the item's colour you wish to
change. A standard colour picker dialogue will be displayed, select the colour you want and close
the the dialogue. Colour changes will only take effect once the Apply button is clicked. To change
the colour of the spectrum display screen, click anywhere on the panel containing the colour bars.
When the user clicks on Close, any colour changes are stored and then used as defaults whenever
the analyser is launched. Clicking on the Default colours button will restore the colours to their
default settings.
The Use default settings at start-up allow the user to specify whether the last session settings, or
default start-up settings are loaded when the analyser is started. If this box is checked, at next start-
up the default ini file will be loaded and the box will be cleared.
Users may check the USA Spelling box if they prefer American, rather than European spelling
The Screen-shot file name allows the user to set a default name for screen-shot files. The Current
number box shows the current number append to each screen-shot file. This may be set to whatever
the user requires, and is incremented for each screen-shot.
The DDS type drop-box is used to select which DDS type you are using. Currently only the
AD9850 and the AD9851 are supported by Trackgen firmware. A custom type is also available.
Refer to the Trackgen section for further information regarding DDS types.
The Clock, Data, Update, Reset and Sync drop-boxes allow the user to specify what Arduino I/O
ports are used to control the DDS. If the port numbers are changed, they are sent to the Arduino
when Apply is clicked, and stored in the Arduino's EEProm. Note that the port numbers refer to the
Arduino I/O port pin numbers, and not the device's physical pins.
Clicking on the Set defaults button sets all options to the default values.
Clicking on the Cancel button, discards any changes made and closes the dialogue box.
Arduino Trackgen firmware
Currently the Trackgen firmware is used to control the AD9850 and AD9851 DDS ICs from Analog
Devices. Modules are readily available on Ebay. The firmware for the Arduino is provide in three
hex-format files, one each for the Nano, Uno and Mega-2560 variations.
The Trackgen firmware HEX files can be found in the analyser's install directory. The default install
directory is:
Trackgen may be used independently of the analyser and can provide a simple, but useful signal or
sweep generator. The port edit facility in the options dialogue box will allow you to select whatever
ports are convenient to you. When loaded and run for the first time, the firmware sets default ports
for DDS control. The same port numbers are used for all three processor variations. Alternately, you
can edit the port settings independently of the analyser application using a standard serials comms
application. Note that if connected to the analyser, any changes you make to the port numbers will
be overwritten with those saved in the user settings.
The Trackgen firmware uses a simple ASCII-based command interface. You can use any basic serial
terminal programme such a PuTTY, or the terminal interface included in the Arduino IDE, or
Microsoft’s Visual Studio. Set the Baud rate to 115,200. The commands may be in upper or lower
case and should be terminated with the newline character (ASCII 10 or '\n' ) The commands are as
follows:
The DDS command's maximum frequency is device dependant and will be limited by software. For
the AD9850 this will be 45MHZ, for the AD9851, 90MHz. If the Custom type DDS is selected in
Options, the upper frequency limit is removed.
If you use Microsoft Visual Studio, then a very handy add-on is available from Visual Micro that
allows you to edit, compile and download code to a large range of Arduino systems. The system
integrates nicely with Visual Studio and includes comprehensive library management, as well as a
very handy Arduino reference section that includes documentation for all the available libraries.
I highly recommend Visual Micro as an alternative to the Arduino IDE, particularly if you are
working on a project that requires a Window's application that works in conjunction with an
Arduino board. Microsoft will allow you to download a free copy of Visual Studio's Community
version.
The following are links to where the software mentioned can be downloaded free of charge.
https://www.arduino.cc/
https://www.visualstudio.com/vs/community/
https://www.visualmicro.com/
https://www.putty.org/
For further information on the Analog Devices range of DDS ICs, check:
http://www.analog.com/en/products/rf-microwave/direct-digital-synthesis.html
Noise source and Return Loss bridge
As an alternative to the tracking generator, a wideband noise source may be used, and in many case,
may be the preferred option. Such a device can be obtained quietly cheaply from Ebay, costing
between $10 and $20. It's designed to run at 12 Volts, but does get rather hot. It can be powered
with 7 Volts, where it runs a lot cooler. For convenience, I have run mine as low as 5V, the output is
reduced to around -60dBm, and the broadband frequency distribution is still reasonably flat.
https://www.ebay.com/itm/171709817697
The return loss bridge is similarly available on Ebay for around $10 and is rated from 0.5MHz to
3GHz.
https://www.ebay.com.au/itm/RF-bridge-0-5-3000-MHz-VNA-Return-Loss-VSWR-SWR-
reflection-bridge-antenna/332052527822?hash=item4d4fdf7ace:g:H6IAAOSwnHZYQH0u
The user can refer to the following for an example of how a noise source and bridge may be used.
http://www.sdrplay.com/community/viewtopic.php?f=7&t=1562
Be careful with what you use as a signal source. The front end of the RSP devices can be easily
damaged by using excessive levels of input-power. SDRplay recommends +10dBm for short
periods, with 0dBm for continuous use. This equates to a voltage of 0.707 Volts RMS at +10dBm,
and 223mV RMS at 0dBm. It's far cheaper to buy, or make a simple attenuator, than it is to replace
your RSP device.
You will notice that when using a large number of FFT bins, (set on the frequency control panel),
that the apparent noise floor of the system seems to reduce as the number of FFT bins is increased.
This is due to an effect called FFT gain and does not represent the true noise floor of the system.
FFT gain increases as the resolution is increased by increasing the number of FFT bins used. The
following link gives a good explanation of the effect, and how to correct for it.
https://kluedo.ub.uni-kl.de/frontdoor/index/index/year/2016/docId/4293
In addition, selecting various FFT windows on the same control panel appears to apply varying
levels of attenuation for the same signal level input. This is referred to as windowing loss. Each
type of window, such as Blackman, Hamming, Hanning etc. has a different level of loss associated
with it. Spectral power is not really lost, it is just distributed over several bins. The following link to
an article by National Instruments gives a good overview of windowing in general, and the losses
that might be expected for each window type.
download.ni.com/evaluation/pxi/Understanding%20FFTs%20and%20Windowing.pdf