Let’s Have an Adventure

After reading the first DIY Space issue of Make: (Volume 24), my daughter and I were inspired to work on a near-space project. At the time, the standard recovery method utilized a cellphone programmed to communicate its position after landing. Unfortunately, once you let your balloon go, you had no idea where it was until it came back to the ground and phoned home. What we wanted was a way to get live reports from our flying machine while it was in flight.

The solution is the Automatic Packet Reporting System. APRS is an amateur radio communications system designed to report the location, altitude, speed, and other information about the sender. Package up a radio transmitter with a GPS receiver and some sensors in an Arduino shield, program it to send APRS packets, and you have the Trackuino. Add a hacked Canon camera and you have a recipe for a thrilling, live-action, near-space adventure. This combination of key components along with some other standard gear is a tried and true platform for a cost effective journey into the stratosphere.

On 18 May, 2013, Emma and I launched our balloon from North Adams, Massachusetts. Within about 2 hours our balloon would climb to 94,000 feet, attain ground speeds of over 100mph, and record hundreds of stunning photos along with dozens of videos. All the while telling us exactly where it was and what was going on.

In this project I’ll provide an overview of how it all works, and then walk you step-by-step through building your own tracking electronics and high-altitude balloon rig for photographing near-space.

Weather balloon Parachute Duct-taped foam capsule Buzzer Hand warmer packet GPS antenna Lithium AA battery pack Canon point-and-shoot camera, hacked with CDHK firmware upgrade Arduino Uno microcontroller with Trackuino radio transmitter shield External temperature sensor Coat-hanger radio antenna
1) Weather balloon
2) Parachute
3)Duct-taped foam capsule
4) Buzzer
5) Hand warmer packet
6) GPS antenna
7) Lithium AA battery pack
8) Canon point-and-shoot camera, hacked with CDHK firmware upgrade
9) Arduino Uno microcontroller with Trackuino radio transmitter shield
10) External temperature sensor
11) Coat-hanger radio antenna
Somewhere over central Massachusetts …

Near the peak of the flight, about 94,000 feet.

Another photo near peak altitude.


In this photo we can see fragments of the balloon which has just burst.
[wpvideo X8zwR3Hk]
Ascent Movie
[wpvideo ygUh5nP8]
Descent Movie

Automatic Packet Reporting System (APRS)

APRS is an amateur radio protocol designed to report the location of a sending station on the move. This system has been adapted to many uses, including the reporting of telemetry required to track a balloon like this. The fantastic thing about APRS is once you broadcast the packets, everything else is done. Thanks to ham radio operators around the world, when you broadcast a packet, there are receiving stations listening for them nearly anywhere you might be. The receiving station forwards your packet to internet sites which provide near real-time reports of your flight, including location, altitude, speed, and any other data you can fit into an APRS packet. Just surf to, enter your ham radio call sign, and you have an interactive map of your flight with all of this information.

Utilizing a radio capable of tuning the APRS frequency, it is also possible to directly receive the packets from your balloon (even with an inexpensive receiver).  This is important after landing, because there is a good chance that no stations will be close enough to hear your packets once the balloon is back on earth. Chances are the final packet that reaches will get you close, but you’ll need to get the resting location yourself.

APRSdroid is an Android application for amateur radio operators to decode APRS messages that have been encoded using Audio Frequency Shift Keying (AFSK). AFSK is the mechanism used to translate a digital packet into the analog signal required by your transmitter/receiver. It is a sonic representation of your packet. (Listen to the background noises in the launch video and you’ll hear a packet or two that we were receiving but not yet interpreting with APRSdroid — they sound like the internet did in the 90s.) All you need is a radio receiver that can tune to the broadcast frequency of your Trackuino (144.39MHz in North America) and an audio patch cord to plumb it into your Android device to decode your packets. If your APRSdroid happens to be running on a smartphone with 3G or 4G access, it can also be used to map your location versus the location of your balloon.

How APRS Tracking Works


The APRS amateur radio network passes along digital data packets sent by your transmitter, so you can track its location.

  • Local repeater stations (“digipeaters”) re-transmit your packets, increasing the likelihood they’ll be picked up by a station connected to the internet.
  • Internet-gateway stations (“iGates”) forward your packets to the APRS Internet Service (APRS-IS) network. Websites can then plot your transmitter’s location on a Google map, viewable from any browser.
  • In the field, you can receive packets directly on your own radio receiver and decode them with an Android app.

The Trackuino

