Quad skyrockets for no reason in Loiter or Land modes

Hi guys,

I’m encountering huge issues with stock 3.3 (and the same with master) for no apparent reason for a few days.

Each time I switch to LOITER or LAND, the copter climbs very quickly without any apparent reason.

The EKF seems somehow faulty :

  • Baro ALT looks to be okay
  • EKF2_RATIO goes straight to 100% a few msecs before the climb phenomenon happens. EKF1.VD saturates immediatly :

Flight log : fufox.net/dl/562133b0da06d0

I’m open to any ideas that might help solve this problem !

Cheers,

Christom,
There’s something strange happening to one of he two IMUs because they disagree a lot. In the graph below you an see the LSM303d is mostly flat (red) but the MPu6k (green) is showing lots of movement.
[attachment=0]IMU1vs2.png[/attachment]

I think there’s either a hardware problem with the IMU or there’s some bad vibration affecting the copter. Below are some links related to measuring and reducing vibration levels.
copter.ardupilot.com/wiki/common … n-damping/
copter.ardupilot.com/wiki/common … vibration/

Hi Randy !

Thanks a lot, that’s what I thought too !

I reverted to a 3.2 to make sure it wasn’t a software issue, with a clean config, and the problem is still the same.

I guess it’s a hardware problem then and one of the two IMU is damaged. It’s a bit scary to be honest, I did not know IMUs could die like that !

Thanks for your input !

Hi guys,

After switching to another flight controller I confirm this odd behavior was due to one of the two IMU’s giving wrong values. The quad flies perfectly on the new flight controller.

However, this makes me ask a few questions regarding the code’s current behavior. Correct me if I’m wrong, but the EKF2_RATIO is especially made to get a ‘trust index’ in the IMU’s and make the EKF rely on the IMU that is the most trustable.

In that case, it switched 100% to the IMU that was wrong, which is quite surprising. What do you think ?

Things would be easier with 3 IMU instead of 2 :slight_smile:

Cheers,

Christom,
Yes, it should weight it’s usage to the IMU with the least noise. Sadly we only log the vibes from the first IMU (the MPU6k normally) so we can’t compare them to the LSM303d to double check that the weighting was working correctly.

The vibe levels for the MPU6k are actually quite low considering all the spikes we see in it’s output. I’ll ask Paul Riseborough (EKF master) to have a peek tomorrow.
[attachment=0]Vibes.png[/attachment]

The 3 IMU idea has been brought up before. The Solo’s Pixhawk2 actually has 3 but sadly the 3rd one isn’t vibration dampened so it’s a bit useless in breaking the tie between the other two.