ArduPilot / ArduPilot/apm_planner
Add support for EKF_STATUS_REPORT for AC3.3
- Dominant language
- C++
- Stars
- 550
- Forks
- 483
- PR merge metrics
- No merged PRs in 30d
Description
AC3.3 provides support for an EKF_STATUS_REPORT message.
The report has a "flags" field and a list of variances which provide details on how good the EKF thinks it's estimates are for various things like horizontal-position and compass.
From a previous discussion with Paul, we think the GCS should have an EKF details page or maybe just a little EKF icon which is red, amber or green. The GCS could look at all variances, and decide on the EKF icon's colour by taking the worst variance of the list and:
Below 0.5 = good (i.e. green)
0.5 ~ <0.8 = warning (i.e. amber)
0.8 or higher = bad (maybe trigger failsafe) (i.e. red)
```
EKF Status message including flags and variances
Flags
Velocity
Horizontal Position
Vertical Position
Compass
Terrain Altitude
Unused1
Unused2
Unused3
The flags message mirror’s our getFilterStatus() output. I’m wondering if we could remove the *PRED* enums?
Flags in EKF_STATUS message
set if EKF's attitude estimate is good
set if EKF's horizontal velocity estimate is good
set if EKF's vertical velocity estimate is good
set if EKF's horizontal position (relative) estimate is good
set if EKF's horizontal position (absolute) estimate is good
set if EKF's vertical position (absolute) estimate is good
set if EKF's vertical position (above ground) estimate is good
EKF is in constant position mode and does not know it's absolute or relative position
set if EKF's predicted horizontal position (relative) estimate is good
set if EKF's predicted horizontal position (absolute) estimate is good
```
Contributor guide
Research direction
Start by locating the MAVLink message-handling code and the existing getFilterStatus() output in APM Planner. Trace how status data reaches the Qt interface, then determine whether the finished work should provide an EKF details page or a red, amber, or green indicator based on the reported variances and flags.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100