EKF2 does not initialize with external IMU

Hi everyone, I am currently trying to use an external imu for my drone. I modified a driver to read it from GPS1 and everything looks fine.

listener sensor_accel and sensor_gyro are outputting reasonable values, and are consistent with the 3 inbuilt IMUs (orange cube plus).

The gyroscope and accelerometer have both been successfully calibrated and extra accel/gyro IDs appeared on the parameter page.

uorb top shows that my IMU is publishing with a 100hz rate

However, EKF2 refuses to initialize if I disable all the inbuilt IMUs. Error message just shows “Waiting for estimator to initialize“ and “No valid attitude estimate“. Anything else I can check? Or is my publish rate too low? 100hz seems okay according to the documentation.

I tried out a few more things, making it 200hz didn’t solve the problem, but it probably helped. The thing that made a difference is changing EKF2_MULTI_IMU from 3 to 4, that made it finally accept my external IMU for fusing.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.