[[Vorlage(Getestet, , Bionic, Focal)]] {{{#!vorlage Wissen [:Editor: Einen Editor öffnen] [:Packprogramme: Archive entpacken] [:Terminal: Ein Terminal öffnen] [:sudo: Root-Rechte] [:Rechte: Rechte für Dateien und Ordner ändern] }}} [[Inhaltsverzeichnis(1)]] Der eTrex Legend® HCx der Firma [wikipedia:Garmin:Garmin International Inc.] ist ein GPS-Empfänger, der einen [wikipedia:microSD:microSD™-Kartensteckplatz] besitzt. Das Gerät untersützt [wikipedia:Wide_Area_Augmentation_System:WAAS]/[wikipedia:EGNOS:] für eine genauere Positionsberechnung. Als Chipsatz kommt der [wikipedia:MediaTek:MediaTek (MTK)] zum Einsatz. Das integrierte Interface unterstützt lediglich USB 1.1. Im internen Speicher des Geräts ist eine Basiskarte abgelegt. Außerdem werden Geräteeinstellungen, Tracks, Routen und Wegpunkte hier abgespeichert. Um das Gerät problemlos unter Ubuntu nutzen zu können, sind ein paar Voreinstellungen nötig. Die Anleitung kann auch für das fast baugleiche eTrex Vista® HCx verwendet werden. = Einstellungen = == Rechte == === Datentransfer ohne Root-Rechte=== Das Gerät wird über USB angesprochen. Damit ein Benutzer ohne Root-Rechte [4] auf die Schnittstelle `usb:` zugreifen kann, ist eine [:udev:udev-Regel] anzulegen. Hier mit [:sudo:Root-Rechten] die Datei '''/etc/udev/rules.d/51-garmin.rules''' erstellen [1] und die folgenden Zeilen einfügen womit die Rechte der Gruppe plugdev gegeben werden, in der standardmäßig jeder User eines Systems Mitglied ist: {{{ # erlaubt Gruppe plugdev auf Garmin USB lesen und schreiben SUBSYSTEM!="usb", GOTO="garmin_rules_end" ACTION!="add", GOTO="garmin_rules_end" ATTRS{idVendor}=="091e", ATTRS{idProduct}=="0003", MODE="0660", GROUP="plugdev" LABEL="garmin_rules_end" }}} Unter [:Bionic Beaver:] und [:Focal_Fossa:] reicht die obige Regel leider nicht aus, es würden nur die Rechte für '''/dev/bus/usb/XXX/XXX''' gesetzt. Damit sie auch für '''/dev/ttyUSB[0-9]''' gesetzt werden, muss die Regel wie folgt lauten: {{{ # Erlaubt Gruppe plugdev Lese- und Schreibzugriff auf Garmin USB Geräte SUBSYSTEM=="usb", GOTO="garmin_rules_usb" SUBSYSTEM=="tty", GOTO="garmin_rules_tty" GOTO="garmin_rules_end" LABEL="garmin_rules_usb" ACTION!="add", GOTO="garmin_rules_end" ATTRS{idVendor}=="091e", ATTRS{idProduct}=="0003", MODE="0660", GROUP="plugdev" GOTO="garmin_rules_end" LABEL="garmin_rules_tty" ACTION!="add", GOTO="garmin_rules_end" KERNEL=="ttyUSB[0-9]", MODE="0660", GROUP="plugdev" GOTO="garmin_rules_end" LABEL="garmin_rules_end" }}} Nach einem [:udev#Neustart-des-udev-Systems:Neustart des udev-Systems] kann man das GPS am Computer anschließen, und die Rechte sind entsprechend gesetzt. {{{#!vorlage Hinweis Durch einen Bug im ltp kann gpsbabel trotzdem nicht auf das Garmin via usb zugreifen. Abhilfe schafft folgende Zeile `USB_BLACKLIST="091e:0003"` die man mit Root Rechten [1] [4] in die Datei '''/etc/default/tlp''' einträgt. }}} [[Bild(Wiki/Icons/Tango/media-flash.png, 32, align=right)]] == Ordnerstruktur == Auf einer [#Speicherkarte microSD™/microSDHC™-Karte] ist die folgende Ordnerstruktur zu erstellen: ||<-3 tablestyle="width: 95%;" rowclass="titel"> eTrex Legend® HCx|| || Ordner||Dateien||Beschreibung|| ||'''/'''||'''YYYYMMDD.gpx'''||[#GPSBabel Tracks] eines Tages werden hier abgelegt - sofern [#Bedienung aktiviert].|| ||'''/Garmin'''||'''gmapsupp.img '''||[#Kartenmaterial Kartenmaterial] wird hier gespeichert.|| [[Bild(Wiki/Icons/Tango/help-browser.png, 32, align=right)]] = Bedienung = Grundlegende Beschreibungen zum Umgang mit dem Gerät sind dem [http://www.tramsoft.ch/downloads/garmin/etrex-hc-series_owners-manual_de.pdf Benutzerhandbuch (PDF)] {dl} oder der [http://www.tramsoft.ch/downloads/garmin/etrex-hc-series_quick-reference-guide_de.pdf Schnellstartanleitung (PDF)] {dl} zu entnehmen. Für die Kommunikation mit dem PC unter Linux kommen als Ersatz für Mapsource z.B. [:Viking:] in Frage. {{{#!vorlage Hinweis Das Positionsformat auf `hddd.ddddd°` sowie das Map-Datum auf `WGS 84` umstellen. }}} [[Bild(Wiki/Icons/openstreetmap.png,32, align=right)]] = Kartenmaterial = == Garmin == Kartenmaterial von Garmin kann genutzt werden, wenn es als '''gmapsupp.img''' vorliegt. Die Karte lediglich nach '''/Garmin''' kopieren. Hierzu entweder das Gerät in den Massenspeicher-Modus versetzen oder die microSD™-Karte in einem Kartenlesegerät beschreiben. == OpenStreetMap == Karten für das GPS können zwar von OSM genutzt werden, sie sind aber nicht von der [http://openstreetmap.org Homepage] {en} zu beziehen. Auf der [osm:OSM_Map_On_Garmin/Download:Übersichtsseite] {en} {dl} finden sich verschiedene verfügbare Karten. Diese liegen meist in einem gepacktenFormat vor und müssen entpackt [2] werden. Die '''gmapsupp.img''' ist dann in den dafür vorgesehenen Ordner der microSD™-Karte kopieren. Es gibt neben den oben genannten auch noch speziellere Karten, z.B. für Fahrradfahrer, Skipper, Fußgänger oder Reiter. Anlaufstellen gibt es auf [osm:Category\:Garmin_Maps:openstreetmaps.org] {de}. === Navigation === Eine routingfähige Karte auf Basis von OpenStreetMap kann man sich auf [http://garmin.na1400.info/routable.php garmin.na1400.info] {en} erstellen lassen. Nach Auswahl des Kartenausschnitts wird ein Link an die hinterlegte E-Mail-Adresse gesendet, sofern das Kartenmaterial generiert wurde. Hier kann man die Karte im gewünschten Format herunterladen. Alternativ [osm:DE\:All_in_one_Garmin_Map:diese Karte] {de} verwenden. {{{#!vorlage Hinweis Bis einschließlich Firmware-Version 2.80 darf die Größe der gespeicherten Kartendaten 2 GB nicht überschreiten, da diese nicht mehr verarbeitet werden können. Ab Firmware-Version 3.00 sind auch Kartendaten erlaubt die 2 GB übersteigen [http://www8.garmin.com/support/download_details.jsp?id=3707 garmin.com] {en}. }}} [[Vorlage(Bildunterschrift, ./Karte.png, 250, "OSM-Layer", right)]] = Geocaching = Um [wikipedia:Geocaching:GPS-Schnitzeljagd] mit dem Gerät machen zu können, benötigt man zuerst die geographischen Koordinaten des Geocaches, welche man im Internet unter [http://www.geocaching.com geocaching.com] {en} oder [http://www.opencaching.de opencaching.de] {de} erhält. Hier lädt man sich die benötigte '''.gpx'''- oder '''.loc'''-Datei herunter und überträgt [3] diese auf das GPS mittels [#GPSBabel GPSBabel]. Im folgenden Beispiel wird der Cache '''OC1987.gpx''' bzw. '''geocaching.loc''', in der Nähe des [wikipedia:Kanzlerbungalow:] übertragen: {{{#!vorlage Befehl gpsbabel -i gpx -f OC1987.gpx -o garmin -F usb: gpsbabel -i geo -f geocaching.loc -o garmin -F usb: }}} Im [#Bedienung Handbuch] ist die weitere Nutzung im Gerät hinterlegt. == GPX Download mit Bordmitteln == Eine andere einfache Möglichkeit nutzt die Möglichkeit, mit der Datei '''~/.mailcap''' Standardaktionen beim Download zu hinterlegen. In diesem Falle wird ein Skript '''gpx2garmin.sh''' gestartet, das die heruntergeladene '''gpx'''-Datei gleich auf den Etrex schiebt. Es wird lediglich neben dem oben erwähnten [#GPSBabel GPSBabel] das Paket {{{#!vorlage Paketinstallation zenity }}} benötigt. Wenn man in der Datei '''~/.mailcap''' folgende Zeile anfügt: {{{ application/gpx; /opt/gpx2garmin.sh %s }}} und dann das Skript {{{#!code bash #!/bin/bash # datei /opt/gpx2garmin.sh mv $1 $1.gpx /usr/bin/gpsbabel -s -i gpx -f $1.gpx -o garmin -F usb: 2> /tmp/garmin_error if [ -f /tmp/garmin_error ] && [ "`cat /tmp/garmin_error`" ] then error=`cat /tmp/garmin_error` zenity --error --text="Fehler bei der Übertragung:\n\n'$error'" else zenity --info --text="Daten wurden erfolgreich auf den GPS-Empfänger übertragen." fi rm -f /tmp/garmin_error %1 }}} mit Rootrechten in der Datei '''/opt/gpx2garmin.sh''' ablegt und diese dann ausführbar macht, erscheint beim Download einer '''gpx'''-Datei ein Firefox-Download Fenster mit der Frage, ob die Datei mit dem Skript geöffnet werden soll. Wenn man bestätigt, wird die Datei gleich auf den GPSr übertragen. Wer kein Premium-Member bei Geocaching.com ist, bekommt nur das '''loc.'''-Format (ohne Waypoints). Analog dazu lautet die entsprechende Zeile für die Datei '''~/.mailcap''' {{{ application/xml-loc; /opt/loc2garmin.sh %s }}} und das entsprechende Skript in der Datei '''/opt/loc2garmin.sh''' {{{#!code bash #!/bin/bash # datei /opt/loc2garmin.sh mv $1 $1.loc /usr/bin/gpsbabel -s -i geo -f $1.loc -o garmin -F usb: 2> /tmp/garmin_error if [ -f /tmp/garmin_error ] && [ "`cat /tmp/garmin_error`" ] then error=`cat /tmp/garmin_error` zenity --error --text="Fehler bei der Übertragung:\n\n'$error'" else zenity --info --text="Daten wurden erfolgreich auf den GPS-Empfänger übertragen." fi rm -f /tmp/garmin_error %1 }}} ## = POI = [[Bild(Wiki/Icons/computer.png,48, align=right)]] = Software = Eine Reihe von Programmen ist verfügbar – diese sind [:OpenStreetMap/Programme:hier] zu finden. [http://www.garmin.com Garmins] {en} mitgelieferte Software [:OpenStreetMap/Programme#MapSource:MapSource] lässt sich mit Hilfe von [:Wine:] ebenfalls nutzen. == GPSBabel == [:OpenStreetMap/Programme#GPSBabel:GPSBabel] kann neben anderen Programmen zum Auslesen und Aufspielen von Tracks und Wegpunkten verwendet werden. Darüber hinaus können Daten mit dem Programm konvertiert werden. Die Verwendung des Programms ist unter [:OpenStreetMap/Programme#GPSBabel:GPSBabel] beschrieben - deshalb hier nur eine Auflistung der wichtigsten Befehle: ||<-2 tablestyle="width: 95%;" rowclass="titel"> gpsbabel|| || Befehl||Beschreibung|| ||`gpsbabel -D9 -w -i garmin -f usb: -o gpx -F WP.gpx`||Importieren der Wegpunkte.|| ||`gpsbabel -D9 -t -i garmin -f usb: -o gpx -F TP.gpx`||Track auslesen.|| ||`gpsbabel -i gpx -f NAME.gpx -o garmin -F usb:`||Die Datei '''NAME.gpx''' ans Gerät senden.|| ||`gpsbabel -t -i garmin -f usb: -o kml,points=0,line_color=ff0000ff -F Track.kml`||Track auslesen und in [wikipedia:Keyhole_Markup_Language:] umwandeln.|| = Tipps = == /dev/ttyUSBx == Wenn das Gerät als '''/dev/ttyUSBx''' eingebunden werden soll (z.B. bei Verwendung mit [:Wine:]), muss das `garmin-gps`-Modul [:Kernelmodule#Module-laden-entladen-modprobe:geladen] werden. Ebenfalls muss das Paket '''modemmanager''' gelöscht werden, da dieses ebenfalls auf die Schnittstelle zugreift und so für das Gerät nicht mehr benutzbar ist. Des weiteren muss am Gerät unter ''"Interface"'' das Datenformat ''"Garmin"'' eingestellt sein. {{{#!vorlage Hinweis Damit ist das Gerät aber nicht mehr für die nativen Anwendungen erreichbar. }}} == Diagnose-Modus == Um in den Diagnose-Modus zu gelangen den Joystick gedrückt halten und das Gerät anschalten. Neben der aktuell verwendeten Software Version, wird hier u.a. die aktuelle Temperatur angezeigt. == Firmware == Die Firmware des Geräts sollte aktuell sein, da mitunter Fehler behoben und Neuerungen eingespielt werden. Die Änderungen sind auf [http://www8.garmin.com/support/download_details.jsp?id=3707 garmin.com] {en} zu ersehen. Weitere Informationen gibt es im Artikel [:Garmin/Firmware:]. {{{#!vorlage Hinweis Um [wikipedia:FAT32:] nutzen zu können, ist bei einer Firmwareversionsnummer < 3.0 ein Firmwareupdate erforderlich. Hier unter Windows den [http://www8.garmin.com/products/webupdater/ Webupdater] {en} verwenden. }}} == Dateiübertragung == Da das Gerät lediglich USB 1.1 unterstützt, ist es bei der Übertragung großer Dateien empfehlenswert, die Speicherkarte in einem USB 2.0-tauglichen Kartenleser zu beschreiben. = Problemlösungen = == Speicherkarte == Je nach verwendeter [#Firmware Firmware] ist eine Speicherkarte wie folgt zu formatieren: ||<-3 tablestyle="width: 95%;" rowclass="titel"> Speicherkarte || ||< rowclass="kopf"> Gerätesoftware||Kartentyp||Dateisystem|| ||2.9||microSD™||[wikipedia:FAT16:]|| ||3.0||microSD™/microSDHC™||[wikipedia:FAT32:]|| == Zugriff == Sofern man keinen Zugriff auf das Garmin erhält, sollte man zuerst herausfinden, in welchen [:Benutzer_und_Gruppen#Werkzeuge-zur-Verwaltung-von-Benutzern-und-Gruppen:Gruppen] man ist - ohne die entsprechenden Rechte erhält man als normaler Benutzer keinen Zugriff auf das Gerät. Außerdem sollte man überprüfen, ob ggf. das Modul `garmin-gps` [#dev-ttyUSBx geladen] wurde - sofern dies der Fall ist, muss das Modul entladen werden. == Tracks nach Openstreetmap hochladen == Problem: ein im Garmin gespeicherter und mit einer Bezeichnung versehener Track verliert seine Zeitangaben, so dass er nicht nach OpenStreetMap hochgeladen werden kann. Lösung: das Skript von [osm:User\:Farzaneh:Farzaneh Sarafraz] {en} nutzen, um das Problem zu beheben. Man speichert das Script als '''~/bin/doctor.py''' im [:Homeverzeichnis:] und macht es ausführbar [5]. {{{#!code python #!/usr/bin/python import sys infile = open(sys.argv[1],'r') l = infile.readlines() infile.close() t = l[7] ll = [] for i in range(len(l)): ll.append(l[i]) if l[i].lstrip().startswith(''): if not l[i+1].lstrip().startswith('