Gpsd

Aus Wardriving-Forum.de Enzyklopädie
Wechseln zu: Navigation, Suche


gpsd ist der unter Linux für die Verarbeitung und Weitergabe von GPS-Daten zuständige Daemon. Er wird sowohl für Kismet als auch für GPSDrive benötigt, um die Accesspoints zuordnen zu können.

Inhaltsverzeichnis

[Bearbeiten] Installation

[Bearbeiten] Ubuntu/Debian

    sudo apt-get install gpsd gpsd-clients

[Bearbeiten] Gentoo

to-do

[Bearbeiten] Manuelle Instatllation

to-do

[Bearbeiten] Einrichtung

[Bearbeiten] USB-Empfänger

Die meisten GPS-Empfänger auf USB-Basis enthalten lediglich einen seriellen GPS-Empfänger und einen Konverter auf USB, was den Vorteil hat, dass ein zweites Kabel für die Stromversorgung entfällt. Es ist und bleibt jedoch ein serielles Gerät welches auch seriell angesprochen werden muss. Dazu muss unter Linux eine serielle Schnittstelle für das Gerät bereitgestellt werden. Viele Distributionen erledigen das heute bereits beim Einstecken des Geräts. Um das zu überprüfen, gibt man in einem Terminal

    tail -f /var/log/syslog

ein und steckt dann erst den USB-Empfänger ein. Sollte sich nun in der Ausgabe etwas wie

    kernel: [ 2113.485381] usb 3-2.7: new full speed USB device using ehci_hcd and address 7
    kernel: [ 2118.573211] usb 3-2.7: configuration #1 chosen from 1 choice
    kernel: [ 2118.573757] cdc_acm 3-2.7:1.0: ttyACM0: USB ACM device

finden lassen, haben wir Glück. Es bedeutet, dass der GPS-Empfänger nun unter /dev/ttyACM0 seriell ansprechbar ist, wobei der Name des Device variieren (z.B. auch ttyUSB0) kann.

to-do -> Nachmittag

[Bearbeiten] Bluetooth-Empfänger

lsusb

Mit "lsusb" sieht man ob der Bluetooth Dongle überhaupt erkannt wird.

hciconfig
hciconfig hci0 up
hcitool scan

Jetzt sollte man den Bt GPS Empfänger mit seiner MAC-Adresse (zB: 11:22:33:44:55:66..........BT-GPS-33:44:55) sehen.

hcitool cc 11:22:33:44:55:66
rfcomm bind /dev/rfcomm0 11:22:33:44:55:66
gpsd -N -n /dev/rfcomm0 &

So könnte man jetzt bei airodump-ng GPS aktivieren:

airodump-ng --gpsd ...


Zusammenfassung:

lsusb
hciconfig
hciconfig hci0 up
hcitool scan
hcitool cc <mac>
rfcomm bind /dev/rfcomm0 <mac>
gpsd -N -n /dev/rfcomm0 &


gestestet mit Backtrack 4 r2

[Bearbeiten] Backtrack 3

Um unter Backtrack 3 gpsd starten zu können muss folgender Befehl in die Konsole eingegben werden.

   gpsd -n /dev/tts/USB0
   -n...starte gpsd auch, wenn kein Programm nach gps koordinaten fragt

Sollte die USB-GPS-Maus nicht das einzige USB-Gerät sein, kann mit folgendem Befehl überprüft werden auf welchem USB-Port die Maus angschlossen ist.

   dmesg

[Bearbeiten] GPS-Track aufzeichnen

Man kann mit GPSD zusätzlich (oder ausschließlich mit GPSD) die zurückgelegte Strecke in eine Datei aufzeichnen lassen.

Dies kann man dazu verwenden, um die entstandenen Daten später in einem NMEA-kompatibelen Programm weiterzuverarbeiten und draus z. B. eine KML-/KMZ-Datei für Google Earth zu erstellen.

Hierzu muss nach dem erfolgreichen Starten des GPSD folgender Befehl benutzt werden:

   gpspipe -r > <pfad/zur/datei>

Das Programm gpspipe nimmt nun die NMEA-Daten von gpsd entgegen und schreibt diese in die Datei "<pfad/zur/datei>".


[Bearbeiten] Troubleshooting

Manche GPS Empfänger haben eine unsaubere Implementierung des NMEA Protokolls und vertragen es nicht wenn GPSD versucht Konfigurationsbefehle zu senden. Dies kann verhindert werden, in dem man in der Datei

    /etc/default/gpsd

den Startparameter -b hinzufügt. Außerdem kann es oft hilfreich sein den Startparameter -n mit zu geben, der dafür sorgt, dass GPSD sofort beginnt die Daten vom Empfänger abzufragen und nicht erst auf einen Client wartet um damit zu beginnen. Um zu testen ob GPSD richtig funktioniert empfehlen sich die Tools gpsdump und xgps aus dem Paket gps-utils.