Goby3 3.2.3
2025.05.13
|
The goby
command line tool is a starting point for managing, running, and understanding a Goby system from the Linux command line.
Like many modern tools (e.g., git) is has many sub-commands that allow you to access a wealth of functionality from a simple natural language syntax with built-in help.
The goby
tool is available if you install from the goby3-apps
package or build from source.
The help command gives information on any subcommand. For example:
gives help on the zeromq command.
This function is useful for post-mission analysis of .goby log files written by goby_logger
.
Converts a .goby log file into useful formats: HDF5, JSON, etc. See the goby_logger page for more details.
goby launch
is a basic process manager. It launches a number of Goby application at once in series from a single .launch
file. At its simplest, a .launch file is simply a list of commands to execute
goby launch
runs them in a screen session by default. You can type CTRL-C to quit, using goby_terminate
by default.
See goby help launch
for more options.
This function is for launching and interfacing with the ZeroMQ interprocess applications.
The following commands are shortcuts to the equivalent application described in the ZeroMQ applications page:
goby zeromq terminate
: runs goby_terminate
goby zeromq playback
: runs goby_playback
goby zeromq daemon
: runs gobyd
goby zeromq logger
: runs goby_logger
goby zeromq coroner
: runs goby_coroner
goby zeromq intervehicle_portal
: runs goby_intervehicle_portal
goby zeromq gps
: runs goby_gps
goby zeromq geov
: runs goby_geov_interface
goby zeromq frontseat_interface
: runs goby_frontseat_interface
goby zeromq liaison
: runs goby_liaison
goby zeromq opencpn
: runs goby_opencpn_interface
goby zeromq moos_gateway
: runs goby_moos_gateway
Publishes a single message to gobyd
on the interprocess layer. You can either use the --interprocess
parameter or set the environmental variable GOBY_INTERPROCESS
to define the gobyd
interprocess settings.
Usage:
You can use -l
to load shared libraries containing your custom Protobuf messages, or set the environmental variable GOBY_TOOL_LOAD_SHARED_LIBRARY.
Subscribes to all or some messages from gobyd
on the interprocess layer. You can either use the --interprocess
parameter or set the environmental variable GOBY_INTERPROCESS
to define the gobyd
interprocess settings.
You can use -l
to load shared libraries containing your custom Protobuf messages, or set the environmental variable GOBY_TOOL_LOAD_SHARED_LIBRARY.
If you omit the optional regex settings, they default to ".*", meaning that you'll see all publications.
(optional) Set the desired interprocess community in your .bashrc or similar:
In one terminal:
In another terminal:
Finally, in a third terminal:
This publishes the goby::middleware::protobuf::LatLonPoint message defined in goby/middleware/protobuf/geographic.proto
. You should then see it in the goby zeromq subscribe
terminal:
Functions for dealing with Protobuf messages
Displays the contents of a Protobuf message.
For example:
gives the full .proto definition:
You can use -l
to load shared libraries containing your custom Protobuf messages, or set the environmental variable GOBY_TOOL_LOAD_SHARED_LIBRARY.