Skip to content

mehrere GPX-Dateien zusammenfassen und vereinfachen

Weil aus dem Urlaub viele Dateien aus dem GPX-Logger entstanden sind, müssen die jetzt für die Abarbeitung der Nach-Urlaub-Arbeiten (Georeferenzierung der Bilder, Panorama-Erstellung, etc) erstmal die GPX-Dateien zu einer einzigen Datei zusammengefügt werden:

gpsbabel -i gpx `for i in *.gpx; do echo -n " -f $i "; done` -o gpx -F bigone.gpx

Nun ist diese Datei allerdings über 200 MB groß, wodurch eine Verwendung in den meisten Programmen eine Qual ist, weil einfach zu viel Speicher benötigt wird. Die Datei kann man mit dem folgenden Befehl etwas „optimieren” lassen, indem man unnötige Punkte (was immer das für jeden einzelnen auch sein mag) entfernen lässt:

gpsbabel -i gpx -f bigone.gpx -x simplify,crosstrack,error=0.001k -o gpx -F simple.gpx

Als Filter wird hierbei crosstrack benutzt, welcher eine Linie zwischen vorherigem und nachfolgendem Punkt zieht. Liegt der mittlere Punkt dann weniger als (im Beispiel) 0.001 km (also 1 m) von der Linie entfernt, wird der Punkt gelöscht. Vorteil ist hierbei, dass die Form der Aufzeichnung erhalten bleibt, was bei anderen Vereinfachungen meist nicht der Fall ist und so z. B. Kurven sehr kantig werden oder ganz verschwinden. (Beispiel und Erklärung aus dem OpenStreetMap-Wiki)

Dadurch hat sich die Dateigröße dann doch wesentlich von über 200 MB auf 26 MB verringert.

Transsystem iBlue 747 unter Linux auslesen

Mal wieder eine Randnotiz für mich, da ich es mir eh nicht merken kann wie es geht wink

Vor einer ganzen Weile hatte ich mir mal einen iBlue 747A+ gekauft ohne ihn bisher wirklich genutzt zu haben. Da ich das nun aber ändern möchte, hatte ich ihn die letzten Tage immer unterwegs dabei um mal meine Wege aufzeichnen zu lassen. Nun wollte ich mir die heute auch am PC ansehen… nur wie?!? Das Wiki von ubuntuusers.de half mir in dem Fall auch nicht so wirklich weiter…also gesucht, probiert und irgendwie auf eine Lösung gekommen wink

  • Zuerst einmal braucht man das Paket mtkbabel aus den Quellen.
  • Als nächstes schließt man den Logger per USB-Kabel an und schaltet ihn ein, wobei das Gerät dabei auf LOG oder NAV stehen muss.
  • Danach schaut man mit dmesg nach, wie das Gerät erkannt wurde. Bei mir steht in der Ausgabe
    [  897.420127] usb 5-1: new full speed USB device using uhci_hcd and address 2
    [  897.634977] cdc_acm 5-1:1.1: ttyACM0: USB ACM device
    [  897.637266] usbcore: registered new interface driver cdc_acm
    
    Der gesuchte Begriff ist bei mir also ttyACM0.
  • Nun kann man das Gerät mit
    mtkbabel -p /dev/ttyACM0 -f test -c
    auslesen lassen, wobei sich die Parameter aus der Hilfe (man mtkbabel) erklären sollten. Danach hat man eine BIN-Datei als Original sowie eine GPX-Datei mit Tracks und Wegpunkten, wobei für mich letztere interessanter ist, wegen der Weiterverarbeitung in z. B. OpenStreetMap oder für FotoTagging.

Konfigurieren kann man das Gerät mit mtkbabel übrigens auch. Wer gerne lieber alles in einer grafischen Oberfläche machen möchte, sollte sich mal BT747 ansehen, welches Mittels Java läuft und somit unter allen Systemen lauffähig sein sollte.

Garmin GPS mit Ubuntu Hardy verwenden

Ich habe lange nach einer Lösung gesucht, wie ich mein Garmin eTrex Venture HC unter Ubuntu 8.04 “Hardy Heron” zum funktionieren bekomme. Genauso lange hatte ich damit keinen systematischen Erfolg. Manchmal funktionierte die Sache, nach einem Neustart wieder nicht mehr und ich wusste nicht, wieso sad

Inzwischen habe ich jedoch eine Lösung gefunden, die stabil läuft und wunderbar funktioniert.

  1. In der Datei /etc/modprobe.d/blacklist muss man die Zeile
    blacklist garmin_gps
    auskommentieren (einfach # vor die Zeile machen)
  2. Damit man als normaler Nutzer Zugriff auf den erkannten Garmin-Treiber am USB-Anschluss hat, muss man die Datei /etc/udev/rules.d/51-garmin.rules bearbeiten/anlegen und die Zeile
    SYSFS{idVendor}=="091e", SYSFS{idProduct}=="0003", MODE="0666"
    einfügen.

Danach startet man am Besten erst mal neu. Wenn man dann das GPS anschließt, sollte man im Terminal mit dem Befehl dmesg eine entsprechende Meldung erhalten, dass ein Garmin-Gerät erkannt wurde.

Jetzt kann man wunderbar mit GPSBabel seine Daten auf das GPS spielen oder vom Gerät auslesen. Beispiele dazu kommen noch in einem extra Beitrag wink