Garmin Forerunner 305 unter Linux

Der Garmin Forerunner 305 bringt eine tolle Software für Windows/Mac mit, aber was macht man, wenn man Linux besitzt? Dann schaut man eben nach Alternativen und wird .. fündig! Hier eine kurze Anleitung, wie man den Garmin Forerunner 305 mit Linux auslesen und die gespeicherten GPS-Tracks anzeigen kann.

Im ersten Schritt muss man den Forerunner erstmal unter Linux ansprechen können. In meinem Fall (debian/squeeze) wird automatisch beim Anschluss der Uhr an den USB-Port das Gerät /dev/ttyUSB0 erkannt. Super .. Schritt eins ist damit erledigt:

$ ll /dev/tty* | grep USB
crw-rw---- 1 root dialout 188,  0 28. Jan 20:02 /dev/ttyUSB0

Als nächstes braucht man natürlich ein Tool mit dem man die Daten aus der Uhr herausbekommt. Für andere Garmin-Uhren scheint gpsbabel (per apt-get install gpsbabel verfügbar) geeignet, in meinem Fall werden aber die garmintools empfohlen. Dieses kann man recht leicht von der Google Code Seite für garmintools beziehen. Die letzte Version ist 0.10 von März 2009. Die garmintools müssen erst installiert werden, was man als Superuser erreichen kann: (siehe auch die beiliegende INSTALL)

# ./configure; make; make install

Zusätzlich wird die Bibliothek libgarmin benötigt, die sich leicht per apt-get install libgarmin* installieren lässt. Nun wird es Zeit für einen ersten Test. Mit garmin_get_info sollten sich grundlegende Informationen zum Gerät anzeigen lassen:

$ garmin_get_info 
usb_set_configuration failed: could not set config 1: Operation not permitted
garmin unit could not be opened!

Ok, also die Tools funktionieren wohl, aber er bekommt keine Verbindung zur Uhr. Wie man an verschiedenen Stellen nachlesen kann, liegt dies am Kernelmodul garmin_gps, welches zunächst entladen werden muss:

# rmmod garmin_gps

Damit das Modul nicht beim nächsten Start erneut geladen wird kann man in der /etc/modprobe.conf folgendes eintragen:

blacklist garmin_gps

Bei mir führte das aber dazu, dass /dev/ttyUSB0 nicht mehr erkannt wurde, also hab ich diese Angabe wieder entfernt.

Ebenso hab ich die im Forum empfohlenen Regelsätze weggelassen, da mir deren Bedeutung nicht klar ist. Offenbar sollen die dazu dienen die Tools auch für den Nicht-Superuser zum Laufen zu bringen. Da ich für das eben beschrieben Entladen des Kernelmoduls sowieso root werden muss, ist das bei mir aber erstmal nachrangig. Zeit für einen zweiten Test:

# garmin_get_info
<garmin_unit id="xxxxxxx">
 <garmin_product id="484" software_version="2.90">
  <product_description>Forerunner305 Software Version 2.900</product_description>
 </garmin_product>
 ...
</garmin_unit>

Na geht doch! Ok, und was nun .. mit dem XML-Block kann man erstmal nicht viel anfangen. Genau .. eigentlich will ich doch die Strecken exportieren. Das geht ganz einfach über garmin_save_runs:

# garmin_save_runs
Extracting data from Garmin Forerunner305 Software Version 2.900
Files will be saved in '/tmp/garmintools'
Wrote:   /tmp/garmintools/2010/01/20100127T092243.gmn

Hübsch, doch auch mit der gmn-Datei kann man erstmal nicht viel anstellen. Eigentlich taugt sie nur zum Konvertieren:

# garmin_gpx 20100127T092243.gmn > 20100127T092243.gmn.gpx

