Turtle Sport: An Open-Source Software for Communicating with GPS Sport Watches

The aim of this article is to introduce an open-source software—Turtle Sport—that is capable of automatically importing the GPS traces of several types of GPS sport watches (Garmin, Polar, Suunto, Timex, TomTom, etc.) or of importing a number of GPS files. The GPS data are also uploaded locally to the researcher’s computer workstation, and not to Cloud, which may raise important ethical issues. Turtle Sport also allows users to: manage a number of users; visualize the traces and statistics for the races; and export the traces to external files (GPX, KML). Developed in Java, Turtle Sport is a stand-alone, multiplatform (Windows, Mac and Linux) and multi-language (11 languages supported) application. The software is available under GNU LGPL 2.1 Licence on SourceForge ( https://sourceforge.net/projects/ turtlesport/).


Introduction
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 opensource 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, multilanguage 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.

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.
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).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).
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.

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
None.

List of contributors
Denis Apparicio is a software architect; he created Turtle Sport.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 (NO 2 ) 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 (NO 2 ) 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.

Figure 1 :
Figure 1: Architecture of Turtle Sport as reflected by the different modules.

Figure 2 :
Figure 2: Interface of the Turtle Sport application.

Figure 3 :
Figure 3: Interface for uploading data activities.