WA7KGX VLF Monitoring

Signals in the 10 to 30 KHz range are used to send information and commands
to submerged submarines worldwide.
Most of these VLF stations transmit nearly continuously at constant power.
Sudden changes in signal propagation may indicate interesting solar events,
or even a strong gamma ray burst.

In the 1970s I monitored a single station using a tuned L/C circuit, amplifier and detector driving a paper chart recorder.
This used expensive paper and the ink made a mess. The time was not recorded
unless I wrote it on the paper.

The setup described here uses a single Linux machine
to monitor eight (8) frequencies
simultaneously using software DSP.
In Oregon signals can be received from the American east coast
to the Australian west coast.
This doubles the amount of time a daylight propagation path is available
for monitoring.
The redundancy allows observation to continue when one of the stations
is off the air or at low power.
The redundancy makes it easier to spot anomalies
related to a particular station's
operating conditions as opposed to a solar event.

Antennas for VLF monitoring can be monopole E-field,
dipole E-field, and H-field (loop).
For best reception, the antenna should be far away from anything
electrical.
But even with a 700 foot lead-in under the Multnomah Channel,
excessive noise was transmitted on the coax shield
from the receiving installation
to a monopole E-field antenna where it was amplified by its preamp
and returned to the receiver.
A dipole E-field antenna or H-field antenna suppresses noise
carried to the antenna on the coax shield.

For casual experimenting, just throw some wire around and you should be able
to pick up a nearby signal or two.

In my current installation,
two loops are strung between convenient pairs of trees a dozen or so feet apart.
Generally speaking, increasing the sice of a loop and the number of turns
will make the loop more sensitive.
My loops are about 20 feet from the house. Placing them farther away will reduce
interference from switching power supplies,
CFLs, and the lot.

The big loop has about 20 turns or wire between two trees about 12 feet apart
along an east-west line.
The top and bottom are about 5 feet apart, covering an area of some 240 square feet.
This loop favors NWC in Australia and is used for most signals.
The other loop runs north and south and has several turns; it favors NLK which is due north.
A two conductor shielded cable is used for lead-in. One end of each
loop is connected to the shield.
The loop's low impedance tends to short out local noise impressed on the shield.
However, an exercise treadmill puts out enough hash to obliterate all signals including local AM radio stations.

No preamp is used with the ASUS soundcard. A simple circuit consisting
of a series 56 Ohm resistor, .01 mf cap, and back to back diodes parallel to the
input protects the audio input from moderate voltage spikes.
The VLF signals are in the high audio range (if you are a bat),
and an Asus Xonar sound card does a good job of digitizing the entire
10 to 45 KHz signal spectrum.

The signals are processed
by Gnuradio (grc) running under Fedora Linux.
Xlinrad may be used to scan the spectrum for signals when data is not being taken.

I recommend downloading the current sources for Gnuradio from the
project as the Gnuradio shipped with the typical Linux distribution
is out of date.

The "audio source" is connected to bandpass filters with a decimation of 100.
The decimation reduces the CPU load.
The filters' outputs are connected to an RMS converter,
then to a low pass filter with a further decimation of 10,
and finally a file sink.

The input signal is also connected to a graphical FFT sink.

GRC won't execute if the FFT sink is removed.
The FFT size and frequency can be increased but doing so will
dramatically increase CPU utilization.

This application appears to take about 5 per cent of a mid-level
modern CPU (Core Duo E6550)
according to the Linux top(1) display.
Since this was written, the system has been upgraded to a 4 core CPU and 32GB RAM.
The minimum requirement for this application is an audio
line input with a sampling
frequency of 96 KHz.
A 192 KHz a/d is better yet, even if the top speed is unused.
A good choice seems to be the Asus Xonar sound board.
I am using the cheapest $86 PCI/e 1x version.

Excellent results have also been achieved with motherboards using an IDT 92HD202 codec.
A motherboard with a Realtek ALC888 gave disappointing results,
apparently due to intermodulation.
A Gigabyte motherboard with ALC889a codec requires a preamp to overcome
excessive noise on its line input.

Gnuradio needs to know which audio source to use.
Run arecord -l to get the list of audio device numbers,
which can change each time Linux is restarted.
Then set the hw: number in the audio source box.

Left: Input protection network consists of a series 1k resistor
into a 0.01 cap and two diodes connected anode to cathode
to clip input voltage to less than 1 volt.
(The 1k resistors reduced the signal
and have been replaced with 500 microhenry
toroids from my junk box.)
The network shown has two channels, one for the east-west loop
and the other the north-south loop.

Each of the file outputs feeds to a named pipe.
Each pipe is drained by a program (vlf6) that reads 23077 samples,
sorts them, averages the middle half of the values, and
outputs a timestamp and average value about once every 60 seconds.
This processing is designed to reject noise impulses
and average the signal from WWVB.

The display programs allow the timebase to be adjusted.
The horizontal and vertical axes are
adjusted to fit the screen.
The various files are available at ftp.omen.com.
XML source code for newer versions of gnuradio-companion is available
here..