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

Last updated: October 31, 2001.
Latest Release is Spectrum Lab V1.67 beta X .

Main Site: www.qsl.net/dl4yhf
Mirror: members.aol.com/dl4yhf

Spectrum Analyzer with Waterfall Display and other features

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, 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.

(screenshot with Loran noise at 0.03Hz resolution, with alert function "visualized")

Features

  • Selectable and adjustable waterfall color palette allows you to change the contrast of the waterfall display during and after receiving spectrum lines ("contrast" & "brightness" - sliders)
  • Visible frequency range adjustable during analysis, the old part of the waterfall display will automatically be re-drawn without stopping to record..
  • Waterfall display may run from top to bottom, or from right to left (good for HELL modes)
  • Frequency scale may be mirrored for LSB receivers (Lower Side Band)
  • File logging and file analysis with WAVE files ( with 'replay' and 'loop' option)
  • Periodic or scheduled actions, for example to capture the screen as BMP or JPEG file
  • Audio sample rates from 8000 to 44100 (or 48000) samples per second
  • 16-bit ADC resolution giving about 90dB of input range (plus additional FFT gain!)
  • Frequency resolution in the sub-milliHertz range (exceeding the stability of the clock crystal of most soundcards).
  • FFT output is buffered in an array of adjustable size enabling "long-term" observations (with "scroll-back-in-time" while analysis continues)
  • Signal generator with
    - three independent function generators from 0.1 Hz to 20000.0 Hz in 0.1Hz-steps with optional AM or FM modulation, output level from -150 to +10dB (0dB=clipping point), waveforms selectable for sine, rectangle, triangle, sawtooth.
    - noise generator with variable output level, for measuring filter responses
  • Audio filter with user-defineable coefficients plus FIR- or IIR-filter designers (up to 128th-order filters). But still waiting for user-friendly "bandwidth" and "center frequency" controls if used as a bandpass filter....
  • Analyzer, generator etc can either be connected to the soundcard's input or the filter's output. This allows testing filter algorithms: feed a filter with noise, and observe its output with the spectrum analyzer
  • A simple frequency converter can be used to shift low "IF"-frequencies (like 17.2 kHz) to good audible tones (like 650 Hz) in real-time. You can use this as 'soft-RX' for VLF !
  • Waterfall images can now be saved automatically by a programmable timer for "long-term" or "late-night" recording (tnx Petr, OK1FIG for the good idea from his EasyGram).
  • Decoder for several time-code transmitters: MSF(60kHz), HBG(75kHz) and DCF77 (77.5kHz) can now be used to set your PC clock to a high accuracy (implemented since SpecLab V1.5, December 2000). All you need is your longwave receiver and the soundcard.
  • Modulator and decoder for some 'experimental' digital communication modes like PSK31 and other phase-shift keying modes (BPSK, QPSK, different pulse shaping methods), transmission and reception of letters with a small 'terminal' window.
    A DLL interface is available to use Spectrum Lab for new digital transmission modes (but not in use yet).
  • Fast waterfall with up to 200 waterfall lines per second, making it possible to decode even fast Morse code by eye (though it wasn't intended for that, it's fun to watch)
  • versatile export function (text-file based, for post-processing with Excel etc.). Brian, CT1DRP has used the export functions to create nice spectrum graphs of the 136kHz band.


(screenshot of "Components" window)



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

  • Due to its 'Laboratory' nature, this analyzer is not as easy to use as ARGO (by I2PHD and IK2CZL, it is available on Alberto's homepage: www.weaksignals.com ).
  • This analyzer does not support 8-bit-sampling and multi-channel ('stereo') analysis like SPECTROGRAM (by R.S. Horne, www.monumental.com/rshorne/gram.html ).

Not yet included but coming soon one fine day ;-)...

  • a possibility to change the soundcard's mixer settings from the program (without the need to fool around with the control program supplied with your soundcard)
  • a user-friendly interface to generate your own DSP-filter

Still interested in this program ?

Note: I had to move some "large" archives to a new site, so don't be surprised that you receive the archive from AOL instead of QSL.NET !

Download the  "Spectrum Lab" installation archive from the 1st site

About 1MB zipped installation archive. Includes EXE-file, sample filters, help system (now HTML format) and a few other 'goodies', but requires Borlands VCL40.BPL which is not included here because it is too large. See below !

Download the "Spectrum Lab" installation archive from the 2nd site

If this archive doesn't exist, there is no new beta release. Try the link above instead. Because I sometimes have problems to upload the files, I swap between two sites. So you will always have at least one working download link. If you are familiar with FTP, look at both sites to find out which is the newer one !

Download Borland's VCL40.BPL if you don't already have it !

This DLL is quite large (1.9 MB unpacked), so I decided to throw it out of my other archives. The archive only contains Borland's VCL40.BPL which you may possibly need (if you don't already have it on your PC) ! If not, download it, extract 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.

Download some C++Builder source files (but not the project file and "forms")

(for programmers and very curious people who want to know how it works,
but you will need Borland's C++Builder Version 4 to compile the sources. However you can look at the sources with any text editor. Most of the "interesting" algorithms are separated from the windoze stuff so you may even be able to adapt them for other programming languages. This archive may not be up-to-date, so if you are really interested in the latest source codes, ask me for an update !)

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 DOS-based FFT audio analyzer to Windows, because the required DOS drivers for soundcard and SVGA card were not available any more. So the good old stable DOS-program was re-written to run under Win95. Now the program requires a quite fast PC (a 133-MHz-Pentium or better), crashes under certain conditions (slow CPU), requires some DLL's which I do not know but it runs on almost any PC with Win95 and a 16-bit soundcard. The graphics mode should be at least 800*600 pixels with 256 colors, but the program also worked on an old 90MHz-Pentium with 640*480 pixel display.

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.

May 2001:
Some low-bandwidth HELL modes implemented but not finished yet.
Extended logging features and a numerical interpreter with functions to calculate noise level, average, peaks, etc. User defineable menus to switch between configuration 'profiles'.

June 2001:
Improved frequency converter (better sideband rejection) for the "software VLF radio".

August 2001, V1.66:
JPEG image supported, plus 48kHz sample rate which is possible on some cards (increases the upper range for the "software VLF radio" to 24kHz.

October 2001, V1.67:
Implemented a simple "real-time plotter" so you can see graphs of analyzed data without using a spreadsheet program.
Some programs compiled with C++ Builder V4 which use Yariv Kaplan's WinIO.DLL don't run properly under Win XP (they seem to crash on EXIT). Because I will not switch to Win XP for several reasons, it will take a long time to fix this. Use Win98 whenever possible !

 Back to the Software Overview