-
Notifications
You must be signed in to change notification settings - Fork 17.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
Add EKF3 feature for optflow fusion #22895
Add EKF3 feature for optflow fusion #22895
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice one.
The issue on CI is right, you need to add this to AP_DAL too as this using some EKF functions!
3527893
to
71d6bd5
Compare
Thanks, I've pushed a patch for the DAL up. Interestingly I couldn't run the CI test which failed locally - even on master ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK for me. doesn't change behavoir.
dd90c88
to
3b2cb9b
Compare
From a casual review this looks good to me. |
I've built all branches and it all seems correct - boards without optflow save a bunch of bytes. |
I've flown this on a SkyViper without incident |
3b2cb9b
to
c4d547c
Compare
c4d547c
to
fd53386
Compare
97a64e9
to
cadfdad
Compare
libraries/AP_DAL/AP_DAL.cpp
Outdated
@@ -73,7 +74,7 @@ void AP_DAL::start_frame(AP_DAL::FrameType frametype) | |||
_RFRN.ahrs_airspeed_sensor_enabled = ahrs.airspeed_sensor_enabled(ahrs.get_active_airspeed_index()); | |||
_RFRN.available_memory = hal.util->available_memory(); | |||
_RFRN.ahrs_trim = ahrs.get_trim(); | |||
#if AP_OPTICALFLOW_ENABLED | |||
#if EK3_FEATURE_OPTFLOW_FUSION |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this would break flow on EKF2 or other estimators
93ea2c8
to
29fae25
Compare
recent additions of CAN things to hwdef, and the lack of a hardware / lower-level dependency means we need to use something with CAN for now
otherwise someone can explicity ebable it but not have a blended instance ID
29fae25
to
67d029f
Compare
I've run this through the test-features build and fixed unrelated bugs in this PR now |
This should automatically remove the EKF3 Optical fusion code based on the presence of OpticalFlow sensors.
The builds looks like this:
I believe that means we should test-fly this on a board OpticalFlow is not included on - on a vehicle with a rangefinder attached (RangeFinder and OpticalFlow are intertwined a little in EKF3). Should test with everybody's least favorite height source.