Rapid Unscheduled Disassembly of my Octocopter, Lessons Learned and Questions

Hi Everyone,

I had our maiden flight resulting in a crash last week. The test demonstrated some things I missed, and some things I learned in the process. I’m sharing this here to help future testers and get some guidance on how to approach a solution(s). Below is a graph of the event and error and log messages from the flight. I wasn’t sure how to anonymize the log so I figure this is enough information. Please let me know if you need more data.

This is what happened on this flight:

  • I had a dual GPS system setup and tested in my lab working fine. When I got to the launch site, the second GPS started triggering a “Not Healthy” PreArm message. I then deactivated this “suspicious” GPS resulting in one GPS system active.

  • Even though I had multiple error messages (you can see them below), the system got to a point that I could arm it for take off.

  • Thinking I was in Stabilize mode (more on this on Lessons Learned) I activated the Take Off (I’m using QGC). This resulted in the drone shooting up vertically as if it was a rocket(!). I immediately switched to Stabilize and that’s when the motors seemed to have stopped or slowed down. These resulted in a fall from about 6 meters. I tried pushing the throttle up when I saw the drone falling down.

  • The crash although pretty dramatic, resulted in damage of just the landing gear and propellers. I’m very lucky.

These are my lessons learned:

  • The Herelink controller assigns the wheel to Channel 5 by default. This is why upon take off, the system is in AUTO mode. I remember “fighting” with the controller as I had a button assigned to Stabilize and after a few seconds the system would go back to AUTO. That is why you see this mode on take off.

  • Even though I did a compass calibration at home, it seemed that going to the actual site required another compass calibration because really, everything seemed to be off. The machine was telling me something :slight_smile:

  • Looking at Mission Planner’s Log Analyzer for this flight, I got the following. This tells me that I’m way off in the Magnetic field thresholds.

Compass = FAIL - WARN: Large compass offset in MAG data (X:-217.00, Y:-343.00, Z:68.00); Large change in mag_field (205.42%); Max mag field length (1299.61) > recommended (550.00)

Here are my questions:

  • Why would the system start in Guided mode? I have not set that up and I have no idea. Perhaps somebody can guide me where to learn more.

  • I’m under the impression that Stabilize mode cut off the motors instead of having the platform hovering. Should I have enabled an ALT HOLD or LOITER instead? Could this behavior of cutting power be due that the Herelink controller throttle stick comes back to the center position if not held, indicating the motors should be at the minimum speed? What do you think?

  • How can I study those message in the graph like “motors_interlock_enabled” and “ekf_yaw_reset”?

Thank you for your help, I really appreciate it.



08:45:01 ArduCopter V4.5.1 (71a2f169)
08:45:01 ChibiOS: 6a85082c
08:45:01 CubeOrangePlus 002A0049 30325101 33383839
08:45:01 Param space used: 1521/5376
08:45:01 RC Protocol: SBUS
08:45:01 RCOut: PWM:1-14
08:45:01 New mission
08:45:01 New rally
08:45:01 New fence
08:45:01 Frame: OCTAQUAD/X
08:45:01 GPS 1: specified as DroneCAN1-125
08:45:02 Mission: 2 Takeoff
08:45:02 Mission: 2 Takeoff
08:45:06 EKF3 IMU1 MAG0 in-flight yaw alignment complete
08:45:06 EKF3 IMU2 MAG0 in-flight yaw alignment complete
08:45:06 EKF3 IMU0 MAG0 in-flight yaw alignment complete
08:45:12 EKF3 lane switch 1
08:45:12 EKF primary changed:1
08:45:12 EKF variance
08:45:12 GPS Glitch or Compass error
08:45:18 Mission: 2 Takeoff
08:45:18 Mission: 2 Takeoff
08:45:20 Crash: Disarming: AngErr=165>30, Accel=0.0<3.0
08:45:20 EKF primary changed:0
08:45:20 Mission: 1 ChangeSpeed
08:45:20 Mission: 2 Takeoff
08:45:22 PreArm: Compasses inconsistent
08:45:22 PreArm: GPS glitching
08:45:23 Glitch cleared
08:45:53 PreArm: Compasses inconsistent


Post the .bin log file for the flight.

It’s a bit dangerous to fly an octocopter without fully understanding the flight modes. Stabilize mode does not make your drone hover automatically. It only levels the angle of the drone. The throttle joystick controls the drone’s throttle directly. Loiter or Althold modes controls the altitude, helping you to hover automatically.

You should make sure you complete the Methodical tuning guide before you fly again.

After “Throttle hover learn” when copter have correct thrust to hover- stabilize mode +/- keep copter hovering.but no vel/acc limits.

Thank you. I agree. Will follow this guide and report back with results. Much appreciated!


Thank you for this insight. I will post back once this test is complete.


Thank you Allister,

Here’s the link:



There’s some current related interference in the compass. You should probably run Magfit once you’ve got it flying better. At this stage you should be flying in Alt-hold, not Auto.

1 Like

Thank you very much Allister,

I made progress following @bobzwik suggestions and yours. Indeed, AltHold is the way to go, and much more. I also learned that the parameter compass_learn = 3 was not fully operational on 4.5.1
and perhaps with the release of 4.5.2 this is addressed. In the meantime, I’ll use MagFit.

Have a great day and chat soon!



Now you know why ProfiCNC recommends not using axis to change modes when using Herelink :sweat_smile:.

In my experience Herelink isn’t a good controller for doing flight testing, it doesn’t have enough buttons and dials for test flights if you don’t want to reconfigure buttons every flight.

Thank you! Yes, indeed, I agree. Let’s say it was a great learning opportunity. Cheers!

1 Like


I’m happy to report that I’m back operational with this octocopter! The adventure continues however…

Now I’m dealing with hovering issues. When in AltHold mode and releasing the throttle (ie, no input), the system will not hover but rather descend slowly . At some point, I switch to Land mode and that’s the only time I don’t have to touch the throttle at all. The drone lands smoothly.

Here are my questions:

  • I played with MOT_HOVER_LEARN values 1 and 2. I decided to set it to 1 so I can learn the actual value suggested by the FC. I felt that 2 set the value of MOT_THST_HOV too low and I initially thought that was why the drone wasn’t hovering.
  • I tried to stay at a particular altitude for extended time to then study the flight log’s CTUN.ThI, ThO and ThH values.
  • I don’t understand that even at MOT_THST_HOV = 0.55 the system wouldn’t hover while the ThO and ThH stay around 0.21. Is it that ThI and ThO are relative to the MOT_THST_HOV value and therefore when it comes to hovering I basically need to increase this to reach a “hover” state?
  • The octocopter is carrying about 4kg of a payload.

Here’s the link to the log:

I really appreciate your feedback.

Thank you,