Paul Riseborough
db86a5acc8
AP_NavEKF3: Don't update yaw estimator with bad GPS
4 years ago
Andrew Tridgell
5686dafeef
AP_NavEKF3: fixed logged core for GSF messages
4 years ago
Andrew Tridgell
03f2e853ce
AP_NavEKF3: fixed memory corruption on push before init
...
this fixes a bug that happens with VISION_SPEED_ESTIMATE from a
companion computer, which may come in before the EKF buffers are
allocated. That causes a push to an uninitialised ringbuffer which
triggers memory corruption
found using the new memory guard system
4 years ago
Andrew Tridgell
c14d19be68
AP_NavEKF3: fixed gcc 9.3 build error
...
gcc 9.3 doesn't like the use of get_accel(i) when array length is 1
4 years ago
Andrew Tridgell
0bc77a3baf
AP_NavEKF3: fixed whitespace
4 years ago
Andrew Tridgell
6ee1b23d28
AP_NavEKF3: removed use of another lanes gyro in optflow takeoff detection
...
as discussed with Paul
4 years ago
Andrew Tridgell
6fe05a9ab6
AP_NavEKF3: restore XKTV message
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
eaa8474563
AP_NavEKF3: cope with INS_MAX_INSTANCES below 3
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
1bdf6173ec
AP_NavEKF3: removed have_ekf_logging
4 years ago
Andrew Tridgell
21dfdc2192
AP_NavEKF3: use DAL for body frame odometry
4 years ago
Andrew Tridgell
a0de6c620f
AP_NavEKF3: use selected GPS for gps_yaw_deg()
...
more than one GPS could provide yaw
4 years ago
Andrew Tridgell
f4c3d7286c
AP_NavEKF3: support replay with wheel odomotry
4 years ago
Andrew Tridgell
e87f98066f
AP_NavEKF3: support replay with external navigation data
4 years ago
Andrew Tridgell
7bbbbd314c
AP_NavEKF3: added optflow support for AP_DAL
4 years ago
Andrew Tridgell
31091d6307
AP_NavEKF3: use ekf_low_time_remaining for core scheduling
4 years ago
Andrew Tridgell
f3c3778169
prevent duplicate EKF logging
...
vehicle code sometimes tries to log the same data twice
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
2681d3afe2
AP_NavEKF3: simplify alignYawAngle
4 years ago
Peter Barker
fc49b55b85
AP_NavEKF3: make coreBetterScore const
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
7b898ee001
AP_NavEKF3: minor comment and format fixes
4 years ago
Paul Riseborough
f2af2b3458
AP_NavEKF3: Initialise tiltErrorVariance class variable
4 years ago
Paul Riseborough
43386a8eea
AP_NAvEKF3: Use a const reference
4 years ago
Paul Riseborough
64a3d8fe4e
AP_NavEKF3: Update documentation
4 years ago
Paul Riseborough
6c7820dd8d
AP_NavEKF3: Add verification of tiltErrorVariance() method in SITL
4 years ago
Paul Riseborough
90e928c32a
AP_NavEKF3: Re-tune tilt alignment check
...
New tilt error variance estimate is more accurate and larger than before.
4 years ago
Paul Riseborough
16ae75a681
AP_NavEKF3: Consolidate and log tilt error variance calculation
4 years ago
Paul Riseborough
8a88dd23a2
AP_NavEKF3: Add missing generated code file for yaw fusion
4 years ago
Paul Riseborough
69632336e1
AP_NavEKF3: Remove singularity in yaw fusion at +-90deg yaw
...
Uses sympy derivation
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
fa10d114e4
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.
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
Paul Riseborough
9168d0cd19
AP_NavEKF3: Initialise mag field variances to non zero values
4 years ago
Paul Riseborough
0b96f046c2
AP_NavEKF3: Unblock initial yaw alignment message
4 years ago
Paul Riseborough
f81abd73d6
AP_NavEKF3: Update covariance prediction to yse SymPy generated equations
...
Saves flash and variable space.
4 years ago
Andrew Tridgell
a4716fb9bf
AP_NavEKF3: fixed multi-core yaw reset
...
thanks to Alex Burka for finding this
4 years ago
Andrew Tridgell
fcccdcc936
AP_NavEKF3: fixed bug in external yaw for fixed wing
...
when we are on the ground we should not chang to AID_NONE if we have
an external yaw source
this fixes an EKF3 error loop on the ground found by Michael
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
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
Peter Barker
0496ecc4f6
AP_NavEKF2: remove unused state variables
4 years ago
Peter Barker
a1e7c91f8e
AP_NaveEKF3: reduce code duplication in setup_core
...
Less code.
Saves 40 bytes on PixRacer
4 years ago
Randy Mackay
e4056086e0
AP_NavEKF3: minor format and spelling fixes
4 years ago