Xarepo Live Tracker

User Manual
Table of contents

Overview

The Xarepo Live Tracker is a generic tracking app that uses the GPS of the mobile device to send location updates to a server. The server provides a web page with a map showing your location updated live via a link you can share. You can run solo sessions, group sessions with your friends, or sessions related to an event such as a race.

The app doesn't contain the map, the tracking session is instead viewed on the server via the normal web browser. No app is required by the viewers.

It's available for free for Android and iOS (distributed via the official stores).

The reason this app exists is not commercial, it started as a hobbyist project where publishing and a default server is kindly sponsored by the IT companies Xarepo and IT4U. There was a need for an easy to use pure live tracking app with no strings attached, originally created for the non-profit race event Storuman Gravel, but to be more generic the app also supports a general use mode for individual or group use, in addition to be used as a tracker in events.

The actual user guide for each of the app's funcitons is built-in to the app, so this manual does not describe that but instead cover more general aspects of the live tracking system as a whole.

App features:

Use cases

Example use cases for the app:

Security and safety

The Xarepo Live Tracker is intended for entertainment purposes. Don't use it as a safety application, for example as the only way to know where you are on a potentially dangerous solo adventure. There are a number of reasons to not put too much trust into the live tracker (or any other app) on the mobile phone:

Regarding security in terms of privacy, consider the following:

Location accuracy

A mobile phone GPS is not as accurate as a dedicated GPS unit such as found in an exercise computer. To save battery power and as GPS accuracy is limited anyway the app will also send updates less frequent than a dedicated GPS, about once every 10 seconds or so (a dedicated GPS typically records once per second). This limited accuracy means that if the server implements speed and distance measurements those will not be as accurate as from a dedicated GPS unit.

In other words, don't have too high expectations on the tracking accuracy.

The mobile phone operating systems, Android and iOS, doesn't let apps have direct access to the GPS sensor, but instead provide a filtered location service. The advantage of this is that several apps can share the same location information and thus save power. The disadvantage is that this location service may in some situations cause some quirks. When a tracking session is first started there may be some time, in worst case minutes, before a proper position lock is had. It's not uncommon for the location service to provide a "common" position meanwhile, for example your home or your office where you spend time often.

App getting killed

For live tracking to work the app must run in the background, so locations can be reported to the server while you have the mobile in your pocket.

Unfortunately some mobile phones are very aggressive when it comes to killing background apps to improve battery life. This regardless if you use the app or not. If Xarepo Live Tracker gets killed while it's tracking you will get an error message next time you start the app, so you will know that it happened.

This is mostly an Android problem and happens mostly on some specific brands and models. Usually the problem can be solved by changing the settings and/or include Xarepo Live Tracker in the phone's "app white list". Exactly how to configure your phone so it doesn't kill the app differs between models. The web site "Don't kill my app" have instructions on how to configure most phone models that have this problem.

It's frustrating to us and every indie developer (and indeed some big app makers too) that background apps like this are getting killed by some phones. There's nothing we can do about it though, it's not a bug in the app. Instead the phone needs to be configured to just not kill the app when it runs in the background.

Own server

Our intention is to release an open-source version of the server that anyone can deploy and modify to add own custom features. It's implemented in NodeJS.

At the time of writing the software is in a beta test period though and is not yet released.

Using for an event

One of the key reasons the app was made was to provide a tracking app that can be used for races and similar events where participants move around a long distance track, for example for cycling, running, and kayaking events.

This is the workflow a participant will see:

  1. Download the app.
  2. Scan the event QR code using the app. The event QR code code be given at the registration desk for example.
  3. Enter race number as response code. Alternatively, if the QR code is made personal instead of a single code for the event, this step can be skipped.
  4. VoilĂ  — the app is now configured for the race and will handle start/stop and timing automatically, put the phone in a pocket and go.

That is it's very easy to use and requires no prior knowledge of the app, the app can be downloaded first time right there at the registration desk.

Automatic timing is supported, but will be approximate due to limitations of the GPS accuracy and refresh rate. For casual races it could be enough though.

During the race all participants will be visible on the same map, together with one or more race tracks. A custom map could be set up for the race as well. The screenshot on the side show a simulation of a race event from the beta test, using a custom map layer for the area where the race is held.

Most of the event functionality is implemented server-side. At the time of writing this is in beta test and is not yet made available to the public. If you have an interest as a race organizer you can contact us and ask for the current status.

Privacy policy

The privacy policy is available on its own web page.

©2020 Xarepo AB Contact Us
top