(1) Overview


Over the past ten years or so, multisport GPS watches have increasingly been used in both health sciences and social sciences, with multiple applications. In health sciences, they represent interesting tools for measuring athletes and non-athletes’ performance and monitoring their sports activities [1, 2, 3]: mainly running [4], but also cycling [5, 6], swimming [7], and triathlon [7, 8]. Whether coupled with accelerometers or not, they are also being used to monitor individuals’ mobility and to measure their level of physical activity [9, 10]. There are also many social science applications of these GPS watches. They are very useful for understanding and analysing the activity and mobility of various population groups, especially children [11, 12, 13] and older people [14, 15, 16].

The GPS data collected by these watches can enhance analyses based on innovative methodologies such as mobile methods [17, 18], or visual anthropology [19] when the latter is coupled with videos taken using action cameras (e.g. Garmin VIRB or Go Pro).

More recently, multisport GPS watches have been used in studies on exposure to air pollution and/or noise during travel in urban environments. Coupled with data from noise and pollution sensors, GPS tracks enable researchers to evaluate associations between levels of exposure and the types of roads and bicycle paths or lanes utilized [20] or to compare levels of exposure according to the modes of transportation used [21, 22, 23].

In spite of this growing use of multisport GPS watches, this raises both methodological issues, in terms of data structuring, and, more rarely mentioned, important ethical issues. The aim of this article is therefore to describe an open-source application (Turtle Sport) developed in Java that makes it possible to communicate with GPS devices designed for fitness purposes.

Multisport GPS Watches: A Brief Overview

There are currently many types of GPS watches on the market (e.g. numerous Garmin, Geonaute, Polar, Suunto, Timex, TomTom models). Most of these watches are designed for running, and include a GPS (with or without Glonass technology) and a heart rate monitor. Some of them are also multisport (mainly for triathlon): particularly Garmin Forerunner (910, 920, 935, fēnix), Polar (V800), Suunto Ambit3, and Timex IronMan. They can thus be used for cycling, running, and swimming activities.

Although use of these watches is becoming more and more common in the health and social sciences, the storing of personal data—user parameters (age, sex, weight, height, training zones), heart rate and number of calories burned during the activity, and especially the GPS trace of the routes—may raise important ethical issues in terms of respecting the participants’ confidentiality. Indeed, the rules of research ethics for most granting agencies and universities justifiably require that research participants’ personal data be protected and stored on a secure computer. However, we are now seeing a major trend among the current suppliers of GPS watches: in order to be viewed, the data collected on these watches are directly transferred to Cloud. This is the case in particular with Garmin, Geonaute, Polar and Suunto watches with the respective applications Garmin Connect, decathloncoach, Polarpersonaltrainer and Suunto Movescount. The data are thus stored on these companies’ servers and can be shared with the entire community of users of these watches. In other words, participants’ physiological data and data on their trips could be analyzed and exploited by these companies without the agreement of the participants in the research project. In short, the researcher cannot guarantee to either the participants or those in charge of the ethics committees of the granting agencies or universities that the data will only be used for the purposes of the research project and will then be destroyed after a period of 2 to 5 years, which is the usual practice.

Why Use a Free Software to Communicate With GPS Watches?

Aside from respecting the confidentiality of the data of the research project participants, there are three other reasons for using a free and independent application that makes it possible to easily communicate with GPS watches: the interoperability of the data of the GPS tracks, having a multiplatform software, and having a multi-user application.

As mentioned above, there are many GPS watches that use different data formats for GPS tracks: Garmin’s Flexible and Interoperable Data Transfer (FIT), GPS eXchange Format (GPX), Training Center XML (TCX), or XML. Being able to import all of these files automatically in a single software thus ensures that one can use a wide range of GPS watches.

Implementation and architecture

From a technical point of view, Turtle Sport is an open-source software (GNU Lesser General Public License, version 2.1) written in Java. In order to broaden access as widely as possible, Turtle Sport is a stand-alone, multi-language and customizable application. Since it was developed in Java, the application works in Windows, Mac OS X and Linux operating systems (Linux Debian, Ubuntu, RPM and other Linux distributions). The user interface currently supports eleven languages (English, French, Spanish, Chinese, German, Dutch, Hungarian, Italian, Portuguese, Swedish and Catalan).

As for the application’s features, it allows users to: 1) automatically import the GPS traces of several types of watches (Garmin, Polar, Suunto, Timex, TomTom, etc.) or to import several GPS files (GPX, HST, FIT, XML, TCX); 2) manage a number of users; 3) visualize the traces and statistics for the races; and 4) export the traces to external files (GPX, KML). All of these reported functions are described in detail in the following section.

The application and its Java source code are available free of charge and can be downloaded from the website http://turtlesport.sourceforge.net, which is in English and French. The first version of Turtle Sport was released on March 19, 2008. Ten years later, the number of downloads reached 51,710 in 143 countries, distributed across Linux, Windows, Mac and other operating systems (respectively 44%, 35% and 10% of downloads; 10% unknown). It is worth mentioning that the latest version (2.0) released in June 2017 has been downloaded close to 5,000 times at the time of submission of this paper. This is an indication of the widespread interest in the application, and the variety of its users.

The source code is split into several modules (Figure 1). First, four modules allow us to read different data formats for GPS tracks (GPX reader, Fit reader, Garmin TXC reader, Garmin HST). Next, the Database Derby module is used to store GPS traces and parameters for the different athletes/users. Finally, the OpenStreetMap and Chart modules are respectively dedicated to visualising the GPS trace and building a graph from data on heart rate, altitude, speed, and pace.

Figure 1 

Architecture of Turtle Sport as reflected by the different modules.

