This was an interesting one, really hard to find a conclusive reason here ... but I give it a try.
First of all ... if this flight had been performed with any other drone than a M2 it had been a disaster from start any way ... even without the HW failure I think it was.
The AC was launched here ... pretty sure that those concrete constructions was filled with steel. All set for a classical yaw error due to a magnetic disturbed power on spot.
View attachment 112016
Here below we see what happens in detail ... & how the M2 use it's unique function to prevent yaw error's due to magnetic disturbance.
Have never seen that high values for the magnetic field modulus (dark green graph) as here just before take off ... usually the values are around 1400-1500, but here it was above 4700. So the environment was severely magnetic disturbed.
As soon as the take off starts at 9,5sec the magmod (dark green graph) falls down toward normal levels & by that let the compass (blue graph) point correctly ... this immediately create a imuYaw & magYaw disagreement of 62 degrees. But here the M2 do it's magic & re-initializes the IMU(1) (Light green graph) at 10,8sec & on 2.1m ultrasonic height.
No real yawing was going on as the gyro (purple graph) was mainly constant.
View attachment 112017
The flight proceeded then without any oddities until 88sec when the AC came to a stop after a short throttle command to adjust the height down to 93m.
From here something is starting to go haywire ... looking at the velocity difference between the GPS & the IMU below show this clearly ...
View attachment 112019
Just seconds later the AC faces a imuYaw/magYaw dissagreement of nearly 180 degrees ... here seen by the purple graph on a 180/180 Y-axis.
View attachment 112020
And here on a sat map where the green bar symbolize imuYaw pointing direction & the yellow the magYaw ...
View attachment 112021
So what went suddenly wrong ... up on 93m height ..?
In order to check off if it was the IMU or the compass that failed I've below first put up a comparison between the unwrapped gyro together with the unwrapped imuYaw ... can be somewhat difficult to see but firstly the graphs aren't similar shape wise ... secondly, the gyro rotates nearly 2 times more degree wise compared to the imuYaw.
View attachment 112022
Then I compared the imuYaw with the magYaw in order to conclude which of the 3 (IMU, Gyro or Compass) that deviate degree wise regarding the amount of turning ... this shows that the magYaw & the gyro are reasonably in agreement ... & by that should be showing correct, It also shows that the imuYaw(1) rotate half of what the others register.
This is what causes the big nearly 180 degree disagreement between the imuYaw & the magYaw ... & as the turning is in reality twice as large as what the IMU think's, it now doesn't have knowledge of the real heading & will with this counteract with the wrong motors & fail in position hold ... making it flyaway in speeds exceeding the spec.
So was the IMU(1) failure the root cause ... or was it actually something else that failed that in the end made these consequences?
Usually only one of the 2 IMU's fail ... but if we check off how well both of the IMU's are tracking with the compass (which follows the gyro well) we see this ... The blue graph show the re-initialized imuYaw(1), it shows a very small disagreement on approx. a couple degrees ... this up to 88sec into the flight. The red graph shows the other one, IMU(0) ... it doesn't track with the magYaw at all to begin with, but as the time goes it is slowly corrected by the gyro & compass values & around 60sec into the flight the disagreement is small enough so it wouldn't set off a Yaw error flyaway if it had been the active IMU.
But strangely also IMU(0) goes heywire at 88sec and tops out on a imuYaw/magYaw disagreement on 110 degrees ...
View attachment 112023
Looking deeper then ...
During below period the AC is drifting & rotating uncommanded ... even though no yaw error have started yet ...
View attachment 112024
Here below we see that the AC is rolling over to left with a slight up pitch ... & moving at around 2m/s during this period on a couple of seconds before the yaw error starts.
View attachment 112025
Checking into the motor data shows a odd behavior for the left front motor ... both rpm, command & current draw wise.
RPM:
View attachment 112026
Command:
View attachment 112027
& Current draw:
View attachment 112028
So even though I'm not 100% sure I think the root cause to this incident was on a level above the IMU ... a failing Flight controller? ... this as both IMU's suffered errors & that the motors was commanded without a heading failure initially, no stick inputs in very light winds. Never the less ... this should fall on DJI, contact them & they will guide you to what they need.
Then lastly ...
Don't know if you was aware of that the altitude restriction zone of 60m was starting just on the other side of the road ... when you ascended up after take off & turned towards the bridge you got really close to it ... can't say how precise DJI fly zone maps are ... but here is how it was.
View attachment 112029