diff --git a/Modules/Mavlink/mavlink_skyward_lib b/Modules/Mavlink/mavlink_skyward_lib index d7c4c0179f0cde99b3346181b51c6cd1a95747a8..5715deebff61d9443d2fdd68ceef03d35d8afc01 160000 --- a/Modules/Mavlink/mavlink_skyward_lib +++ b/Modules/Mavlink/mavlink_skyward_lib @@ -1 +1 @@ -Subproject commit d7c4c0179f0cde99b3346181b51c6cd1a95747a8 +Subproject commit 5715deebff61d9443d2fdd68ceef03d35d8afc01 diff --git a/Modules/Mavlink/mavlinkreader.cpp b/Modules/Mavlink/mavlinkreader.cpp index 0d1ff15013a75851b3b45c51e2610138a0328fd3..733a9df9f01825abb1cc1444997392e33846dcdb 100644 --- a/Modules/Mavlink/mavlinkreader.cpp +++ b/Modules/Mavlink/mavlinkreader.cpp @@ -53,12 +53,22 @@ void MavlinkReader::run() bool ok; while (!stop) { mavlink_message_t msg = waitForMavlinkMsg(ok); - if(ok){ + + if(ok && chackMsgOwnership(msg)){ parseMavlinkMsg(&msg); } } } +bool MavlinkReader::chackMsgOwnership(const mavlink_message_t& msg) const +{ + if(msg.sysid == validSysid && msg.compid == validCompid){ + return true; + } + return false; +} + + void MavlinkReader::setPortNumber(int value) { portNumber = value; @@ -168,6 +178,7 @@ void MavlinkReader::handleError() qDebug() << "MavlinkReader >> Serial read error"; } + QList<ModuleMessage> MavlinkReader::parseMavlinkMsg(mavlink_message_t *msg) { if(msg == nullptr) diff --git a/Modules/Mavlink/mavlinkreader.h b/Modules/Mavlink/mavlinkreader.h index 09d6a559bc87d7cd7ead8c0e348f0f03a409573f..b768d1b17abc642423497396f7c834a9d0c423a5 100644 --- a/Modules/Mavlink/mavlinkreader.h +++ b/Modules/Mavlink/mavlinkreader.h @@ -45,6 +45,7 @@ protected: void handleReadyRead(); void handleError(); + bool chackMsgOwnership(const mavlink_message_t& msg) const; void setLogFilePath(); // QDateTime convertTimestampToDatatime(const double ×tamp) const; @@ -65,6 +66,9 @@ private: QString logFilePath = ""; QFile logFile; + + uint8_t validSysid = 171; + uint8_t validCompid = 96; }; #endif // MAVLINKREADER_H diff --git a/SkywardHub.pro.user b/SkywardHub.pro.user index d5bf39281b046c8c0b24785ec2c5be7c133eef91..6899b2f226d1bf5cb8dedf05d03a06ae66794337 100644 --- a/SkywardHub.pro.user +++ b/SkywardHub.pro.user @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE QtCreatorProject> -<!-- Written by QtCreator 4.14.2, 2021-09-12T23:02:44. --> +<!-- Written by QtCreator 4.14.2, 2021-09-29T20:55:13. --> <qtcreator> <data> <variable>EnvironmentId</variable>