diff --git a/libraries/AP_DDS/AP_DDS_Client.cpp b/libraries/AP_DDS/AP_DDS_Client.cpp index 14cc2a6d867623..92b0dda74f6747 100644 --- a/libraries/AP_DDS/AP_DDS_Client.cpp +++ b/libraries/AP_DDS/AP_DDS_Client.cpp @@ -1022,7 +1022,10 @@ void AP_DDS_Client::on_request(uxrSession* uxr_session, uxrObjectId object_id, u rally_location.flags |= (rally_set_request.rally.altitude_frame << 3); if (rally_location.lat != 0 && rally_location.lng != 0 - && rally_set_request.rally.altitude_frame <= static_cast(Location::AltFrame::ABOVE_TERRAIN)) { + && (rally_set_request.rally.altitude_frame == static_cast(Location::AltFrame::ABOVE_HOME) + || rally_set_request.rally.altitude_frame == static_cast(Location::AltFrame::ABOVE_ORIGIN) + || rally_set_request.rally.altitude_frame == static_cast(Location::AltFrame::ABOVE_TERRAIN) + || rally_set_request.rally.altitude_frame == static_cast(Location::AltFrame::ABSOLUTE))) { if (rally->append(rally_location)) { rally_set_response.success = true; } else {