mavlink: Only send the distance sensor message if the topic actually updates

This commit is contained in:
Lorenz Meier 2014-05-06 12:55:39 +02:00
parent 5bc7295145
commit df6a0d5a1a
1 changed files with 14 additions and 13 deletions

View File

@ -1339,22 +1339,23 @@ protected:
void send(const hrt_abstime t)
{
(void)range_sub->update(t);
if (range_sub->update(t)) {
uint8_t type;
uint8_t type;
switch (range->type) {
case RANGE_FINDER_TYPE_LASER:
type = MAV_DISTANCE_SENSOR_LASER;
break;
switch (range->type) {
case RANGE_FINDER_TYPE_LASER:
type = MAV_DISTANCE_SENSOR_LASER;
break;
}
uint8_t id = 0;
uint8_t orientation = 0;
uint8_t covariance = 20;
mavlink_msg_distance_sensor_send(_channel, range->timestamp / 1000, type, id, orientation,
range->minimum_distance*100, range->maximum_distance*100, range->distance*100, covariance);
}
uint8_t id = 0;
uint8_t orientation = 0;
uint8_t covariance = 20;
mavlink_msg_distance_sensor_send(_channel, range->timestamp / 1000, type, id, orientation,
range->minimum_distance*100, range->maximum_distance*100, range->distance*100, covariance);
}
};