Turtle Sport Interface

The application’s interface is easy to use. It is organized into five panels indicated by the labelled numbers in Figure 2. In the first panel, the list of sports activities downloaded is reported in a schedule. In the second panel, one can visualize the GPS trace on a map. Also in this panel, using the dropdown menu at the top right, the user of the application can select various maps: OpenStreetMap (OpenStreetMap Mapnik, OpenCycleMap Cycle, OpenCycleMap Transport, OpenCycleMap Landscape, MapQuest, Mercator, etc.). In the third panel, a graph is available with curves for heart rate, altitude, speed (km/h), and pace (min./km). It is also noteworthy that the data on the graph are interactively linked with the map. The fourth panel offers a summary of the activity (total distance and time, average pace and speed, calories, etc.) as well as information on the heart rate, speed and weather. The fifth and last panel includes statistics on the laps (time, pace, heart rate and speed), which are generally five kilometres by bicycle and one kilometre on foot.

Figure 2 

Interface of the Turtle Sport application.

The interface also includes several functionalities identified by the yellow labels in Figure 2. The first button (Figure 2a) allows one to automatically detect a watch connected to a USB port and to download the activities stored on the watch (Figure 3). As noted above, Turtle Sport can manage a number of users, which is especially helpful in research projects involving several athletes and/or participants. The second button allows one to visualize the activities of the different athletes (Figure 2b). The third button (Figure 2c) activates a window where one can add or remove athletes/participants and enter a few personal and physiological characteristics (first and last name, weight, height, equipment, activities, and heart and speed zones for running and cycling) (Figure 4).

Figure 3 

Interface for uploading data activities.

Figure 4 

Interface for defining athletes.

Turtle Sport also has a statistics module (Figure 2d) that makes it possible to generate a number of graphs based on distances, times and number of activities performed per week, month or year by the selected participant. Note that these data per week, month or year can be exported to a text file (CSV).

The button in Figure 2e allows users of the application to modify their preferences, especially in terms of the language and theme of the interface, the units of measurement, and the possible adding of a background map as illustrated in Figure 5. To make it easier to analyze the GPS trace, the user can make a trip proceed more quickly or more slowly, or put everything on pause while exploring the data on the graph (Figure 2f).

Figure 5 

Defining preferences of the Turtle Sport application.

Finally, one of the very interesting functionalities (Figure 2g) of the application is the exporting of the activities to Google Maps (Figure 6) or to a KML file to visualize them in Google Earth or GPX. Also, by using the Race menu, one can export all the activities in these different formats, which greatly facilitates interoperability, especially with GIS software.

Figure 6 

Visualizing an activity in Google Maps.

(2) Availability

Operating system

Windows, Mac OS X and Linux operating systems (Linux Debian, Ubuntu, RPM and other Linux distributions).

Programming language

Turtle Sport is written in Java.

Additional system requirements


List of contributors

Denis Apparicio is a software architect; he created Turtle Sport.

Contributors for translations: Denis Apparicio (French and English), Marco Bastos (Portuguese), Darin Darinsson (Swedish), Martijn van Emmerik (Dutch), Francesco Pillai (Italian), Ralf Klein (German), Joan Salort Marsal (Spanish and Catalan), Tamás Tapsonyi (Hungarian) and Geoffrey Ting (Chinese).

Software location



Code repository


English, French, Spanish, Chinese, German, Dutch, Hungarian, Italian, Portuguese, Swedish and Catalan.

(3) Reuse potential

The Turtle Sport application includes a number of functionalities that make it a product that is especially well adapted for research purposes. First, Turtle Sport makes it possible to locally import data from several types of GPS watches (Garmin, Polar, Suunto, Timex, TomTom, etc.) and several types of GPS files (FIT, GPX, HST, TCX, XML). In other words, the data are not uploaded to Cloud, which generally goes against the rules of ethics for the protection of participants’ personal data. Note that several GPS files are available in the folder https://github.com/denapp/turtlesport/tree/master/test; they could be easily imported to test the application (Menu File/Import).

Secondly, it allows the activities of a number of research project participants to be managed and visualized. Thirdly, Turtle Sport has several data exploration tools (visualization of the GPS trace with OpenStreetMap linked with a graph, numerous statistics on the trip or on a data period for each participant). Finally, the outputs of the activities can easily be exported to other GIS software, especially using KML format. The application can consequently be used in many health science and social science applications.

An example of the use of Turtle Sport

As an example, the Turtle Sport application was recently used in the context of a study on individual exposure to air and noise pollution in Montreal. The main objective of this study was to compare the relative exposure to and uptake of air pollutants during rush hours according to three modes of transportation: car, bicycle and public transit. To do this, three measuring devices were used: 1) a personal noise dosimeter (Brüel & Kjaer); 2) an air quality monitor with a nitrogen dioxide (NO2) sensor (Aeroqual); and 3) a GPS Garmin 910 XT watch to obtain a trace of the trip. These devices allowed us to measure the individuals’ exposure to air pollution (NO2) and noise (dB(A)) and their heart rates, and to obtain a GPS trace of the trip. The GPS traces collected with the Garmin watches by the different participants were imported into Turtle Sport and then exported for web mapping purposes (http://atlaspollutionmtl.ucs.inrs.ca).

The software was also used during three data collections on exposure to air pollution and noise in Mexico City (March 2017), in Ho Chi Minh City (June 2017), in Paris (September), in Auckland and Christchurch (New Zealand, February 2018) with respectively 10, 3, 3 and 3 participants involved in these projects for one or two weeks. Every evening, the data on the trips from the Garmin watches were imported into Turtle Sport in order to verify the validity of the trips and to conduct exploratory analyses.