= GPSD Installation Instructions = Here are the steps for installing GPSD and verifying its performance. They assume you have GPSD available as an installable binary package, Instructions for building GPSD from source (including cross-building) are in the file "build.txt" in the source distribution. == Check that your GPS is live and you can get data from it == Start by making sure you can get data from your GPS, otherwise the later steps will be very frustrating. In this command stty -F /dev/ttyXXX ispeed 4800 && cat =6 | required for various clients and utilities |pgtk-2/cairo bindings | the main test client, xgps, needs this |========================================================================== Some ncurses packages contain the terminfo library; some break it out separately as libtinfo5 or libtinfo. The Python code in GPSD is actually compatible back to Python 2.4 except that you need either the json library module from 2.6 or the functionally equivalent simplejson backport. == Install the package(s) == Up-to-date gpsd packages are generally available for Linux distributions including Debian and derivatives (including Ubuntu and Mint), Fedora and derivatives (including CentOS), openSUSE, PCLinuxOS, Mageia, and Slackware. In the embedded space, CeroWRT carries GPSD. The GPSD package in the FreeBSD ports tree is also reliably up to date. Even if your distribution is not on this list, it is quite likely GPSD has already been packaged for it. Whatever distribution you are running, the name of the core GPSD package containing the service daemon is almost certainly "gpsd". However, many distributions break up GPSD into separate installable packages for the core daemon and clients; you should search your repository index for anything with gpsd as a prefix. == How to test the software == 1. Start gpsd. You'll need to give it as an argument a path to a serial or USB port with a GPS attached to it. Your test command should look something like this: gpsd -D 5 -N -n /dev/ttyUSB0 2. Once gpsd is running, telnet to port 2947. You should see a greeting line that's a JSON object describing GPSD's version. Now plug in your GPS (or AIS receiver, or RTCM2 receiver). 3. Type '?WATCH={"enable":true,"json":true};' to start raw and watcher modes. You should see lines beginning with '{' that are JSON objects representing reports from your GPS; these are reports in GPSD protocol. 4. Start the xgps or cgps client. Calling it with no arguments should do the right thing. You should see a display panel with position/velocity-time information, and a satellite display. The displays won't look very interesting until the GPS acquires satellite lock. 5. Have patience. If you are cold-starting a new GPS, it may take 15-20 minutes after it gets a skyview for it to download an ephemeris and begin delivering fixes. 6. A FAQ and troubleshooting instructions can be found at the GPSD project site. == Once you have verified correct operation == 1. If you installed from a .deb under Debian or a Debian-derived system, you may need to `dpkg-reconfigure -plow gpsd' to enable the hotplug magic ("Start gpsd automatically"). 2. Check out the list of supported hardware at the Hardware page on the GPSD project's website. If your GPS isn't on the list, please send us information to add a new line to the table. Directions are included on that page. We can also use updates of the latest version number known to work with hardware already supported. 3. GPSD includes a PHP script that you can use to generate a PHP status page for your GPS if you wish. (It may not be in the core package.) It will be installed in your HTTP document directory. The first time it's invoked, it will generate a file called 'gpsd_config.inc' in that directory containing configuration information; edit to taste. For special instructions related to using GPSD for time service, see the GPSD Time Service HOWTO in the distribution or on the web.