Randy Mackay
a2cca60beb
AP_NavEKF3: constify EKFGSF_getYaw
4 years ago
Randy Mackay
9cb529cfd6
AP_NavEKF3: minor formatting fix
...
also replace tab with spaces
4 years ago
Paul Riseborough
908b348c31
AP_NavEKF3: Fix typo in enum label
4 years ago
Randy Mackay
e819dbdd64
AP_NavEKF3: add EKFGSF_getYaw to reduce duplicate code
4 years ago
Paul Riseborough
a9e76d44af
AP_NavEKF3: Clean up yaw fusion logic
4 years ago
Paul Riseborough
8f32430294
AP_NavEKF3: Fix white spaces
4 years ago
Paul Riseborough
4884476c09
AP_NavEKF3: Formatting and comment fixes
4 years ago
Paul Riseborough
c9ab4b18b0
AP_NavEKF3: Add multicopter wind estimation
4 years ago
Andrew Tridgell
bdba430e55
AP_NavEKF3: save memory on beacon debug structure
...
only allocate when beacons are enabled. This relies on a guarantee in
the DAL that the beacon count cannot change
4 years ago
Peter Barker
e972fb31b1
AP_NavEKF3: remove unused variables
4 years ago
Peter Barker
0529ddcd67
AP_NavEKF3: move badMagYaw onto stack
4 years ago
Peter Barker
2885026bba
AP_NavEKF3: move tasHealth to be a stack variable
4 years ago
Peter Barker
b79a26135c
AP_NavEKF3: move posvel fusion health booleans to be on the stack
4 years ago
Peter Barker
2d25149e2e
AP_NavEKF3: move global state to be on the stack
4 years ago
Andrew Tridgell
d242339f2e
AP_NavEKF3: added have_vz flag to GPS buffer data
...
this ensures that we record GPS vertical velocity status for every
sample correctly
4 years ago
Andrew Tridgell
80f7906744
AP_NavEKF3: removed inhibitGps and inhibitGpsVertVel options
...
these were unused
4 years ago
Peter Barker
e1a033b296
AP_NavEKF3: make logging a core concern
...
Also dissolve some methods only used for logging
4 years ago
Andrew Tridgell
1e4b1d7563
AP_NavEKF3: convert to using common buffer classes
...
this saves a considerable amount of flash
4 years ago
Randy Mackay
5eb3875ebb
AP_NavEKF3: rename posxy_source_last and posxy_source_reset
4 years ago
Randy Mackay
9716b09cad
AP_NavEKF3: minor indenting fix
4 years ago
Randy Mackay
6c0bb6a198
AP_NavEKF3: add convert_params for source
4 years ago
Randy Mackay
ba9f60abc7
AP_NavEKF3: add getVelInnovationsAndVariancesForSource
4 years ago
Randy Mackay
58aa6086df
AP_NavEKF3: always calculate GPS innovations and variances
4 years ago
Randy Mackay
e7e91b1c3b
AP_NavEKF3: always calculate extNav innovations and variances
4 years ago
Randy Mackay
6b2b5c4ca0
AP_NavEKF3: add CalculateVelInnovationsAndVariances
4 years ago
Randy Mackay
4cadaa5194
AP_NavEKF3: readyToUseOptFlow, Beacon, ExtNav check source
4 years ago
Randy Mackay
faed58a027
AP_NavEKF3: integrate Source for yaw
4 years ago
Randy Mackay
8931e50166
AP_NavEKF3: integrate Source for alt
4 years ago
Randy Mackay
c21d58ebea
AP_NavEKF3: integrate Source for position
4 years ago
Andrew Tridgell
f5275fd0ad
AP_NavEKF3: fixed use of pointers in ringbuffers
...
these don't work with AP_DAL
4 years ago
Andrew Tridgell
9b81c5a1e0
AP_NavEKF3: use dal reference in EKF backends
...
saves a bit of flash space
4 years ago
Andrew Tridgell
096aab9388
AP_NavEKF3: convert to use AP_DAL for new replay structure
...
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
4 years ago
Paul Riseborough
6c7820dd8d
AP_NavEKF3: Add verification of tiltErrorVariance() method in SITL
4 years ago
Paul Riseborough
16ae75a681
AP_NavEKF3: Consolidate and log tilt error variance calculation
4 years ago
Paul Riseborough
4e41e9f5f1
AP_NavEKF3: Ensure consistent use of 312 or 321 rotation order
...
Prevents possibility of a differnt sequence being used to calculate the yaw and application of the yaw to the quaternions
4 years ago
Paul Riseborough
73d5ca5ad3
AP_NavEKF3: Fix yaw drift after yaw reset at +-90 deg pitch
...
Use existing covariance prediction code to set quaternion state covariances.
Assumes tilt error is 3 deg 1-sigma.
TODO derive and add function that calculates tilt error variance.
4 years ago
Paul Riseborough
a97d030e4b
AP_NavEKF3: Reset earth field variances when starting mag field estimation
4 years ago
Randy Mackay
c3fd82b6d7
AP_NavEKF3: minor spelling fix
4 years ago
Randy Mackay
2f1ae29a9c
AP_NavEKF3: extnav data gets corrected boolean
...
CorrectExtNavForSensorOffset and CorrectExtNavVelForSensorOffset use
corrected boolean to avoid correcting twice
4 years ago
Randy Mackay
71487e9c10
AP_NavEKF3: gps_elements gets corrected flag
...
CorrectGPSForAntennaOffset uses this flag to ensure position and velocity are only corrected once
4 years ago
Peter Barker
0496ecc4f6
AP_NavEKF2: remove unused state variables
4 years ago
Peter Barker
ef505df78a
AP_NavEKF3: remove unused quat2Tbn method
4 years ago
Peter Barker
0eafe4b662
AP_NavEKF3: remove dangling method declarations
4 years ago
Peter Barker
3dc67f09fd
AP_NavEKF3: remove unused innovationIncrement and lastInnovation
4 years ago
Andrew Tridgell
8a4b0f858a
AP_NavEKF3: reset body mag variances at key points
...
we need to reset the body mag variances if we change sensors or if we
are starting 3D fusion. When not doing 3D fusion we zero the
variances, so they must be initialised again when we restart
fusion. This fixes a bug in handling the variances on a 2nd flight
4 years ago
Andrew Tridgell
e9185f526b
AP_NavEKF3: add comments on state indexes
...
make it easier to check indexes
4 years ago
Andrew Tridgell
2bc7d17e7a
AP_NavEKF3: improved core comparison to check alignment
...
this adds coreBetterScore() which takes account of tilt and yaw
alignment when comparing cores for lane switching
this ensures we don't switch to a lane that is unaligned due to the
zero error score for unaligned lanes
4 years ago
Andrew Tridgell
3836b59041
AP_NavEKF3: fixed handling of failed compass
...
when a compass goes unhealthy due to sensor failure we should try
another compass after 10s if another compass is available
4 years ago
Harshit Kumar Sankhla
edc3709653
AP_NavEKF3: implement sensor affinity using EK3_AFFINITY parameter
...
this allows the EKF core index to be used to select a GPS/baro/mag
instance. This is an alternative to GPS blending that allows EKF lane
switching to be used to select the right combination of GPS and IMU
add logging to XKFS message
5 years ago
Randy Mackay
384029d278
AP_NavEKF3: rngBcnDataNew made local
5 years ago