You are here

OpenCellID.org and Firefox OS

OpenCellID.org is powerful project with a rich data set that can be used to drive development of location-based services for mobile devices without a GPS (or without the power to run a GPS all the time).

In a nutshell, it’s an open database of georeferenced mobile telephone network cell cites, built from a network of apps that send it data.

Mobile telephones are known as “cell phones” because they connect to a network of “cells” – radio transceivers – distributed around populated areas. As you move about, your phone hops from cell to cell seamlessly. Here’s a map of Charlottetown cell sites derived from the Industry Canada Spectrum Direct database:

Attached to each tower or structure on this map are one or more “cells” and each cell had a unique identifiier made up of four parts:

Right now my phone is connected to Cell ID 250014558 in LAC 48000 in MNC 610 in MCC 302. I know this because I wrote a little Firefox OS application to display this information for me:

The “glue” that’s missing between information about cell transceiver sites (what you see on the map above, and is freely available from Industry Canada) and what I can detect on my mobile device (using the app above) is the Industry Canada data doesn’t include the “Cell ID” in its data, so there’s no way to know, from public data sources, where the cell I’m currently connected to is.

That’s where OpenCellID.org comes in: using the site’s API I can query the database for the location of a given Cell ID, like this (where I substitute my API key, available for free by registering, for “KEY”):

When you look at the locations of those 12 measures, it’s easy to see why OpenCellID.org returned the location it did:

Obviously with more reports the accuracy of the “guess” will increase. I’m running my app (you can grab it for Firefox OS) when I’m walking around and about downtown Charlottetown, so this should happen on its own, as my app gets GPS location from the device and reports this to OpenCellID.org every 30 seconds.