======Installer Gpsd====== ==== Ressources/Sources ==== * http://www.catb.org/gpsd/installation.html * http://blog.whatgeek.com.pt/2015/03/connect-a-gps-to-the-raspberry-pi/ * http://www.d3noob.org/2014/02/load-kml-gpx-or-geojson-traces-into.html ==== Matériel ==== * Navilock GNSS GPS NL-8002U u-blox 8 USB 1,50 m [u-blox GNSS receiver (idVendor=1546, idProduct=01a8)] ==== Installation et tests ==== * Installer les paquets suivant : * Raspbian/Debian : '' apt-get install gpsd gpsd-clients '' * Opensuse : '' zypper in gpsd gpsd-clients '' * Afficher la liste du matériel USB connecté : '' lsusb '' * Brancher le GPS sur un port USB * GPS connecté la commande suivante devrait afficher une ligne contenant **U-Blox AG** : '' lsusb '' * Rechercher l'adresse du GPS à la fin de '' dmesg'', elle devrait être de la forme **/dev/tty...** : '' dmesg '' * Dans notre cas, nous obtenons : ** /dev/ttyACM0 ** * Tester l'activité du GPS : '' gpsd -D5 -N -n -F /var/run/gpsd.sock /dev/ttyACM0 '' * Voir qui écoute sur le port 2947 de Gpsd : '' lsof -i :2947 '' * Voir tous les fichiers ouverts qui contiennent le mot **gps** : '' lsof -n | grep gps '' Pour lancer Gpsd : * dans un 1er terminal le lancer : '' gpsd -D5 -N -n -F /var/run/gpsd.sock /dev/ttyACM0 '' * dans un second voir son activité avec au choix : * //Gpsmon// : '' gpsmon '' * //Cgps// : '' cgps -s '' Pour accéder à // /dev/ttyACM0 // en tant qu'utilisateur classique : * vérifier quel est le groupe de // /dev/ttyACM0 // (ici //dialout//) : ''ls -al /dev/ttyACM0 '' * ajouter son compte au groupe //dialout// : '' usermod -a -G dialout jpm '' * se déconnecter puis se reconnecter pour appliquer les changements. ==== Activation de systemd avec Gpsd ==== Par défaut, Gpsd utilise la version socket pour la désactiver il faut arrêter le service puis le socket : * '' systemctl stop gpsd.service ; systemctl disable gpsd.service '' * '' systemctl stop gpsd.socket ; systemctl disable gpsd.socket '' * Pour lister les services Gpsd en cours d'utilisation : '' systemctl list-units |grep gps '' * Pour réactiver ces services : '' systemctl enable gpsd '' ==== NMEA, USB ==== Avec Node, il est possible de se passer de GPSD et parser directement les trames NMEA qui arrive. Pour cela, il faut utiliser les modules : * **serialport** : pour se connecter à /dev/ttyACM0 * **nmea** ou nmea-simple : pour décoder les trames NMEA.