Fixed Wing Crash at Takeoff - Switched to Mission Mode, Plane entered Loiter and Crashed

Hi everyone,

I experienced a crash during an autonomous takeoff attempt with my fixed-wing UAV. I suspect a logic or configuration error regarding the takeoff sequence, specifically involving the switch to LOITER mode at a critical moment.

Hardware & Setup:

  • FC: Pixhawk 2.4.8

  • Firmware: PX4 [v1.17.0 (alpha)]

  • Airframe: Fixed Wing with Landing Gear (Wheels)

  • Configuration: Setup for Runway Takeoff

The Scenario:

  1. I armed the plane on the ground.

  2. Instead of using the “Takeoff” slider, I switched directly to Mission Mode via RC, expecting the aircraft to execute the planned Runway Takeoff sequence automatically.

  3. The aircraft attempted to take off but failed to gain sufficient altitude.

  4. It banked aggressively to the right and crashed.

The Core Issue (Log Analysis): Reviewing the logs, I noticed that the flight mode switched to LOITER right before/during the crash sequence. The aircraft seems to have tried to hold position (loiter) while having low airspeed and altitude, leading to a stall.

My Questions:

  1. Why did it switch to Loiter? Is this a typical Failsafe behavior (e.g., Compass/Mag interference at high throttle) or did the Mission Logic think the takeoff waypoint was “completed” or “skipped”?

  2. Procedure Verification: Is it wrong to switch to Mission Mode directly from the ground for a Runway Takeoff? Should I be using the specific “Takeoff Flight Mode” instead?

  3. Config Check: Since the plane has wheels and is capable of self-takeoff, are there specific RWTO_ or FW_LAUN_ parameters I might have missed that caused this abort-to-loiter behavior?

Data:

Flight Log:

https://review.px4.io/plot_app?log=68dac8cb-192f-4655-b2e7-efd32b4c3ef9

Any help analyzing the Log to pinpoint the cause of the Mode Switch would be appreciated.

Thanks!

Hi! Thanks for such a detailed explanation, sorry you had a crash :frowning: .

I had a quick look at your log. Here is what I see, and some questions:

  1. The constant switching to loiter (nav_state=4) is a consequence of losing link to the GCS. You can set the resulting failsafe action throughNAV_DLL_ACT. General docs on failsafe handling can be found here. (Although, I don’t see it switching to loiter during takeoff)
  2. It is fine to do a mission takeoff.
  3. RWTO_TKOFF looks like it’s set to zero. Can you confirm? To enable runway takeoff, you would need to set this to 1. Have you already had a look at the documentation on this?
  4. Are you flying airspeed-less? I am unsure whether the auto-takeoff logic will work without an airspeed measurement. Have you verified this in SITL? In general it’s not recommended to fly fixed-wings without an airspeed sensor.

Hope this helps a bit!

hello,I am also one who experienced this crash. yesterday I just figured out that the same RWTO_TKOFF param. also we had a huge problem that we didn’t talk about yet and it’s really compatible with your first sentence. that problem is we have to hold the plane close (2-3 meters)to the ground station. when we increase the distance between the plane and groundstation; we cant give command, even telemetries parameter load line freezes halfway. probably the telemetry could disconnect easily. also thx for replies. This one is really helpful to change our perspective and understanding that complex problem circulation.