When I first got my original iPod Touch, I was amazed to discover when I checked Google Maps that the iPad had a pretty good idea of where I was. It turned out that this was due to the Skyhook wi-fi geolocation service, which had been busily sending cars out to wardrive urban areas in the US before Google ever had the streetview idea that ended up landing it in so much invasion-of-privacy trouble. Skyhook recorded in what locations it could find any given MAC address (the serial number that uniquely identifies every network adapter such as a wi-fi card or router) and plugged that into a database that applications could query.
While not perfect, this service was key to the subsequent rise of location-based check-in services like Foursquare and Yelp: people had a way of “proving” where they were, so they could “check in” at nearby businesses. They could append their locations to Twitter posts, and easily find directions in Google Maps from one place to another.
There are a lot of possible uses to being able to find one’s own location, at least semi-reliably, and append it to software applications—including for e-book readers. You could see how many people within some arbitrary distance are reading the same e-book as you are, for instance—perhaps even contact them and arrange arbitrary ad-hoc book-club meeting groups. Startups like Foursquare have barely even scratched the surface. But for it to be useful, it has to be at least semi-reliable.
One of the neat things about Skyhook is that its website features a form by which people can add the MAC addresses of their own wi-fi routers along with their physical location to fill in gaps in Skyhook’s database or change their location if they move. I did that myself for my own router, as well as for the router my parents placed at their home in the middle of the country. (Which means my parents’ house can be pinpointed as a single dot in the middle of a wasteland of no coverage if you zoom in close enough on Skyhook’s coverage map.)
But beginning with OS 3.2, last year, Apple dropped Skyhook and started using its own proprietary geolocation database. The problem is, this new database doesn’t have any way to correct mistakes or add missing routers. And while my newly-acquired second iPod Touch still locates me properly in my apartment in central Springfield, Missouri, my iPad places me in Middletown, PA.
I’m not sure why this is; my best guess is that one of my neighbors used to live there, and brought his Apple-recorded wi-fi router with him when he moved here. And since my own router is too recent a purchase to be listed in Apple’s database, the iPad makes the determination based on the other routers it can pick up. It’s really annoying, because it means I can’t use the geolocation-based features, such as getting directions or searching for nearby Twitter queries, from my iPad.
And there seems to be no way to correct this—nor to add my parents’ rural MAC address. A query on Apple’s support forums brings the response from another Apple user, “That’s been discussed many times (do a search) and, so far, no one has an answer.” So I’m not the only one to have noticed this problem.
Presumably wi-fi-based geolocation simply isn’t a priority for Apple, who has plenty of other irons in the fire—unlike Skyhook for whom it is their sole concern. So the iPad and other OS 3.2-and-up devices have an inherently less-reliable, and less-correctible location system than they used to—and it becomes less reliable with each new, unrecorded router people buy.
Meanwhile, the Skyhook-based geolocation on the 1st-gen iPod Touch continues to work.