Andrew Tridgell
9c2caf5b12
AP_InertialSensor: default fast sampling on
...
if we have a first IMU capable of fast sampling then we want it
enabled by default
2019-12-23 09:56:26 +11:00
Andrew Tridgell
62c3fec45c
HAL_ChibiOS: fixes from LGTM errors
2019-09-22 21:07:54 +10:00
Andy Piper
8e385d7453
AP_InertialSensor: correct formatting
2019-09-11 18:41:05 +10:00
Andy Piper
5b7f9f6bea
AP_InertialSensor: while sensors are converging update the filters sample rates. if gyro filtering produces invalid output, keep the previous value
2019-09-11 18:41:05 +10:00
Andy Piper
a9a7fe3ea5
AP_InertialSensor: ensure harmonic notch gets appropriate defaults
2019-09-11 18:41:05 +10:00
Andy Piper
3261677e01
AP_InertialSensor: remove _ prefix from methods. use changed filter methods.
2019-09-11 18:41:05 +10:00
Andy Piper
50f7e50634
AP_InertialSensor: add harmonic notch filter to gyro filter chain
...
Allow dynamic updates to the calculated frequency. Convert bandwidth and frequency to floats.
backend variables do not need to be indexed per-backed
2019-09-11 18:41:05 +10:00
Andy Piper
dde6dec145
AP_InertialSensor: correct reboot documentation for batch logger and filters
2019-09-10 20:29:56 +10:00
Andrew Tridgell
15e15e0b9d
AP_InertialSensor: define GET_I2C_DEVICE()
2019-09-04 16:27:47 +10:00
Andrew Tridgell
1c92ecc89f
AP_InertialSensor: removed old method of specifying most IMUs
...
and removed dangerous default values for rotations
2019-08-28 06:54:11 +10:00
Andrew Tridgell
c99923d500
AP_InertialSensor: require gyro orientations in LSM9DS probe
...
this prevents a bug where they are missing in hwdef.dat
2019-08-27 19:29:37 +10:00
Andrew Tridgell
992016069a
AP_InertialSensor: fixed watchdog on AHRS trim gyro wait
2019-08-19 14:37:46 +10:00
Andrew Tridgell
e1ce735886
AP_InertialSensor: special check for CubeBlack to force INS_USE3=1
...
this will cope with users loading old parameter files
2019-07-31 12:53:57 +10:00
Andrew Tridgell
123800ccd2
AP_InertialSensor: default INS_USE3 to 1
2019-07-31 12:53:57 +10:00
Randy Mackay
6a154c4e4c
AP_InertialSensor: resolve gcs::send_text compiler warning
2019-07-30 09:02:39 +09:00
Andrew Tridgell
8e5c0fa32b
AP_InertialSensor: disable kill IMUs with HAL_MINIMIZE_FEATURES
2019-07-07 19:03:01 +10:00
Andrew Tridgell
09d3392aee
AP_InertialSensor: zero accumulators on time step
...
this zeros the delta angle and delta velocity accumulators when a
sensor is unavailable for a period of 0.1s. This prevents garbage
values being passed into the EKF when a sensor dies and then becomes
available again some time later
2019-07-07 19:03:01 +10:00
Andrew Tridgell
3444e82ef9
AP_InertialSensor: added RC switch for killing IMUs
2019-07-07 19:03:01 +10:00
Andrew Tridgell
053f0cb689
AP_InertialSensor: try much harder to get all IMU samples
...
this we ensures we get new data for all active IMUs on each loop,
rather than sometimes returning with some IMUs not having data.
This matters as not having a sample on an IMU for a single loop can
cause an EKF IMU failover, which will degrade the learned bias
variances
The issue is usually only seen under high load, such as requesting a
loop rate beyond what the hardware is capable of
2019-07-07 19:03:01 +10:00
Andy Piper
31ea3466af
AP_InertialSensor: Post-filter logging takes precedence over sensor-rate logging.
2019-06-06 17:09:17 +10:00
Andy Piper
36878e9b3c
AP_InertialSensor: Allow all filter frequencies to be 16bit.
2019-06-06 17:09:17 +10:00
Andy Piper
fff81a2163
AP_InertialSensor: Make sure the LPF output is used by the notch input.
2019-06-06 17:09:17 +10:00
Andy Piper
18d403c3ac
AP_InertialSensor: Rework notch filter allocation and sampling
...
https://github.com/ArduPilot/ardupilot/issues/11346
Allocate a notch filter per-IMU.
Update the notch filters in the backend at the sensor sample rate.
Allow raw logging of post-filtered gyro and accel values.
2019-06-06 17:09:17 +10:00
Andrew Tridgell
aef343bfd0
AP_InertialSensor: removed old mRoControlZeroF7 config
2019-05-30 15:39:57 +10:00
Andrew Tridgell
039e7366b0
AP_InertialSensor: support new sensor config setup
2019-05-30 15:39:57 +10:00
Andrew Tridgell
3823ba539c
AP_InertialSensor: rename to EXPECT_DELAY_MS()
2019-05-15 15:33:48 +10:00
Andrew Tridgell
02326ac52c
AP_InertialSensor: use EXPECT_DELAY() macro
2019-05-15 15:33:48 +10:00
Andrew Tridgell
4e769730c9
AP_InertialSensor: removed unusued AP_Common/Semaphore.h
2019-05-15 15:33:48 +10:00
Phillip Kocmoud
6665e4c0a7
AP_InertialSensor: probe IMUs for mRoControlZeroF7
2019-05-10 15:05:42 +10:00
Andrew Tridgell
893b49d145
AP_InertialSensor: disable register checking in invensensev2 driver
...
register checking doesn't work for the banked registers used in the
invensensev2 register layout. It ends up setting the wrong register
value in some cases, which can either cause the sensor to stop working
or in the worst case give bad data
2019-05-10 14:55:39 +10:00
Jaaaky
47c65314fb
AP_InertialSensor: fix accelcalsimple watchdog
2019-05-01 14:23:20 +10:00
Andrew Tridgell
034d476fa5
AP_InertialSensor: prevent watchdog in accelcal
2019-04-22 16:53:35 +10:00
Andrew Tridgell
9c48d001ac
AP_InertialSensor: skip gyro cal on watchdog reset
2019-04-22 16:53:35 +10:00
Andrew Tridgell
c988eb2fd9
AP_InertialSensor: don't set INS_ENABLE_MASK to found IMU mask
2019-04-22 14:56:59 +10:00
Andrew Tridgell
c7ed4bfbcc
AP_InertialSensor: allow testing of IMU failure
2019-04-22 14:56:42 +10:00
Randy Mackay
9fa742e1be
AP_InertialSensor: fix compiler warning in BMI088 driver
2019-04-11 10:32:51 +09:00
Peter Barker
e0fc73776c
AP_InertialSensor: return floats from raw-sample-rate getters
...
The underlying type changed at some stage but the getters did not
2019-04-09 10:02:16 +10:00
Andrew Tridgell
fa63243eb0
AP_InertialSensor: added BMI088 accel config retry
2019-04-08 19:58:12 +10:00
Peter Barker
ef860db558
AP_InertialSensor: add floating point constant designators
2019-04-05 23:04:17 -07:00
Michael du Breuil
c7a9e8bf93
AP_InertialSensor: Fix implicit include of AP_Logger
2019-04-05 20:12:53 +11:00
L Kurt Shaw
d08ab88dea
INS: AP_InertialSensor comments for new cubes
...
Correct comments ICM20648 should have been ICM20948
2019-04-02 10:52:43 +11:00
Tom Pittenger
3eeaa2c8df
AP_InertialSensor: rename dataflash to logger
2019-03-28 16:40:57 +11:00
na
494a3f86ad
AP_IntertialSensor: support ICM20601 IMU
2019-03-28 09:15:27 +11:00
Randy Mackay
5d8747c81d
AP_InetialSensor: fixup ENABLE_MASK parameter desc
2019-03-27 13:14:48 +09:00
Andrew Tridgell
4a334d0ed7
AP_IneertialSensor: fixed startup race in SITL
2019-03-21 18:54:32 +11:00
Andrew Tridgell
0a718ba330
AP_IneertialSensor: fixed orientations and gyro scale factors for new Invensense IMUs
2019-03-21 18:54:32 +11:00
Siddharth Purohit
8c2d3945de
AP_IneertialSensor: add support for custom accel scale
...
adds support for 30g measurement on ICM20649
2019-03-21 18:54:32 +11:00
Siddharth Purohit
3a833d9a90
AP_InertialSensor: fix rotation for ICM20649
2019-03-21 18:54:32 +11:00
Andrew Tridgell
880a55c6a2
AP_InertialSensor: fixes for BMI088 on SPI
...
The sensor has an unusual SPI interface, with a pad byte on read, and
retries needed on write
2019-03-14 16:10:40 +11:00
L Kurt Shaw
8d75e8c5bb
INS: AP_InertialSensor.cpp
...
Fix typo in comments should be NFC
2019-03-12 15:56:55 +09:00