diff --git a/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/apm/ArduPilot.java b/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/apm/ArduPilot.java index 9e9d5617c8..71b77987be 100644 --- a/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/apm/ArduPilot.java +++ b/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/apm/ArduPilot.java @@ -385,6 +385,12 @@ protected boolean performTakeoff(Bundle data, ICommandListener listener) { @Override public void onMavLinkMessageReceived(MAVLinkMessage message) { + + if (message.sysid != this.getSysid()) { + // Reject Messages that are not for the system id + return; + } + int compId = message.compid; if (compId != AUTOPILOT_COMPONENT_ID && compId != ARTOO_COMPONENT_ID diff --git a/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/generic/GenericMavLinkDrone.java b/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/generic/GenericMavLinkDrone.java index 1804cb2960..7cd803bfc2 100644 --- a/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/generic/GenericMavLinkDrone.java +++ b/ClientLib/src/main/java/org/droidplanner/services/android/impl/core/drone/autopilot/generic/GenericMavLinkDrone.java @@ -574,6 +574,11 @@ private void onHeartbeat(MAVLinkMessage msg) { @Override public void onMavLinkMessageReceived(MAVLinkMessage message) { + if (message.sysid != this.getSysid()) { + // Reject Messages that are not for the system id + return; + } + onHeartbeat(message); switch (message.msgid) {