My office window looks across the approach path to runway 36 at Sauk Prairie airport and I don’t want to see anything bad happen out there.

Somebody landing outside my office window.

Did you know that Cirrus Aircraft puts parachutes in all of its airplanes because of a midair collision that occurred at Sauk Prairie Airport in the mid 1980s?

My office window looks directly across the approach path to runway 36 at Sauk Prairie Airport. I’ve had an airband scanner in my window since shortly after I moved here so that I can hear the planes in addition to seeing them. Mostly for entertainment, but also so I can do whatever is in my power to prevent anything bad from happening out there. Because you just never know.

About a year ago I added an ADS-B receiver so that I can see the data squittered out by the aircrafts’ transponders. This means I can see (among other things) live location data. There is no discernible processing delay as you’d see through something like FlightAware. I also feed this data to adsb.fi for the rest of the world to see.

My air data and radio receiver.

When I learned how the ADS-B receiver dongles work (the blue and orange widgets in the photo above), that they’re called software defined radios and they’re essentially capable of pulling in any frequency in the VHF or UHF range, I figured it might be fun to try to unify the whole thing into one piece of equipment and pipe everything–ADS-B and UAT data, ACARS data, radio communications, and so forth–into the “digital domain” for analysis.

ADS-B (and UAT) data captured by my radio dongles.

Today I added a third dongle, the black one, which takes the place of my old analog scanner. It monitors several frequencies simultaneously and makes the audio streams available for use elsewhere. Right now it’s watching the traffic frequencies for all of our local airports and also the universal emergency frequency, 121.5.

Monitored spectrum, the yellow bit I’ve circled is a transmission on the Sauk Prairie traffic frequency, 122.9.

At the moment all I am doing with the sound streams is listening to them as I work. Same as before, but now I can hear them all at the same time rather than one by one. The idea, though, is to tinker around and see if I can use them to monitor for signs of danger or distress.

It’s very rare, but I occasionally hear dangerous situations developing. The most recent was an incident two or three months ago. The airport owner’s Cessna Citation jet was landing in one direction while another aircraft, a Cessna 182, was landing in the opposite direction on the same runway. The Cessna 182 was making proper traffic calls but he was doing it on the wrong frequency.

Since I had a scanner over all of the local frequencies, I could hear the calls from both aircraft, but the pilots of the aircraft could not hear each other. Thanks to their in-cockpit ADS-B displays, however, nothing bad happened there. The pilot of the 182 eventually broke off and landed in the correct direction.

It occurred to me: how easy would it be to detect this situation in software? Run a speech-to-text translation on all of the traffic frequencies, look for identifying words that don’t match the frequency they’re received on (“Sauk” or “Baraboo” or “Morey” not on 122.9, 123.05, or 123.0, respectively) and now you have a suspect. Perhaps then correlate it to ADS-B data to see if any traffic conflicts may present themselves due to the communication breakdown.

Or, heck, anything that you receive on the emergency frequency is probably something you’d like to have brought to your attention.

If you think about it, there are a lot of things you could do to detect dangerous situations pretty easily. There’s not much you can do about them unless you’re there with a handheld radio to (illegally) transmit something like “hey, you’re talking on the wrong frequency, knock it off.” But first thing’s first. I’m going to see what I can pull out of all that data and communication. See where it goes.

If I come up with anything useful, I’ll look into doing something with it.

In any case I will learn something new.

Tags: