Andrew Tridgell
4f0f4608b9
AP_NavEKF3: allow for double EKF build
4 years ago
Paul Riseborough
9d85a4292e
AP_NavEKF3: Ensure postion timeout flag and timer is always reset
4 years ago
Paul Riseborough
de3c6d6e5c
AP_NavEKF3: Fade each vert vel variance clip count over 1 second
4 years ago
Paul Riseborough
ac92182153
AP_NavEKF3: Clean up initialisation of boolean array
4 years ago
Paul Riseborough
b0763f04f1
AP_NavEKF3: Remove unwanted line
4 years ago
Paul Riseborough
b7aad13cc8
AP_NavEKF3: Protect against collapse of velocity and position variances
4 years ago
Paul Riseborough
36160ba9ce
AP_NavEKF3: Fix bug preventing horizontal position reset if badIMUdata
4 years ago
Paul Riseborough
5d00b7d042
AP_NavEKF3: Fix bug preventing height reset if badIMUdata
4 years ago
Paul Riseborough
e4eb8339d0
AP_NavEKF3: Fix bug preventing velocity reset if badIMUdata
4 years ago
Paul Riseborough
a5a25411da
AP_NavEKF3: Remove unnecessary baro limiting
4 years ago
Paul Riseborough
124f016e5b
AP_NavEKF3: Use parameter to set baro ground effect dead-zone
4 years ago
Paul Riseborough
76d0dcc25c
AP_NavEKF3: Use common method for handling baro ground effect
4 years ago
Andrew Tridgell
dc9435a88d
AP_NavEKF3: don't limit baro change when we are in fixed wing mode
4 years ago
Peter Barker
c00f110f3d
AP_NavEKF3: use DAL APIs for takeoff/touchdown expected
4 years ago
Paul Riseborough
ac87cab6bc
AP_NavEKF3: constify array index variable
4 years ago
Paul Riseborough
1498b516a3
AP_NavEKF3: Don't try to learn gyro biases that are poorly observable
4 years ago
Paul Riseborough
918606e71d
AP_NavEKF3: Don't use fake measurements to learn dvel bias
4 years ago
Paul Riseborough
c709ad9c80
AP_NavEKF3: Add missing axis specific dvel bias update inhibit
4 years ago
Paul Riseborough
a07427fd30
AP_NavEKF3: Don't learn poorly observed IMU dvel bias states before flight
4 years ago
Andrew Tridgell
1ccda938cb
AP_NavEKF3: make external navigation optional
4 years ago
Andrew Tridgell
8da511f039
AP_NavEKF3: make body odomotry build depend on vehicle type
...
saves about 11k of flash
4 years ago
chobitsfan
26a3a02c81
AP_NavEKF3: use posxy_source in all places
4 years ago
chobits
e73d28fe19
AP_NavEKF3: remove redundant extnav code
4 years ago
Peter Barker
b79a26135c
AP_NavEKF3: move posvel fusion health booleans 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
Andrew Tridgell
603e0c090d
AP_NavEKF3: don't reset EKx_GPS_TYPE when GPS has no vertical velocity
...
setting the parameter to 1 causes the following issues:
- the GPS may not have vertical velocity at the time the parameter
set happens, but may get it later when the GPS is fully configured
- we may switch between GPS modules which do/don't have vertical
velocity
- the user may download parameters after the set(1), and end up with
incorrect parameters they may later load onto the vehicle,
permanently disabling use of vertical velocity
4 years ago
Randy Mackay
5eb3875ebb
AP_NavEKF3: rename posxy_source_last and posxy_source_reset
4 years ago
Randy Mackay
33b6212cce
AP_NavEKF3: rename _sources to sources
4 years ago
Randy Mackay
6daaa06317
AP_NavEKF3: integrate AP_NavEKF_Source::useVelXYSource
...
also integrate useVelZSource
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
2505fd5c1c
AP_NavEKF3: body and wheel odometry check source
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
Randy Mackay
b726630ef4
AP_NavEKF3: pos timeout or glitch does not reset vel if fusing successfully
...
vel is not reset if GPS velocity, optical flow, visual odometry or wheel
encoders are successfully being fused
4 years ago
Randy Mackay
3b38aa6d7b
AP_NavEKF3: GPS change pos reset uses ResetPositonNE and ResetPositionD
...
Using these existing functions removes some code duplicate
non-functional change
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
a16de76f57
AP_NavEKF3: correct extnav position as it is recalled from the buffer
...
This makes extnav position correction consistent with the velocity correction
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
Randy Mackay
3d4e1cd5c5
AP_NavEKF3: CorrectGPSForAntennaOffset always corrects vel
4 years ago
Randy Mackay
e25579cc00
AP_NavEKF3: correct GPS for position as it is recalled from buffer
4 years ago
Randy Mackay
e4056086e0
AP_NavEKF3: minor format and spelling fixes
4 years ago
Randy Mackay
231a958e51
AP_NavEKF3: minor comment fix
4 years ago
Randy Mackay
e4ccd21dd7
AP_NavEKF3: consolidate extNav height source timeouts
4 years ago
Randy Mackay
6989a28bfc
AP_NavEKF3: allow alt from other sources when using ExtNav
...
also allows using ExtNav alt when not using it for XY position
removes redundant and incorrect setting of activeHgtSource from ExtNav
which was always being overwritten by the correct value later in selectHeightForFusion
4 years ago