[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

This is an old revision of the document!


GPS-devices

Overview

GPS stands for Global Positioning System. GPS devices (also referred to as GPS receivers) provide the user with his/her geographic coordinates. I'm using a Garmin Etrex Legend HCx; my experiences in this HOWTO refer to this device, but it should also work at least for any Garmin GPS receiver.

Software

I'm mostly using gpsbabel; this command line tool can retrieve and send data from/to a GPS device.
There's also qlandkartegt which can deal with the data provided by the GPS receiver.
Both are available via SlackBuilds.org

Connecting the Device

When a GPS device is connected to the computer, it becomes recognized as a USB device by udev and the module garmin_gps is loaded. In most cases the module will not work for us. Fortunately gpsbabel comes with its own drivers so the module garmin_gps is not needed. On my computer I've blacklisted it in /etc/modprobe.d/blacklist.conf

udev-rules

If you want to access the device as a non-root user, the following udev rule allows users who are members of the plugdev group to access the GPS device.

# /etc/udev/rules.d/51-garmin.rules
ATTR{idVendor}=="091e", ATTR{idProduct}=="0003", MODE="666", GROUP="plugdev"

Sending Data to the Device

As an example here is the code which transfers a gpx waypoint file to a Garmin GPS device.

gpsbabel -i gpx -f $file -o garmin -F usb:

Further Reading

The website for gpsbabel
The website for qlandkartegt
The openstreetmap project

Sources

* Originally written by Markus Hutmacher

 howtos:hardware:gps_devices ()