Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

When I'm traveling through a city, as long as there are wifi networks nearby (even if they are secured with a password), my iPod Touch can determine my current location with great accuracy—obviously not as well as a GPS can in the iPhone, but still very well.

How is it able to do this exactly? Could someone explain the technical side of this, or does anyone actually know how this works?

share|improve this question
1  
I've experienced the same thing with my iPad. It seems like some wifi hotspot can provide location without being connected to them. –  Matthieu Riegler Mar 18 '13 at 18:44
    
Yeah that's what I figured. I read that the iPod Touch has a list of a large number of wifi SSIDs (to identify them) and it knows their physical locations, so it uses that information to triangulate your position. Which seems pretty neat to me. I'm wondering, though, how does Apple have this information, and how/when is it transferred to my iPod Touch? –  Gary Mar 18 '13 at 19:00
add comment

2 Answers 2

up vote 7 down vote accepted

Apple uses WiFi hotspots (and presumably the corresponding signal strength) to triangulate your position using a data from Apple. Similar to how Google maps a hotspot using their StreetView cars, a 3rd party at one time scanned the area you travelled to and mapped the SSID and probably MAC address of the local hotspots.

Though I don't know if they still do, Apple at one time did not maintain this information internally but sourced it from a 3rd party. Some of the initial privacy concerns about iOS regarded how this information was 'phoned home' to Apple without consent; That is, when your iPod was connected and 'knew' its location, it would also scan the local SSIDs and send them to Apple to improve/update the database.

This data was sourced by Skyhook Wireless.

Based on my own inference from experience (though not 100% sure, and I no longer use an iPod, so even if this was true at one time it may not anymore be so), when you map a route in Maps, it caches the relevant SSID information for the areas to which you are travelling before it goes offline.

share|improve this answer
    
I don't even have to map a route, and my iPod still knows where I am. When does my iPod download this SSID information, or is it built-in to iOS? The database must be quite large then? Or, if I went to a foreign country/city, would the triangulation not work because the device doesn't cache all SSIDs in existence, and only within my city or something? –  Gary Mar 20 '13 at 1:20
    
I don't suspect it caches more than a megabyte or two. The kind of data we're talking about is a small amount of data for even a large city. But yes the information is cached for your location when you connect. Eg in your example, you're right in assuming the functionality wouldn't work. –  zwerdlds Mar 20 '13 at 1:59
    
So if I went to a foreign city, what would I have to do to enable offline Wifi triangulation? Would it be sufficient to connect to a Wifi network for a minute, such as at an Internet cafe or a hotel Wifi network? –  Gary Mar 20 '13 at 18:50
    
That should be enough but I'm not aware of how often or all triggers for caching. I'll bet you that if you tried to use the geolocation feature and then let it run for a minute or two it would cache a good chunk, but YMMV. –  zwerdlds Mar 20 '13 at 18:52
    
Okay so I guess I'm better off getting a dedicated GPS device like this one which can connect to the iPod Touch via Bluetooth. –  Gary Mar 20 '13 at 20:21
show 2 more comments

Before you leave for your trip you'll need to install an offline mapping app like "CityMaps2Go". You need offline maps because you will not actually be connecting to the internet while you are doing your sightseeing.

When you arrive in a new city you'll have to find a hotpot (hotel, Mcdonalds, Starbucks etc) and connect to the internet. This is the one and only time you need an internet connection.

Open either the built-in Apple "Map" app, or the Google Maps app, and open-up the "directions" option. Now enter any two points in the city, like from the train station to your hotel, or between any other two points of interest.

After the app gives you directions the device will automatically load a database (from Apple) of all Wifi hotpots in the entire city! That database will now reside in the memory of the iPod Touch even after you exit Google Maps, and until you reboot the device. Any other app that uses the location service can now access that database.

At this point you no longer need to be connected to the internet, but the device must still be in Wifi mode. As you are walking around the city the device will be detecting Wifi hotpots (but not connecting to them), the device reads the hotpot's MAC serial number and in the background looks up the hotspot's coordinates off the database, and is able to determine and show your exact location anywhere you are in the city with an offline map app like CityMaps2Go.

I've now used this feature successfully in Budapest, London, the Big Apple, Toronto, Amsterdam, Beijing and Hamburg. It's very accurate, determines your location in milliseconds, and I haven't come across in gaps in coverage.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.