From 3a2b0f330984fcd60bdee6fe98ec4d986dc7b82c Mon Sep 17 00:00:00 2001 From: Gus Grubba Date: Mon, 13 May 2019 10:25:21 -0400 Subject: [PATCH] Check for camera info when receiving heartbeats from camera component IDs only. --- src/Camera/QGCCameraManager.cc | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Camera/QGCCameraManager.cc b/src/Camera/QGCCameraManager.cc index e61c62f952..2352ad60ef 100644 --- a/src/Camera/QGCCameraManager.cc +++ b/src/Camera/QGCCameraManager.cc @@ -107,8 +107,8 @@ QGCCameraManager::_handleHeartbeat(const mavlink_message_t &message) { mavlink_heartbeat_t heartbeat; mavlink_msg_heartbeat_decode(&message, &heartbeat); - //-- If this heartbeat is from a different component within the vehicle - if(_vehicleReadyState && _vehicle->id() == message.sysid && _vehicle->defaultComponentId() != message.compid) { + //-- Only pay attention to "camera" component IDs + if(_vehicleReadyState && _vehicle->id() == message.sysid && message.compid >= MAV_COMP_ID_CAMERA && message.compid <= MAV_COMP_ID_CAMERA6) { //-- First time hearing from this one? QString sCompID = QString::number(message.compid); if(!_cameraInfoRequest.contains(sCompID)) { @@ -135,8 +135,7 @@ QGCCameraManager::_handleHeartbeat(const mavlink_message_t &message) } } else { pInfo->tryCount++; - //-- Request camera info. Again. It could be something other than a camera, in which - // case, we won't ever receive it. + //-- Request camera info again. _requestCameraInfo(message.compid); } } -- GitLab