Commit Graph

734 Commits

Author SHA1 Message Date
Andy Piper 0408ff0ab1 AP_NavEKF: ensure gyro biases are numbers
avoid errors during compass mot
2023-03-21 12:18:33 +11:00
bugobliterator 4e93e99fe5 AP_NavEKF: Five IMUs need slightly more stack space with GCC 6.3.1
The extra space is take by the inactive sensor bias state code.
2023-03-21 10:04:16 +11:00
Peter Barker 88e164aed3 AP_NavEKF: add and use AP_BEACON_ENABLED 2022-11-16 08:16:31 +11:00
Peter Barker 00f72575c3 AP_NavEKF: change namespace of MultiCopter and FixedWing params
this stops the libraries knowing anything about AP_Vehicle
2022-11-09 19:04:37 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
nrt 5decc08dd4 AP_NavEKF: added a getter function for active source set 2022-08-18 02:05:27 -04:00
Andrew Tridgell a941e4cd41 AP_NavEKF: re-implemented EKF ring buffer
this fixes a bug where elemnts being pushed into the buffer more
slowly than we recall can be lost

for example, if you push a single element in then try a recall it will
fail
2022-06-24 20:25:39 +10:00
Andrew Tridgell 19da623077 AP_NavEKF: added test suite for EKF ring buffer 2022-06-24 20:25:39 +10:00
Pierre Kancir 83dd5be637 AP_NavEKF: fix line ending 2022-06-08 08:16:42 +09:00
Andrew Tridgell 72470e290c AP_NavEKF: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Randy Mackay 6553b9145a AP_NavEKF: filter status gets dead_reckoning bit 2022-05-25 20:05:21 +09:00
Peter Barker ad4c29748e AP_NavEKF: getYawData also provides number of clipping models
In the case of the compass calibrator we do not want to use the GSF
result if any model is degenerate.  We've had a compass calibrate in
flight 180-degrees out from what it should have.
2022-05-11 17:45:47 +10:00
Randy Mackay 291d709409 AP_NavEKF: GSF comment typo fix 2022-04-22 15:24:11 +09:00
Randy Mackay 9d73cfb28f AP_NavEKF: GSF logging in deg from 0 to 360 2022-04-19 08:56:40 +10:00
RuffaloVM 4d40ef5d0a AP_NavEKF : remove the space around the operator 2022-03-08 09:19:52 +09:00
Peter Barker 884450868e AP_NavEKF: use length_squared in place of length 2022-02-28 16:20:14 +11:00
Andy Piper 9084d19273 AP_NavEKF: disable warnings on clang 2022-02-13 14:43:37 +11:00
Andrew Tridgell a6142fa3dd AP_NavEKF: added rejecting_airspeed flag in EKF status 2022-02-07 14:13:49 +11:00
Peter Barker 1db7e9e2e2 AP_NavEKF: log EKF data source set changes 2021-08-11 19:28:28 +09:00
Willian Galvani fe99d3e217 AP_NavEKF_Source: add vertical position to pre_arm_check() description 2021-08-04 21:42:39 +09:00
Andrew Tridgell b83c7f3025 AP_NavEKF: mark log messages as streaming 2021-08-03 10:23:36 +10:00
Peter Barker b89824b3ba AP_NavEKF: log EKF data source set in XKFS 2021-07-21 16:31:53 +10:00
bugobliterator 6988bf862b AP_NavEKF: fix running out of max stack limit on debug builds 2021-07-21 11:27:52 +10:00
Andrew Tridgell b11450c18c AP_NavEKF: review feedback 2021-07-10 07:20:41 +10:00
Andrew Tridgell 338ab28dea AP_NavEKF: larger frame limit for --enable-math-check-indexes 2021-07-10 07:20:41 +10:00
Andrew Tridgell 3235747ef8 AP_NavEKF: allow for double EKF build 2021-07-10 07:20:41 +10:00
murata 0536be1c88 AP_NavEKF: Change misnomer (NFC) 2021-03-19 17:49:27 +11:00
Paul Riseborough afb31bc4f5 AP_NavEKF: Add underflow protection to yaw GSF weight normalisation
This improves protection against a condition where if all yaw hypothesis filers have very large innovations, the weights of Gaussian densities can underflow leading to failure of the weights to converge.
2021-03-05 12:10:01 +11:00
murata 6e6e807223 AP_NavEKF: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
Peter Barker a3dcf5a6ff AP_NavEKF: move GSF logging from EKF files into GSF files 2021-02-23 12:36:33 +11:00
Randy Mackay 8ecac27777 AP_NavEKF_Source; pre_arm_check may skip position checks 2021-01-26 10:46:49 +11:00
Randy Mackay 77af6df730 AP_NavEKF: rename EXTERNAL to GPS 2021-01-05 10:58:06 +11:00
Randy Mackay 0fb168d6ab AP_NavEKF: source supports GSF yaw 2021-01-05 10:58:06 +11:00
Randy Mackay 5891c6ace8 AP_NavEKF3: separate GPS yaw from ExtNav yaw 2021-01-05 10:58:06 +11:00
Randy Mackay fca8eb0778 AP_NavEKF_Source: add ExtNav yaw source 2021-01-05 10:58:06 +11:00
Arsh 3df1bd84e1 AP_NavEKF_Source:Fixed some style issues 2020-12-28 08:46:24 +09:00
Randy Mackay 20f1603b73 AP_NavEKF: source skips compass pre-arm check 2020-12-21 16:56:38 +09:00
Randy Mackay 4998b536b4 AP_NavEKF: source returns YawSource None if COMPASS_USE all zero 2020-12-21 16:56:38 +09:00
Randy Mackay dfd1c23cd3 AP_NavEKF: source format fix 2020-12-21 16:56:38 +09:00
Andrew Tridgell 218c0e4385 AP_NavEKF: Source's active_source_set becomes index 2020-12-21 16:56:38 +09:00
Andrew Tridgell 89f9b9e9b0 AP_NavEKF3: use AP_Enum to make code clearer 2020-12-21 16:56:38 +09:00
Randy Mackay 754002525e AP_NavEKF: constify EKFGSF_yaw members 2020-12-16 19:18:29 +11:00
Randy Mackay 000a2b17c3 AP_NavEKF_Source: remove unused setVelZSource 2020-12-05 08:30:55 +09:00
Randy Mackay 7f15b7b126 AP_NavEKF_Source: prearm check of wheelencoders 2020-12-01 14:01:17 +09:00
Andrew Tridgell 4fdbbd8984 AP_NavEKF: added functions to see if a nav source is enabled
this allows us to avoid initialising ring buffers when not needed
2020-12-01 10:53:08 +11:00
Andrew Tridgell ab917ed92e AP_NavEKF: add more protections on ring buffer code
declare an internal error if we try to access an element when not
initialised
2020-12-01 10:53:08 +11:00
Peter Barker fdbffd19c6 AP_NavEKF_Source: remove defaults for baro and compass
This makes all our defaults "NONE", meaning that a user will not see a
prearm failure for any source other than those in the primary set when
using the default configuration.
2020-11-25 15:19:00 +11:00
Peter Barker 8124c3fea8 AP_NavEKF_Source: set compass_required if we require a compass 2020-11-25 15:19:00 +11:00
Randy Mackay 6c3948f417 AP_NavEKF_Source: optimise configured_in_storage
This small CPU optimisation takes advantage of the fact that once configured in storage is true it will always remain true
2020-11-24 12:10:27 +11:00
Andrew Tridgell fe81387433 AP_NavEKF: allow init twice
this can happen if setup_core() fails with low mem and is called again
2020-11-20 21:56:32 +11:00