What's new
Van's Air Force

Don't miss anything! Register now for full access to the definitive RV support community.

How can I test my APRS AFSK audio generator ?

Rocketmagnet

I'm New Here
I am trying to make my own weather balloon tracker, inspired by the Trackuino. It uses the Radiometrix HX1 144.390MHz transmitter to send APRS packets for tracking.

I am generating the audio tones using a microcontroller and an 8-bit DAC. Looking at the waveform using my laptop's soundcard, the waveform looks basically correct. Something like this one:

fskaudio.gif


Is there some simple software which can demodulate this audio and reproduce the data of the packet so I can verify I'm generating the correct thing? I've tried a number of programs (including APRS Messenger, AGW Tracker, Winpack), but I can't seem to get any joy from them. They all seem to want to send the packets by TCP/IP or something. All I want is to just see my packet printed in text on the screen so I can verify it.

Any help much appreciated.

Hugo
 
Hugo, if you have an audio signal now, you can use two pieces of software to "see" the data.

"soundmodem" or "qtmm" will decode AFSK1200
"virtual audio cable" creates a virtual sound card and you output your generated audio to the "in" and use the "out" with one of the above software
 
Reading raw packets

You can download a free copy of a soundcard based program called AGWPE, which will decode your packets as raw text ( unless you are sending MIC-E, in which case it will decode your packets, in non-human readable form) The HX-1 Module will not reproduce the 2200 Hertz tone at the same amplitude as the 1200 Hertz tone, so it is necessary to pre-emphasize the 2200 Hertz tone in order to obtain tone transmissions of equal amplitude. You will see this if you set your transmitter deviation to 3.5 KHZ while sending both tones, and then sending the tones one by one: the 1200 Hertz tone will be predominant, and the 2200 Hertz tone will be under modulating.

Allen
 
Thanks VHS,

I have tried AGWPE, but I can't work out how to get it to show me the packets. It just sits there doing nothing while packets come in the Line in. I know they're coming in because I can see the waveform in the Soundcard tuner dialog box.

My system supports pre-emphasis, but I wasn't sure exactly how much I'd need. I guess I'll know when I connect my Kenwood to my sound card and see what the received audio signal looks like.

One more question: In some places it says APRS uses 1200Hz and 2200Hz, while in other places I read that I'm supposed to use 1200Hz and 2400Hz.

The latter makes more sense because two 2400Hz cycles fit perfectly into one bit time at 1200 baud. What happens in the case of 2200Hz? Does the Audio signal contain discontinuities, or are the bit times shortened for 2200Hz bits?
 
1200 Baud Packets

Its 1200 and 2200 Hertz tones, since the first harmonic of 1200 is 2400, decoding would require additional anti-falsing, since one tone may "look" just like the other, depending upon the model in which you are viewing or sampling the data. AGWPE is about as simple as it gets, but you do have to set up the radio "port" setting ( not serial ports) that tells the PC which soundcard inout you are using and whether you are looking for 1200 Baud or 300 baud data. There is an even simpler soundcard decoder called "UZ7HO Soundmodem". I like using these programs because I can see raw data, and can see which digipeaters can see my traffic.

Allen
 
Thanks Humpty for your suggestions,

I finally got it working with qtmm. One thing I wish it had is some kind of debugging mode where it would tell me what's the matter with my packets. I finally tracked the problem down to not initialising the CRC properly. If only it could have just told me the CRC was wrong!

Hugo
 
I finally got it working with qtmm. If only it could have just told me the CRC was wrong

Hugo - glad you have been able to make progress. Debugging is always a challenge since an infinite number of things could be at the root of any problem.

Just an "FYI", soundmodemconfig has a "process everything" setting that allows CRC and other errors through.
 
Back
Top