Skip to content

AP_NavEKF3: Allow disabling lane switching #29623

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

rishabsingh3003
Copy link
Contributor

@rishabsingh3003 rishabsingh3003 commented Mar 26, 2025

While doing EKF-based tests, this is helpful.
When the EK3_OPTIONS second bit is enabled, automatic lane switching will be disabled (unless the core becomes "unhealthy", which is very extreme and we should never be flying with that). And EK3_PRIMIARY core will be enforced. This also means we can select the active core from a Lua Script mid flight.

Might also have some use cases when lane switches are happening often because of small timing difference in the core. Example, flying with a single baro on a windy day and seeing lane switches isn't uncommon.

I personally also have a usecase for this PR where I am working on another branch that allows different types of sensors to be used in different lanes, for example GPS on lane 1, Ext Nav on lane 2. For testing Ext Nav, it'll be helpful to disable lane switching.

Copy link
Contributor

@tridge tridge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it should be manual-only, no health check

@@ -740,7 +740,7 @@ const AP_Param::GroupInfo NavEKF3::var_info2[] = {
// @Param: OPTIONS
// @DisplayName: Optional EKF behaviour
// @Description: This controls optional EKF behaviour. Setting JammingExpected will change the EKF nehaviour such that if dead reckoning navigation is possible it will require the preflight alignment GPS quality checks controlled by EK3_GPS_CHECK and EK3_CHECK_SCALE to pass before resuming GPS use if GPS lock is lost for more than 2 seconds to prevent bad
// @Bitmask: 0:JammingExpected
// @Bitmask: 0:JammingExpected, 1: Disable lane switching
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

needs a better description, and maybe "Manual lane switching" ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WikiNeeded needs wiki update
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants