GPS(1)
π GPS(1) π
okay so bestie, welcome to gps(1) β the overview page from the GPSD Documentation. it's the lil tour guide that shows you around every single gpsd client and helper, and honestly? she's giving main character energy. grab a snack, we're going through all of it β¨
π NAME π
gps β literally just the overview of gpsd clients and helpers. that's her whole job. and she ate π
β¨ SYNOPSIS β¨
Clients:
cgps [OPTIONS] [server[:port[:device]]]
gegps [OPTIONS] [server[:port[:device]]]
gps2udp [OPTIONS] [server[:port[:device]]]
gpscsv [OPTIONS] [server[:port[:device]]]
gpspipe [OPTIONS] [server[:port[:device]]]
gpsplot [OPTIONS] [server[:port[:device]]]
gpsprof [OPTIONS] [server[:port[:device]]]
gpsrinex [OPTIONS] [server[:port[:device]]]
gpssubframe [OPTIONS] [server[:port[:device]]]
gpxlogger [OPTIONS] [server[:port[:device]]]
lcdgps [OPTIONS] [server[:port[:device]]]
ubxtool [OPTIONS] [server[:port[:device]]]
xgps [OPTIONS] [server[:port[:device]]]
xgpsspeed [OPTIONS] [server[:port[:device]]]
zerk [OPTIONS] [server[:port[:device]]]
Helpers:
gpscat [OPTIONS] file-or-serial-port
gpsctl [OPTIONS]
gpsdctl action device
gpsdecode [OPTIONS]
gpsdebuginfo
gpsfake [OPTIONS]
gpsinit [OPTIONS]
ntpshmmon [OPTIONS]
ppscheck [OPTIONS] device
no cap, that's a lot of little programs. all of them iconic though π«Ά
πΈ DESCRIPTION πΈ
gpsd is a daemon β a background lil guy β that manages GPS receivers, GNSS receivers, AIS receivers, and honestly more than that. and over time? it just agglomerated a whole friend group of diverse clients that talk to gpsd for various tasks. it's a group chat and everyone's got a role π
π CLIENTS π
each of the gpsd clients connects to a gpsd daemon to use the data in various ways. if you want the deets, go check the ARGUMENTS and OPTIONS sections. iykyk β¨
cgpsβ curses terminal client forgpsd. old-school terminal vibes but make it cute πgegpsβ Google Earth client forgpsdπgpsβ Overview ofgpsdclients and helpers (yes bestie, she's listing herself, we love a self-aware queen)gpscsvβ dump the JSON output fromgpsdas CSV πgpsdecodeβ decode GPS, RTCM or AIS streams into a readable format πgpspipeβ tool to connect togpsdand retrieve sentences π°gpsplotβ tool to dynamically dump plot data fromgpsdπgpsprofβ profile a GPS andgpsd, plotting latency information β±οΈgpsrinexβ Read data fromgpsdconvert to RINEX3 and save to a file. πΎgpssubframeβ tool to dump subframe sentences fromgpsdπ§©gpxloggerβ Tool to connect togpsdand generate a GPX file πΊοΈlcdgpsβ LCD client forgpsdπ₯οΈxgpsβ X client forgpsdπͺxgpsspeedβ X speedometer forgpsdποΈ
π¦ HELPERS π¦
the gpsd helpers are the ones you call when you're doing administration of gpsd systems. the backstage crew. the stage managers. obsessed with them honestly π
gps2udpβ feed the take fromgpsdto one or more aggregation sites π‘gpscatβ dump the output from a GPS π±gpsctlβ control the modes of a GNSS receiver ποΈgpsdctlβ tool for sending commands togpsdover its control socket πΉοΈgpsdebuginfoβ Generate agpsddebug dump of your host. π©Ίgpsfakeβ test harness forgpsd, simulating a GNSS receiver πgpsinitβ initialize CAN kernel modules for GPSD π§ntploggpsβ loggpsddata πntpshmmonβ capture samples fromgpsdor otherntpdrefclock sources π°οΈ
π§ LIBRARIES π§
if you're a programmer bestie, there's more info on the gpsd right here:
gpsd_jsonβgpsdrequest/response protocol π¨libgpsβ C service library for communicating with the GPS daemon πlibgpsmmβ C++ and QT class wrappers for the GPS daemon πlibQgpsmmβ C++ and QT class wrappers for the GPS daemon (yes, again, she said it twice and honestly? valid) π
π OPTIONS π
the gpsd clients share a few common options. just a couple. tiny menu, very curated π
-?,-h,--helpβ Print a summary of options and then exit. your lil "what does this do again" button π-V,--versionβ Print the package version and exit. she'll tell you what version she is and then dip π
β ARGUMENTS β
by default, clients collect data from the local gpsd daemon running on localhost, using the default GPSD port 2947. but the optional argument to any client may override this behavior:
[server[:port[:device]]]
serverβ The optional host name, IPv4 address, or IPv6 address of thegpsddaemon to connect to. If the server specification contains square brackets, the part inside them is taken as an IPv6 address and port/device suffixes are only parsed after the trailing bracket. The default is localhost. πportβ The optional TCP port of the daemon to connect to. The default is2947. πͺdeviceβ The optional device name to be watched. π
some possible cases look like this:
example.comβ Connect to the default port2497onexample.com, trying both IPv4 and IPv6. πexample.com:2317β Look at port2317onexample.com, trying both IPv4 and IPv6. π’localhost::/dev/ttyS1β Look at the default port,2947, oflocalhost, trying both IPv4 and IPv6 and watching output from serial device 1. π71.162.241.5:2317:/dev/ttyS3β Look at port2317at the specified IPv4 address, collecting data from attached serial device 3. π[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:2317:/dev/ttyS5β Look at port2317at the specified IPv6 address, collecting data from attached serial device 5. π°οΈ
not me noticing that first example says port2497while everything else says2947π i'm just the messenger bestie, i'm telling you exactly what the page says, character for character, no edits, no cap.
π₯ ENVIRONMENT π₯
Most of the gpsd clients check for the environment variables GPSD_UNITS, LC_MEASUREMENT, and LANG. Maybe more. (she's honest about not being 100% sure and honestly? respect π«Ά)
GPSD_UNITS is checked if no unit system is specified on the command line. It may be set to 'i'. 'imperial', 'm', 'metric', or 'n', 'nautical'.
LC_MEASUREMENT and then LANG are checked if no unit system has been specified on the command line, or in GPSD_UNITS. If the value is 'C', 'POSIX', or begins with 'en_US' the unit system is set to imperial. The default if no system has been selected is metric.
π RETURN VALUES π
the gpsd clients return simple success or failure codes. no drama, just vibes:
0β on success. slay β1β on failure. π
πΈ SEE ALSO πΈ
gegps(1), gpsctl(1), gpsdebuginfo(1), gpsprof(1), gpsfake(1), gpscat(1), gpspipe(1), xgps(1). xgpsspeed(1)
π RESOURCES π
Project web site: https://gpsd.io/ π¦
π COPYING π
This file is Copyright 2013 by the GPSD project SPDX-License-Identifier: BSD-2-clause
okay that's the whole page bestie, you made it to the end, so proud π₯Ήπ
this has been GPSD Version 3.27.5, dated 2025-11-04 β that's the source, the version, and the date all in one cute lil sign-off. go forth and connect to things β¨π°οΈπ
π¦ where this page comes from
- arch rolling: gpsd 3.27.5-1 Β· BSD
- fedora 44: gpsd-clients 1:3.27.5-3.fc44 Β· BSD-2-Clause
- fedora 44: gpsd-clients 1:3.27.5-5.fc44 Β· BSD-2-Clause
- nixos 26.05: gpsd 3.27.5
- nixpkgs unstable: gpsd 3.27.5
- opensuse-leap 16.0: gpsd-clients 3.27.5-160000.1.1 Β· BSD-3-Clause
- opensuse-leap 16.0: gpsd-clients 3.27.5-160000.1.1 Β· BSD-3-Clause
- opensuse-leap 16.0: gpsd-clients 3.27.5-160000.1.1 Β· BSD-3-Clause
- opensuse-leap 16.0: gpsd-clients 3.27.5-160000.1.1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms