GPS glitch with 2 healthy GPS and GPS Failsafe did not commanded the vehicle for a landing

Hello gentleman.
I got two problems with 2 different vehicles in the same configuration during flight. GPS glitch flag showed up with full quality GPSs providing information to the system. Commander showed “Failsafe enabled: no global position” and the vehicle went out off control. Why GPS glitch showed up if 2 GPS were perfectly operating? Why the failsafe for immediatelly landing when GPS failed was not activated?

Firmware stable version v1.9.2.

Flight log is here.
https://review.px4.io/plot_app?log=a51d3d87-7c03-43c4-9519-e44bab4a4bf0

Sorry to heart that.

What exactly happened?

I can’t see the logfile, is something wrong with the link?

Sorry, correct link is here.
https://review.px4.io/plot_app?log=b22d2e23-fe70-4df1-a10f-976bfa6a0d0c

The vehicle start diverging in position, with stabilized attitude, descending until touch the terrain.

One thing I see in the log is that there is a big influence of thrust onto the mag measurements.
This is because the mag is picking up current from the power electronics or motor wiring.

Are you sure you are not using the internal mag but an external mag on a GPS mast or otherwise far away from power electronics?

So supposedly it was not a GPS glitch but an estimation problem given the mag sensor.
The message in the log also says: “[commander] Critical navigation failure! Check sensor calibration” which might be a hint at that (although a calibration won’t fix the problem).

We have three mags installed. The internal one is close to interference sources. Other two are from mRo GPS u-Blox Neo-M8N / 3DR SOLO, installed away from interference sources. However, we are not able to configure the system to disable the internal mag. How we can disable the internal mag?

One of the external mags should be selected by default, unless there is a bug and the external mag is not being recognized as such.

You can do listener sensor_mag in the MAVLink shell to find out more. And also you can configure the logger to log all sensors to assess them. Check SDLOG_PROFILE.

And to make sure the correct one is used you can always use a magnet and carefully approach one of them to check if it’s being used.

I see. Will have a look. And what about the failsafe procedure? I was expecting the system would enter in descend mode as position estimates was declared faulty (supposedly no GPS).

Other thing I am wondering is if there is anyway we always use the GPS position to navigate, regardless the EKF estimates. Is it possible?

listening sensor_mag (instance 0 #1) as you suggested shows device_id 335369 (Type: 0x05, I2C:1 (0x1E). This ID is for the external compass LIS3MDL, which is onboard mRo GPS u-Blox Neo-M8N / 3DR SOLO.

You can’t really navigate with GPS if you’re heading is off.

I think that’s all correct then. Is this mounted close to motor wiring?