The conversion of DCM to EKF3 caused the crash

You have a problem with the GPS refresh time, this compromises the EKF3.

Ardupilot requires a maximum refresh time of 5Hz/200ms (as you have configured GPS_RATE_MS,200).

But your GPS at regular intervals of 20s jumps to 220ms and 240ms alternatively. The 220ms could be tolerated (with some degradation in accuracy affecting the EKF3) but not with the 240ms.

Detail view

Here is the EKF3 normalization in percentage. Values should be below 50 and never exceed 100.

At the end of your flight the SP location accuracy goes to 469, the SV speed accuracy to 434… and the EKF3 fails.

The message “GPS 1: detected as u-blox at 230400 baud” is familiar to me, are you using a BN-880Q?

If so, I recommend that you reconfigure it using u-Center to use 115200 baud.

The reason is that this GPS does not respect the 230400 rate and that is why the cyclic errors occur every 20s. On the other hand, at 115200 it still has problems every 20s but they are limited to a maximum of 216ms and the EKF3 system tolerates them.

1 Like