Free phone-based tracker and friend locator

Feb 2008 NEWS: Now has a radar that shows other users (who need perform NO registration) in the vicinity.

What this is

A tracking application that runs on your phone, talks to a bluetooth GPS (NOT inbuilt ones) and enables you or other authorised people to see where you are on a Google Map. The markers on the map are clickable and display time, course and heading. Before showing you how it looks see also my Google Maps based GPX route creator. Back to the tracker. Here's how it looks.
K810i
Here's the application on my phone, showing the UK gazetteer and distance and bearing to friends with a similar setup.

(Note that the map on the right doesn't correspond to this data and the friends are made up (sniff) though the system does work.)

Bluetooth GPS

Loved ones or people with nothing better to do could meanwhile be sitting at home watching yon on the map.

And now for something barely off the testbed though working fairly well.
radar
One of the many reasons for this project is for cycling and the connection it has had with tracking systems for me over the last few years. The next major unimplemented feature will direct you to friend(s) with a similar setup.

About the cost. If you want to use it for cycling or similar that's great. Tell me what you're up to and if you'd really really like it to work on such-and-such a date when you do your end-to-end and I'll try harder not to break it then.

Otherwise you get what you pay for until such time as I work out the details of the commerical variant.

What you need

How to install

Bluetooth pairing

Pairing may or may not be a necessary step but is definitely a good idea if nothing else to check that the bluetooth in both devices works. Follow your phone's and GPS's instructions to pair them. For the impatient the instructions will go something like this. Switch the GPS on along with Bluetooth on your phone. Find the list of bluetooth devices on your phone, select "Add device", type in the PIN (likely to be 0000) and you're done.

Install the application

It can be installed in one of three ways.

The first method involves typing a URL into your phone's browser to download it. This will cost you a few pence. The (case sensitive) URL is

http://jschneider.net/JaTrack.jad

The second method avoids pushing as many buttons on your phone but still might be more difficult. If you are confident transferring files (could be via Bluetooth, Infrared or the phone's USB lead) then fetch the JAR file below and transfer it to somewhere appropriate or do whatever is appropriate for your phone. For Nokia users that probably means using the Nokia data suite.

This is version 0.93 released on Tuesday 27th May 2008 and features most recently a few more Radar screen scales (for somebody who wants to take it to a festival) and a keyboard lock.

http://jschneider.net/JaTrack.jar

The third way is to beam it from another phone by bluetooth or infrared. What you beam is the uninstalled jar file. The Nokia 6230 is able to receive the file (by infrared but not bluetooth) but then knows not how to make use of it.

Whichever way you should get prompted to install the application and may be warned that it is from an untrusted source. That's because I haven't paid for a certificate to sign the thing. This same tightfistnedness means that on some or all phones you can't avoid being asked per invocation whether bluetooth and network access are allowed.

How the GPS is found

If the list of known, either from pairing or a device search depending on the phone, bluetooth devices on your phone now includes exactly one device with the text GPS in its name then that will be chosen. For most people that should be the end of it. Otherwise you may get a list pop up to choose the device. All being well you won't be asked again. Should you get it wrong or change your GPS module select "Device". Once the application is settled it will not accidentally connect to another GPS even of the same type unless tha manufacturer naughtily duplicate MAC addresses.

How do I know it is working ? What if it isn't ?

Understand what the flashing lights on your Bluetooth module really mean which might not correspond to the documentation.

There are two things likely to go wrong. Firstly the Bluetooth communications. If this is the case "No GPS" is displayed.

Secondly the GPS working but not giving a fix. "No Fix" will be displayed. When there is a fix (lat/long and other stuff displayed) the application will then (and at intervals of 5 minutes or 1 nm) try to send it to the server. The first time the phone is likely to ask your permission. Depending on the phone you might see a globe for a few seconds when these transmissions happen.

When there is communication over GPRS with my server the application emits a high tone. A lower tone a second or so later means it completed. The lack of a second tone points to GPRS mis-configuration.

What is meant by delta is the time and distance since your position was last sent to the server.

Ok I want to see my map now

When the application starts for the first time it generates a random identity being a string of letters and digits. Select the "Identity" menu item see it. Be careful to distinguish between l, 1 and i. I really ought to remove this difficulty.

Type the identity, BEING THE thing extracted from your phone as above and not your number or dog's name in here, submit and hopefully you'll get your map. You can then bookmark the page. It is the identity not your phone number that is the key to your data. The map will drag in any new data and pan to it every minute or so. Only the last day of data is displayed.

Quirks/Features

The application works well on my Sony Ericsson K810i, friend's Nokia 6300 and less well on another friend's Nokia 6230. It should work well on others however it's early days.

Should the GPS be switched off or go out of range the tracker application does re-connect gracefully (on my phone anyway) though this will take a few seconds. It will never send to the internet when there is no current fix so you can optionally leave the application running on the phone, minimize it (which my phone can do and does not stop it) and switch the GPS module off when not in use.

It currently sends when you move 1 nm or 5 minutes elapses or you press "Force Send".

It ignores failure on the internet/GPRS side of things though some network information may be availble in a debug string available off the menu.

Depending on the phone, you may not be able to avoid getting asked every time you start it whether bluetooth/internet connections are allowed. Obviously both are needed.

Fixes are recorded in the one true timezone UTC (GMT) however the website ought to present in the viewer's timezone. Right now it presents in London time (BST, GMT+1 at the time of writing). I'll fix this soon.

Course is not meaningful when the speed is very low. This is not reflected on the Google Map.

Arrows are tiddly green things that are barely visible on greeny backgrounds such as A roads.

The course is True not Magnetic and there is a T to remind you. Where I live the magnetic variation is only 2° West but elsewhere you may have to be careful if using in conjunction with a compass or magnetically oriented maps. Though variation is supposed to come out of the GPS it doesn't on mine so I haven't made any effort to use it.

The website refreshes at fixed intervals.

As far as I know it is impossible to stop somebody else maliciously or accidentally pairing with your GPS if it has the usual secret PIN 0000, connecting to it (while you're not connected to it) and stopping you using it. It's not that they're stealing the data of where the module is but that you might have trouble connecting to it. Only do pairing away from others. If there does seem to be a problem wait until the tracker has connected to the GPS away from the rifraff before you (re-)join them. This application is well behaved and will, once a device is chosen, remember it long term.

Email me by putting the two digits of this year just before the at sign: Jon Schneider