This page is stale and should be updated.
This page is a description of all the topics we are using (or plan to use) on the sub. Below is a symbolic representation of data flow on the sub (with sensors as we have right now).
The current orientation of the sub, given as a quaternion. Any code wanting to know the sub's orientation should use this topic, not /orientation/rpy.
The current orientation of the sub, given in roll, pitch, yaw. This is meant just for human readability of the sub's orientation, code should use the /orientation topic.
The current depth of the sub.
Dynamic array of commands going to the thrusters. Order of the thrusters is dependent on their order in the settings file.
Send messages to this topic to move the sub around, the control system subscribes to this topic.
Message: robosub/joystick This is the raw joystick state, published by the joystick driver. Shows the current state of all axes and buttons on the joystick.
Message: robosub/gamepad This is the raw gamepad state, published by the gamepad driver. Shows the current state of all axes and buttons on the gamepad.
Images from our cameras.
Results of the deep vision processing system. It's a list detailing all the objects it sees.
Message: Duplicated for all frequencies in the pool. Contains the latest time deltas between the reference and other 3 hydrophones.
Header header duration d1 duration d2 duration d3
Message: Duplicated for all frequencies in the pool. Contains the latest timestamps recorded by the system.
Header header Time ref Time t1 Time t2 Time t3
Message: Used for debugging the hydrophone system.
Header header Int64 frequency Int64 avg_sig_strength Float64 approx_angle
A 3-dimensional vector pointing at the pinger in $i,j,k$ notation.