Wie kann ich den GPS-Empfänger BU-353 unter Ubuntu zum Laufen bringen?

7

Ich habe einen GPS-Empfänger BU-353 mit USB-Schnittstelle und versuche, ihn unter Ubuntu zum Laufen zu bringen.

Ich lief gpsd -n -N -D 2 /dev/ttyUSB0und bekam diese Ausgabe:

gpsd: launching (Version 2.94)
gpsd: listening on port gpsd
gpsd: running with effective group ID 1000
gpsd: running with effective user ID 1000
gpsd: opening GPS data source type 3 at '/dev/ttyUSB0'
gpsd: speed 38400, 8N1
gpsd: Garmin: garmin_gps Linux USB module not active.
gpsd: speed 9600, 8O1
gpsd: speed 38400, 8N1
gpsd: gpsd_activate(): opened GPS (fd 6)
gpsd: speed 4800, 8N1
gpsd: NTPD ntpd_link_activate: 0
gpsd: /dev/ttyUSB0 identified as type SiRF binary (2.687608 sec @ 4800bps)
gpsd: detaching 127.0.0.1 (sub 1, fd 8) in detach_client
gpsd: detaching 127.0.0.1 (sub 1, fd 8) in detach_client

Danach startete ich tangoGPS, das besagte, dass kein GPS und kein GPSD gefunden wurde.

Parimal N.
quelle

Antworten:

7

Es ist bekannt, dass BU-353 mit GPSD funktioniert.

  1. Probieren Sie die -bFlagge (zum Beispiel gpsd -b /dev/ttyUSB0)

  2. Öffnen Sie ein separates Terminalfenster und führen Sie es aus gpsmon(im Paket 'gpsd-clients' enthalten), um die gpsd-Ausgabe zu überprüfen. Starten Sie gpsmon jedes Mal neu, wenn Sie gpsd neu starten.

    Könnte Tango zu früh beginnen? Der Dongle benötigt einige Sekunden, um die Signale zu sortieren, Satelliten zu identifizieren und einen Fix zu berechnen. udev benötigt einige Sekunden, um gpsd zu starten, was wiederum einige Sekunden benötigt, um den Dongle (der möglicherweise noch nicht bereit ist) zu prüfen und nützliche Informationen zu senden, wenn der Datenstrom endlich beginnt. gpsmonkann auch helfen, dieses Problem zu diagnostizieren.

  3. Wenn keine GPSD-Ausgabe vorhanden ist, führen Sie eine detailliertere Überprüfung durch. Führen Sie die folgenden Schritte aus, um den Dongle, das Kernelmodul, den Mount, den Geräteknoten und gpsd zu testen:

    • Trennen Sie den USB-Dongle und beenden Sie gpsd ( sudo pkill gpsd). Warten Sie 10 Sekunden, /dev/ttyUSB0bis es freigegeben ist.
    • Stecken Sie den USB-Dongle wieder ein und warten Sie 10 Sekunden.
    • Überprüfen Sie dmesg | tail -n 5, ob der Dongle wirklich montiert wurde /dev/ttyUSB0. Wenn es nicht gemountet wird, fehlt Ihnen ein Kernelmodul (Ihrer Beschreibung nach ist dies unwahrscheinlich). Manchmal wird es montiert, /dev/ttyUSB1wenn 0es nicht kostenlos ist!
    • Überprüfen Sie, ob udev den Dongle erkannt und gpsd ( ps -e | grep gpsd) gestartet hat . Wenn nicht, liegt ein Problem mit den udev-Regeln vor, und Sie müssen gpsd manuell mit startengpsd /dev/ttyUSB0
    • Sobald gpsd ausgeführt wird, überprüfen Sie die Dongle-Ausgabe (Dongle-Ausgabe = gpsd-Eingabe). Versuchen Sie es cat /dev/ttyUSB0(stoppen Sie es mit STRG + c). Wenn dies fehlschlägt, setzen Sie die Baudrate auf 4800 zurück:

      pkill gpsd
      stty 4800 > /dev/ttyUSB0
      gpsd -b /dev/ttyUSB0
      cat /dev/ttyUSB0     # CTRL+c to stop
      
    • Wenn Sie eine gute Dongle-Ausgabe haben (= gpsd-Eingabe), öffnen Sie ein zweites Terminalfenster und versuchen Sie entweder gpsmonoder cgps, die gpsd-Ausgabe zu testen.
    • Nachdem Sie nun eine gute Dongle-Ausgabe und eine gute GPSD-Ausgabe haben, versuchen Sie es mit TangoGPS.
user535733
quelle
2

Ich hatte ein ähnliches Problem. Ich habe hier alles gemacht und konnte es immer noch nicht in openCPN zum Laufen bringen. Ich bin auf ein anderes Forum gestoßen, in dem versucht wurde, die Standardeinstellungen für gpsd zu ändern /etc/default/gpsd.

# Default settings for the gpsd init script and the hotplug wrapper.

# Start the gpsd daemon automatically at boot time
START_DAEMON="false"

# Use USB hotplugging to add new USB devices automatically to the daemon
USBAUTO="true"

# Devices gpsd should collect to at boot time.
# They need to be read/writeable, either by user gpsd or the group dialout.
DEVICES="/dev/ttyUSB0"

# Other options you want to pass to gpsd
GPSD_OPTIONS="-n -G -b"
GPSD_SOCKET="/var/run/gpsd.sock"
#end of file gpsd

zu meiner Überraschung hat es funktioniert.

user273913
quelle