Ich versuche herauszufinden, was gpsd verhindert von der automatischen Verbindung zu einem externen GPS-Dongle BU 353 über USB und dem Empfangen von Daten. Ich habe das gleiche Problem auf meinen beiden Laptops (mit unterschiedlicher Hardware), also ist dies ein reines Softwarekonfigurationsproblem.
Ich habe es geschafft, gpsd zu bekommen manuell mit den folgenden Schritten arbeiten, aber jedes Mal, wenn mein Gerät ausgeschaltet wird, muss ich diese Schritte erneut ausführen.
-
sudo killall gpsd -
Entfernen Sie alle Sockets
zurückgelassen worden seingpsdkönnte mit :sudo rm /var/run/gpsd.sock
-
Überprüfen Sie den Gerätepfad:
dmesg - which shows PLU353 -
Stellen Sie sicher, dass keine anderen Programme das Gerät verwenden. Es sind keine aufgelistet
lsof -n | grep /dev/ttyUSB0 -
Starten Sie
gpsdmanuell :sudo gpsd /dev/ttyUSB0 -F /var/run/gpsd.sock -
xgpssieht die GPS-Ausgabe – das funktioniert also
Meine besten Vermutungen sind, dass gpsd einer Gruppe beitreten oder zusätzliche Berechtigungen erhalten muss, oder alternativ, dass es sich um ein Problem mit udev handelt Aufbau. Aber ich tappe im Dunkeln, mache nur wilde Vermutungen.
Akzeptierte Antwort:
Sie haben Recht – es handelt sich um ein Gruppenmitgliedschaftsproblem. Sehen Sie zuerst, wem das Gerät gehört:
ls -l /dev/ttyUSB0
Auf MEINEM System habe ich /dev/ttyUSB0 nicht , also verwende ich /dev/ttyS0 stattdessen
[email protected]:~(0)$ ls -l /dev/ttyS0
crw-rw---- 1 root dialout 4, 64 Feb 23 08:19 /dev/ttyS0
[email protected]:~(0)$
Die Ausgabe von ls Der Befehl zeigt, dass er root:dialout gehört und erlaubt Gruppenzugriff auf das Gerät.
Fügen Sie Ihren Benutzer zum dialout hinzu (oder was auch immer für Ihr System richtig ist) Gruppe mit:
sudo adduser $USER dialout
Damit diese Gruppenmitgliedschaft wirksam wird, melden Sie sich ab/an, ODER newgrp dialout um eine Shell mit dieser Gruppenmitgliedschaft zu starten.
Überprüfen Sie Ihre Gruppenmitgliedschaft mit /usr/bin/id .