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

Last updated: January 2006.
Latest Release is Spectrum Lab V2.5 b13 (built 2006-01-07) .

Main Site: http://people.freenet.de/dl4yhf/spectra1.html
Too slow site: www.qsl.net/dl4yhf/spectra1.html
( Caution: severe bandwidth problems at qsl.net;
 and the old site at  AOL  has been removed due to access restrictions )

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 at the bottom of this page). You can download it from this site. Or look into the manual though the manual included in the archive will be more up-to-date. If you are looking for a short description in German language, look here .

SpecLab screenshot

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


SpecLab component window
(screenshot of "Components" window)

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

Some new Applications

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.

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:

If Chirped Hell signals are played much faster than in our experiments, they sound a bit like a melody as in this nonsense-example (you can play it with SL running in "fast morse-tape" mode to decode the HELL characters). Please turn your speaker's volume down before listening to this wonderful music ;-)

Download Spectrum Lab..

The installation package is divided into small pieces because my old internet connection failed quite often. There are several alternative sites with possibly better bandwidth, but not necessarily the latest "beta" version; see below.

For some stupid browsers, you may have to RIGHT-CLICK the following links to the zip-file and then select "save file.." (or similar) from a popup menu.

Because there were severe problems with QSL.NET recently, I had to re-activate my "secondary site".  The revision number and compilation date of the latest Spectrum Lab version can be found at the top of this document. Since October 2005, the primary download site for Spectrum Lab is here (thanks to David Black for hosting it):

An older version may be available from the frenet site below.You won't be able to download SpecLab in a single file because of a 1.5 MB-per-file limit at freenet (like their commercial says in German: "Freenet - normal ist das nicht !"... but this way you can carry SL home from the office on two old-fashioned floppy disks ;-). From the freenet site you can download SpecLab split into two files (you need both of them, and you must unzip both parts in one directory before installing it) :

Note: Forget about the download from QSL.NET : I don't update the files there any longer !

As an alternative, check the download section on Ko Versteeg's website .
How to install SpecLab from these two files is explained here .
The archive includes EXE-file, sample setting files, help system (in HTML format) and a few other goodies.

Some additional utilities which may be useful:

To run some of SpecLab's companion programs (like the RDF calculator, but not for SpecLab itself), you may have to download Borland's VCL40.BPL from this link. It's quite large (1.9 MB unpacked), so I threw it out of the application package. After downloading the file, unzip it and copy VCL40.BPL to your windows system directory (c:\windows\system for example) or into the directory of the application which needs it.
Note: The link may be temporarily unavaible due to cancelled AOL membership !

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.

Incomplete History

There's a lot of other very nice sound analyzers elsewhere, but once upon a time (when there weren't so many out there) I decided to convert my old FFT audio analyzer from DOS to Windows ... see oldest entry in the history below). Some info about the revision history can be found in the file REVISION.TXT after unzipping the downloaded archive.

October: Minor bugfixes.
August: The radio-direction finder can now suppress noise from up to three independent directions, and a new spectrum-event-logging feature was added (right-click into the waterfall to see it).
July: Wrote a highly experimental "output plugin" for Winamp, to feed audio streams from the internet into Spectrum Lab.
June: Some modifications, bugfixes, and a description how to set up SpecLab as a beacon monitor/logger for DI2AG .

January 2004:
Added an optional quadrature output for certain digimodes (QRSS, PSK, MSK) to support a simple, sideband-rejecting RF modulator (using the "phasing method", without the need to build a 90° audio phase shifter which is often the most complicated part of such a transmitter).

December 2004:
Started a few experiments with MSK (minimum shift keying), first using an incoherent demodulator, next step will be a coherent demodulator ("de Buda" or "Massey/Hodgart" for example). The advantage of this modulation technique is, there is no envelope shaping involved, so you don't need a linear transmitter to send it. However it is very questionable if MSK will ever be a popular mode like PSK31 in the amateur radio community. More on this in the manual...
Furthermore: New "conditional action" tab, which is useful for certain applications like counting meteors, etc... ;-)

