Cellhunter is set up like a game to find GSM network cells. Your provider has transmitters at many different locations in your country. Your mobile phone connects to this transmitters. A GSM network cell is an area, in which your mobile phone will connect to a certain transmitter, that is responsible for the communication in this GSM network cell.The identification of the network cells and the strength of signals in different locations of the GSM network cells are available data on your Freerunner (mobile phone), even if GSM telephone call will manages a phone call only via one transmitter.
The Cellhunter-project has the objective to collect the GPS location of GSM network cells.
You collect points for finding and uploading especially new GPS locations of GSM network cells.
If this project is finished, then the rough GPS location can be identified just by calculating the current distances (strength of signals) to the currently used GSM phone network cells and other available GSM network cells (GSM network cell neigbours are available for the phone but not used for communication at the moment, maybe later, when you move to an other GSM cell).
Advantages of the Cellhunter Data
The big advantage is, that the rough location can be retrieved even when there are GPS satellites are not available (e.g. in a building).
GPS information are more precise. The freerunner has determine 3 options to locate and determine changes in the location:
- Location via GPS Receiver -> most detailled information on location
- Location via GSM Cell identification (Cellhunter will provide a major contribution to this)
- Changes in location by calibrating the accelerometer (see Technical:Accelerometer Fundamentals) in car for GPS changes during the time in which satellites are available and application of accellerometer in a tunnel where no GSM network cell information and no GPS satellite information are available.
Car navigation systems like Navit on the Freerunner get the GPS location via the GPS daemon. The results of cellhunter could help to improve the GPS daemon, so that a rough GPS location can be send to [Navit] even if the is no GPS satellite information available. The advantage is, that the applications like Navit or TangoGPS do not have to be change.
GPSD and Accuracy (suggestion for further implementation)
Accuracy of the signal should be later available may be on an other GPSD port so that applications can make use of that (Accuracy: GPS, GSM, ACCEL or a real value from 0 location not available and 1 exact information on location.
GSM cells and GSM Cell Neighbours
The current GPS location of phone (Freerunner with SHR distro) provides to the CellHunter a GSM network profile of the currently used GSM network cells and its neighbours. This collected information is especially valuable for road segments where GSM network connection is available and no GPS satellites are available.
Cellhunter Profile of road segments with GSM and without GPS connection
Lets consider a road connection between A and B with GPS satellite connection in A and B and no satellite connection between A and B (e.g. a tunnel or very narrow road with high buildings around).
The GPS location (4452 N 1129 E) can be mapped to profile of available GSM network cells (e.g. GSM Cell 1 will strength s1, ... ,GSM Cell 4 will strength s4). The profiles can be normalized to values between 0 and 1 so that they can be compared better. 1 is the value of the cell with the strongest signal, that is used for the current GSM network connection to your provider. 0 is a strength of a signal to a neighbour cell that is not available. Only GSM Cell IDs are part of the GSM network location profile that have a value greater than 0.
Driving from A to B and collecting the accelerometer info GPS speed before an location A. This is used for estimating the location without GPS data in between A and B. The collection of the accelerometer info is additional information for determining changes in the speed. Best would be a constant speed from A to B for mapping the GSM network profile between A and B. The location can be retrieved by mapping the current connection profile to GSM network cells to the collected data of GPS location.
Calibrating of the accelerometer is necessary according to driving direction, because accelerometer data is dependent on position of freerunner (e.g. lying or upright position of phone).
CellHunter is just a game at the moment, to find a maximum of unknown ID of GSM network cells, which you can play in groups to collect points jointly. The objective is to collect GSM cell IDs with the GPS location (GPS mapping to GSM Cell profile).
Even it is designed as a game, it has a great potential for improving car navigation systems.
Further Information can be found at http://cellhunter.omoco.de
CellHunter is available in German and English.