Dual GNSS Performance and Failover

We will be testing dual GNSS on a copter for the next couple months - Navio2 M8N and one Reach. Adding this so people can share their experience and because there are open issue over on ArduCopter that can use our help.

Running single GPS you should see this behavior if you loose GPS…


As of 3.3 we should now see a possible drift of about 1m/s and a message in the HUD.

However, this post - suggest issues with single GPS be posted there - seems to indicate that things might not be behaving as planned.

For dual GPS there are still open issues…

Leads over here…

Leads to this being considered for ArduCopter 3.5+…

I like the idea but I am concerned this new blended mode could have unintended consequences for RTK - EXIF metadata logging precision? Or??? PPK post processing would be still done from Reach raw logs so no change there, so perhaps not a big deal? Seems like it might be a problem if you wanted very precise (RTK) absolute position during flight?

UPDATE 3/9/16

This is latest PR

So with the next Navio distro around the corner just curious to know what is considered best practice for parameter settings regarding failover when using dual GPS with current Copter 3.4.x?

These will likely change with 3.5 given new blended mode, but that is still a ways off and I would like to help establish a baseline for the correct parameter settings for 3.4.x so it will be easier to migrate.

And with these settings, what is the expected behavior? And are people seeing something other than expected behavior?

Blending GNSS mode has just been merged to master but it hadn’t gone through excessive tests. In a future (we’re nearly there) release we’ll make it easy to switch between different ArduPilot binaries, so it’s going to be pretty easy to migrate from one to another.

You’re right.

As I said above, we’ll need more tests to be make more assertive assumptions but I suppose this PR will make precise absolute positioning code more robust without degrading the overall picture. So you’ll kinda have the best of the two worlds. The logs that Paul has shared seem to be reassuring as well.

We have conducted tests with Reach and Navio and GPS_AUTOSWITCH set to AUTO which selects a receiver with a “bigger” fix value, i.e. once Reach acquired RTK fix the autopilot will fail over to it. It’s happened without serious twitching.

thanks @george.staroselskiy will look forward to the update and testing. for our latest project, we decided to leave the Reach on but disable auto switch until the different code bases get to next stable. way too much churn from too many directions - ReachView, RTKLib, Emlid Raspbian, Raspbian, and ArduCopter 3.5 - so we will wait for next releases to see if it is really usable together as a flying RTK solution.