SETI League Technical Manual -- Software
Readme File: Hamview 2.05
By Alberto di Bene, I2PHD (dibene @ usa.net)
and Vittorio de Tomasi IK2CZL (ik2czl @ amsat.org)
WHAT IS HAMVIEW ?
To say it in a few words, HAMVIEW is a program that:
The program was especially developed for radio amateurs interested into all
these communication techniques where signals very close to (or more often below)
the receiver noise floor are used, like EME, VLF, and so on.
However we believe that Hamview will be of value also for HF and VHF CW lovers
(try it... we never found a point-and-click CW filter on a commercial receiver!!!),
and so on.
- gets an audio signal either from a Sound Blaster(TM) compatible card or from a .wav file
- performs a windowed spectral analysis on the incoming signal
- display the signal spectrum on the video screen using a carefully matched color scheme
- performs some enhancement on the signal using signal processing methods
- plays the filtered signal at the output of the audio card
- and last but not least, all these goodies are done in real time! (well, to be honest with about one second of delay from the input to the output, due to the data windows used for signal analysis and processing).
All the hardware needed is:
The program was developed in an effort to improve the capabilities of amateur
radio communications using the power of digital signal processing, and is
Check the Hamview web page ( http://www.freeyellow.com/members/padan ) for
If you find some interest in the program, please send an E-mail or a QSL
to one of the authors, saying (if possible):
- a Pentium computer with MS-DOS or PC-DOS 6.xx or greater (a W95 DOS box is OK)
- a Creative SB16 sound card or better. Compatible cards should work, provided that 100% hardware compatibility is assured, and the card is full-duplex compatible.
This information will not be delivered to anybody, and will not be used for
They will be treated according to current laws for privacy, and have the sole purpose
of helping us
to improve the next version of Hamview.
- where you discovered this program
- how did you use it
- if it was of some use to you
- what kind of computer and operating system you use
- what addition would you like to see in the next version of Hamview
To run HAMVIEW, you need the following:
Almost all the video cards on the market today meet those requirements
(what?!? Are you still
using an HGC card ?!?). HAMVIEW supports all three resolutions, but, of
the best quality is reached when working at 1024 x 768.
- A Pentium CPU (minimum 90 MHz). The program has been tested also with a 100 MHz DX2 486 CPU. It runs, but the percentage of CPU used is dangerously near to 100%, with all the filters off.
- Native DOS or a full-screen DOS session of Win 95.
- A Sound Blaster 16 card. A fully compatible card can also be used, but the compatibility must be at the hardware level. This means that if you need to load drivers to achieve such compatibility, this card won't work with HAMVIEW. The SB AWE-32 and AWE-64 cards are hardware compatible with the SB 16. The sound card must have both the DMA channels defined, and they must not use the same number. If you use Win 95, this can be checked by opening ControlPanel->System->HardwareSettings and verifying which resources the sound card is using. Both DMA channels must be present, with the second DMA channel set either to 5, 6 or 7. If using native DOS, if your card is *not* PnP (Plug-and-Play), just check if the jumpers are set correctly. If your card is PnP, as probably will be, you must use a PnP Configuration Manager to set the card. If you have an original Creative Labs, this Configuration Manager should have been installed by the card setup procedure. If not, consult the documentation for the card.
- A SVGA video card capable of at least one of the following video modes:
- 640 x 480 x 256 colors (8-bit mode)
- 800 x 600 x 256 colors (8-bit mode)
- 1024 x 768 x 256 colors (8-bit mode)
Connect the input audio to the line-input jack of the sound card. Don't use
the microphone input, HAMVIEW disables it to prevent stray ambient noise
pick-ups. If you want to hear the filtered audio you need of course at least
one speaker connected to the sound card output (left or right it doesn't matter,
the same signal is routed to both channels).
To invoke HAMVIEW use the following syntax:
HAMVIEW [filename] [-v0 | -v1 | -v2]
The program searches the current directory for a file named HAMVIEW.INI which
is used to set the station coordinates, in order to have a correct display of
the moon azimuth and elevation (this program is especially targeted to EME users).
If the file is not present, a default one is generated, with the station
coordinates of I2PHD. If you need to have the moon data displayed correctly,
you can change it with a standard text editor. The format is self-explanatory.
- filename, if present, indicates the name of the file to be used for the playback mode. If absent, real-time mode is assumed.
- -v0 sets the resolution at 640 x 480 x 256
- -v1 sets the resolution at 800 x 600 x 256
- -v2 sets the resolution at 1024 x 768 x 256 (this is the default)
Upon starting, you will be presented with the program main (and only) screen.
The vertical axis is the frequency scale. The program's range is from 20 Hz
to 4000 Hz. Only a part of this range can be shown on the screen. You can
scroll up and down with the PgUp and PgDown keys. Near the bottom-left corner
there is an input level indicator. Adjust the input level to keep the level in the
green part, with only occasional excursions in the red zone.
The mouse pointer (a small cross) can be moved, and the frequency corresponding
to its vertical position is displayed on the status line.
On the extreme left part of the screen a real-time spectrum-analyzer-like display is
updated every half second.
On the central part of the screen a moving bar will paint behind itself the
color corresponding to the magnitude of each frequency bin. The higher the
amplitude of the incoming signal at a given frequency, the brighter the color of the
Each point corresponds to a bandwidth of 2 Hz, and the bar moves with steps of half
These values are the consequence of the sampling rate chosen (8192 samples/sec),
and the buffer size (two flip-flop buffers, 4096 entries each).
On the right part of the screen there are 9 mouse-selectable large buttons, used
to set or reset various functions or parameters. Their color toggles from
Red (function active) to Green (function not active) when single-clicked.
From the top:
When the program runs, the following keys are active:
- ESTIMATOR selectable from Blackmann/Tukey or FFT. Default Blackmann/Tukey. This selects which kind of spectral estimator the program must use. BT gives a better signal-to-noise ratio, but has the tendency to mask very weak signals when more than a signal is present. FFT is the usual Fourier Transform estimator.
- SMOOTH computes a moving average of the spectrum. Default OFF. Can be used to smooth out the noise. Integration time is four seconds
- SCALE can be set to LOG or LIN. Default is LOG. Selects whether the mapping between magnitude and colors is linear or logarithmic. LOG works best with the Blackmann/Tukey estimator. The program has an interlock such that when you select the FFT estimator, the scale is also changed to LIN, if not already set.
- DENOISER selects the LMS denoiser. Default OFF. The LMS denoiser is of the Widrow type, and works best when the signal amplitude is above a given minimum level.
- BANDPASS selects the FIR bandpass filter. Defaults to OFF. This filter has very steep skirts and a flat passband. This passband is indicated by a red portion on the moving bar. To set the low cut and high cut frequencies, use the mouse. The left button sets the low cut, and the right one the high cut. This can be done only when the CW filter is not active.
- FILTER activates the CW filter. Its center frequency is indicated by a yellow spot on the moving bar. This frequency can be set with the left mouse button. Its value is saved b program, and recalled when the program is restarted.
- TRACK -selects the automatic tracking of both the bandpass and the CW filter. The filters are automatically centered on the strongest signal. It is suggested to disable this feature as soon as the desired center frequency is acquired, to avoid having the filters jumping back and forth, when the signal-to-noise ratio is very low. Default OFF.
- MARKER when ON, the moving bar leaves tiny marks behind itself spaced 100 Hz. Default OFF.
- GAIN sets the mapping gain between signal magnitude and color. Default HIGH. When receiving CW signals strong enough to be normally heard, as is the case on the HF bands, the best results can be obtained by setting the gain to LOW.
All of the mouse-selectable buttons can also be toggled by typing the first
letter of the command itself (i.e. 'E' for Estimator, 'F' for Filter), with
the exception of Scale, which is toggled with the 'L' key. Case is immaterial.
- R recording. Activates the recording of the incoming audio into the file RECORD.WAV - If pressed again, the recording pauses until a new pressure. The file RECORD.WAV, if present, is overwritten upon the first pressure on the 'R' key. When rerecording after a pause, the file is appended.
- ESC terminates the program, after resetting the sound card mixer to the state found at program initialization.
The status line reports the percentage of CPU used by the program. As an
example, with a 225 MHz Pentium this value ranges between 14.4 % with all
the functions off and 23.6 % with all the functions on.
For EME operations, a real time clock shows to the operator the two minute
periods used for trasmission exchange between east and west stations.
To properly set the clock, you must set the environmental variable "TZ",
using the DOS command:
SET TZ=< string >
This string is composed of:
Here is an example for Italy, where local time is GMT-1
three characters denoting the name of the time zone (i.e. GMT, CET, PST, and so on),
- a number showing the difference between GMT and local time
- an optional string denoting that daylight saving time is currently used.
and if we are in daylight saving time this becomes
Remember: the only important parts of the variable are the number giving the
difference between GMT and local time, and the daylight-saving-time indicator!
Every two minutes you will notice that the clock background changes, and a letter
"E" or "W" close to the clock reminds the operator which period ("east" or
"west") is current. Over the spectrum display the same color is used to trace
a thin line, to ease the identification of the stations.
Any remarks, suggestions, praises, complaints, whatever you may have on this
program are welcome. Please feel free to contact the authors at the email
Here they are.
The authors will not be liable for any direct, indirect, consequential or
incidental damages to other pieces of software, equipment, goods,
or persons, arising from the use of this software.
The authors are not liable for any possible illegal use of this software,
and for any other act arising from the results obtained from the software.
Although the use of the software HAMVIEW is free for the purposes
described in the present document, it is *not* a public domain software.
The authors retain the full copyright on the software binaries, the source
code, and the user interface.
HAMVIEW is a Copyrighted property of:
Alberto di Bene, I2PHD dibene @ usa.net
via Albignano 28
I-24040 Casirate d'Adda (BG)
Vittorio De Tomasi, IK2CZL ik2czl @ amsat.org
Via Melzi d'Eril 10
The use of this software is free for hobby and research purposes.
If used for commercial or industrial purposes, you must obtain a licence agreement
from the authors.
The program can be freely distributed, provided that you don't charge money for
except for the cost of the transfer media, and that this text document is distributed
The commercial distribution of the software without the permission of the authors is
Thanks to Ethan Brodsky for his full duplex Sound Blaster routine.