Feature Request
Feature request
Is your feature request related to a problem? Please describe.
I am developing a multicopter control framework that explicitly accounts for state uncertainty (e.g., covariance-aware or stochastic control) running on a companion computer connected via MAVLink.
For this, I require access to the EKF state covariance, at least for position and velocity states in the local frame. Currently, ArduPilot exposes only aggregated or qualitative uncertainty metrics, which are insufficient for algorithmic use.
Describe the solution you'd like
Expose EKF covariance data (from EKF3) via MAVLink using existing standard messages such as:
LOCAL_POSITION_NED_COV (64#)
- potentially other covariance messages depending on frame (e.g., global position, attitude)
Ideally:
- Allow configurable streaming of covariance data
- Allow selection of subsets (e.g., only position/velocity blocks) to reduce bandwidth
Describe alternatives you've considered
The MAVLink message EKF_STATUS_REPORT (193#) seems to be implemented but only provides very general information on velocity and position variance. It is therefore insufficient for:
- constructing covariance matrices
- performing uncertainty propagation
- implementing stochastic or robust controllers
Estimating covariance externally is not viable, as it would require duplicating the onboard EKF or making strong assumptions about its internal behavior.
Platform
[ ] All
[ ] AntennaTracker
[ x ] Copter
[ ] Plane
[ ] Rover
[ ] Submarine
Feature Request
Feature request
Is your feature request related to a problem? Please describe.
I am developing a multicopter control framework that explicitly accounts for state uncertainty (e.g., covariance-aware or stochastic control) running on a companion computer connected via MAVLink.
For this, I require access to the EKF state covariance, at least for position and velocity states in the local frame. Currently, ArduPilot exposes only aggregated or qualitative uncertainty metrics, which are insufficient for algorithmic use.
Describe the solution you'd like
Expose EKF covariance data (from EKF3) via MAVLink using existing standard messages such as:
LOCAL_POSITION_NED_COV(64#)Ideally:
Describe alternatives you've considered
The MAVLink message
EKF_STATUS_REPORT(193#) seems to be implemented but only provides very general information on velocity and position variance. It is therefore insufficient for:Estimating covariance externally is not viable, as it would require duplicating the onboard EKF or making strong assumptions about its internal behavior.
Platform
[ ] All
[ ] AntennaTracker
[ x ] Copter
[ ] Plane
[ ] Rover
[ ] Submarine