Short-Wave Radio: A Radio Bandscope Applet

Front panel image of the radio bandscope applet by Robert John Morton, which ran live in the old Java capable browsers.

[To run this program, please see the end of this page.]

This applet gives a general view of signal activity over a selected portion of the radio spectrum. It is not for serious point-to-point or 'net' communications work. The graph area shows the strengths of signals (vertical scale) found across the fre­quency range (horizontal scale).

If you are using Microsoft Windows and a Security Warning box pops up saying that the application has been blocked from running because it is "untrusted" please click here. If you get a warning message with Linux, please click here.

The frequency scale below the axis is in megahertz (MHz). The vertical axis gives the signal strength. This is numbered in what are known as S-units. Communica­tions receiver S-meters (signal strength meters) are normally graduated from 0 to 9, with a few further graduations given in decibels (dB) above S9. For simplicity, the scale on this graph merely extends up to S12. The signal strength values are arranged so that S0 (S-zero) is the band's ambient noise level.

Using The Mouse

As you sweep the mouse pointer around within the graph area, the frequency at the mouse pointer (in MHz) appears as a figure at the top of the applet panel on the left. The signal strength of the actual signal present at the mouse pointer is shown on the thermometer-style S-meter (signal strength meter) at the left of the graph. If you click the left mouse button on a particular signal shown on the graph, the applet can send a command to your receiver to monitor (listen in on) that frequency. That frequency then appears at the top-centre of the applet panel, pre­fixed with the words "Listening on:".

The + − Buttons

The + and − buttons (at the right and left of the graph area respectively) allow you to 'inch' the "listening on" frequency up and down one pixel-width at a time. The actual frequency step depends on the frequency scaling that applies to the band concerned. To tune your receiver more accurately than this — e.g. to maximise the intelligibility of an SSB signal — it is assumed that you can adjust directly the car­rier insertion frequency on your receiver.

Band Selection

The normal intended use of this applet is to monitor (or participate in) activity on one of the established selectable bands. First select the type of band you want from the Select Band Type Choice menu on the right. The Select Band Choice menu be­low it will then contain the names of all the available bands of that type. Now select the particular band you want to monitor from the Select Band Choice menu. Once you have done this, the following happens:

  1. The appropriate band span and centre frequency are selected and the appropriate frequency scale is drawn along the bottom of the graph.

  2. The appropriate bandscope data file is loaded from the web server and displayed on the graph.

You now see the signals present on that band at the time the latest bandscope data file for this band was generated. You can now click on to any signal in order to listen in.

Centre Frequency + Span

If you want to sample a part of the spectrum which is not one of the pre-selectable bands, first select the frequency span you want from the drop-down menu at the top centre of the applet above the graph area. Then enter the centre-frequency of the area of the radio spectrum you want to map. It must contain a decimal point and one decimal digit (which may be a zero). The frequency you enter may be auto­matically truncated to a value that fits in with the steps used in the currently selec­ted frequency span. If you enter a frequency that makes the minimum frequ­ency too low, the program sets the centre frequency to the minimum permitted for the currently selected frequency span. This will be a little over half the currently selec­ted frequency span. Then press the Update Now button to scope the data.

Signal Data Updates

Whether you are using a pre-selectable band or a manually selected frequency range, the date and time the current data file was generated is shown along the bottom of the applet panel. Pressing the Update Now button (bottom right of applet panel) causes a command to be sent to the receiver (if it is currently active) to re-scope the band concerned. The age of the current data is shown just above the Update Now button. This will only work if an appropriate receiver is on and being sampled by the bandscope server program, which in turn is feeding updated files to the web server.

The Update trace... Choice menu allows you to select the frequency with which the bandscope data is refreshed. Again, this will only work if an appropriate receiver is on and being sampled by the bandscope server program, which in turn is feeding updated files to the web server.

Current Implementation

On this web demonstration version of the applet, access to my bandscope server is not implemented, so you cannot pull new live scan data from your browser. Never­theless, all the source code of the applet and its servers is viewable. Consequently, you can adapt the code of my bandscope server to suite your receiver.

Currently, I have written a bandscope server and scan data interpreter only for the AR8600 scanner. If you wish to write equivalent modules for your model of scan­ner, they could be integrated with the applet and placed on the Receiver model's Choice menu.

Following is a list of the Java classes that make up this bandscope applet:

NOTE: I've lost the source code for the AR86000 server. Frustrating! This converses with the receiver's RS232 port. It allows the applet to set scan ranges, request and receive scan data and otherwise control the receiver remotely. Since all receivers now use USB connections, I hope, one day, to write a new server using USB.


To run this program, you need Java installed on your computer. Create a new folder in a convenient place. Download the file bandscope.jar. Move it to your new folder. Unzip the jar file. [A 'jar' file is merely a 'zip' file with a '.jar' extension.] Open a ter­minal. Change directory to your new folder. Enter the command: java bandscope.

Mainstream warnings notwithstanding, this program will neither blow up your com­puter nor wreak any other kind of fanciful mischief. It simply draws an image and writes data on your screen. In the good old days this program simply ran em­bed­ded within the web page where its static image is now displayed. The embedded applet still runs in pre-2017 versions of browsers with Java 1.6 installed and the Web Start version still runs in pre-2019 versions of browsers with Java 1.8 installed. To read the rancid history of this sad retrogression in Web functionality, please click here. [Back to top.]


©Nov 2001, April 2012 Robert John Morton.