Most of the work mapping people do is concerned with moving GPS units. Walking, driving, biking with a GPS and doing things with that movement data. But, there is a big use case for static GPS units too!

As far as I can find out, continental drift and glacier movement is measured by buying a GPS, strapping a really big battery/solar pack on to it and embedding it in a lump of concrete (or a glacier) so it won’t move much. Then you come back a year (or whatever) later and see how much it’s moved by averaging out the locations it’s been collecting. The location will vary minute to minute within some bubble (30ft across or so). But over the span of a year you can average it out and get the movement of the glacier or continent. Like this guy is doing:

airborneover

Guy planting a GPS in a glacier

So the question to me is, instead of having one GPS collecting for a year, could I have 365 GPS units for a day? Or, 4,380 GPS units for an hour…. And get the same result? Or at least something fun to wave around?

I suspect the simple answer is no, because having thousands of GPS units in the same place for an hour will all record the same systematic bias. But, what if you had thousands of people collecting drift information part-time around the planet? That would be fun!

So I built a little thing I’m calling OpenDrift. If you go to m.opendrift.org with a phone there’s an alpha version of what I’m thinking. What it does is uses your accelerometer to wait until your phone is still. Then, it uses the GPS to start recording. As soon as you pick it up it will stop since you moved the phone. If you knock the table it’s on, it will stop. And so on.

So, you could imagine instead of leaving your phone to do nothing overnight you could instead leave it to record 8 hours of drift data. We’d anonymize it and record drift information just for the nearest 100 mile square or something so we don’t know where your house is. Then we could aggregate that data with other phones across the world and see if we get something that looks accurate out of it.

Maybe, just maybe, we could produce a pretty visualization of that data. It would be a huge, fun citizen science project.

Today the code isn’t actually recording anything, and it can’t distinguish a phone from a laptop (which typically won’t have a real GPS). But the proof is there and I’m working on those things.

That sounds fun, what can I do?

Join the mailing list. Also, the code is on github, feel free to submit patches.