GPS BU-353-S4 con NTP

Raspberry Pi GPS

Bueno el objetivo principal de esta entrada es instalar el GPS al Raspberry Pi es conseguir que el GPS BU-353-S4 que muestro a continuación funcione en el Raspberry Pi y posteriormente buscar la manera de posicionar la longitud y latitud que nos regresa en un mapa.

Este GPS BU-353-S4 con conector USB incluye un CD de configuración para el Windows pero no lo ocupamos; Antes de conectar ejecutamos el código sudo lsusb para ver que dispositivos se encuentran conectados. Ahora bien conectamos el GPS BU-353-S4 y tecleamos nuevamente el comando sudo lsusb.
Identificamos cual es el dispositivo que no se encontraba conectado antes de haber ejecutado por segunda vez el comando. En mi caso es el siguiente:
 
Bus 001 Device 009: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
 
Si verificas en el /var/log/syslog notaras que tiene creado el puerto como /dev/ttyUSB0 como el primer puerto serial.

Raspberry Pi con GPS BU-353-S4

Ahora para recibir los datos de los satélites mediante el GPS BU-353-S4 en el Raspberry Pi, necesitamos instalar unos repositorios disponibles para linux que se llaman gpsd para tener el cliente y servidor para el GPS BU-353-S4, ejecutando el siguiente comando:
 
sudo apt-get install gpsd gpsd-clients python-gps
 
después necesitamos iniciar el demonio:
 
sudo gpsd /dev/ttyUSB0 -F /var/run/gpsd.sock
 
Ignora cualquier mensaje que te arroje la consola o los archivos log, veras mensajes relacionados con el IPv6 también puedes ignorar eso.

GPS BU-353-S4: Longitud y Latitud

Primero debes saber que el GPS BU-353-S4 no sirve en interiores, ya que necesita una vista clara del cielo así que para esto he puesto la antena del GPS BU-353-S4  cerca de una puerta abierta. Una de las ventajas de este GPS BU-353-S4 es que tiene un Super-cohesiva magnética por lo tanto me permite montarlo aquí:

 

Ahora ya que posicionamos el GPS BU-353-S4 o el Raspberry Pi cerca de alguna ventana o un lugar donde pueda recibir una señal aceptable el GPS BU-353-S4 ejecutamos el siguiente comando:
 
sudo cgps -s
 
Lo que hace la bandera -s es decirle al GPS BU-353-S4 que no escriba los datos en bruto, así como los datos procesados. Y conseguiremos la siguiente salida:
NOTA!!!: Si les muestra alguna alerta de timeout al intentar ejecutar el cgps -s, intenten darle permisos al gps con:
 
sudo chmod 775 /dev/ttyUSB0
Notaras que yo estoy recibiendo información de 10 satelites. Las lineas Err te dicen el error en tu posición. Si lo llegas a notar las lineas Err llegan a cambiar a cada segundo o por lo menos aproximadamente. El 3D Fix le dice que tiene suficientes datos para una solución 3D en su localización (la altitud, por ejemplo). 
También es posible manejar el X-Windows; En mi caso me abstengo por hacerlo y explicarlo para que empecemos a acostumbrarnos al ambiente consola y evitar que el Raspberry Pi tenga que trabajar muchos procesos innecesarios haciéndose mas lento. Pero si aun así deseas aprenderlo te recomiendo el link fuente de esta entrada ahí encontraras como usarlo en X-Windows.

Raspberry Pi ntp con el GPS BU-353-S4

 
Ahora que ya tenemos el GPS BU-353-S4 funcionando podemos hacer que el Raspberry PI lo use cada determinado tiempo. Para hacer esto necesitamos configurar el ntp en Raspberry Pi para el uso de los satélites GPS BU-353-S4 como recurso del tiempo. Ahora ya debes de tener instalado el ntp en caso de que no lo este, entonces instalarlo con el comando:
 
sudo apt-get install ntp
Después necesitamos configurar  el archivo: sudo nano /etc/ntp.conf y agregarle algunas lineas para definir el GPS BU-353-S4. Esto puede ser antes o después de las lineas existentes que comienzan con el servidor.
 
#gps ntp
server 127.127.28.0 minpoll 4
fudge 127.127.28.0 time1 0.183 refid NMEA
server 127.127.28.1 minpoll 4 prefer
fudge 127.127.28.1 refid PPS
Ahora reinicia el ntp con el siguiente comando:
 
sudo service ntp restart
 
Ahora bien, si se consulta el servidor después de un tiempo, podrías verlo sincronizado con el GPS BU-353-S4. Ejecutando el comando:
 
sudo ntpq -p

NTP con GPS BU-353-S4

En un principio notaras que el NTP no se conecta con el GPS BU-353-S4 en un primer momento; Parece como si empezara el gpsd sin el enlace al puerto serie. Por lo tanto tendrías que hacer lo siguiente:

 
$ sudo killall gpsd
$ sudo gpsd /dev/ttyUSB0 -F /var/run/gpsd.sock
$ sudo service ntp restart
 
Y con esto ya debe de estar funcionando bien.

 

 

Algunas veces mientras corre el  cgps y espera a que se haga una revisión también corrige esto. De esta manera ya cuentas con el gps configurado mediante el ntp del Raspberry Pi

Conoce más al escritor Sául Vázquez Radilla.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *