Garmin eTrex Vista HCx
From Planetk.de
Contents |
Installation unter Linux
Native Werkzeuge
Das Garmin funktioniert nach dem, was ich bisher gesehen habe, hervorragend unter Linux. Zwar ist die mitgelieferte MapSource-Software nur unter WINE verfügbar, jedoch gibt es einige nette Tools, die das Leben sehr erleichtern. Die folgende Beschreibung habe ich unter Ubuntu Jaunty getestet, sie sollte aber auch unter anderen Distris funktionieren.
Zunächst müssen wir das Garät als USB-Device anmelden. Dazu erstellen wir eine Datei
/etc/udev/rules.d/51-garmin.rules
und tragen dort folgende Zeile ein:
ATTR{idVendor}=="091e", ATTR{idProduct}=="0003", MODE="0660", GROUP="users", KERNEL=="ttyUSB0", OPTIONS+="last_rule"
Essenziell ist auch das Tool gpsbabel, das man zunächst über die Repositories nachinstallieren sollte:
$> sudo apt-get install gpsbabel
Außerdem sollte man schauen, dass (zumindest war das bei meinem Ubuntu wichtig) das Kernel-Modul garmin_gps in der
/etc/modprobe.d/blacklist.conf
geblacklistet ist:
# most apps now use garmin usb driver directly (Ubuntu: #114565) blacklist garmin_gps
Da unter Ubuntu gpsbabel trotz entsprechender Zugriffsrechte (s.o.) keinen Zugriff auf die USB-Schnittstelle hat, habe ich mich entschlossen, das Tool einfach mit sudo auszuführen. Dazu
$> sudo visudo
aufrufen und folgende Zeile hinzufügen:
ALL ALL=NOPASSWD: /usr/bin/gpsbabel
Browser-Plugin
Das offizielle Garmin-Communicator-Plugin für Firefox gibt es leider nicht für Linux. Als Alternative dazu hat aber Andreas Diesner ein kompatibles Plugin entwickelt, das nativ unter Linux läuft und dem Original (für viele Devices) in nichts nachsteht. Damit ist es dann zum Beispiel auch möglich, Tracks auf Community-Seiten wie connect.garmin.com hochzuladen, oder Wegpunkte (wie zum Beispiel von geocaching.com) herunterzuladen.
Kleiner Hack: Viele Websites, die das offizielle Garmin-Interface benutzen, versuchen zu intelligent zu sein und bringen falls ein Browser sich als Linux-System meldet direkt eine Fehlermeldung. Daher sollte man einfach die Browseridentifikation auf Windows ändern und die Seiten tun was man ihnen sagt.
Das Plugin und eine ausführliche Erklärung gibts hier: http://www.andreas-diesner.de/garminplugin .
Das wars auch schon. Jetzt kann's losgehen! Vorher sei der Vollständigkeit halber aber noch erwähnt, wie man Originalsoftware zum Laufen bekommt:
Wine
Einige Programme, wie beispielsweise MapSource funktionieren hervorragend unter Wine - vorausgesetzt natürlich, wir haben die Windows-Version von Firefox auch installiert. Hierzu sei nur folgende Änderung genannt:
Wir brauchen das USB-Device unter 'Windows'. Dazu einfach folgenden Symlink erstellen:
$> ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com2
und jetzt (doch) das Kernelmodul laden
$> sudo modprobe gps_garmin
Achtung: Danach wird erstmal gpsbabel nicht mehr funktionieren!
Dafür kann man jetzt unter Wine auf COM2 den Garmin ausfindig machen. Manchmal stürzt mir gerade die oben beschriebene Firefox-Kombi ab, aber dafür gibt es jetzt auch eine native Linux-Lösung (s.u.) ;-)
OpenStreetMap-Karte aufs Gerät laden
Eine sehr gute Topographische Karte für Deutschland mit Routingfunktion gibts hier: http://www.kleineisel.de/ralf/gps/garmin/
Einfach einen Ordner Garmin auf der SD-Karte erstellen, gmapsupp.img hineinkopieren, Karte zurück ins Gerät, fertig.
Daten vom Gerät auslesen
Track speichern
Die 'sauberste' Lösung zum Speichern eines Tracks, die mir derzeit bekannt ist, kommt direkt vom Gerät: Im Hauptmenü unter Tracks>Einstellung Überschreiben aktivieren, idealerweise das Intervall auf Maximal stellen und unter Einstellung Chip die Option Track auf Chip speichern auswählen. Damit wird alles als Tages-GPX-Files auf die SD-Karte geloggt, unabhängig vom internen Speicher. Diese kann man dann am einfachsten per Kartenleser und damit USB-2.0 ans System hängen, oder aber nach Einstellen der Schnittstelle als USB-Massenspeicher (im Menü des Navis) über USB-1.0 anschließen.
Die GPX-Dateien lassen sich z.B. direkt in Google Earth öffnen und wahlweise an den Boden gebunden oder absolut - das heißt, mit Höheninformation - darstellen. Außerdem ist das Format als XML auch für Menschen sehr gut lesbar und kann daher einfach bearbeitet werden. Das ist zum Beispiel ratsam, um Einzeltracks zu einem großen gemeinsamen Pfad zusammenzufügen.
Höhenprofil extrahieren
Um das Höhenprofil anzuzeigen, kann man sich direkt Linux-Bordmitteln und der bekannten Software gnuplot bedienen. Dazu zuerst gnuplot installieren:
$> sudo apt-get install gnuplot
und danach die GPX-Datei parsen. Das geht mit meinem Programm gpx2height.
Nach der Installation einfach das Script mit der GPX-Datei als Parameter aufrufen. Es erstellt dann eine Liste von Datenpunkten, oder einen Ordner mit Datenpunkten von Einzeltracks. Diese kann man dann zum Beispiel mit folgendem gnuplot-Befehl plotten:
gnuplot> plot 'meinedatei' using 1:4 with filledcurve x1 title 'Mein Titel'
Daten auf das Gerät übertragen
Tracks und Routen hochladen
Manchmal möchte man eine bereits selbst gespeicherte oder aber im Web gefundene Route abgehen oder -fahren. Das geht ganz einfach, wenn sie als .GPX-Datei vorliegt.
Zunächst muss diese Datei aber auf (für mein Gerät) 500 Stützpunkte reduziert werden, da sie sonst einfach nach dem 500. Punkt abgeschnitten würde - und wir dann in der Pampa stehen. Dieses Ausdünnen funktioniert leicht mit einem kleinen Programm von mir: shortengpx
Danach laden wir die Route
sudo /usr/bin/gpsbabel -r -i gpx -f routendatei.gpx -o garmin -F usb:
oder den Track
sudo /usr/bin/gpsbabel -t -i gpx -f trackdatei.gpx -o garmin -F usb:
auf das Gerät. Wenn man die Wahl hat, würde ich Tracks Routen bevorzugen, da ich bei Routen oft verwaiste Wegpunkte zurückbehalte, wenn ich sie wieder löschen will.
Wegpunkte von Geocaching.com übertragen
Geocaching.com bietet unter Windows mit dem Plug-in Garmin Communicator eine komfortable Ein-Klick-Lösung zum Übertragen von Geocache-Wegpunkten auf das Gerät an. Diese funktioniert leider nur sehr instabil unter Linux, nämlich mit Wine. Eine mindestens genau so elegantere Methode kann man sich in Firefox einfach über gpsbabel zusammenschrauben. Zunächst benötigen wir ein Skript, das eine Datei nimmt und sie auf das GPS hochlädt. Ein Beispiel dafür ist loc2garmin. Dieses Programm installiert man am besten nach
/usr/local/bin
und macht es mit
sudo chmod a+x /usr/local/bin/loc2garmin
ausführbar. Außerdem wie in der Dateibeschreibung daran denken, gpsbabel Root-Rechte zu geben. Dazu mittels
$> sudo visudo
eine Zeile
ALL ALL=NOPASSWD: /usr/bin/gpsbabel
eintragen. Außerdem bitte daran denken, dass zenity installiert sein sollte (alternativ kann man die Aufrufe darin auch auskommentieren oder z.B. durch einen xmessage-Aufruf ersetzen. Zum Installieren von zenity aus dem Repository einfach folgendes ausführen:
$> sudo apt-get install zenity
Um loc2garmin standardmäßig (zum Beispiel aus dem Browser) aufzurufen, benötigen wir noch einen Eintrag in der Datei
~/.mailcap
Hier fügen wir am Ende die Zeile
application/xml-loc; loc2garmin %s
hinzu. Jetzt fehlt eigentlich nur noch die Generierung eines kompletten LOC-Files zu jedem Geocache. Die Lösung kommt von James Inge, der ein nettes Skript geschrieben hat, das ich für meine Zwecke anpassen konnte.
Zunächst benötigen wir das Firefox-Plugin Greasemonkey. Es ermöglicht das Ausführen von Hilfsanwendungen auf Webseiten und bietet uns eine Chance, die geocaching.com-Seite entsprechend in unserem Browser zu verändern. Zur Installation einfach auf https://addons.mozilla.org/de/firefox/addon/748 gehen und auf Zu Firefox hinzufügen anklicken. Eine Zeit lang warten, fertig.
Jetzt meine Version des Scripts von James Inge installieren. Dazu einfach auf folgenden Link klicken:
Greasemonkey sollte das Skript als seines erkennen und automatisch installieren.
Fertig! Ab jetzt haben wir nach der Anmeldung auf dem Portal auf jeder Cache-Seite einen Link Download full LOC neben den Koordinaten. Den einfach anklicken, Öffnen mit loc2garmin bestätigen, und weniger als eine Sekunde später haben wir die Daten auf dem Gerät.
Spoilerbilder von Geocaching.com ausdrucken
Eine Modifikation des obigen Skripts benutze ich, um mir eine Seite mit allen (Spoiler-)Bildern anzeigen zu lassen, die ich dann in einem ausdrucken kann. Bisher musste ich die Bilder immer einzeln drucken, was mich oft dazu verleitet hat, mir sie schon vorher anzusehen.
Das Skript gibt es hier:
