Mobile Positioning - Where You Want To Be!
by Christoffer Andersson
There are a number of features of the Mobile Internet that will give it an edge over existing services
on the fixed Internet. The access terminal will be your own cell phone or a PDA with a packet data connection.
These terminals will be much more personal to you than any other Internet access device such as a personal computer.
Unlike the personal computer, you can and will, take your cell phone everywhere. That enables services that
you need when you are on the move and not necessarily sitting at your desk.
This leads to perhaps the most important unique feature of the Mobile Internet: location-based services.
The services you select will now be able to filter their content or change their behavior, based upon your location.
In this article, I will discuss some of the possibilities for location-based services/applications as well as the
technologies involved and most importantly: how the developer can develop location-based services.
Main Drivers
In 3GPP, the 3rd Generation Partnership Program, there is currently standardization work going on to establish
standardized positioning solutions for GPRS, EDGE and UMTS (WCDMA). This work is expected to be finalized during this year,
and consequently included in the 2000 release of the standards. There is currently lots of debate about which technology to
go for, a debate that is heating up as we close in on the deadline for E-911. E-911 is the requirement from the
FCC in the US to have positioning solutions for all cell phones no later than October 2001. While this is the main driver in
the US, Europe is looking more at enterprise and consumer business opportunities.
Technology overview
The available solutions are usually divided into two groups, terminal-based and network-based solutions.
Terminal based solutions
GPS - Global Positioning System, uses a set of satellites to locate a user's position. This system has been
used in vehicle navigation systems as well as dedicated handheld devices for some time, and now it's making it's way
into the Mobile Internet. With GPS, the terminal gets positioning information from a number of satellites (usually 3-4).
This raw information can then either be processed by the terminal or sent to the network for processing, in order to generate
the actual position. The US government previously distorted the satellite clock signals to reduce accuracy with the Selective
Availability (SA) mask; but, that was removed in May 2000. This means that GPS now can achieve around 5m-40m
accuracy provided there is a clear view of the sky. Chipmakers have now reached an increasing level of integration
of GPS chips, and there are now very power efficient, low cost one-chip solutions available.
A-GPS - Network Assisted GPS uses fixed GPS receivers that are placed at regular intervals,
every 200km to 400km to fetch data that can complement the readings of the terminal. The assistance
data makes it possible for the receiver to make timing measurements from the satellites without having to
decode the actual messages. This assistance greatly reduces the time needed for a GPS receiver to calculate the
location. Without the assistance information the Time-to-First-Fix (TTFF) could be in the range of 20-45 seconds.
With assistance data the TTFF could be in the range of 1-8 seconds. The assistance data is broadcast around once each
1 hour. So the providing of assistance data makes very little impact on the network.
E-OTD - Enhanced Observed Time Difference (E-OTD) only uses software in the terminal.
To run the E-OTD algorithms in the idle mode (terminal is not handling a call) and in the dedicated mode
(terminal is handling a call), new phones must be designed with additional processing power and memory.
The E-OTD procedure uses the data received from surrounding base stations to measure the difference it
takes for the data to reach the terminal. That time difference is used to calculate where the user is
located relative to the base stations. This requires that the base station positions are known and that
the data sent from different sites is synchronized. The most common way of synchronizing the base stations
is via the use of fixed GPS receivers. The calculation can then either be done in the terminal or the network.
The accuracy is expected to be around 125m, and unlike GPS it is not reliant on a clear sky above.
Network based solutions
CGI-TA - Cell Global Identity (CGI) uses the identity that each cell (coverage area of a
base station) to locate the user. It is often complemented with the Timing Advance (TA) information.
TA is the measured time between the start of a radio frame and a data burst. This information is already built
into the network and the accuracy is decent when the cells are small (a few hundred meters). For services where
proximity (show me a restaurant in this area) is the desired information, this is a very inexpensive and useful method.
It works with all existing terminals, which is a big advantage. The accuracy is dependent on the cell size and
varies from 10m (a micro cell in a building) to 500m (in a large outdoors macro cell).
TOA - Uplink Time of Arrival (TOA) works in a very similar way as E-OTD, the difference being that the
uplink data is measured (the data that is sent by the terminal). The base stations measure the time of arrival
of data from the terminal. This requires that at least three monitoring base stations are available to perform
the measurements. The base stations note the time difference and combine it with absolute time readings using GPS
absolute time clocks. E-OTD and TOA might look very similar, but the key difference is that TOA supports legacy
terminals. This is a crucial aspect, as it will take time to convince all terminal manufacturers to implement a
change in their software. The drawback of TOA is that it requires monitoring equipment to be installed at virtually
all of the base stations. This is potentially the most expensive of location procedures for operators to implement.
One might also argue that the user is in less control when the position calculation is solely located in the network.
This makes it hard to defend user privacy, and users cannot prevent the network from knowing the information. On
the other hand, the network already has this information today -- you would never get any calls if it didn't.
The user might still feel a bit better when he can turn off the positioning feature without turning off his phone.
In addition to these two main tracks there are of course some hybrids, and some technologies you might not associate
with location based services. One of these is Bluetooth. This 2.4GHz radio technology is designed to work over short distances,
most of them up to 10 meters. This means that you can get a different behavior of the application depending on what access point
you are using. You could imagine that your phone discovers the hands free equipment in the car when you are inside, and
diverts the calls to it. Your computer can start downloading the current news stories when you come close with your PDA or cell phone.
These examples show how thinking out of the box can give you a very elegant location based solution without having to worry
about positioning support in the network or terminal.
What is the best technology? There are clearly advantages and disadvantages with all of them. The one that is
offering the service needs to think about:
- What kind of accuracy do I need?
- Does the operator have to comply with the US FCC's E-911 rules?
- How often do I need to update the position? Is it enough to get the position when there is a request or is constant tracking needed?
- How much latency can I afford? Some solutions take up to 60 seconds to calculate the position.
- How can I make sure that the terminals of my potential users are capable of using the service?
A combination of network and terminal based solutions is often a good way to go. A GPS solution gives high accuracy and
can be backed up by, for instance, CGI-TA at times when it is not available.
API's for the developer
So, how can I as an applications developer access all these goodies? Do I have to learn everything about these technologies in
order to write the application?
The answer is no. Unfortunately there does not yet exist a standard, but there are working solutions and one can
already see where things are going. The developer should clearly be relieved from knowing what positioning system is
used and how it works technically. There should only be an easy-to-use API that can be accessed directly from the application.
Systems like the Ericsson MPS system works exactly this way. This means that you can develop applications today, using
positioning information from a GSM network, and the same application will work on a UMTS network.
The positioning information is still accessed through the API, no matter if the data comes from GSM positioning procedure
(i.e., A-GPS, E-OTD) or a UMTS positioning procedure. Ericsson provides MPS solutions for GSM, TDMA, and UMTS standards.
The API's and SDK's are available on the web and anyone familiar with libraries, like the ones in Java, should have an
easy time working with them.
What will the applications be?
It will be very interesting to see what kinds of applications that will emerge when these features become
pervasive. Some will be for the benefit of the operator, who now can track where calls are frequently lost and
fine-tune the radio network planning accordingly. The 'Always Online' paradigm, which is introduced by GPRS, clearly introduces totally new possibilities.
This example should show some interesting new aspects.
Tom Doley is a typical San Diego surfer, having a daytime job but with the surfing as his passion. One day
he is leaving early from home with his car, cruising along the freeway. The road stretches, mile after mile, along the coast,
but still not close enough for Tom to see the waves he desires. Suddenly, his PDA vibrates in his pocket! When he talks to the
device to ask it what the alert is about, it tells him 'The chat room around Baelly beach is unusually active, and you are just
driving past it. Do you want to get a web-cam image?' Tom says yes, and a beautiful color image shows up on his device.
He asks the device to call his surfing friends, all present on his contact list. With UMTS and its higher bitrate services
he would be able to choose higher bitrate conference calls, say 64kbps. Tom starts to tease his buddies about how great it will
be to go surfing, and they feel they have to go. As they have all agreed to show their positions to each other, the one that is
best positioned can drive by the others and pick them up. On their way to the beach they pass a bridge toll. They use their Bluetooth
enabled wireless wallet to pay the toll with a secure transaction. After that, nothing comes between them, the ocean and the sunset.
As seen in the example above, these technologies, positioning being one of them, works for the user instead of the other
way around. The Mobile Internet will only be a success if we make applications and technologies that make life easier and
more convenient for people.
If you are in the process of developing wireless applications, make sure to sign up as a member at http://www.mobileapplicationsinitiative.com/,
(membership is free and open to anyone, not just the ones currently developing wireless applications). You can also drop in at one
of the Ericsson MAI test labs for tests in a wireless environment and feedback on how to optimize for wireless. The best applications
will be included in Ericsson's offerings to the operators.
About The Author
Christoffer Andersson is Head of Technology for the Ericsson Mobile Applications Initiative, working in the Berkeley lab.
In this position he and his global team helps application developers test their applications in wireless environments and
to understand wireless networks and the Mobile Internet. His column at WirelessDevNet.com focuses on wireless technologies and their impact
on application development. Christoffer can be reached at christoffer@wirelessdevnet.com.
The opinions expressed in this column are those of the author and not necessarily Ericsson or the MAI.