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.