The iPhone Rocket: The Story (and Data) Of How An iPhone Hit 1300ft

On November 10, 2008

Michael Koppelman – an iPhone developer and model rocket enthusiast – decided to combine his hobbies by launching an iPhone into the skies with his very own “iPhone rocket.” Mobile Orchard’s Dan Grigsby interviewed Michael on his experiment (see Flash video below or go to the video at Vimeo).

No video above? Watch the iPhone rocket video directly at Vimeo.

alt-chart-2.pngPowered by a Aerotech G80-13 engine, the rocket reached some 440m (1312 feet) in altitude (or 200m in relative altitude) before heading back to the ground. Michael developed an iPhone application that constantly polled the iPhone’s GPS and accelerometers, logging them to a file, as well as sending GPS data over the Web so that the unit could be easily located if it became lost.

f1_accel.pngMichael shares lots of interesting technical (and some less than technical) information during the interview, including:

  • how he polled the GPS and accelerometer
  • the lag between the GPS and the actual position of the rocket
  • how network access blocked polling – and how this affected the experiment
  • how the accelerometer only reported 3G (seriously!) instead of the expected 17G
  • and more..

Michael has written a prelude blog post that covers the motivation and the basics of the experiment. He’s also written a more in-depth post with a look at the data received from the iPhone while it was in flight – along with a 3D rendition of the GPS data and accelerometer information.

  • coalrabbit

    Cool experiment. However, Michael kept on talking about the disparity about the measured accelerometer data and the predicted value. The iPhone defaults into a mode that measures only +/- ~2G, allowing for a finer resolution in the measurements, so it’s perfectly expected for any value above 2G to be clipped. That’s what was observed in the measurements (even though he says 3G, the graph shows it closer to 2.3G).

  • Andrew

    I love both of you guys — Michael and Dan! But geez…we right brained people need to see that goddamned video of the f’n rocket, man! Your “whizbang” math is all bug-to-a-bugzappery…for math bugs. Show me those graphs. That’s what I — a music and poli-sci major — need. Your mathematical shenanigans would be downright marketable with a few charts/graphs in Keynote!

    I trust the Awesomeness went into space, some charts were created, and Koppelman got his phone back. That’s the story. He GOT HIS PHONE BACK! (Had I done this experiment, the phone would have BECOME the fuel that broke all accelerometer reading plus you would have had to measure the heat not in Q but in R because the heat from my burning iPhone would be one-better. Kind of like “11” when measuring sound from a Marshall amplifier. (Oh, and did you notice I used a little HTML here for italics? “Rocket science!”) See? I know my shit, Michael and Dan. Don’t mess with a music major.

    Nevertheless, I’ll buy into your evolution-as-science mumbo-jumbo but I’ll wait to see it on Blu-Ray. Plus, I Digged you regardless.

  • Michael

    Andrew, I’m working on my video of this. I promise I’ll show you more smoke and velocity!

    coalrabbit, you are correct, I’m getting reports from people exactly like yours, stating that I shouldn’t see much more acceleration than I did. What confused me was that I saw 4.5g on my phone when my son dropped it during testing. But I now am realizing that was the vector sum of the 3 axes, so that would explain it!

    Dan, thanks for doing this! Nicely done!

  • Jeff

    The accelerometer hardware can only read up to 3G, so why expect to see more in the software?

  • Jeff

    Why trade off data collection and network connectivity? Why attempt network connectivity during flight? When the g’s max out (launch) start data collection, store 60 seconds of data at 20Hz. When g’s stop, start pining the server every few seconds.

  • Michael

    Jeff, a) I didn’t know the limits of the accelerometer when I started this. But I found them! b) My app isn’t sophisticated enough (yet) to detect launch and change its behavior during the course of the flight. But something like that certainly makes sense.