Google launches “My Location” – bring on the blue dot

As many blogs have been reporting today, Google has launched a new feature for their Google Maps for Mobile service called “My Location”.

My Location is simple; it shows a little blue dot on the map to represent your current location. However, the really clever part is that GPS is not required for this to work.

Google are able to calculate your approximate location by reading which cell tower (that’s mobile phone mast to UK readers!) you are connected to, and then looking up the co-ordinates of this tower in a central database.

I tested it out at home and it plotted me on the map to within 1700 metres of my actual position. If you do have GPS then it works even better. Enabling GPS on my N95 improved the accuracy of the blue dot to within 60 metres.

Geo-locating Cell Towers

The process of geo-locating the phone masts / cell towers is fairly simple. Each mast will have a unique identifier (such as a MAC address), so all you need is a GPS/GSM enabled device that records the signal strength and co-ordinates as it passes each mast. With a few samples you can then triangulate the approximate position of the mast.

Here are a few of the projects I found that are attempting to geo-tag wireless networks:

  • Intel have been running a research project for a while called placelab, whose aim was to build a database of locations for WiFi access points and cell phone towers.
  • A community based project called WiGLE is concentrating purely on 802.11b networks and has currently over 12 million access points in its database!
  • GSMLoc is an open source project that aims to locate GSM towers all over the world.

At this point it’s not clear where Google got their database, but it seems to be fairly comprehensive!

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>