Estoy tratando de averiguar qué impide que gpsd de conectarse automáticamente a un dongle GPS BU 353 externo a través de USB y recibir datos. Tengo el mismo problema en mis dos portátiles (con hardware diferente), por lo que se trata simplemente de un problema de configuración de software.
He logrado obtener gpsd trabajando manualmente, usando los siguientes pasos, pero cada vez que mi máquina se apaga, debo seguir estos pasos nuevamente.
-
sudo killall gpsd -
Elimina cualquier socket
gpsdpodría haber dejado atrás con :sudo rm /var/run/gpsd.sock
-
Compruebe la ruta del dispositivo:
dmesg - which shows PLU353 -
Asegúrese de que ningún otro programa esté usando el dispositivo. No hay ninguno en la lista
lsof -n | grep /dev/ttyUSB0 -
Iniciar manualmente
gpsd:sudo gpsd /dev/ttyUSB0 -F /var/run/gpsd.sock -
xgpsve la salida del GPS, así que esto funciona
Mis mejores conjeturas son que gpsd necesita unirse a un grupo o recibir permisos adicionales, o alternativamente, que es un problema con udev configuración. Pero estoy dando tumbos en la oscuridad, solo haciendo conjeturas descabelladas.
Respuesta aceptada:
Tienes razón:es un problema de pertenencia a un grupo. Primero, vea quién es el propietario del dispositivo:
ls -l /dev/ttyUSB0
En MI sistema, no tengo /dev/ttyUSB0 , entonces usaré /dev/ttyS0 en cambio
[email protected]:~(0)$ ls -l /dev/ttyS0
crw-rw---- 1 root dialout 4, 64 Feb 23 08:19 /dev/ttyS0
[email protected]:~(0)$
La salida de ls el comando muestra que es propiedad de root:dialout y permite el acceso de grupo al dispositivo.
Agregue su usuario al dialout (o lo que sea adecuado para su sistema) grupo con:
sudo adduser $USER dialout
Luego, para que la membresía de este grupo surta efecto, cierre la sesión/inicie sesión, O BIEN newgrp dialout para iniciar un shell con la pertenencia a ese grupo.
Verifique la membresía de su grupo con /usr/bin/id .