In this project we’re using a device called the Trackuino. This is an Arduino shield that combines a low-power radio transmitter with a GPS receiver and some other components to provide everything needed to track our balloon via APRS, including GPS location, altitude, speed, internal temperature, external temperature, and battery state. The Trackuino can also drive a beeper or buzzer, to help you find which tree it is stuck in during the recovery phase of your adventure.

The heart of the Trackuino is its 300-milliwatt radio transmitter made by Radiometrix.  This tiny transmitter can be controlled by the Trackuino firmware to periodically broadcast packets on 144.39MHz (or the frequency used in your region). On the ground, the transmitter isn’t powerful enough to be heard by a receiving station unless you’re right on top of it.  Once it’s up in the air, though, wow — it can be heard for hundreds of miles around.

The Trackuino is not available anywhere as a pre-built component, or even as a kit. You must have the circuit board made and then solder in the components by hand. As Arduino shields go, it’s a fairly typical build except that there are several surface mount devices (SMD). If you haven’t worked with SMD components before, you should first develop your skills with an SMD practice kit.



Ham Radio

Radios and ham radio skills can seem old school and old hat to us cellphone-toting 21st-century citizens. In fact, radio communication is so much a part of everything we do that we don’t notice it. WiFi, Bluetooth, 3G, 4G, and, yes, your cellphone are all radios. Understanding and mastering radio communications is very much a 21st-century skill. Besides allowing you to use APRS, getting an entry-level ham license (Technician) will require that you learn some basics of radio technology and electronics (stuff you might already know). It’s also an introduction to another parallel universe of makers: ham radio operators who invent things like the Trackuino.

One of the best places to get started is the American Radio Relay League website. There are also many websites that provide tools to help you study for the test, including practice tests.

The Camera

Choosing a camera for this project is a balancing act.  There are lots of great cameras available, but we weren’t ready to send a $500 camera off into the ether when there was a reasonable chance we’d never see it again. We needed something a little more economical that could take photos and videos on a timer.

The solution is the Canon Hack Development Kit (CHDK). A Canon camera loaded with this firmware enhancement can be programmed to take photos and videos on a periodic basis (e.g., one photo every 5 seconds and a 30-second video once every 5 minutes). This is exactly what we did. We found a Canon A560 in good working order on eBay for $35. Add a 10GB SD card and the CHDK, and we have just what we need to visually record our adventure.



Both the camera and the Trackuino required sufficient power for their long journey. We needed at least a couple of hours of run time for the cameral and much longer for the Trackuino (in case recovery took longer than expected). The easy answer is lithium batteries — they’re more expensive than alkaline batteries but they deliver much more power for their weight. The A560 takes two AA batteries and was still running and taking photos and videos when we recovered it hours after launch.

The Trackuino has a range of voltages it can run, giving some choice over how many AA batteries to use: four, six, or eight. The weight versus run-time math comes in at six batteries. Four provide insufficient run time; eight add too much weight. Our Trackuino ran for over 6 hours on six batteries, with plenty of life left in them when we recovered the package.


We built a quarter-wave ground plane antenna from scavenged parts as described on the Trackuino page at Google Code. It’s very important to test and tune the antenna with an SWR meter (along with someone that knows how to use it). This is where your local ham club could be very helpful.


After looking at many alternatives, we settled on an enclosure made from insulating foam board (available at home centers). We found some free scraps from our local Freecycle. It’s also easy to work with. We assembled it with Gorilla Glue and duct tape to create a lightweight, sturdy, warm capsule for our equipment.


Helium and the Balloon

While helium is the second most abundant element in the universe, obtaining it these days can be difficult. Many suppliers reserve their helium for industrial and medical purposes. When you do find a supplier that will sell it to you, it can be expensive. The first task is to figure out how much is required for your project. This depends on the size of your balloon and the weight of your payload. We used a 600g Kaymont balloon and had a 2.2lb payload. Be sure to locate your source of helium well ahead of time and arrange for contingencies like weather delays. We wound up working with a small welding gas supplier. He was friendly and helpful and also lent us a regulator. Be sure to talk to your supplier about also getting a regulator with your gas bottle — you can’t get the gas into your balloon without a regulator.  You’ll have to pay a deposit, in our case $150 which was immediately refunded when we returned the gear.

Free Lift: A certain amount of free lift is required to have a successful flight. Free lift is the amount of surplus lift after all the weight is countered by the helium. We determined that 2 pounds is a safe amount of free lift for this kind of balloon to be assured a successful flight (which translates to about a 5m/s ascent rate — a number the FAA wants to know). Too little free lift and you risk a “floater” (a balloon that never bursts), too much and your balloon bursts at a less exciting altitude. Using the online CUSF Balloon Burst Calculator, we found that our balloon and payload would require about 100 cubic feet of helium for a successful flight.

