Difference between revisions of "GPS daemon"

From ArmadeusWiki
Jump to: navigation, search
m (Usage)
(Usage)
Line 22: Line 22:
  
 
==Usage==
 
==Usage==
* gpsd is automatically launched at startup by ''/etc/init.d/S50gpsd''. At first startup you may need to add the following line in the start() method of this script:
+
* ''gpsd'' is automatically launched at startup by ''/etc/init.d/S50gpsd''. At first startup you may need to add the following line in the start() method of this script:
 
<pre class="apf">
 
<pre class="apf">
 
# nano /etc/init.d/S50gpsd
 
# nano /etc/init.d/S50gpsd
Line 33: Line 33:
 
}
 
}
 
</pre>
 
</pre>
 +
 +
===Manual access===
 +
* ''gpsd'' is a daemon running in background and waiting for client to connect to its TCP port 2947. To check it is well running, you can connect to it with telnet:
 +
<pre class="apf">
 +
# telnet localhost 2947
 +
</pre>
 +
* then you can give it some commands (more infos [http://gpsd.berlios.de/gpsd.html here]):
 +
<pre class="apf">
 +
?VERSION;
 +
{"class":"VERSION","release":"2.94","rev":"2010-06-09T13:27:04","proto_major":3,"proto_minor":2}
 +
 +
?DEVICES;
 +
{"class":"DEVICES","devices":[{"class":"DEVICE","path":"/dev/ttySMX4","activated":1276183248.47,"flags":1,"driver":"Generic NMEA","native":0,"bps":0,"parity":"N","stopbits":1,"cycle":1.00}]}
 +
 +
?POLL;
 +
{"class":"POLL","timestamp":1276183453.266,"active":1,"fixes":[{"class":"TPV","tag":"GLL","device":"/dev/ttySMX4","time":1276176096.000,"ept":0.005,"lat":47.239685500,"lon":6.019204667,"alt":268.100,...
 +
</pre>
 +
 +
===Graphical clients===
 +
* cgps (ncurses based), installed by default:
 +
<pre class="apf">
 +
# cgps
 +
┌───────────────────────────────────────────┐┌─────────────────────────────────┐
 +
│    Time:      2010-06-10T13:41:26.0Z    ││PRN:  Elev:  Azim:  SNR:  Used: │
 +
│    Latitude:    47.238710 N              ││  8    07    079    00      N  │
 +
│    Longitude:    6.018278 E              ││  9    47    282    29      Y  │
 +
│    Altitude:  1055.4 ft                  ││  12    10    216    00      N  │
 +
│    Speed:      0.7 mph                    ││  15    79    194    39      Y  │
 +
│    Heading:    265.5 deg (true)          ││  17    00    000    22      N  │
 +
│    Climb:      0.0 ft/min                ││  18    00    000    22      N  │
 +
│    Status:    3D FIX (43 secs)          ││  26    84    265    25      Y  │
 +
│    GPS Type:  Generic NMEA              ││  27    61    291    33      Y  │
 +
│    Horizontal Err:  +/- 83 ft            ││                                │
 +
│    Vertical Err:    +/- 75 ft            ││                                │
 +
│    Course Err:      n/a                  ││                                │
 +
│    Speed Err:      +/- 114 mph          ││                                │
 +
│                                          ││                                │
 +
│                                          ││                                │
 +
│                                          ││                                │
 +
│                                          ││                                │
 +
│                                          ││                                │
 +
│                                          ││                                │
 +
└───────────────────────────────────────────┘└─────────────────────────────────┘
 +
</pre>
 +
 +
* Navit, etc....
  
 
==Links==
 
==Links==
 
* [http://gpsd.berlios.de/ gpsd website]
 
* [http://gpsd.berlios.de/ gpsd website]

Revision as of 14:43, 10 June 2010

About

From gpsd website: gpsd is a service daemon that monitors one or more GPSes or AIS receivers attached to a host computer through serial or USB ports, making all data on the location/course/velocity of the sensors available to be queried on TCP port 2947 of the host computer. With gpsd, multiple location-aware client applications (such as navigational and wardriving software) can share access to receivers without contention or loss of data. Also, gpsd responds to queries with a format that is substantially easier to parse than the NMEA 0183 emitted by most GPSes. The gpsd distribution includes a linkable C service library, a C++ wrapper class, and a Python module that developers of gpsd-aware applications can use to encapsulate all communication with gpsd.

Installation

$ make menuconfig
Package Selection for the target  --->
    Hardware handling / blockdevices and filesystem maintenance  --->
        [*]   gpsd
                devices/protocol support  --->
                gpsd features  --->
  • Let default devices/features if you don't know what they mean.
$ make
  • reflash your rootfs

Usage

  • gpsd is automatically launched at startup by /etc/init.d/S50gpsd. At first startup you may need to add the following line in the start() method of this script:
# nano /etc/init.d/S50gpsd


start() {
        stty -F /dev/ttySMX4 raw -echo -echoe -echok 38400               <<<<<<<<<<<<--------------
        echo -n "Starting $NAME: "
        start-stop-daemon -S -q -p $PIDFILE --exec $DAEMON -- -P $PIDFILE $DEVICES && echo "OK" || echo "Failed"
}

Manual access

  • gpsd is a daemon running in background and waiting for client to connect to its TCP port 2947. To check it is well running, you can connect to it with telnet:
# telnet localhost 2947
  • then you can give it some commands (more infos here):
?VERSION;
{"class":"VERSION","release":"2.94","rev":"2010-06-09T13:27:04","proto_major":3,"proto_minor":2}

?DEVICES;
{"class":"DEVICES","devices":[{"class":"DEVICE","path":"/dev/ttySMX4","activated":1276183248.47,"flags":1,"driver":"Generic NMEA","native":0,"bps":0,"parity":"N","stopbits":1,"cycle":1.00}]}

?POLL;
{"class":"POLL","timestamp":1276183453.266,"active":1,"fixes":[{"class":"TPV","tag":"GLL","device":"/dev/ttySMX4","time":1276176096.000,"ept":0.005,"lat":47.239685500,"lon":6.019204667,"alt":268.100,...

Graphical clients

  • cgps (ncurses based), installed by default:
# cgps
┌───────────────────────────────────────────┐┌─────────────────────────────────┐
│    Time:       2010-06-10T13:41:26.0Z     ││PRN:   Elev:  Azim:  SNR:  Used: │
│    Latitude:    47.238710 N               ││   8    07    079    00      N   │
│    Longitude:    6.018278 E               ││   9    47    282    29      Y   │
│    Altitude:   1055.4 ft                  ││  12    10    216    00      N   │
│    Speed:      0.7 mph                    ││  15    79    194    39      Y   │
│    Heading:    265.5 deg (true)           ││  17    00    000    22      N   │
│    Climb:      0.0 ft/min                 ││  18    00    000    22      N   │
│    Status:     3D FIX (43 secs)           ││  26    84    265    25      Y   │
│    GPS Type:   Generic NMEA               ││  27    61    291    33      Y   │
│    Horizontal Err:  +/- 83 ft             ││                                 │
│    Vertical Err:    +/- 75 ft             ││                                 │
│    Course Err:      n/a                   ││                                 │
│    Speed Err:       +/- 114 mph           ││                                 │
│                                           ││                                 │
│                                           ││                                 │
│                                           ││                                 │
│                                           ││                                 │
│                                           ││                                 │
│                                           ││                                 │
└───────────────────────────────────────────┘└─────────────────────────────────┘
  • Navit, etc....

Links