GPS Denied Navigation

Have the settings for GPS disabled, optical flow enabled, and only EKF2 enabled.
What is it that I am doing wrong ? (Do I need to provide anything further to diagnose at a first look ?)

[ INFO] [1720206326.150276059, 1058.301000000]: FCU: Arming motors
[ERROR] [1720206330.840700293, 1059.152000000]: FCU: NavEKF2: lane switch 1
[ WARN] [1720206330.874996406, 1059.156000000]: FCU: EKF primary changed:1
[ERROR] [1720206331.315869511, 1059.252000000]: FCU: EKF variance
[ERROR] [1720206331.318061329, 1059.252000000]: FCU: EKF Failsafe: changed to LAND Mode
[ INFO] [1720206335.895639488, 1060.303000000]: FCU: Disarming motors

Thanks !
GPS_Denied_1.param (43.8 KB)

At a first quick look the EkF2 should be disabled and EKF3 enabled


Thanks @amilcarlucas !

I am getting this message now. I have set the origin, and Optical Flow parameters.

PositionTargetGlobal failed because no origin
FCU: PreArm: Need Position Estimate

Why do these appear in spite of setting, please point me in the right direction.
Thanks for the reply.

Hey @amilcarlucas !
Just happened to read this from chatGPT :
'The EK3 (Extended Kalman Filter 3) in ArduPilot does not directly support optical flow navigation in a GPS-denied configuration. The EK3 primarily focuses on GPS-based navigation and state estimation, whereas the EKF2 (Extended Kalman Filter 2) is the module designed to handle vision-based navigation, including optical flow sensors.

A bit unsteady with this now. Please help me understand.

Thanks in advance !!

Chatgpt has no clue in this case. That information is three years old, and extremely outdated.

Do not thrust everything an AI writes.


I am getting this errorpersistently with EKF3. IS there any resource online, that I could methodically follow to get this configuration in SITL ? Or could you please illuminate on what needs to be set right here ?

What an awful use case for ChatGPT! Don’t even bother asking ChatGPT such technically specific questions. At best, you’ll get a quote from an outdated website. At worst, it will make just enough sense out of nonsense to cause you to trust it…and crash your copter.


Speaking of methodical configuration, have you configured this vehicle using the ArduPilot methodic configurator software? You should.

Boy ! Never knew of that. Thought you were kidding !
Sure, let me take a look.

Thanks again !

Hi @Iqua,

You’ve probably seen it already but here is our wiki section for setting up optical flow.

I’m surprised that ChatGPT gave such a poor response. I suspect it wasn’t ChatGPT4 which has been updated within the last year.

1 Like

Nope, @rmackay9 ,
it was the normal ChatGPT. Quite unsettling gotta admit.

Again, it’s a bad use case. LLM GPTs are trained on historical data to give you a pleasing answer - essentially, they tell you what you want to hear based on data that’s only as recent as the last training cycle and what amounts to a statistical analysis of word frequency and order, given a context. They are not bound by fact. There are amazing use cases for the technology, but asking highly specific, technical questions is not one of them. I would never configure ArduPilot parameters based on a ChatGPT query.

A broader question, like asking it to explain how EKF works, might be a better use case, but the response should only help frame further research rather than being taken as 100% fact.

I often use it to write code snippets (or repetitive declarations, like array literals). It often excels at that, but I never ask it to write code for something I don’t understand, and I almost always refine the result to some degree. It tends to be (predictably) TERRIBLE at arithmetic.


Good observation, Yuri. Puts a perspective on these ‘Intelligent’ tools.