There were three flights included in the posted .DAT files. The second flight corresponds to the video in the first post. In summary, the Mavic was launched from a geomagnetically distorted site causing the Yaw (heading) to be incorrect. This incident is similar to some P3 incidents that I've looked at.
Here is a recent one.
The Mavic gets it's heading info from a combination of sensors; mostly the gyros, then the accelerometers. Shortly after batteryOn the Flight Controller initializes the Yaw value based on the compass magnetometers but after that it's info coming from the gyros and accelerometers that determine Yaw. After this the magnetometers have only a small effect on the value of Yaw.
If the launch site is geomagnetically distorted the Yaw value will be incorrect because of the effect on the magnetometers. When the Mavic has cleared the effects of the geomagnetic distortion the compass/magnetometers become correct, BUT the Yaw is being determined by the gyros which hasn't changed.
That's what happened in this incident.
View attachment 2503
magYaw is a diagnostic value calculated by DatCon from the magnetometer data. Here, magYaw and Yaw (the value that the Mavic uses for heading) are the same incorrect value until the Mavic launches at time 3.2 secs. Then magYaw (blue line) changes to -134, the correct value, BUT Yaw (green line) stays at the old, incorrect, value of -115. I looked at the video to confirm that magYaw is correct.
The Mavic is different from the P3 in that the P3 would have switched to ATTI because it has to assume that it's possible Yaw is incorrect. The Mavic did not switch to ATTI but from pilot's description appears to taken a different strategy. I haven't seen enough Mavic incidents to know if the Mavic was trying to navigate at this point. From looking at the control inputs and motor speeds my best guess is that the Mavic was attempting to both navigate and respond to control inputs.
View attachment 2505
View attachment 2507
View attachment 2508
At time 15.38 the only control input is full negative throttle but the Mavic proceeded across the traffic circle. In the GoogleEarth view the AC location is shown as an A. The blue line is the magYaw value and the green line is the Yaw value.
This incident was not caused by a compass calibration problem. It was all due to the geomagnetic distortion at the launch site. Note that the magYaw/Yaw stops separating when the Mavic reaches 1.6 meters. If the pilot had hand launched higher than 1.6 meters there would not have been an incident. The effect of a compass calibration is to compensate for onboard magnetic distortions. A compass calibration does not compensate or know about local or regional geomagnetic distortions. All the compass calibration needs is a geomagnetic field that 1) isn't distorted within the confines of the compass dance and 2) has a strength that isn't drastically different from the launch site. The pilot achieved this in the flight previous to this one.
Unfortunately, checking the magMod value isn't much use in detecting this situation before launch. The geoMagnetic field is distorted but it's strength hasn't changed enough to notice. The only way to really detect this kind of problem is to eyeball the Mavic, know which way it's pointing, and check that with the red arrow in the display. Having said that, I'll also add that I never do this.