Feel free to contact me at hy379@cornell.edu.
Using an amateur radio protocol called Automatic Packet Reporting System (APRS) to beacon location for a high-altitude balloon launch.
The balloon will have cameras and video cams which will take cool shots of the Earth’s atmosphere.
This project has been a super-long term one…. it’s been weaving in and out between classes and other life obligations.
I want to build up my own APRS-capable software and not use Tracksoar. I only wanted to use Tracksoar to see that my lower-level bit encoding was legit. This is in the works!
I forked an open-source project called Tracksoar which creates APRS trackers. I use a different microcontroller, radio transmitter, and GPS than what they do. This is just for fun for me.
Item | What Tracksoar Uses | What I Use |
---|---|---|
Microcontroller | ATMEGA32u4 | Arduino Due (uses Atmel SAM3X8E) |
GPS | uBlox MAX8 | Adafruit GPS |
Radio Transmitter | Radiometrix HX1 | Si5351B |
The APRS protocol in North America transmits at 144.39 MHz with Audio Frequency-Shift Keying (AFSK) with 1200 Hz and 2200 Hz tones for mark and space respectively. This means on a 144.39 MHz carrier, a 1200 Hz tone is a “high” / mark and a 2200 Hz tone is a “low” / space. This binary encoding puts the data on the carrier.
So far, a 1200 and 2200 Hz tone can be generated using direct digital synthesis (DDS) from a sine table with 512 entries.
These tones could be heard on the carrier when I tune my Baofeng radio in.
And using a Kenwood radio that has a built-in TNC decoder + using Tracksoar to verify the lowest level of bit encoding was correct, I could decode APRS messages.