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).
Message: geometry_msgs/Quaternion
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.
Message: robosub/Euler
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.
Message: std_msgs/Float32
The current depth of the sub.
Message: robosub/thruster
Dynamic array of commands going to the thrusters. Order of the thrusters is dependent on their order in the settings file.
Message: robosub/control
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.
Message: wfov_camera_msgs/WFOVImage
Images from our cameras.
Message: rs_yolo/DetectionArray
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
Message: geometry_msgs/Vector3Stamped
A 3-dimensional vector pointing at the pinger in $i,j,k$ notation.