Hiermit wird eine GPX-Datei (GPS-Exchange Format) erzeugt, die quasi die kompletten GPS-Daten des Tracks enthält. Diese kann nun in zahlreichen anderen Anwendungen (z.B. dem GPX-Viewer von ATLSoft oder dem GPX-Viewer von www.gps-wandern.de) verwendet werden. Wenn man sie auf einen Webserver legt, kann man sie auch in Google Maps einbinden.

# garmin_gmap 20100127T092243.gmn > 20100127T092243.gmn.gmap

Auf diesem Weg wird eine GMAP-Datei erstellt, die wohl für Google Maps gedacht ist, davon aber komischerweise nicht gelesen werden kann. Da die GPX-Variante funktioniert, hab ich hier erstmal nicht weiter geforscht.
In beiden Fällen handelt es sich nur um den reinen GPS-Track. Sollen auch die anderen Trainingswerte exportiert werden, so ist eine weitere Konvertierung sinnvoll. Dazu verwendet man das Tool gmn2tcx, welches hier beschrieben wird. Es lässt sich ganz leicht über den Subversion-Server beziehen:

$ svn co http://linuxnerd.net/svn/trunk/projects/garmin

Die Konvertierung erfolgt dann ähnlich wie bei den garmintools:

$ gmn2tcx 20100127T092243.gmn > 20100127T092243.gmn.tcx

Diese Datei enthält nun alle Trainingsdaten und eignet sich daher für die Übertragung ins eigene Garmin Connect, der hauseigenen Trainings-Datenbank bei Garmin. Dafür ist ein kostenloser Account notwendig und als erstes sollte man dann auch gleich mal die Sichtbarkeitseinstellung auf privat setzen, wenn man nicht will, dass die eigenen Tracks öffentlich im Internet abrufbar sind. Ansonsten erhält man hier aber ein tolles Werkzeug um die eigenen Trainingseinheiten zu verwalten, incl. grafischer Darstellung der wichtigsten Kennzahlen. Damit wird eine zusätzliche Software für die Trainingsüberwachung (z.B. BikeXperience, Turtle Sport oder MyTourBook) eigentlich unnötig, zumindest für einen Hobbysportler wie mich.

Quellen:

Advertisements

7 Responses to “Garmin Forerunner 305 unter Linux”


  1. 1 frank 17. Oktober 2010 um 16:14

    Es gibt auch ein Programm Sportwatcher, kennt das jemand, klingt ganz gut

  2. 2 nico 27. März 2011 um 17:39

    hey, geht der upload der tcx datei bei dir noch?
    mein connect.garmin.com meint seit neustem nur noch:

    An error occurred with your upload. Please try again.

    • 3 dzys 28. März 2011 um 20:20

      Ehrlich gesagt lade ich im Moment direkt über mein Windows Netbook ins Garmin Connect hoch. Diese Variante hat sich als stabiler entpuppt, nachdem ich sowohl beim Export von der Uhr, als auch beim Upload teilweise Fehler hatte. 100%ig ausgereift scheint die Linux-Lösung also nicht zu sein 😦

  3. 4 Uwe 1. April 2011 um 12:54

    Danke für Deine Anleitung und die Tipps, bei mir hat alles gut funktioniert, auch das Sichern der Tracks klappt bestens und auch als normaler User.

  4. 5 Spynexes 19. Mai 2011 um 12:32

    Inzwischen gibt es das Garmin Communicator Browser Plugin auch als Nachentwicklung für Linux unter:
    http://www.andreas-diesner.de/garminplugin/

    Damit ist es möglich seine Fitnessdaten auf diverse Webseiten (wie connect.garmin.com) hochzuladen.

  5. 6 masand 10. September 2015 um 9:16

    Damit es auch als Nicht-Root-Benutzer funktioniert, musste ich meinen Benutzer in die Gruppe „plugdev“ hinzufügen (Ubuntu 15.04)


  1. 1 Garmin Forerunner und Linux | USmith Blog Trackback zu 31. März 2011 um 17:00

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s





%d Bloggern gefällt das: