From ec3f1fd5c22bfc4961a36f070c4e919ff2ea53dc Mon Sep 17 00:00:00 2001 From: Oleg Kalachev <okalachev@gmail.com> Date: Fri, 22 Feb 2019 16:23:41 +0300 Subject: [PATCH] mavlink_receiver: fix DISTANCE_SENSOR covariance handling --- msg/distance_sensor.msg | 2 +- src/modules/mavlink/mavlink_receiver.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/msg/distance_sensor.msg b/msg/distance_sensor.msg index 4a2e8f8d8f..6e636160c5 100644 --- a/msg/distance_sensor.msg +++ b/msg/distance_sensor.msg @@ -5,7 +5,7 @@ uint64 timestamp # time since system start (microseconds) float32 min_distance # Minimum distance the sensor can measure (in m) float32 max_distance # Maximum distance the sensor can measure (in m) float32 current_distance # Current distance reading (in m) -float32 covariance # Measurement covariance (in m), 0 for unknown / invalid readings +float32 covariance # Measurement covariance (in m^2), 0 for unknown / invalid readings int8 signal_quality # Signal quality in percent (0...100%), where 0 = invalid signal, 100 = perfect signal, and -1 = unknown signal quality. uint8 type # Type from MAV_DISTANCE_SENSOR enum diff --git a/src/modules/mavlink/mavlink_receiver.cpp b/src/modules/mavlink/mavlink_receiver.cpp index 5243e7b72c..8b9a88e663 100644 --- a/src/modules/mavlink/mavlink_receiver.cpp +++ b/src/modules/mavlink/mavlink_receiver.cpp @@ -797,7 +797,7 @@ MavlinkReceiver::handle_message_distance_sensor(mavlink_message_t *msg) d.type = dist_sensor.type; d.id = MAV_DISTANCE_SENSOR_LASER; d.orientation = dist_sensor.orientation; - d.covariance = dist_sensor.covariance; + d.covariance = dist_sensor.covariance * 1e-4f; // cm^2 to m^2 /// TODO Add sensor rotation according to MAV_SENSOR_ORIENTATION enum -- GitLab