Location methods in S60

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata
Created: mahbub_s60 (13 Oct 2008)
Last edited: hamishwillee (18 Oct 2011)



GPS provides its location information by determining the distance to at least three or four satellites. By determining the delay between the moments the satellite sends the code and the moment it arrives at the GPS receiver (like GPS enabled mobile phones, Navigator etc), the receiver can measure its distance from the satellite. To calculate the receiver’s position we need at least 3 satellites information and if we need to measure height we need more satellites [2]. Currently GPS system contains 30 satellites in active use in 20200km altitude satellite orbits are selected in such a way that there should be always at least 6 satellites visible from almost every place in the earth. GPS satellites are sending data with very slow speed 50 bits per second [7].

Longitude and Latitude

Latitude is measured from the equator, with positive values going north and negative values going south. Longitude is measured from the Prime Meridian (which is the longitude that runs through Greenwich, England), with positive values going east and negative values going west. So, for example, 65 degrees west longitude, 45 degrees north latitude is -65 degrees longitude, +45 degrees latitude [1].


How GPS Receiver works

A GPS receiver's job is to locate four or more of these satellites, figure out the distance to each, and use this information to deduce its own location. This operation is based on a simple mathematical principle called trilateration [2]. If we know that we are 10 kilometers from satellite A in the sky, we could be anywhere on the surface of a huge, imaginary sphere with a 10 kilometers radius. If we also know that we are 15 kilometers from satellite B, then we can overlap the first sphere with another, larger sphere. The spheres intersect in a perfect circle. If we know the distance to a third satellite, we get a third sphere, which intersects with this circle at two points. The Earth itself can act as a fourth sphere -- only one of the two possible points will actually be on the surface of the earth, so GPS receiver can eliminate the one in space. Receivers generally look to four or more satellites, however, to improve accuracy and provide precise altitude information.

GPS limitations

It may take up to several minutes for a GPS receiver to get all necessary data so that it can calculate its distance from the satellites. With slow data rate, when we use a GPS system and turn it on, it needs to find orbit and clock data for the relevant satellites, this in turn results in what is called TTFF, or Time to First Fix—how long time before you get our location pinpointed. This initial TTFF is often called a “cold start” and on systems (the latest GPS systems available), it can take anywhere up to a couple of minutes to acquire a signal. That time is dependent on our location, amount of interference and horizon information: open fields are faster than canyons or urban environments where buildings can interfere with the satellite-receiver line of site [3]. So when we start our location application and we need to wait for couple of minutes, which will give unpleasant experiences to end users. So if we provide some initial data (assisted data, some rough data where to start searching) that will help greatly to reduce the TTFF. The cold start time can be up to 15 seconds with the assisted data.

Assisted data

The received GPS signals are shifted in frequency due to the relative receiver-satellite motion. This is the so-called Doppler frequency shift [6]. The receiver must find the frequency of the signal before it can lock onto it. Knowledge of the satellite position and velocity data and the initial receiver position reduces the number of frequency bins to be searched because the receiver directly computes the Doppler frequency shift instead of searching over the whole possible frequency range. Satellite position and velocity data are computed from the orbit and clock data provided by the assistance server which can provide the assisted data to GPS enabled devices. There are Varity of solution in places with different vendor for assisted data. Very often cellular network towers have GPS receivers (or a base station nearby) and those receivers are constantly pulling down satellite information and computing the data. This data is then passed on to the cellular phone (when requested). This service is dependent on operator. The server that calculates constantly is called assistant server and the data provided by the server to phone is called assisted data [4]. The initial receiver position can come from cell ID techniques or any other available source of information. Reducing the number of frequency bins which must be searched to acquire the signal reduces the time-to-first-fix (TTFF). The benefits of having assisted data are as follows for mobile devices [3]. • Faster location acquisition, TTFF is reduced greatly. • Less processing power is required by the device • Saves battery life • Location acquisition indoors or in non-optimal environmental settings

Positioning technologies supported by S60

S60 uses four different kinds of positioning methods. Those can be visible in the position settings pages. Here is short description about those four positioning methods.

Bluetooth GPS If phone does not have any integrated GPS then external GPS receiver device can be used to get data in devices by Bluetooth wireless communication. In this case, no network is involved; communication is solely between device and the external GPS receiver. Location application can use the data received over Bluetooth.BT GPS devices uses a serial connection, sending data in the NMEA standard format. NMEA information can be found from reference in [7].

Integrated GPS In this case, Nokia devices have integrated GPS receiver chip inside phone. Location application can receive data from this integrated GPS and use it. If we use stand alone integrated GPS, then there will be initial startup time up to several minutes. The time is used for searching the orbit, location of satellite. Devices don’t have any knowledge from where to start the search for the first time if we use stand alone GPS, in this case the will be long time to first fix (TTFF). When using stand alone GPS sequentially, the TTFF will be reduced, based on how long time the GPS has been measuring from the satellites. If the GPS has downloaded enough data from the satellites, the following sessions, will equal the performance of Assisted GPS.

Network based In this case, no satellite is involved at all, for Nokia device. The position is received from a server (supl.nokia.com) we need data connection (access point) over GPRS. The current cell id of the serving cell tower is send to the server and server returns the approximate longitude and latitude (including uncertainty) of the Nokia device [8]. There is a mapping between cell id and the corresponding location in the server by using Nokia’s internal technology. The server maintains a huge database. With this method, location in urban area can be more accurate as compared to rural area. In this case, no network operator is involved, only their data communication service is used to transfer data between the server and device. If operator wants to use similar service then operator specific service will be used instead of this Nokia service.

Assisted GPS There is no additional GPS chip in the devices for assisted GPS. This technique is used to help the integrated GPS, so that it can acquire the signals from the satellites quickly. Nokia utilizes the assisted data to increase user experiences for location based services [5]. The service provided by Nokia is not dependent on operator. A-GPS uses 3G and 2G cellular network connection and GPRS AND EGPRS packet data connection so we must also have an internet access point defined in our compatible device. Wireless LAN (WLAN) access points are not currently supported when using A-GPS. Nokia A-GPS is available world wide as long as we have data connection and access to cellular network. When we use the A-GPS, phone approximately downloads 10 kilobytes data from the assisted server (supl.nokia.com) and the cost varies if we are in foreign networks. The assistance data are only downloaded if needed by the Nokia device, i.e. the Assistance data are valid for a period of time (15 min. to 2 hours), during which the Nokia device does not download new assistance data, if a location based service is being used.


  1. http://jwocky.gsfc.nasa.gov/teacher/latlonarchive.html
  2. http://electronics.howstuffworks.com/gadgets/travel/gps.htm
  3. http://www.wpcentral.com/gps-vs-agps-quick-tutorial
  4. http://en.wikipedia.org/wiki/GPS_Phone
  5. http://www.developer.nokia.com/Develop/Web/Maps/
  6. http://en.wikipedia.org/wiki/NMEA
  7. http://www.openmobilealliance.com/Technical/LOC.aspx
This page was last modified on 18 October 2011, at 09:11.
64 page views in the last 30 days.