gps wrapper package. Simply uses launch files for existing ROS nodes. gpsd_client is the actual node that runs from the gps-umd package available in ROS.
gps is a wrapper package to use existing GPS packages based on gpsd
The package depends on existing ROS gps package gps-umd
that you can install using the following generic procedure:
sudo apt-get install ros-<distro>-gps-umd
gps_umd is actually a ROS stack with two packages:
gpsd_client
obtains data after gpsd
, which is a deamon in the operating system. If gpsd
is not installed then install it with:
sudo apt-get install gpsd
And then configure it:
dpkg-reconfigure gpsd
to change the options, stored in /etc/default/gpsd
, into something like:
START_DAEMON="true" GPSD_OPTIONS="" DEVICES="" USBAUTO="false" # "true" to make autodetection of USB port! GPSD_SOCKET="/var/run/gpsd.sock"
If you do not want the gpsd
scramble your serial ports, then do not allow auto USB detection and impose your serial port manually, e.g.
gpsd /dev/ttyUSB3
You can test if GPS is operational by running several tools such as cgps (text) or xgps (graphical) where you should see data and even a map of satelites... :-)
In some GPS receivers there is a problem with GPS time so the command must be invoked setting the gps_time as false. The actual command is something like this:
rosrun gpsd_client gpsd_client _host:=localhost _port:=2947 _use_gps_time:=false
Port is the default but can be changed.
The launch/gpsBU-353.launch
launch file has been created to easily launch this gpsd_client
for the particular receiver.