Unexpected descent or AUTO_RTL during AUTO_MISSION

During AUTO_MISSION (3) flights on PX4 v1.15.4, the vehicle sometimes suddenly descends even when nav_state does not change (setpoint briefly goes to 0), and in other cases nav_state jumps from AUTO_MISSION (3) to AUTO_RTL (5). Logs show z_valid = 1 (height estimate valid), battery normal (no battery failsafe), RC link OK, GF_ACTION = 2, and mission state 0 prior to the event. Disabling multi-EKF did not eliminate the issue.

Additionally, I observed multiple clip triggers during mission flights. However, the vehicle does not always descend immediately when clip is triggered, and in manual/position mode I cannot reproduce the issue (the drone remains stable regardless of aggressive maneuvers).

I’d appreciate guidance on:

  • Which conditions or code paths could force a zero setpoint/auto-descent or trigger RTL in mission mode.

  • Could repeated clip events contribute to the sudden descent behavior?

  • Which files/functions are most relevant for debugging (e.g. navigator_main.cpp, mission.cpp, mission_base.cpp, and failsafe logic).


摘要(中文,PX4 v1.15.4)

在 PX4 v1.15.4任务模式(3)飞行中,飞机有时在 nav_state 未变化的情况下出现突然下降(setpoint 短暂归零),也有出现从 任务模式(3)直接切到 自动返航(5) 的情况。日志显示 z_valid = 1(高度估计有效)、电量正常(未触发电量保护)、RC 正常、GF_ACTION = 2,且事件发生前 mission 状态为 0。关闭多 EKF 实例后问题仍存在。

另外,日志中在任务飞行过程中多次出现 clip 触发,但并不是每次触发都会导致无人机立即下降;而在手动/定点模式下,无论如何做机动飞行,都不会触发自动降落。

想请教社区:

  • 在任务模式下,哪些条件或代码路径可能导致 setpoint 置零/自动下降触发 RTL

  • clip 是否可能是导致突然下降的原因之一?

  • 调试时应重点关注哪些代码(如 navigator_main.cppmission.cppmission_base.cpp 及相关 failsafe 逻辑)?

Logs & Test Videos

相关日志和测试视频已上传到 Gitee:
:backhand_index_pointing_right: https://gitee.com/TuringQin/px4_log.git