It works like this: You fill the balloon to a certain volume at ground level – it’s about a 6-foot-diameter balloon. As it rises into the atmosphere, the pressure drops and the balloon expands. This particular balloon is rated for a burst diameter of 20 feet! Making the theory become reality depends on getting the correct amount of helium into the balloon.

Weight, Launch Site, and the FAA

I had nothing but a positive experience while dealing with the local FAA field office. Be sure to call weeks before your launch and explain what it is you’re about to do.  They’ll want to know when and where you are launching from, what the size of your payload is, what your expected ascent/descent rate will be, and the expected path your balloon will follow. It is imperative that you keep your payload under 4 pounds. If you go over 4 pounds, the rules change drastically. To keep things inexpensive, aim for about 2 pounds. Ours was 2.2 pounds.

From the beginning we had planned on launching from our front yard. I should have realized earlier in the process that my home is much too close to the ocean to risk a launch from there. It was one of the local hams who suggested that I might want to consider moving the launch point further west. This is when we started looking at the balloon flight predictors. As we started running scenarios, we found, more often than not, our balloon would wind up in the ocean. Right up to the night before the flight, we were still uncertain about our launch location. It was the online flight predictors that finally helped us to settle on North Adams, Mass., as our launch site. The easiest to use predictor for us was the predictor – and it was accurate with its prediction.

Habhub predicted track.
Actual track.

The bottom line: First choose a safe launch location well away from potential recovery hazards (like the ocean). Once you’ve settled on a launch location, call the local FAA field office and tell them what you’re planning on doing. As long as your payload is less than 4 pounds, and meets other criteria (that aren’t hard to meet), your payload is not regulated but the FAA still wants to know about your launch. If your launch site is near any small airports, you may need to file a NOTAM (notice to airmen) — our FAA representative helped walk us through this process as well. I found that they were nearly as excited about our project as we were. Finally, use common sense. Scan the skies for nearby aircraft and wait for them to clear the area before launching.

TIP: If you have trouble figuring out who to call, start with a call to the control tower of your local airport. Two or three phone calls later, I had the right person on the phone.

Practice, Practice, Practice

This is a complex system and lots can go wrong. We need the GPS receiver working properly, our transmitter working properly, the antenna properly tuned, the Trackuino program properly configured and running, the camera switched on with the CHDK program running, our balloon filled with the correct amount of helium, and everything sealed up in a near-space-ready, secure, warm enclosure. Every one of these systems needs to be prepared and tested as much as possible.

It’s important to practice the sequence and skills required to ready each of these elements. Test your camera by setting it up to look out your front window before you leave for work one day (be sure to inspect the results by getting the images off the camera; it’s tricky with a 16GB card and the CHDK. Also be aware that you might be flying your camera upside down — rotating hundreds of photos by hand is tedious — so find a batch rotator like IrfanView). Test the Trackuino by taking it on long drives and tracking yourself back and forth to work for a week or two. Have someone hide the Trackuino in your neighborhood, then go find it using your receiver and APRSdroid. Engage with your local ham club — I guarantee they will be interested and have some good suggestions and maybe even some helpers on and before launch day. The more you practice, the more likely you’ll succeed.

Launch and Chase

On launch day, Emma and I headed out very early on our 2-hour drive to the Brayton Elementary School in North Adams, Mass. We were set up and ready to go by around 8:45 a.m.  We had everything assembled and launched at 9:30.  It was hectic, and kind of stressful (we could have used more hands) but, wow, what a moment. Believe it or not, letting it go was close to the highlight of the day.

Ready to fly.

This was just the beginning of the adventure.  As soon as our balloon hit the sky, it was on  Soon the phone calls started rolling in and we heard the news of 20,000 feet, 40,000 feet, then 80,000 feet, and even 90,000+ feet. Just when we were starting to worry about it becoming a floater, we got the word that it was finally descending after hitting 94,000 feet. All the while we were getting advice on which way to head, from our network of internet and radio club observers. Just as Habhub predicted, it changed direction on us a couple of times. At the time it seemed confusing but it was all predicted. In the end, it landed right where it was supposed to.

With the help of some local hams and some unsuspecting home owners (and trees), we recovered our payload about 6 hours later. It was one of the most enjoyable and rewarding days of our lives.

 [wpvideo y63VYccT]

First After Launch Video


Recovery was its own adventure.  My thanks to all those who helped track it down and to the chain-saw wielding land owners, Fred and John, who went above and beyond to get it down the last 30 feet for us (the two trees were destined to become firewood anyway).




Digi-Key basket  (many of the small components)