A very simple web interface for the great Android application called Big Brother GPS that regularly sends the phone position to a server via a POST request. It supports authentication via a secret and reports various parameters (latitude, longitude, speed, bearing, altitude, battery level, accuracy, provider etc.)
You can check a running version of this application here. Some details:
- we made the trip (Romania - Italy - France - Spain and back) in August 2014
- I used an old Google Nexus S phone that I kept in the car and charged it only while driving
- had to manually switch mobile providers a few times (usually at border crossings)
- I set-up the Android application to send the position every 3 minutes; it worked quite OK and the battery usually lasted around two days
- the application is hosted on a Raspberry PI 2 running in my house
- I have a dynamic IP from my ISP so there might be some DNS update delay (usually due to power outages), the domain is hosted at Free DNS
Some screenshots:
This web interface is written in Python and uses the following packages:
- Tornado for the webserver part
- pymongo for the database part
- optionally pyproj for cartographic transformations utility function (not used for the web interface)
- other APIs used: Google Maps Javascript, Google Charts, jQuery
- install the above packages
- copy the settings file (
cp settings_default.py settings.py) - edit the settings (mainly
SECRETandDB_URI) - make sure you have MongoDB running or use a hosted service (I used the free version from MongoLab mainly because getting MongoDB to run on RaspberryPi is tedious)
- start the application
python -u bbgps.py &>> bbgps.log &