May-October 2004:
Finally bought an Audigy 2 ZS myself, to play a bit with "true" 96 kHz sampling (for ADC+DAC), and -possibly- with 24 bit resolution. I still don't know why they need 24 bits to achieve an SNR or 108 dB, but that's another story. Futhermore: Automatic gain control in the DSP blackbox, an external trigger for the waterfall, and a few new display units (volts, watts, dBm, dBV). Averaging now calculated on voltages or powers, but now on logarithmic scales (which gave no meaningful "dB"-results). Furthermore: Published the method to control SpecLab from other programs using a simple message-based protocol.

Jan.-Apr. 2004:
Logarithmic frequency scale, modified PSK demodulator, modified noiseblanker, minor bugfixes. Someone reported SMPORT (the port access driver) caused problems under WinXP - effect not reproducable yet !
Got the info that the ADC in my Soundblaster Extigy does NOT support sampling at 96 kHz - I shouldn't have trusted the label on the box :-( ... but help is on the way:  SpecLab works well at 96kHz with the Soundblaster Audigy 2 ZS card - thanks for the report, Arthur.

Nov.-Dec 2003: V2.3
New functions: Filter with FFT convolution, for extra-long FIR filters, denoiser (using spectral subtraction), and a brute-force autonotch for VLF listening. Optional peak-detecting amplitude bar which runs parallel to the spectrogram. New function for SINAD measurements.

October 2003: V2.2
Minor changes and bugfixes. Tolerance range for the soundcard's "calibrated" against the "nominal" sampling rate is now +/- 250Hz (was +/- 100Hz) because some devices seem to run at 5400 Hz instead of 5512 Hz. Azimuth calculation of very weak signals improved. Cursor display now alternatively in menu line, if the controls on left side are invisible.

August-September 2003:
More steps towards a full implementation of DF6NM's Wideband Direction Finder with Colour Encoded Spectrogram Display in Spectrum Lab. For VLF enthusiasts, there is the option "two loops without an E-field antenna" which does not require a broadband 90° combiner. A nulling cardioid can be used to cancel noise from a certain compass direction. The description of an experimental VLF radio direction setup can be found here .

July 2003:
Increased the maximum waterfall scroll/update rate. Up to one pixel strip per millisecond is possible, if your PC is fast enough. Best in "non-scrolling" mode (like in the prepared "Tweek/Sferics" mode).

May 2003:
Minor changes in the "plotter" window, can be scrolled back and forth along the time scale. Used for long-term observations (like the "VLF station plotter" which plots the field strength of a number of european VLF transmitters over time). Added some usr-files for ELF/VLF monitoring.

February - March 2003:
Implemented Paul Nicholson's multi-stage hum filter in SpecLab's DSP blackboxes. This specialized comb filter can remove hum (and harmonics) without seriously degrading the audio quality. The current implementation is based on Paul's "C" sourcecode for Humfilt-1.2, it was available on his website.

December 2002:
Spectrum Analyzer runs in "stereo" mode now. The border around the "Watch List / Plot Window" can be turned off. A lot of internal modifications, may have added more bugs... the programs seems to remain a building site. Many of the new functions are not mentioned in the manual yet !

October 2002:
SpectrumLab now supports 'any possible sampling rate', which was necessary for an external PIC12F675-based A/D converter connected to the serial port (2 channels, 12 bits/sample, 2500 samples/second). Also fixed some bugs in the export function (last definition line was ignored) and the analysis and playback of stereo audio files.

June-July 2002:
SpectrumLab can now use the simple file-based "sound utility" interface described in another document. This makes it easy to write simple drivers in any language for external A/D-converters, etc. Even a BASIC program running in a DOS box should work. And: split frequency axis, effective voltmeter ("veff"-function in the interpreter), improved file analysis features.

September 2000:
Project was renamed to "Spectrum Lab" (or short SpecLab) because the program can do more than just analyze audio input. Meanwhile it can also be used for some 'special' digital communication modes used by radio amateurs on longwave. <part of the history removed, got too long>

Early 2000: Started to convert my old spectrum analyzer for DOS into a windoze program, because the required drivers for soundcard and SVGA card were not available any more. Now the program requires a quite fast PC (a 133-MHz-Pentium or better), crashes under certain conditions (slow CPU), and requires some strange DLLs. The graphics mode should be at least 800*600 pixels with 256 colors (true color required for Colour Direction Finder). The program once ran on an old 90MHz-Pentium with 640*480 pixel display if not too many DSP functions are active on the same time.

Back to the Software Overview