Home        Store        Learn        Blog

Implementation of External IMU


Has anyone tried to implement external IMU to improve accuracy during navigation?

I would like to try to integrate a fiber optic IMU that sends the information in NMEA via serial.

Another option would be the ADIS16137 model.


1 Like

Hi Bruno
The best solution might depend on where you are hoping to send the info and what you hope to do with it. Are you navigating with survey software like Qinsy or Eiva, or trying to feed more info into the QCG/ArduSub system? In general, I would say a DVL like WaterLinked’s tiny new model will be much more helpful for ROV navigation accuracy than even a fancy FOG gyro. It can send NMEA info now and will be fully baked into ArduSub shortly. But if it’s an IMU/AHRS with NMEA output you want, I’ve had pretty good luck with Advanced Navigation’s products like this:


Hi Richard,

Initially I intend to use navigation based on the QGC / ArduSub system.

Orientus from Advanced Navigation’s company has good accuracy, and I saw that it has good immunity to magnetic interference.
It would be a good option for testing.

The idea is to try to offer reliability and precision to the system, mainly in inspections close to metallic structures.

The DVL A50 is a great option for stability in navigation, but it has the Yost Labs TSS-NANO (AHRS / IMU) sensor that would not be FOG either.

Has anyone tried to use a external sensors to replace pixhawk AHRS information?

Hi Bruno
In my experience the Pixhawk’s AHRS info has been really excellent on long dives in and around oil rigs, thousands of meters down tunnels chock full of rebar, etc. I did some testing with an external magnetometer when I thought the one inside one of my Pixhawks was failing, but the problem turned out to be a small cooling fan that I had installed inside the enclosure, and as soon as I removed that the Pixhawk went back to being perfect as usual. I would say if you are trying to dead-reckon, a solid GPS fix at the surface followed by DVL+Pixhawk nav will be hard to beat at any price (once it’s fully baked into ArduSub). If you want continuous positioning a compact USBL system like Subsonus or Blueprint’s SeaTrac will make the whole INS/AHRS issue pretty much irrelevant. But it seems like you probably know all this and have a particularly difficult task in mind that won’t quite work with these options, so I’d be curious to hear more about exactly what you’re trying to do.

1 Like

This link may help you!
The x7Pro with ADIS16470.
But the ardusub code doesn’t adapt.
You need to do your own adaptation test. Ardusub has done the basic work.

In ardupilot master, the EKF3 should be able to choose individual sources for each of its inputs, see EK3_SRC1_YAW. Maybe we could use the ExternalNav option to supply an external heading value.