- ecl in PX4/Firmware (0dc2ccb130e891b387b4e0d6ea4492473339e142): https://github.com/PX4/ecl/commit/721f5e61a5965a08a34b2875d2bdc0b5d3b80601
- ecl current upstream: https://github.com/PX4/ecl/commit/dd58e695494acab73fb6fcec7074291edb5c226b
- Changes: https://github.com/PX4/ecl/compare/721f5e61a5965a08a34b2875d2bdc0b5d3b80601...dd58e695494acab73fb6fcec7074291edb5c226bdd58e69 2019-01-30 Paul Riseborough - EKF: Ensure FW yaw alignment method is used on first in-air reset
3accab1 2019-01-28 Paul Riseborough - EKF: protect declination fusion from badly conditioned earth field estimates
7bddbd1 2019-01-28 Paul Riseborough - EKF: Update cleaned up autocode fragment with sign error fix and missing LD
fe378fd 2019-01-22 Paul Riseborough - EKF: Prevent unwanted declination fusion when re-starting 3-axis fusion
bd1647a 2019-01-22 Paul Riseborough - EKF: Rework use of fuseDeclination()
d52f536 2019-01-17 Paul Riseborough - EKF: Save mag field covariance data before reset
82ce7a8 2019-01-17 Paul Riseborough - EKF: Save mag field covariance information on startup
708c79e 2019-01-17 Paul Riseborough - EKF: Ensure mag field state covariance data is always available for re-use
8839e4e 2019-01-17 Paul Riseborough - EKF: Don't discard declination certainty information when resuming 3-axis fusion.
25148e1 2019-01-17 Paul Riseborough - EKF: Prevent rapid changes in declination estimate after a reset
6e7c119 2019-01-16 CarlOlsson - EKF: limit yaw variance increase to 0.01 rad^2 to prevent a badly conditioned covariance matrix
0896f7b 2019-01-16 CarlOlsson - EKF: Also fill in lower part of covariance matrix in increaseQuatYawErrVariance()
4b3140e 2019-01-16 Paul Riseborough - EKF: Fix rebase error
911d4d8 2019-01-16 Paul Riseborough - EKF: Fix sign error in increaseQuatYawErrVariance function
a0b9cb0 2018-12-24 Paul Riseborough - EKF: Use consistent method for recording completion of in-flight yaw alignment
ef5a87c 2018-12-21 Paul Riseborough - EKF: Rework quaternion yaw reset.
fc2a089 2018-12-21 Paul Riseborough - EKF: Add function to un-correlate quaternion states
bce1b96 2018-12-21 Paul Riseborough - EKF: Add function enabling yaw variance to be increased
bf1f3a2 2018-12-21 Paul Riseborough - EKF: Derive equations enabling yaw variance to be increased
81eabc1 2019-01-29 Daniel Agar - Jenkins update all containers to latest tag 2019-01-28
a5e6191 2019-01-29 Daniel Agar - EKF add clarity brackets to avoid potential confusion
Fusion with large initial magnetometer biases errors can result in the the NE earth field states reducing in magnitude and effectively flipping sign.
EKF: Move declination state limiting into a separate function
EKF: Limit NE mag states after each 3-axis mag fusion
EKF: Fix bug in mag field strength look-up scale factor
Simplify calling so that it is only called in two ways:
1) Immediately before 3-axis mag fusion if not called since the last earth field covariance reset so that the earth field declination information can be formed.
2) Immediately after 3-axis mag fusion otherwise.
In the case where the EKF is switching between 3-axis and heading fusion, off-diagonal elements containing the correlation between N,E components of the earth field were being lost on each switch event. These elements contained information about the declination uncertainty and should be preserved.
Ensures that each time the earth field covariance and variance data is reset, that the off-diagonal elements containing earth field declination angle certainty is restored.
Use a new method that preserves the roll and pitch information and adds the uncertainty for yaw only.
Ensure that correlation information to non-quaternion states is removed when a reset occurs to prevent fusion of subsequent observations (e.g. GPS) causing incorrect yaw.