Sonnenaufgang am KanalSchon seit Wochen suche ich nach einer neuen Pulsuhr. Nachdem ich mich jetzt entschieden habe, bin ich nun stolzer Besitzer eines Garmin Forerunners.
Nun möchte ich ihn natürlich auch an meinem Linux-Rechner nutzen zu können. Dazu hatte ich mich weitestgehend an die Anleitung von dzys gehalten. Nur dass ich die von ihm beschriebenen Probleme nicht hatte. Bei mir klappte der Daten-Upload auf Anhieb. :)
Allerdings hatte ich mein udev-System schon für den Garmin eTrex entsprechend angepasst:

# cat /etc/udev/rules.d/51-garmin.rules 
SYSFS{idVendor}=="091e", SYSFS{idProduct}=="0003", MODE="664", GROUP="plugdev"
# grep -n1 garmin /etc/modprobe.d/*
/etc/modprobe.d/blacklist-70-
/etc/modprobe.d/blacklist:71:blacklist garmin_gps
# grep plugdev /etc/group
plugdev:x:46:debian,plugdev,uwe,tanja
#

Nachtrag: Hier sei mir ein kleiner Einschub/Berichtigung gestattet: Inzwischen müssen die Dateien der Konvention /etc/modprobe.d/*\.conf genügen, deshalb heißt die garmin-Blacklist-Datei nun /etc/modprobe.d/garmin.blacklist.conf und enthält nur die eine Zeile.

Beim Anstecken des (ausgeschalteten) FR305 zeigt sich auch im log-File unmittelbar ein erstes Erkennen:

2011
2012
2013
2014
2015
2016
...
... usb 2-3: new full speed USB device using ohci_hcd and address 3
... usb 2-3: configuration #1 chosen from 1 choice
... usb 2-3: New USB device found, idVendor=091e, idProduct=0003
... usb 2-3: New USB device strings: Mfr=0, Product=0, SerialNumber=0
...

Ein Auslesen mittels gpsbabel ging zwar Prinzipiell, aber wie sich nachher herausstellte, gab es auf dem FR305 schon zwei „Files“ und gpsbabel las nur eins aus, in diesem Fall das Leere:

# gpsbabel -i garmin -f USB: -o gpx -F 2011-03-28-FR.gpx
# ls -l 2011-03-28-FR.gpx
... 928 30. Mär 23:24 2011-03-28-FR.gpx

Also installierte ich als nächstes das Paket garmintools und auch gleich gmn2tcx. Vorher muss man eventuell ein apt-get install subversion absetzen.

.... 
# apt-get install garmin-forerunner-tools
# cd /usr/lib/
# svn co http://linuxnerd.net/svn/trunk/projects/garmin
 A    garmin/saxon-xslt
 ...
 Ausgecheckt, Revision 806.
# perl -pi~ -e "s%\`dirname \$0\`/%/usr/lib/garmin/%g;" garmin/gmn2tcx garmin/saxon-xslt garmin/uploadruns
# cd /usr/bin/
# ln -s /usr/lib/garmin/gmn2tcx .
# garmin_get_info
 <garmin_unit id=......
 ....
   </garmin_course>
  </garmin_protocols>
 </garmin_unit>
#

Danach klappte das „Entladen“ der Daten dann auch richtig und bei mir auch als Benutzer ohne root-Rechte.:

$ garmin_save_runs
 Extracting data from Garmin Forerunner305 Software Version 2.90
 Files will be saved in "/root"
 Wrote:   ./2011/03/20110330T183058.gmn
 Wrote:   ./2011/03/20110330T192711.gmn
$ cd ./2011/03
$ garmin_gpx 20110330T192711.gmn > 20110330T192711.gmn.gpx
$ wc -l 20110330T192711.gmn.gpx 
7279 20110330T192711.gmn.gpx
$ gmn2tcx 20110330T183058.gmn > 20110330T183058.gmn.tcx
- validates
$ 
...

es wird FrühlingDiese tcx-Datei konnte ich dann zum Trainingstagebuch.org oder auch zur Garmin.connect-Seite (manuell) hochladen und ansehen.