Using Spectrum Lab with PERSEUS

PERSEUS is a direct sampling, software defined receiver covering 10 kHz to 30 MHz (or, without preselector, to 40 MHz). Technical details about PERSEUS are on the Microtelecom website .  

Since March 2008, Spectrum Lab directly supports this radio, based on the SDRDK (Software Defined Radio Development Kit), (c) Microtelecom s.r.l., Pavia di Udine, Italy . So thanks to IV3NWV, you don't need a bandwidth-limiting "virtual audio cable" between the original Perseus software and Spectrum Lab.


To use Spectrum Lab with PERSEUS, you will need a PERSEUS interface DLL and a few other files installed on your system. But if you have a PERSEUS connected to your PC, you will most likely already have the software which you receive with the radio (by Microtelecom) installed. If not done yet, it is highly recommended that you use the latest (WinUSB-based) drivers, which are available on the Micotelecom website (see link at the top of this document).

As an alternative to the built-in support for Perseus in Spectrum Lab, you may be better off with a Winrad-compatible ExtIO-DLL (especially with future windows versions, because SL's author is sick of microsoft re-inventing the wheel at an ever-growing pace).

Setting the path to the Perseus interface DLL and FPGA files

Due to the ever-changing default directory in which applications are installed, it's a daunting task to find out where the Perseus interface DLL ("perseususb.dll") and the FPGA files are located. For example, on a Windows 8.1 machine (64 bit), Spectrum Lab could successfully load "perseususb.dll" but that interface DLL was unable to load the FPGA files. If that also happens on your machine (which is quite likely..), fill out the 'FPGA path' on the 'Config' tab of Spectrum Lab's Perseus control panel:

Updated info about how to use Spectrum Lab with Perseus (2014, 2016)

On a Windows 7 / 64 bit machine, Perseus could be convinced to work directly with Spectrum Lab as follows (in short form):
Keep fingers crossed, hopefully Spectrum Lab will be able to locate the interface DLL ("perseususb.dll"), load it, initialize it, and tell it to load the FPGA pattern into the radio.
You can see from where the DLL was loaded in Spectrum Lab's Error History:
In SL's main menu, select 'View/Windows' .. 'Error History'.
Example, copied from the Error History:
22:34:47 Loaded Perseus-DLL from "c:\cbproj\SpecLab\perseususb.dll".
  Perseus DLL version      : 3.5 .
  Microtelecom product code: 0x8014
  Perseus serial number    : 00117-511B-CA81-0113
  Hardware version/revision: 1.0
22:34:51 Successfully downloaded Perseus FPGA, bitstream nr. 0 .

You can later select a different FPGA pattern (with a different sampling rate) as explained in one of the next chapters.

Outdated info from OLDER Spectrum Lab versions
    - only use this method if everything else failed !

For various reasons, the files required to operate PERSEUS from SpecLab are not part of the installation archive. Download them from Microtelecom, or copy them from the CDROM which you received with the hardware. A list of the files which had to be copied into the Spectrum Lab directory was in this readme-file . As a bare minimum, the files perseususb.dll and all *.sbs files had to be copied into the same directory where Spectrum Lab (the executable) was installed. Again, those files were not, and will never be, part of the Spectrum Lab installer.
(Since 2016-05, don't copy those files into the SL folder anymore.
Instead, let Spectrum Lab know where those files are as explained here)

After the Perseus USB driver was installed, and all necessary files were copied / extracted, Spectrum Lab could talk "directly" to the radio.
Because the USB connection to the radio can only be occupied by ONE application at a time, it was impossible to let Spectrum Lab and the original Perseus software running side-by-side.

To select PERSEUS for input (instead of the soundcard), open the "audio settings" tab in SL's configuration, and select "PERSEUS" in the list of "Audio Input Devices".
Note: SL doesn't check if the radio is really connected to the USB port in advance !

Alternatively, you can select one of the preconfigured PERSEUS settings in SpecLab (this is easier than configuring everything yourself):

In this configuration, SL acts as a back-end for a software defined radio, including waterfall display and audio output (through the soundcard). How to set the receiver frequency is explained in the next chapters of this document. How to adjust the audio filter is explained in another document... but in short form, there are a few diamond-shaped controls on the frequency scale, which you can move around to change the audio bandwidth (for SSB and CW), the audio center frequency ("pitch"), and the RF center frequency ("VFO") within the current IF bandwidth.

SDR Control / Configuration Panel

Note: This chapter only applies to the native support for Perseus !
If you use the ExtIO-DLL for Perseus instead, you will see a completely different, and much larger control panel which is built inside the ExtIO-DLL.

To open the following control panel for the PERSEUS, select View/Windows / SDR Control Panel in SL's main menu:

SDR VFO tab / main control panel

screenshot SDR control panel

Note: The control panel may look a bit different, because there are different radios, too ;-)

You can modify the radio's NCO (numeric controlled oscillator) in the "VFO" field. Either type the number, or click on one of the digits to place the cursor there. You can then increment / decrement the frequency with the cursor up/down keys, or with the mouse wheel (unlike SpectraVue, just pointing the mouse above the edit field isn't sufficient ! ).
The RF gain combo changes the preamp gain / attenuator. Some less frequently used settings (which are specific to the radio) must be set on the "cfg"-tab (config):

SDR Config tab

The radio's IF bandwidth (and, at the same time, the sampling rate) can be set on the "CFG" (config) tab of this control panel :

SDR config tab


Other options on the SDR configuration tab are:

Because the output sampling rates of PERSEUS are not integer multiples of the soundcard's standard sampling rates (like 11025, 22050, or 44100 Hz), you need Spectrum Lab's output resampling function if you want to send the (demodulated) signal to the audio output of the soundcard.

See also:
  Selecting an Audio Input Device in Spectrum Lab (SDR, soundcard, or similar hardware)
  Audio via COM port (serial port, from external A/D converter)
  Using Spectrum Lab with SDR-IQ
  Using Spectrum Lab with FiFi-SDR
  Using Spectrum Lab with a Winrad-compatible ExtIO-DLL for input