diff --git a/protobuf_definitions/message_formats.proto b/protobuf_definitions/message_formats.proto index ba26147a..0cc3716a 100644 --- a/protobuf_definitions/message_formats.proto +++ b/protobuf_definitions/message_formats.proto @@ -422,6 +422,27 @@ enum ResetCoordinateSource { RESET_COORDINATE_SOURCE_MANUAL = 2; // Uses a coordinate in decimal degrees to set the reset point } +// DVL raw transducer data. +message DvlTransducer { + int32 id = 1; // Transducer ID, 3 beams for Nucleus DVL, 4 beams for DVL A50 + float velocity = 2; // Velocity (m/s) + float distance = 3; // Distance (m) + bool beam_valid = 4; // Beam validity + float rssi = 5; // Received signal strength indicator: strength of the signal received by this transducer (dBm) + float nsd = 6; // Noise spectral density: strength of the background noise received by this transducer (dBm) +} + +// DVL raw velocity data. +message DvlVelocity { + NavigationSensorID sensor_id = 1; // Sensor id + int32 status = 2; // Vendor-specific status of the DVL + float delta_time = 3; // Time since last velocity measurement (ms) + float fom = 4; // Figure of merit, a measure of the accuracy of the velocities (m/s) + Vector3 velocity = 5; // Velocity, x forward, y left, z down (m/s) + bool is_water_tracking = 6; // Water tracking status + repeated DvlTransducer transducers = 7; // List of transducers +} + // Water depth of the drone. message Depth { float value = 1; // Drone depth below surface (m) diff --git a/protobuf_definitions/telemetry.proto b/protobuf_definitions/telemetry.proto index 9af54ddc..01619991 100644 --- a/protobuf_definitions/telemetry.proto +++ b/protobuf_definitions/telemetry.proto @@ -24,6 +24,11 @@ message ForwardDistanceTel { ForwardDistance forward_distance = 1; } +// Dvl raw sensor data. +message DvlVelocityTel { + DvlVelocity dvl_velocity = 1; // Dvl velocity data. +} + // Position estimate of the drone if a DVL or a positioning system is available. message PositionEstimateTel { PositionEstimate position_estimate = 1;