@Rkcorp I took a look at the .DAT and was unable to find the causes(s) of the "compass errors" in this flight. Although reported in the Go App as a compass error, the error is actually the nonGPSCause field being set to either YAW_ERROR_LARGE or SPEED_ERROR_LARGE. This error is not necessarily an indication of a magnetometer value error.
I've seen several flights where these nonGPSCause errors were immediately preceded by an abrupt change in gyro or accelerometer value. That didn't happen here. The change in gyroX occurred after the error.
The motor data changed at this point but there was no control input. I.e., it was the Flight Controller, not the pilot or a burst of wind that caused this.
The GyroZ drift rate was determined to be 0.1 deg/sec which is about average. An IMU calibration would likely lower it to .03 deg/sec.
I looked for any magnetometer data that would support the possibility of a bad compass calibration. What I was hoping for was something what occurred in another flight I looked at. The pilot performed a test where the P3 was rotated CCW through 720 degrees. In the interval 60 thru -120 degrees the nonGPSCause field had the value COMPASS_ERROR_LARGE. The red line is the yaw (or heading) and comes mostly from the gyro data - magnetometer data has a very small impact on yaw. The green line is a heading value that is computed directly from the magnetometer data. It's shape and relation to the actual heading is exactly what would be expected if the compass wasn't calibrated. After this test the pilot did a more careful compass calibration and another test flight showed this problem was fixed.
The magMod data was normal throughout the flight.
I couldn't find any reason to conclude there was a compass calibration problem. Maybe I missed something.
@Oso you mentioned that this looked like a classic compass calibration problem. What characteristics would indicate this?
It's been suggested to re-calibrate and see if the error doesn't happen again. The problem is that if the error was random it probably won't happen on the next flight anyway. Maybe a better approach is to first try to reliably reproduce the error and then look at changing things.
Mid-flight YAW_ERROR_LARGE or SPEED_ERROR_LARGE errors can be scary. But, in the ones that I've looked at navigation or flight control has never been compromised. I personally had a few of these and have ignored them. Actually, the first was close to some power lines close to my house. Subsequent to that flight I flew many time close to those power lines in an attempt to recreate the problem. Never happened again. BTW, replaying that flight in the Go App didn't give any indication that an error had occurred. (During the flight the message "Compass Error" was displayed). After a newer version of the Go App was installed the error was indicated in replay as a greyed out screen and something about a "GPS Error". Yesterday I loaded the .txt of this flight into my android and the Go App has no indication of the error on replay.
I'm reluctant to make any suggestions because I don't really know what the cause is. But, as I stated above, I've had a few unexplained mid-flight nonGPSCause errors and have ignored them. If they start to occur more often then it's a trip to DJI repair.
One thing I should mention is that if a compass error occurs immediately after launch get it on the ground ASAP. And, don't, under any circumstance initiate, an RTH.