Andrew Tridgell
3edbe81b1e
AP_NavEKF2: removed 2nd set of imuSampleTime_ms
5 years ago
Paul Riseborough
6952d83f00
AP_NavEKF2: Fix casting build error
5 years ago
Paul Riseborough
0d965d2a1c
AP_NavEKF2: Fix timer wrapping bugs
...
Also replaces tab characters
5 years ago
Paul Riseborough
de0040ad69
AP_NavEKF2: Enable use of EKF-GSF yaw estimate
...
Enables the yaw to be reset in flight to a value estimated from a specialised yaw estimator. This allows faster recovery if taking off with a bad magnetometer and also allows yaw alignment and GPS use to commence in-air when operating without any yaw sensing.
AP_NavEKF2: Add missing accesor functions for default airspeed
5 years ago
Randy Mackay
35dcb0d752
AP_NavEKF2: CorrectExtNavForSensorOffset made const
5 years ago
Randy Mackay
85704e4989
AP_NavEKF2: CorrectGPSForAntennaOffset made const
...
also reduce scope of call to slightly reduce CPU load
5 years ago
Peter Barker
f1fc05d357
AP_NavEKF2: rename APMrover2 to Rover
5 years ago
Randy Mackay
8749f30c64
AP_NavEKF2: external nav pos offsets from AP_VisualOdom library
5 years ago
Randy Mackay
fb7e68c53a
AP_NavEKF2: writeExtNavData reset handles system time wrap
5 years ago
Randy Mackay
9f81da1bf9
AP_NavEKF2: minor comment fix
5 years ago
Andrew Tridgell
c9755cf9e6
AP_NavEKF2: make mag variance reporting consistent
...
logged scaled variance should match the value used in MAVLink
EKF_STATUS_REPORT
5 years ago
Peter Barker
903d81c263
AP_NavEKF2: use compass reference rather than repeatedly asking AHRS for it
5 years ago
Andrew Tridgell
9030590a88
AP_NavEKF2: fixed use of antenna position when switching GPS primary
...
when GPS primary switches we were using a position which had not been
corrected for antenna offset. This was used for calculating the reset
for sensor change.
This fixes that (trivial fix) and also fixes a similar issue on
position reset
5 years ago
Siddharth Purohit
4cca1c307c
AP_NavEKF2: Primary compass is always at serial number 0
5 years ago
Peter Hall
e0eeb4f863
AP_NavEKF2: add initalized flag and change to uint32_t
5 years ago
chobits
a54f24c8c0
AP_NavEKF2: switch to optflow if gps is jammed
5 years ago
Peter Barker
da3d3cc21b
AP_NavEKF: stop taking ahrs in constructor
5 years ago
Peter Hall
2970334c0d
AP_NavEKF2: get_time_flying in vehicle
5 years ago
Peter Barker
524647d221
AP_NavEKF2: use instance number when logging rather than multiple message IDs
5 years ago
Peter Barker
060c851709
AP_NavEKF2: make send_status_report const
5 years ago
Peter Barker
369292f7f3
AP_NavEKF2: stop relying on the presence of a RangeFinder
5 years ago
Peter Barker
239df941e5
AP_NavEKF2: use instance # when logging EKF core timings
5 years ago
Andrew Tridgell
fce4d6952f
AP_NavEKF2: don't use WMM tables unless we have a compass scale factor set
5 years ago
Mark Whitehorn
5f6b3a1f5b
AP_NavEKF2: clean up init failure handling
...
only attempt to allocate memory once
5 years ago
Peter Barker
99689f65f8
AP_NavEKF2: adjust for renaming of RangeFinder files
5 years ago
Peter Barker
9735684184
AP_NavEKF2: use enum-class for RangeFinder Status
5 years ago
Mark Whitehorn
23ee9eef5f
AP_NavEKF2: fail prearm on any core setup failure
5 years ago
Mark Whitehorn
489ae83604
AP_NavEKF2: handle core setup failures
5 years ago
Mark Whitehorn
7c6630e216
AP_NavEKF2: EKF2 prefix for prearm failures and camelCase
5 years ago
Mark Whitehorn
95ea6ad807
AP_NavEKF2: provide reasons for init failures
5 years ago
Randy Mackay
cc5facf6d2
AP_NavEKF2: initialise pre-arm failure message
5 years ago
Mark Whitehorn
6e73feca5c
AP_NavEKF2: add prearm failure message for null core pointer
5 years ago
Randy Mackay
e32a8556b2
AP_NavEKF2: suppress ekf fail-to-set-origin if core disabled
5 years ago
Randy Mackay
e2d3afaaa7
AP_NavEKF2: reduce EK2_HRT_FILT max to 30
5 years ago
Paul Riseborough
c26c6fd078
AP_NavEKF2: Add missing vertical position derivative calculation
...
Use a third order order complementary filter to estimate the rate of change of vertical position output.
5 years ago
Andrew Tridgell
cbe34320b5
AP_NavEKF2: fixed build
...
broken by recent common variable change
5 years ago
Andrew Tridgell
f7e138bddd
AP_NavEKF2: use parent class for intermediate static variables
...
this makes the code faster as well as using less memory when both EK2
and EK3 are enabled
5 years ago
Andrew Tridgell
8dd2119b14
AP_NavEKF2: make it easy to do EK2 timing tests
...
for future benchmarking
5 years ago
Andrew Tridgell
163efd0df5
AP_NavEKF2: change optimisation from -O3 to -O2
5 years ago
Peter Barker
952d4d2cbc
AP_NavEKF2: initialise Kfusion stack variable to fix compilation
...
This fixes the compilation, as previous patches have done.
5 years ago
Andrew Tridgell
d40d812ea4
AP_NavEKF2: fixed build with g++ 9.1
...
this is a false positive, but the cost of clearing this array is low,
and it saves a much more complex fix
5 years ago
Andrew Tridgell
9226899c6f
AP_NavEKF2: added comment (review request)
5 years ago
Andrew Tridgell
255981c60c
AP_NavEKF2: moved some of the intermediate vars to the stack
...
this keeps stack frames below 1k, while giving faster access to the
variables and saving more memory
5 years ago
Andrew Tridgell
96c6544997
AP_NavEKF3: moved intermediate variables to common memory
...
this moves intermediate variables from being per-core to being common
between cores. This saves memory on systems with more than one core by
avoiding allocating this memory on every core.
This is an alternative to #11717 which moves memory onto the stack. It
doesn't save as much memory as #11717 , but avoids creating large stack
frames
5 years ago
Andrew Tridgell
0041874826
AP_NavEKF2: moved intermediate variables to common memory
...
this moves intermediate variables from being per-core to being common
between cores. This saves memory on systems with more than one core by
avoiding allocating this memory on every core.
This is an alternative to #11717 which moves memory onto the stack. It
doesn't save as much memory as #11717 , but avoids creating large stack
frames
5 years ago
Andrew Tridgell
1d47f9186e
AP_NavEKF2: fixed use of old irqsave() API
5 years ago
Peter Barker
3619856fc9
AP_NavEKF2: correct return of empty prearm string
5 years ago
Randy Mackay
94a52b3525
EKF2: RNG_USE_HGT param only used when ALT_SOURCE = rangefinder
5 years ago
Michael du Breuil
a4d10b2e86
AP_NavEKF2: Allow the GPS to be responsible for logging
5 years ago
Peter Barker
c8fac758ee
AP_NavEKF2: use timing logging from AP_NavEKF
6 years ago