Pictures from Above

 

 
 
 
 
 
 
 
 
 
 
 
 
 

...or, a Pentium is a nice thing to have.

I\ve been playing around with this stuff for some time. My first experiments used external hardware, an interface that rectified the APT subcarrier, low-pass filtered the proceeds and then digitized them to be pulled into the computer's parallel port and processed by a program like JVFax. This worked adequately, but then I got curious about my computer's sound card...

My first sound card-based program did in software what the external interface did in hardware: full-wave rectify, low-pass filter. Very simple, but it worked. A later version exploited the fact that if you sample at 4 times the carrier frequency the samples have a sine/cosine relationship and you can demodulate them immediately. Empirically I found that I got better carrier cancellation by sampling at twice the speed I really needed to (19.2 ksps rather than 9.6 ksps) and discarding alternate samples. This produced pictures like this (southwestern British Columbia as seen by NOAA-14 on 26 July 1998):

CN89

Not bad, a very fast program (these things matter on a 486 :-), even if the results turned out a little grainy. Things stayed like that until I bought a used Pentium 233 MMX motherboard for my computer, and decided to exploit the greater processing power with some new algorithms. I needed new algorithms anyway: the sound hardware that came with the motherboard didn't support 19.2 ksps!

I wrote a more sophisticated AM detector:

I/Q demodulator

This looks like a pair of direct conversion receivers, and in a sense it is. If you try to detect AM or DSB with a direct conversion receiver it will work (sort of) but will sound odd. Music, in particular, sounds terrible! This is due to phase distortion, because your LO is not in the correct phase. Voice can tolerate this. Music can't.

By doing I/Q sampling then taking a Pythagorean sum, the phase errors cancel out: they appear in expressions of the form cos2(x)+sin2(x), which equals 1. The frequency of the subcarrier on the NOAA satellites is accurate enough that there isn't much to gain by phase locking to it, at least on passes recorded off the air. If I want to do things like tape record passes and play them back I'll need to reconsider this, or buy a DAT recorder. Or do something else entirely.

Tux I flipped a coin and decided to sample at 22.05 ksps, what Windows calls Radio Quality. Not that it matters: I use Linux.
I've been experimenting with various ways of cutting down on noise at the input. My program currently uses an LMS adaptive filter. It's fast, converges quickly and fairly accurately, and has such a weird frequency response that I'm not convinced I'm evaluating the response correctly.

I claim no originality for any of the algorithms. They're all covered in standard DSP textbooks.

There are a couple of different standards for sending images. Both use a nominal 2400 Hz AM subcarrier.

The format used by the U.S. NOAA satellites is 240 lines per minute, with alternating visible and infrared scans. This sample is from NOAA-14.

The "tick-tock" effect is the sync pulses. The beginning of the visible scan is a burst of 1040 Hz ("tick"), while the beginning of the IR scan is 832 Hz ("tock").

noaa14.wav (109k)

noaa14.mp3 (20k)

The older satellites launched by the Soviet Union and the newer ones launched by the CIS send 120 line per minute IR imagery only. The "tunk" sound is the sync pulses. This sample is from Resurs 01-N4.

Older satellites like Meteor 3-5 had a higher-frequency subcarrier, closer to 2500 Hz. The newer ones seem to be spot on 2400 Hz.

resurs.wav (110k)

resurs.mp3 (20k)

 

All the signal processing is in floating point. Pentiums do it well: reading from a file, the program processes 100,000 samples per second.

Happy New Year!

My first picture of the new year, received from NOAA-14 at 2000 UTC (1500 EST) on 1 January 2000.

As is always a problem in winter, the lighting is poor. But you can see parts of Lakes Erie and Ontario, as well as parts of the coast (particularly from Cape Hatteras to Cape Cod) to orient yourself.

1 January 2000

Here's a beauty pic from last year: NOAA 15 the morning of 4 September 1999.

4 September 1999

It's rather nice... :-)

No, I don't know where the white dots came from. At the time I was using the SoundPro chip that came on the motherboard for recording. I have since switched to a separate soundcard (the cheapest I could find at the computer store) and the dots haven't returned.

For an application like this you actually want the cheapest, nastiest sound card you can find. The cheapest card will record everything there is to record from a communications-grade audio channel with ease. Additionally, expensive cards have all those 3D surround effects and similar junk, which may make those shoot-'em-up computer games sound better, but which raise hell with the amplitude and phase response that us DSP hacks work so hard to get right.

Hardware and stuff

The hardware of my VHF APT weather satellite system is: The terminally curious can find APT specifications here.

Back to Laura's web page.