-
Notifications
You must be signed in to change notification settings - Fork 13.7k
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
Cannot start EKF2 on External Vision without a Barometer #14101
Comments
Many thanks for the detailed report. However, this is really a feature request for a very specific use case. Could you please send a pull request with the required changes instead? Open source projects are always open to accept new features that match coding standards and quality, but the way this works is that we have to rely on the people who need those to implement and test them. https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests |
Thanks for the prompt response, @LorenzMeier! I am willing to make the changes and test, but I am planning to do so on v1.8.0, since this is the one I am currently using in our project. I'm not sure if that helps at all, since this would require tests on master too. |
This issue has been automatically marked as stale because it has not had recent activity. Thank you for your contributions. |
Same as PX4/PX4-ECL#800. EKF2 currently needs baro and mag data to initialize even if it doesn't use those. |
Describe the bug
EKF2 does not start if there is no incoming barometer data, even with
SYS_HAS_BARO = 0
. This seems like a bug to me unless this is expected behavior for some reason.To Reproduce
I am running on a snapdragon flight using Px4 1.8, but it seems like this is a bug on master too (at least it seems so by looking at the code).
Expected behavior
I would expect EKF2 to start if SYS_HAS_BARO is set to 0. I know that EKF2 does not start because when I enable the barometer back again, the following log shows up:
Drone (please complete the following information):
Additional context
It seems like the problem is in line 177 of ecl/ekf.cpp. If there are not enough initial barometer measurements, the function
initialiseFilter()
returns false, which in turn does not allow EKF2 to execute.The text was updated successfully, but these errors were encountered: