Wednesday, June 13, 2007

Few Words About Location Based Services on Symbian Phones



Jul 08, 2006 at 11:07 AM EEST
I'm thinking about utilizing much more from cell and location information available on Symbian phones than it's done in any current application. Based on information I have, and I hope you'll correct me if I'm doing wrong, with today's public Symbian OS API we looking through keyhole into room full of treasure - possible amazing applications - but we haven't key to open the door - we're missing proper API to access the NMR (Network Measurement Results) data...

From the time I decided start development on Symbian platform I heard from numerous people similar questions related to the Symbian GSM location functionality and to be honest every time I answered them I was not really sure what to say. I will not try to describe here GPS, E-OTD or other advanced systems, which needs additional support from phone device SIM card (SIM Toolkit solution), MS or network hardware or software upgrade. Those systems are not available to everybody today and solution driven by operators (with the problem that they could vary across the world) will never allow to single developers to participate in. Let's aim our effort only to abilities of normal smart phone available on the market. Crucial question we had to answer and I hope once again, you can help me is: Even if will have all NMR available on the phone, will we be able to measure mobile position with 10 meters in micro and pico cells areas up to 100 meters in large areas covered by one BTS? There is a lot of materials describing mathematical models (quite difficult to understand:) and theory, but how it's in practice?

Reality is that every mobile phone user can easily search the Internet for information about "Net monitor" or "Field test" applications, which were in different ways hidden somewhere on the phone, before normal blind users. Those application were not useful for masses, but they at least show us what could be monitored by the phone API, because there was always someone enough skilful, who found how to activate and run those hidden menus (on older phones) or standalone applications (on some Symbian devices) and reveal this secret to others. Let's left out for now question if such activity is legal or not. In any case result of those activities is that it's clear to all programmers that applications developed by phone manufacturer could have access to the information up to six or more neighbors cells and can obtain data about signal strength and others from the mobile network. More precisely it was known of course, that GSM device must have access to such information, but those applications show how easily it can be done and put into life many new ideas, how to use them.

Awareness of location is important part of context sensitive services, actually it is probably major factor comparing to other information as temperature, biometrics, etc. I personally think that information about six cells reception levels (signal strength), their CellId or BSIC (code is at all times transmitted on the broadcast channel, so the Mobile Stations can distinguish between base stations) possibly enhanced with access to the database with measured BTSs' GPS coordinates, measurement maps of their coverage areas and information about their power, could be input for more or less exact algorithm for estimate mobile position. Especially in the case of micro or picocells the information can be quite accurate. The signal strength is affected of course by terrain profile and building construction, but measurement map could help to solve the problem. Additionally also TA, but only in large areas (Timing Advance - because of different distance between MS and BTS, this value counted by BTS is used for synchronization when data bursts are send from MS to BTS) could be used for measure the distance from BTS. All mentioned information are available on GSM phones and the maps and databases could grow rapidly if there'll be demand for them. We cannot expect that operators will give us the information about their network, which is considered as sensitive information to be kept in secret, but groups of BTS hunters collect such information (this activity is naturally legal) and put them into freely available databases. Keep also in mind that a notable part of location based mobile application could be used only locally (i.e. Madrid tourist mobile guide), so it decrease demands on databases size and its costs.

Let's now have a look on the most obvious examples of location based services: Determination of your small child movement, triggering action with the fact of leaving predefined cell, downloading SVG map with you position marked on, navigation and guide for tourists in foreign cities, location based games, location of the nearest fitness, car service or restaurant, emergency and law services, collection statistical information, monitoring company truck drivers, etc. Doesn't it sound interestingly? The accuracy (average about 100m) of cell based position is not comparable to GPS solutions of course, there will be still some doubt on exact position, especially in the macro cell areas covered by powerful BTS, but on the other side GSM signal is available also inside buildings and heavy developed city centers, tunnels and other places, where its precision increase rapidly and where GPS cannot be used. If anyone try to monitor how fast are BTS handling the phone changing in the centre of the city, will probably agree with me that having such information could be quite useful.

Unfortunately having similar functionality as the mentioned "Net monitor" application and using it in some reasonable way is not possible, because necessary API is missing. There were some tries to reverse engineer the way how this built-in application works, but for the first I'm not sure if this is legal and for the second it failed on newer devices and it cannot be referred as general solution. I don't know why cell related information are not available for developers. Due to some information I found on Internet, network providers made complaints to phone manufacturers on easy "Net monitor" enabling, so users could measure signal strength, and consequently similar applications were removed from phones, additionally operators provide their own location based solutions and probably they want to competition, who knows?

For all of that if you search Internet you'll find plenty of small products, which use cell information as CellTrack, MiniGPS, CellSpotting or popular game called Journey. You can find also many projects and hundreds of pages, studies related to this topic.

Maybe some of you wonder how applications listed in previous paragraph work, when I already said that cell monitoring is not possible? Well, there were many Symbian SDKs available in the past and putting together header files from old Nokia 9200 with export libraries from Sendo X makes possible use API for getting information about current serving cell. This approach still works with the 8.0a FP2 SDK, but I expect that on the newer Symbian v9.1 it won't be possible, but I didn't test it yet and I also didn't check if there isn't any new method how get similar information.

Now if you read my article to this point, please try to give me the answer why location related information are hidden and are not part of public API or just put write your opinion.

Thanks for reading.
-- Petr Mazanec (stenlik)

Post A Comment
Comments:
Jul 10, 2006 at 11:17 AM EEST
Posted by Paul Coulton

Petr The main problem with EOTD is that at least three synchronised measurement are required to complete triangulation. As GSM an asycnhronus there has no common time base making the three measurements impossible. This is why the cellular system requires an upgrade to include Location Measurement Units (LMUs) that will provide this base. You are correct the software is ready but we will have to wait for the operators to implement. They are already using a system for CDMAone but this is because it is already synchronous. The disadvantage of using a purely power based measurement is that is that the readings will be affected by speed of the mobile user and will thus change for user to user not to mention operator. Also as we are using FDD they uplink will be different from the downlink and thus increases complexity. LBS is a fascinating area but highly complex in terms of solutions at the moment it would seem we will have a long wait for EOTD to be available on a wide scale for GSM but I hope I am proved wrong
-- Paul Coulton AKA Mystic Monkey www.mobileradicals.com

No comments: