Title: ubxtool
Author: [see the "AUTHOR" section]
Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
Date: 26 Jun 2019
Manual: GPSD Documentation
Source: The GPSD Project
Language: English
* Define some portability stuff
-----------------------------------------------------------------
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
http://bugs.debian.org/507673
http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-----------------------------------------------------------------
* set default formatting
-----------------------------------------------------------------
disable hyphenation
disable justification (adjust text to left margin only)
-----------------------------------------------------------------
* MAIN CONTENT STARTS HERE *
-----------------------------------------------------------------
\w'ubxtool 'u ubxtool [-?] [-c command] [-d disable] [-e enable] [-f file/device] [-g item] [-h] [-i port] [-m mode] [-P protver] [-p preset] [-R rawfile] [-r] [-S setspeed] [-s speed] [-V] [-v verbosity] [-w wait] [-x item] [-z item,val] [[server[:port[:device]]]]
ubxtool is a tool for u-blox GPS. If you do not have a u-blox GPS then can stop reading now.
This tool operates with your u-blox GPS at a very low level. To understand ubxtool you must first be familiar with your u-blox GPS and the documentation for the u-blox binary protocol. The u-blox protocol varies greatly depending on GPS model and firmware revision. Use the u-blox documentation for your model and firmware.
ubxtool can decode common u-blox binary messages, poll the GPS status, enable and disable GPS features, and send user generated commands to the GPS. It can read binary messages from a file. It can read and write directly through a serial device, or through a running gpsd instance.
The program accepts the following options:
-?
Makes ubxtool print a usage message and exit.
-c COMMAND
Send a command to the GPS. Accepts one parameter, COMMAND, a comma-separated list of hexadecimal bytes specifying the class, the ID, and any needed payload. The header, length, and checksum are added automatically.
-d OPTION
Disable an option in the GPS. Accepts one parameter, OPTION, the option to disable.
BEIDOU
Disable use of the BeiDou (COMPASS) constellation.
BINARY
Disable sending of the basic binary messages.
ECEF
Disable sending of ECEF binary messages.
GALILEO
Disable use of the GALILEO constellation.
GLONASS
Disable use of the GLONASS constellation.
GPS
Disable use of the GPS and QZSS constellations.
NED
Disable sending of NED binary messages. UBX-NAV-VELNED and UBX-NAV-RELPOSNED.
NMEA
Disable sending basic NMEA messages. The messages are GBS, GGA, GSA, GGL, GST, GSV, RMC, VTG, and ZDA.
PPS
Disable TIMEPULSE 0.
RAWX
Disable sending of the UBX-RXM-RAWX messages.
SBAS
Disable use of the SBAS constellation.
SFRBX
Disable use of the SFRBX messages.
SURVEYIN
Disable survey-in mode with TMODE2.
TP
Disable sending UBX-TIM-TP.
-e OPTION
Enable an option in the GPS. Accepts one parameter, OPTION, the option to enable. -e accepts the same OPTIONs as -d, except the action is to enable the option.
-f FILE
Connect to a file or device. Accepts one parameter, FILE, the file or device to open. Files are opened read-only. Character devices are opened read/write, unless the -r parameter is given. Requires the pyserial module.
-g ITEM
Get the value of ITEM name from the GPS (UBX-CFG-VALGET). See the section on CONFIGURATION ITEMS
-h
Makes ubxtool print a usage message and exit.
-i port
Specifies port (interface) for port-related commands.
-m mode
Sets optional mode parameter to a -p PRESET command.
-P protver
Sets the protocol version to use for sending commands. Minimum 10 (ublox 5). Maximum 29 (u-blox 9). Use "ubxtool -p MON-VER" to see the version your GPS supports.
-p PRESET
Send a preset command the GPS. Accepts one parameter, PRESET, the name of the command to send. Only the common PRESETS are shown here. To see the full list run "ubxtool -h -v 2".
COLDBOOT
Coldboot the GPS (UBX-CFG-RST).
HOTBOOT
Hotboot the GPS (UBX-CFG-RST).
MODEL
Configure the Dynamic Platform Model. (UBX-CFG-NAV5).
PMS
Set power management settings (UBX-CFG-PMS).
RESET
Reset configuration to defaults (UBX-CFG-CFG).
SAVE
Save current configuration (UBX-CFG-CFG).
MON-RESETODO
Reset the odometer (UBX-MON-RESETODO).
MON-VER
Poll GPS version (UBX-MON-VER).
WARMBOOT
Warmboot the GPS (UBX-CFG-RST).
-R RAW
Save all raw serial data received from the GPS into the file RAW.
-r
Read only. Do not send anything to the GPS.
-S SPEED
Set the GPS serial port speed to SPEED bps.
-s SPEED
Set local serial port speed to SPEED bps. Default 9,600 bps.
-V
Print ubxtool version and exit.
-v VERBOSITY
Set verbosity level to VERBOSITY. Verbosity can be from 0 (very quiet), 2 (decode messages), to 4 (very noisy). Default 1.
-w WAIT
Wait for WAIT seconds before exiting. Default 2 seconds.
-x ITEM
Delete the value of ITEM name from the GPS (UBX_CFG-VALDEL). Returning to the GPS default for that item. See the section on CONFIGURATION ITEMS
-z ITEM,VAL
Set the value of ITEM name to VAL in the GPS (UBX-CFG-VALSET). See the section on CONFIGURATION ITEMS
[server[:port[:device]]]
By default, ubxtool collects data from all compatible devices on localhost, using the default GPSD port 2947. An optional argument may specify a server to get data from. A colon-separated suffix is taken as a port number. If there is a second colon-separated suffix, that is taken as a specific device name to be watched. Further details on the gps(1) man page.
Configuring u-blox GPS with the traditional configuration messages is fraught with problems. Many configuration messages interact in odd ways. Something as simple as changing the serial port speed requires you to read the curent configuration using UBX-CFG-PRT for the proper port, merging in the change, the writing back the changed UBX-CFG-PRT message. Or just guessing at the current configuration and overwriting it all.
The u-blox 9 series, protocol version 27+, tries, but does not completely succeed, to solve the problem with Configuration Items. If your GPS does not support protocol version 27+, then this section does not apply to you.
Most of the configuration variables in the GPS have been assigned a 32-bit Key ID. Each Key ID has been assigned a Key Name. Over 600 Key Names are supported by ubxtool. To see them all do: "ubxtool -h -v 3". Each Key references one specific value.
To get the value related to an item, use "-g ITEM".
To reset the value related to an item to it default value, use "-x ITEM".
To set an ITEM name to a value, use "-z ITEM,VAL".
See the EXAMPLES section for concrete examples.
Decode raw log file:
.\}
ubxtool -r -f ublox-neo-m8n.log
Change GPS port speed of device on /dev/ttyAMA0 to 230,400 bps:
.\}Watch entire GPS reset cycle, include $GPTXT messages:
.\}
ubxtool -p COLDBOOT -w 20 -v 2
Poll Enabled Constellations:
.\}
ubxtool -p CFG-GNSS
.\}
ubxtool -w 5 x.example.com
The following examples require a GPS supporting protocol 27 or greater.
To check the current dynamic model, change it to 6 (AIR1, Airborne with <1g acceleration), revert to the default setting, and verify the faults was restored.
.\}
$ ubxtool -g CFG-NAVSPG-DYNMODEL [...] UBX-CFG-VALGET: version 1 layer 0 reserved 0,0 layers (ram) item CFG-NAVSPG-DYNMODEL/0x20110021 val 2 [...] $ ubxtool -z CFG-NAVSPG-DYNMODEL,6 [...] UBX-ACK-ACK: ACK to Class x6 (CFG) ID x8a (VALSET) [...] $ ubxtool -g CFG-NAVSPG-DYNMODEL [...] UBX-CFG-VALGET: version 1 layer 0 reserved 0,0 layers (ram) item CFG-NAVSPG-DYNMODEL/0x20110021 val 6 [...] $ ubxtool -x CFG-NAVSPG-DYNMODEL [...] UBX-ACK-ACK: ACK to Class x6 (CFG) ID x8c (VALDEL) [...] $ ubxtool -g CFG-NAVSPG-DYNMODEL [...] UBX-CFG-VALGET: version 1 layer 0 reserved 0,0 layers (ram) item CFG-NAVSPG-DYNMODEL/0x20110021 val 6
Notice that the current DYNMODEL stayed at 6 (AIR1). The "-x" only affects the saved setting, not the current setting. To change the current setting you must set it with "-z".
Options can be placed in the UBXOPTS environment variable. UBXOPTS is processed before the CLI options.
ubxtool is written to conform to the official u-blox documentation for the u-blox binary protocol. \m[blue]\%https://www.u-blox.com/en/product-resources\m[]
cgps(1), gpscat(1), gpsctl(1), gpsfake(1), xgps(1), gpsd(8),
Gary E. Miller<gem@rellim.com>