Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
GPSDECODE(1)		      GPSD Documentation		  GPSDECODE(1)

       gpsdecode - decode GPS, RTCM or AIS streams into	a readable format

       gpsdecode [-c] [-d] [-e]	[-j] [-m] [-n] [-s] [-t	typelist] [-u] [-v]
		 [-D debuglevel] [-V]

       This tool is a batch-mode decoder for NMEA and various binary packet
       formats associated with GPS, AIS, and differential-correction services.
       It produces a JSON dump on standard output from binary on standard
       input. The JSON is the same format documented in	gpsd(8); this tool
       uses the	same decoding logic as gpsd, but with a	simpler	interface
       intended	for batch processing of	data files.

       All sensor-input	formats	known to the GPSD project can be decoded by
       this tool. These	include: NMEA, AIVDM (the NMEA-derived sentence	format
       used by AIS, the	marine Automatic Identification	System), RTCM2,	and
       all supported GPS binary	formats	(notably including SiRF). See gpsd(8)
       for applicable standards	and known limitations of the decoding logic.

       You can use this	tool with nc(1)	to examine AIS feeds from AIS pooling
       services, RTCM feeds from RTCM receivers	or NTRIP broadcasters.

       The -d option tells the program to decode packets presented on standard
       input to	standard output. This is the default behavior.

       The -j explicitly sets the output dump format to	JSON (the default

       With the	-m option, dump	minimum	lengths	for each packet	type in	the
       input (ignoring comment packets). This is probably of interest only to
       GSD developers.

       The -n enables dumping in generated pseudo-NME0183.

       The -e option option tells the program to encode	JSON on	standard input
       to JSON on standard output. This	option is only useful for
       regression-testing of the JSON dumping and parsing code.

       The -s option option tells the program to report	AIS Type 24 sentence
       halves separately rather	than attempting	to aggregate them.

       The -t accepts a	comma-separated	list of	numeric	types. Packets with a
       numeric AIS, RTCM2, or RTCM3 type are passed through and	output only if
       they match a type in the	list. Packets of other kinds (in particular
       GPS packets) are	passed through unconditionally.

       The -u suppresses scaling of AIS	data to	float quantities and text
       expansion of numeric codes. A dump with this option is lossless.

       The -v enables dumping of textual packets to output as they are
       received	on input, immediately preceding	corresponding output.

       The -c sets the AIS dump	format to separate fields with an ASCII	pipe
       symbol. Fields are dumped in the	order they occur in the	AIS packet.
       Numerics	are not	scaled (-u is forced). Strings are unpacked from
       six-bit to full ASCII

       The -V option directs the program to emit its version number, then

       The -D option sets a debug verbosity level. It is mainly	of interest to

       With the	-c option, dump	lines are values of AIS	payload	fields,
       pipe-separated, in the order that they occur in the payload. Spans of
       fields expressing a date	are emitted as an ISO8601 timestamp (look for
       colons and the trailing Z indicating Zulu/UTC time), and	the 19-bit
       group of	TDMA status fields found at the	end of message types 1-4 are
       are dumped as a single unsigned integer (in hex preceded	by "0x").
       Unused regional-authority fields	are also dumped	(in hex	preceded by
       "0x"). Variable-length binary fields are	dumped as an integer bit
       length, followed	by a colon, followed by	a hex dump.

       gpsd(8),	gpsctl(1), gpsdctl(8), gps(1), libgps(3), libgpsmm(3),
       gpsprof(1), gpsfake(1),

       Eric S. Raymond <>.

The GPSD Project		  13 Jul 2005			  GPSDECODE(1)


Want to link to this manual page? Use this URL:

home | help