DL4YHF's Amateur Radio Software:
Audio Spectrum Analyzer
("Spectrum Lab")

Last updated: May 2023.
Current stable version : Spectrum Lab V2.99 b4 (2023-05-23)
Most recent 'beta'     : none

Main Site:

  dl4yhf.ssl7.com/spectra1.html (gone for good?),
  dl4yhf.darc.de/spectra1.html ('backup').

("freenet" site deleted since their hosting service isn't free anymore)

Spectrum Analyzer with Waterfall Display and real-time audio processing

This program started as a simple FFT program running under DOS a long time ago, but it is now a specialized audio analyzer, filter, frequency converter, hum filter, data logger etc (see history). You can download it from this site. Or look into the manual (in HTML format), even though the manual included in the archive will be more up-to-date. Furthermore, the same manual has occasionally been converted into a single PDF (SpecLab_Manual.pdf), but any attempt to create a common index and table of contents for this PDF, using OpenOffice (with proper page numbers instead of the hyperlinks) has failed miserably - see note in the preface of the PDF document.
If you are looking for a short description in German language, look here. The revision history is here. How to use SpecLab with SDR-IQ is described here; how to use SpecLab with PERSEUS (without an annoying virtual audio cable) is here, and how to use SpecLab with software-defined radios supporting ExtIO (instead of a soundcard), like FiFi-SDR, RTL-SDR, FunCube, SDRplay RSP, etc etc, is described here.
If you need help getting the program running, or have questions about a particular function, look into the Spectrum Lab User's forum at groups.io (not at Yahoo anymore)..

SpecLab screenshot

(SpecLab screenshot in "Colour Direction Finder" mode, VLF spectrum, colour~bearing)

Spectrum Lab runs under Windows 98 to Windows 10 (not sure about later versions of Windows, since the author won't use them), and Linux/WINE.


SpecLab component window
(screenshot of "Components" window from an older version)

Features which this analyzer does not have (but others do...):

Some Applications

AMSAT-DL's Earth-Venus-Earth experiment on 2.4 GHz at the Bochum radio telescope

In March 2009, a group of radio amateurs successfully bounced a radio signal off Venus, over a distance of (2*) 45 million kilometers. A short description of the reception technique (software) can be found here; more details are on the AMSAT-DL website, and in the AMSAT journal soon. Thanks to DD5ER, DJ1CR, DJ4ZC, DH2VA, DK8CI, DL1YDD, G3RUH, ON6UG, and everyone else who contributed, for being part of the team.
The configuration used for the (2.4 GHz) EVE test is part of the installation package now (EVE-SDR-IQ-5kHz_2G4.usr); we used the SDR-IQ for this. If you want to try something similar and have a PERSEUS receiver, use EVE-Perseus_2G4.usr instead.

Beacon Logger for DI2AG (July 2005)

How to use Spectrum Lab to produce field strength plots of DI2AG, an experimental medium wave beacon on 440 kHz in southern Germany. It realizes some ideas we spoke about at the Ham Radio fair in Friedrichshafen (June 2005). More info in this document (up to now, in german language only) : Beschreibung des Einsatzes von Spectrum Lab als Bakenlogger für DI2AG. Update 2007: DI2AG has moved to 505 kHz now (which is a new amateur radio band in many countries - with the exception of Germany..).

Hellschreiber Modes in Spectrum Lab (Nov. 2004)

There is a special narrow-band transmission mode in Spectrum Lab's "digimode terminal" called Chirped Hell, based on an idea by Markus, DF6NM. We used it on the amateur longwave band (136 kHz) to make some narrow band transmission. A special property of Markus' Chirped Hell principle is the relatively low crest factor, so it can be used to transmit characters (and even small images) quite effectively, but (unlike sequential multi-tone hell) you need a linear transmitter. An image received on a waterfall in "QRSS 3" mode may look like this:

LowFER Receiver Using a "Software" IF

This article by Lyle Koehler, KØLR, describes a simple "software defined" receiver and some other (easier-to-use) alternatives to SpecLab too. Don't miss Lyle's downconversion circuits which he sucessfully uses to the receive US-American LowFER beacons. The last part describes how to log fieldstrengths of LowFER beacons with Spectrum Lab's plot window.

G7IZU Radio Reflection Detection Page

This nice website by Andy G7IZU monitors Meteor Shower, Aurora Sporadic-E and Solar Flares in real time, mostly using reflections of radio signals in the 50 MHz region.

VE2AZX precise frequency measurements

Jacques, VE2AZX, describes here how Spectrum Lab can be used for precise frequency measurements in the millihertz region. Don't miss his detailed description - it's actually better than SpecLab's built-in help system ;-)

Bat Converter

If you have a suitable soundcard, you can use SpecLab to make ultrasonic bat calls visible and audible in real-time. In the menu, select "Quick Settings".."Natural Radio / Animal Voices" .. "Bat Converter". This configuration requires a soundcard with true 96 kHz sampling rate, and a PC with at least 1.7 GHz. The software shows the call in a fast spectrogram (with high time resolution, but little frequency resolution), and converts the ultrasound down to audio, notches out constant-frequency "carriers" (like your CRT monitor's line sync frequency, which is annoying if it's in the "bat band"), and finally passes the downconverted and filtered signal through an automatic gain control stage.

As a test, I used a cheap miniature electret microphone to make this recording of bat sounds (96 kHz, 16 bit, mono .. right-click to save it). If you play it with a normal audio player, you will hardly hear anything. But if you play it into SpecLab (menu "File".."Audio Files".."Analyze and Play", with the "Bat Converter" setting loaded, you will hear the bat calls. I don't know which species it is yet, but they seem to be quite frequent in this part of Germany.

FFT Filter Plugins

The FFT-based filter in Spectrum Lab is already very versatile, but it can still be extended with a "filter plugin". These plugins come in the form of a special windows DLL which can be loaded from the filter control panel. Such plugins can be written with any C / C++ Compiler (recommended: Borland C++Builder V4 or DevCpp V4.9.9.2; the latter is a free development system based on the GNU / MinGW compiler). To develop your own plugin, download this FFT Filter Plugin package - it contains all required information required to write a filter plugin, and a sample plugin written in the "C" programming language. NOTE: THE DLL INTERFACE IS STILL "SUBJECT TO CHANGE" !

Download Spectrum Lab..

To check if you have the latest version of Spectrum Lab, compare the text in the main window's title bar with the revision number and compilation date at the top of this document. For example, if you have "Spectrum Laboratory V2.2 b1", it is way too old. If you have SL already installed, you can check if it's up-to-date by selecting Help .. Check for Update in the main menu. The primary download site for Spectrum Lab is here:

As an alternative, check the download section on Ko Versteeg's website .

Don't trust any other download site - neither "softpedia", nor "freedownloadmanager", nor anyone else because you never know what those sites did to/with the files. Some of those sites claim they performed an extra 'virus check', but none of those site's owners has ever asked me (the author of Spectrum Lab) for permission to re-distribute or even re-package the installer, so 'by default' I would not trust any of these sites.

The archive includes EXE-file, sample setting files, help system (in HTML format) and a few other goodies, but not utilities below.

Some additional utilities which may be useful:

If you want to write your own program to control Spectrum Lab, read this document which explains how to communicate with it using simple WM_COPYDATA messages (the same data structures are used to exchange audio via UDP or TCP, too).

Download modified 'htdocs' files to use Spectrum Lab like an OpenWebRX server

You don't need this if you don't intend to use SL as 'Web Receiver' (server) !

Since 2020-06, the HTTP server integrated in Spectrum Lab can optionally 'host' a modified variant of HA7ILM's Open Web Receiver, as described in the Spectrum Lab manual. Because the OpenWebRX 'htdocs' folder contains a large bunch of Javascript modules which are not required for normal use, these files are not contained in the Spectrum Lab installer (downloadable from a link in the previous chapter). Instead, if you want to use Spectrum Lab like an OpenWebRX server, get those slightly modified files from here:

In addition to Spectrum Lab itself, the above files (based on the original OpenWebRX 'htdocs' folder) are all you need to get this running. Just unpack these files into a folder of your choice (e.g. "C:\OpenWebRx"), and let Spectrum Lab's HTTP server know where those files are as descibed here. There are no dependencies to install, you neither need Python nor CSDR, since the entire HTTP server is integrated as a C/C++ module in Spectrum Lab. The demodulated audio and waterfall is simply taken from SL itself (or from an IC-7300 / IC-9700's 'Spectrum Scope' display). Thus unlike a multi-channel Kiwi SDR, all clients connected to our server will actually see and hear the same, and only one of the users can control the receiver - if you allow him to. But it's good fun if, during a QSO, you can give the fellow ham the URL (or IP address) of a website where he can listen to his signal in your receiver, or see how crowded the band is on your end (instead of using one of the hundreds of WebSDRs and KiwiSDRs around the globe).

The original OpenWebRX itself was available (*) on Github, see

Also don't miss Andras' BSc thesis about OpenWebRX, which (in 2019) could be downloaded from

The Github repository has been archived by its owner (Andras, HA7ILM), since the original OpenWebRX development has been discontinued in 2019-12-29. There may be forks from the original project still actively developed (the Kiwi Web SDR is also based on it), but I didn't check if those forked HTML- and Javascript modules can also be hosted by Spectrum Lab.

Since the original OpenWebRX was published by HA7ILM under Affero GPL v3 license, the modified files are distributed here under the same license. Unlike the original OpenWebRX license, there is no commercial license available for it (neither for the modified OpenWebRX files nor for Spectrum Lab).

Back to the Software Overview