Low-cost Near Space Without HAM Radios or Cellphones




Introduction: Low-cost Near Space Without HAM Radios or Cellphones

About: Just your typical electrical engineer with an addiction to space and the Cabinet Mountains Wilderness.

After researching near space balloon projects and launching two of my own I've found that the major hurdle is in communication with the balloon payload. Many near space ballooners are using HAM radio equipment to track their balloons through triangulation or APRS data transmissions. That's all well and good if you have a HAM license and the experience to know what equipment and frequencies to use. The non-HAM ballooners are using cellphones or cellular modules to send SMS messages for tracking the flight. Cellular modules work pretty well up to 40k feet altitudes with good external antennas, but above that altitude there will be no communication from the payload. It's a bit nerve racking not knowing what's going on with the payload for more than half of the flight. Cellular coverage isn't always available in the best launch locations in the U.S.

I discovered that the communications challenge is very simple with the right hardware. The XTend900 radio from Digi (http://www.sparkfun.com/products/9411 ) and a high gain patch antenna (http://www.l-com.com/item.aspx?id=20447 ) can keep you in communication with the payload for the entire flight and can even provide enough bandwidth to transmit small pictures. This instructable will focus on the minimum set of hardware to get you into near space, capture those spectacular photos, and track your payload to recovery.

For information on my last near space flight, Night Sky, visit www.wildfirerobotics.com/nightsky

Step 1: GPS Tracking

Your near space project will be a disaster if you don't know where the payload lands. The easiest way to track the flight is with a GPS receiver. Not all GPS receivers are equal, though. Some receivers can track 30+ satellites at a time, report the position 10 times a second, and output the raw data from the satellites. We aren't making an unmanned aerial drone, and even if we were there are only 12 GPS satellites in view of a hemisphere at one time...don't get suckered into buying an expensive GPS because the numbers are impressive. The one important thing is to get a receiver that can operate above 60k feet altitudes. Many receivers stop working above that altitude due to international export restrictions and what not.

For my projects I have used the GS407 receiver (http://www.sparkfun.com/products/9436). This is a small receiver with a helical antenna that gets great reception. The U-Blox chipset can interface with the U-Center software to set all the device parameters and update the satellite almanac for faster startup times (http://www.u-blox.com/en/evaluation-tools-a-software/u-center/u-center.html). Using U-Center you can also update the "dynamic platform Model" which allows this receiver to operate above 60k feet. You must set the dynamic platform model to "Airborne < 2g" or higher to operate above 60k feet. I'll discuss how to change that setting after we have the GPS and radios connected.

For now all we have to do to the GS407 is solder 4 wires on. In the picture you can see that the serial communication comes out of pins 3 & 4 of the U-Blox module. Pin 6 is VCC or power and pin 14 is ground, which you also need as a reference for the serial bus. Solder a wire to each of these pins, you should be able to do it without a microscope using 30 gauge solid core wire. If you use 4 different color wires you'll make your life easier, too. If you feel nervous about soldering these wires you can buy a breakout board (http://www.sparkfun.com/products/10496) for the GS407 that will provide slightly larger holes to solder to, but you're still going to have to solder.

Step 2: The Radio Communications

Radio communication is a difficult thing on Planet Earth. Radio waves won't travel through water or dirt very well (this includes hills and plants). To keep communication with an object you typically need "line-of-sight." The further away from an object you get the larger window you need to have line-of-sight. This is what's known as the Fresnel zone (http://www.afar.net/fresnel-zone-calculator/). Luckily for us the balloon flight will be high in the sky and the only challenge will be staying close enough to the balloon's ground position to have line-of-sight when it lands. If you aren't close to the payload when it lands you may have to search a long time to find it because you won't have the exact GPS location of where it landed.

My last balloon used the XTend 900 radio module from Digi (http://www.sparkfun.com/products/9411) as the main communication system. This 1 watt, 900 MHz radio allowed me to keep communication with the payload for the entire flight while getting flight data updates once every 5 seconds. The XTend 900 can interface to the XCTU configuration software to change the serial data rate in a user friendly GUI way (http://www.digi.com/support/productdetl.jsp?pid=3352&osvid=57&s=316&tp=5&tp2=0).

On the PC side of things you need to connect the XTend 900 to the PC's USB port. The best way to accomplish that is to get the uUSB-MB5 USB to serial converter from 4D Systems (http://www.4dsystems.com.au/prod.php?id=18) and the XTend breakout board from Sparkfun (http://www.sparkfun.com/products/9596). Solder the breakout board onto the XTend 900 or buy the proper connector. Then solder wires from the uUSB-MB5 to the breakout board in this order:
-uUSB-MB5 RX to breakout DO
-uUSB-MB5 TX to breakout DI
-uUSB-MB5 GND to breakout GND
-uUSB-MB5 +5V to breakout VCC
-On the breakout board you will also need to solder a 10k resistor between SHDN and VCC.

The balloon payload is similar and you'll need another breakout board to make things easy. Solder between the GS407 and XTend 900 breakout board like so:
-GS407 RXD to breakout DO
-GS407 TXD to breakout DI
-GS407 GND to breakout GND
-GS407 VCC to breakout VCC
-On the breakout board you need to solder a 10k resistor between SHDN and VCC

We almost have a fully functional radio link between the GPS and PC. Keep going to the next step to fire it up!

Step 3: The Power!!!!

For my Night Sky balloon payload I discovered lithium thionyl chloride batteries. These batteries have an amazing power density, but aren't rechargeable like lithium polymer batteries are. You'll only need one LSH14 battery from Saft (http://www.tnrbattery.com/Saft/battery/LSH14ST.html). Make yourself up a connector to attach and detach the battery from the XTend 900 breakout board on the balloon payload. Solder one wire of the connector to the VCC on the breakout and the other to GND. Do the same on the battery with the other side of the connector.

Connect the other XTend 900 to your PC through the USB port and bring up U-Center. In U-Center open the text console by selecting View->Text Console. Then connect to the receiver by selecting Receiver->Port->(whatever COM your XTend 900 is on). When you connect the battery the NMEA sentences should start showing up in the text console if everything is correct.

At this point you can use U-Center to change the GS407's configuration. Select View->Configuration View and a whole host of options will show up. The one you must change is in the NAV (Navigation). Click on "NAV (Navigation)" on the left and select "6 - Airborne < 2G" from the Dynamic Platform Model drop-down box. Now click Send at the bottom of the window and you're ready to operate above 60k feet!

Step 4: Pictures

I won't spend too much time on pictures because there's a whole Wiki about Canon and the CHDK open source firmware (http://chdk.wikia.com/wiki/CHDK). On Night Sky I used the Canon SD1100 camera set to infinite focus and pictures on a 6 second interval. You can do much more interesting things with videos and focus, but I'll leave that for you to investigate.

Step 5: Radio Antennas

When you're working with the payload there probably isn't any reason to use antennas on the radio. In fact using high gain antennas too close to each other could cause the receiving radio to be damaged! So, when working with the payload in the same room as your receiving PC, keep the antennas disconnected.

The best antenna option I've found is a high gain patch antenna from L-Com (http://www.l-com.com/item.aspx?id=20447). This antenna gives an 8dBi gain and radiates in all forward directions. There's no need to worry about which direction the antenna is rotated as long as the fronts of the antennas are pointing at each other. At close range the fronts don't even need to be pointed at each other (very helpful when finding the payload on the ground). With this setup I tracked the Night Sky payload to 116,750 feet altitude and over 30 miles ground distance!

The antenna also provides a nice base to build your payload on. You want the antenna pointing down towards Earth during flight, so just glue your GPS, radio, and camera to the back side, get some "foam core" (it's poster board with a small layer of foam on the inside) to enclose the electronics in (not the antenna), and wrap the foam core in a space blanket. Leave an access panel to plug in the battery and setup your camera to start taking pictures. Your payload is now fully assembled!

Step 6: Tracking

Tracking the balloon flight is going to be very easy since we're getting standard NMEA sentences from the payload into the serial port of our PC. You really should be using a laptop and a power inverter in your car. Get a friend to be your navigator, don't be foolish and try to drive while watching the laptop screen...

To track the flight use Google Earth and have it use the XTend 900 radio as a GPS device. Simply select Tools->GPS. Then click the Realtime tab. We're using the NMEA protocol, so select that. Set the Track point import limit to the maximum (currently 100) and the Polling interval to 1 second. You can have the map center on the balloon's position by checking "Automatically follow the path" but it may be easier to navigate without that. Click Start and Google Earth will search through all the COM ports looking for your GPS receiver. If the XTend 900 is plugged in and the payload is operating you'll start getting a track of your payload location.

You may be thinking, "How am I going to use Google Earth in the car without an internet connection?" The answer is that Google Earth will cache up to 2 GB of data for you. If you know the general area of where you're going to be driving, just zoom the map into that area until you see the roads and scroll around to cover the expected balloon flight path. Now you'll be able to see those maps the next time you open Google Earth even if you don't have an internet connection. How do I know where the balloon is expected to go? Read on to the next step and find out!

Step 7: Flight Predictions

This is a surprisingly simple step. Go to http://weather.uwyo.edu/polar/balloon_traj.html.

- In the "GFS model time" drop-down, pick the time that most closely matches your launch time (note the times are in Zulu).
- Leave the forecast period on Analysis.
- Enter the decimal degrees for the latitude and longitude of your start location (you can get these from Google Earth, look at the bottom of the screen while moving your cursor over the map).
- Pick the height you expect your balloon to go (this is usually given by the balloon manufacturer).
- Lastly select GoogleEarth KML as the output and click Submit. You'll get a KML file that you can open in Google Earth and see the expected flight path.

Note that this prediction assumes a 1000 foot per minute ascent and descent rate. The altitude in the KML file also appears to be shown in meters, but the text labels are in feet...

Step 8: Balloon, Parachute, and Helium

I highly recommend Kaymont for latex sounding balloons. Their 1200 gram balloon will get this payload well above 90k feet and that's pretty good for a first time balloon. Check them out at http://www.kaymont.com/

The parachute is somewhat of a personal choice, but I like the x-type parachutes from Top Flight Recovery (http://topflightrecoveryllc.homestead.com/page1.html). Have a look at their "Descent" page and pick a parachute that fits the weight of your payload. The new automated post office kiosks at the USPS are a great way to weigh your payload for free!

Now you have three separate parts to attach. You need to attach the parachute to the payload and the balloon to the parachute. The chute should always be open and ready to slow the payload's descent in case the balloon bursts. 50 lb test fishing line is the easiest way to attach everything. Find a convenient way to tie the parachute loops to the payload using one strand of fishing line about 4 feet long. Next loop an 8 foot strand of fishing line through the x-type chute. This loop should catch the X in the armpits and not prevent the chute from opening all the way when there is no tension on the loop. When your balloon is filled you'll attach this loop to the balloon and everything will be ready to go.

Helium can be found anywhere there are welders and sometimes at party stores. The helium tanks from party stores typically have a small rubber outflow valve that is very annoying. You must hold the valve to the side and it takes a long time to fill the balloon. Welding bottles and industrial bottles don't have that type of valve, but you must buy your own regulator and hose. Don't try to fill the balloon without a regulator...you will pop the balloon. I like to use the industrial gas bottle to reduce the balloon filling time from 30+ minutes to less than 5.

Filling the balloon to the proper amount is pretty easy. To get the 1000 feet per minute ascent rate you need about 1 pound more lift than your payload weight. So, make a temporary attachment for your payload and a 1 pound girly weight (could be manly too, but the extra hair is disgusting). Fill the balloon until it can easily lift the payload and the extra pound. Zip tie the top of the balloon's filler neck, zip tie the bottom of the filler neck, attach the loop of fishing line from your parachute to the filler neck between the two zip ties, fold the filler neck over the fishing line and zip tie the whole thing again. Your balloon is now attached to the payload and you're ready to launch!

Step 9: Bill of Materials and Final Thoughts

Bill of Materials:
1 - GS407 GPS Receiver
2 - XTend 900 radio modules
2 - XTend 900 breakout boards
2 - L-Com 8dBi patch antennas with RPSMA connectors
1 uUSB-MB5 USB to Serial Converter
2 - 10k ohm, 1/4 watt resistors
- as many cameras as you want

As long as your payload weights less than 8 pounds and you aren't launching at night there are really no FAA restrictions. I highly recommend that you file a NOTAM (notice to airmen) report with your local air traffic control. You can find the NOTAM hotline phone number for your area by calling a local FAA FISDO office. You will need to know your launch location as a heading and distance from the closest airport and the maximum distance the balloon will travel over ground from that location. FAA regulations are always subject to change and I take no responsibility for you not checking on the latest rules. If in doubt call the local FAA office and don't launch until you're sure.

I hope this instructable helps you with your near space balloon. Please vote for me in the Celestron Space Challenge so I can continue to share awesome pictures and experiments from space with you! Don't forget to visit the Night Sky project website at barney.gonzaga.edu/~lwardens to see pictures and data from my last near space balloon launch. Thanks!

Celestron Space Challenge

First Prize in the
Celestron Space Challenge



  • Water Contest

    Water Contest
  • Creative Misuse Contest

    Creative Misuse Contest
  • Fix It! Contest

    Fix It! Contest

86 Discussions


Can I use XTend900 radio to keep providing me GPS data even the balloon goes 34 - 37 km up & then it burst. I mean can i use this radio till 37 km height. What if I am not precisely pointing my antenna towards it. Will it still work ? Please help


Is there an easier/cheaper way to retrieve the location of my payload if I don't need to know its location at high altitudes? (If I only know it's location at the begginingg and end of the flight?)



2 replies

Thanks for the reply. I ended up using an iPhone and Find my iPhone app. Worked well! Watch video here: https://youtu.be/CsaVospLjZo

Stupid but effective way is to throw on an old android phone with a power bank, it works but is heavy and inaccurate but you will surely find your payload

Hi, great work. I am curious that if I need to get a HAM license for the XTend 900 radio modules?

8 replies

You probably guessed by the title that you don't. 900 MHz is in the ISM (industrial, scientific, and medical) band. This is an unregulated frequency. The down side is that someone else with a higher powered radio may interfere with your transmissions. The XTend 900 uses spread spectrum, so you should be able to receive no matter what.

So I don't need to get a license, right? But why doesn't it need a license? just because that spread spectrum won't influence other wave bands?

You don't need a HAM license. As to why...it just isn't required. Has nothing to do with spread spectrum.

I am very appreciate about your assistance. A simple question, I saw other people who launch HAB usually use Arduino or Raspberry Pi. Why didn't you use them?

Since this design only needs to transmit the GPS, there is no need for an extra processor. If you want to add on sensors and transmit that data, then you will need to read all sensors into a processor and compile a serial data stream to send over the radio. Launching and recovering a balloon is much more difficult than you expect. Be sure you take your time and do your research. It's very deflating when you lose a $500 payload because of a silly mistake.

I am very interested in HAB, and I really wanna launch this thing. So if there is personal email or something else that I can contact with you? I may encounter some problems in the future when I make my own design.

and I don't either get a license from FAA as long as I make sure the weight of the payload is below 8 pounds?

There are some rules about unmanned balloons in the FAA regulations. I can't give you the answer for your particular situation, but typically a balloon under 8 pounds with a tether that breaks at 50 pounds pull does not need FAA approval. Be sure you do not launch or land within 5 miles of an airport, and you should file a NOTAM report. You can google search for the NOTAM hotline number in your region

So the GS407 is now discontinued. Any alternate advice you might recommend? I assume hookup will be different as well... Great work by the way!!!

1 reply

You'll have to do your homework on this one. The U-blox chipset allows you to get position above 60k feet. That's really the only thing you need to find in the new GPS receiver. Good Luck!

Hi, great ible. Quick question: I am wanting to have a photo stream transmit to me from the balloon during flight. I am very new to this area, what do I need for that? I assume I can't just hook up a camera to the breakout, I need to connect it to a Pi or Arduino. Also, what is the point in having the radio module on the ground? You are not transmitting TO the balloon, so all you should need is just a receiving antennae....

Help is greatly appreciated, thank you.

1 reply

I give the same advice to everyone doing this for the first time. Keep it simple, or you'll lose a lot of expensive equipment. Balloons seem very simple, but you'll be panicking on launch day. Launch your first balloon with just the tracking information coming at you. Once you can track and find your balloon on the ground, then move on to multiple data streams.

When you get to trying to transmit the picture, you'll find you need to convert the picture to a serial data stream. That is going to be a lot of data, and the data rate you get over a 40+ mile radio link is very slow. You're not going to be getting real time video or more than a picture a minute with inexpensive radios. Do your research on picture formats and baud rates. A little math will tell you just how long it takes to transmit a picture.

As for having a transciever on the ground, it was easy to write the firmware once and use the same module on the balloon and on the ground. Keep it simple, reuse known equipment and code, things will fail on launch day, and with some luck you'll find your first balloon.