Andrew Tridgell
01b0586958
AP_InertialSensor: use motor_mask from SITL for which outputs are motors
...
generate noise based on motor_mask
2022-10-24 22:23:43 +09:00
Leonardo Garcia
2c6ccb3e05
AP_InertialSensor: Fix BMI085 accel scaling
...
Original BMI088 has 24G range so it was hardcoded for *scale* within
read_fifo_accel. Added a class variable accel_range which is assigned
the correct value when the sensor type is received (16.0 or 24.0).
2022-10-24 22:23:43 +09:00
murata
4d7e819bac
AP_InertialSensor: Allow gyro counts to be returned
2022-10-04 16:50:15 +09:00
Andy Piper
5ce02708cf
AP_InertialSensor: make sure dynamic notches always get updates so that slew limiting is not too aggressive
2022-10-04 16:50:15 +09:00
Andy Piper
fcbaa0969e
AP_InertialSensor: synchronize BMI70 on fifo reads
2022-09-06 09:31:21 +10:00
Peter Barker
a4773413e4
AP_InertialSensor: correct INS_generic example
...
segfaults due to lack of singletoin objects in examples
2022-08-13 20:53:29 +10:00
Andy Piper
a6312ac893
AP_InertialSensor: correctly detect bad frames on regular ICM42xxx
2022-08-12 20:53:36 +10:00
Andy Piper
221ab9752e
AP_InertialSensor: synchronise fifo reads on the ICM42xxx
2022-08-12 20:53:36 +10:00
Iampete1
4e4bfda05d
AP_InertialSensor: vector params always use set method
2022-08-03 13:43:48 +01:00
Iampete1
ea03ea320c
AP_InertialSensor: params always use set method
2022-08-03 13:43:48 +01:00
Andy Piper
8855a54720
AP_InertialSensor: use filtered data in BMI270 and implement fifo reset
...
increase gyro ODR to 3.2Khz to allow higher AAF
use OSR4 on accel filter to achieve nominal 188Hz
2022-08-03 17:06:38 +10:00
Andy Piper
155d436807
AP_InertialSensor: support for fast sampling rates on ICM-42xxx series
...
thoughtfully set anti-aliasing filters on ICM-42xxx series
2022-08-02 17:26:46 +10:00
Andrew Tridgell
2582d5fad5
AP_InertialSensor: re-enable notch filter on 42688
...
thanks to Andy for pointing out this is for an internal resonance
2022-08-02 17:26:46 +10:00
Andrew Tridgell
8a6b8fc486
AP_InertialSensor: enable 180Hz LPF on ICM42670
2022-08-02 17:26:46 +10:00
Andrew Tridgell
5b579aebce
AP_InertialSensor: enable AAF at 488Hz for gyro+accel on ICM42688
...
this should improve vibration handling
2022-08-02 17:26:46 +10:00
Andrew Tridgell
5bde9b0e7c
AP_InertialSensor: added support for ICM42670 IMU
2022-08-02 17:26:46 +10:00
Iampete1
98d9f07507
AP_InertialSensor: defualt accel scale vector to 1.0
2022-07-28 16:51:33 +10:00
Andrew Tridgell
97646f4164
AP_InertialSensor: support BOARD_MATCH() for IMUs
2022-07-19 15:02:31 +10:00
Peter Barker
e4ce4ebed3
AP_InertialSensor: remove un-needed methods
2022-07-19 10:30:36 +10:00
Peter Barker
80e70b2fb4
AP_InertialSensor: remove voiding of parameter
...
Clearly this is used - we pass it down
2022-07-05 09:54:53 +10:00
Andrew Tridgell
c29b390e7b
AP_InertialSensor: implemented harmonics in SITL vibration
2022-07-03 18:47:33 +10:00
Andy Piper
193375a7e5
AP_InertialSensor: implement triple notches
2022-07-03 18:21:41 +10:00
Andy Piper
9d851a0c1a
AP_InertialSensor: allow concurrent logging of both pre- and post-filter IMU data for FFT
...
remove batch logging bitfields
2022-07-03 18:19:55 +10:00
Andrew Tridgell
9ac3472b47
AP_InertialSensor: add set_inactive() on notch filters
2022-06-30 20:58:37 +10:00
Andrew Tridgell
d653499efc
AP_InertialSensor: count filters to match notch options
...
this allows for much more complex filter setups as long as not
filtering on all IMUs
2022-06-12 15:39:44 +10:00
Andrew Tridgell
a37f268dc6
Ap_Inertialsensor: by default only run harmonic notch on the active gyro
...
this should save quite a lot of CPU. Only the active gyro impacts
vehicle flight
2022-06-12 15:39:44 +10:00
Andy Piper
11f5d1974a
AP_InertialSensor: don't print error when probing non-existant BMI270
...
fix device locking at startup on BMI270
2022-06-08 21:44:21 +10:00
Andy Piper
6cacdd1b34
AP_InertialSensor: properly reset MPU6000 signal path at startup
...
failure to reset the signal path as per the register spec leads to
very poor temperature response early on in startup.
2022-06-08 17:44:17 +10:00
Andrew Tridgell
19063a46a0
AP_InertialSensor: fixed build with logging disabled
...
fixes CubeOrange-periph build
2022-06-06 14:50:40 +10:00
Tom Pittenger
798f985ee5
AP_InertialSensor: relax is_still() threshold for SITL.. which is pretty darn still all the time for Plane
2022-05-20 10:52:47 -07:00
Randy Mackay
2382e58f04
AP_InertialSensor: extend ENABLE_MASK param desc IMUs 4 to 7
2022-05-19 07:54:24 +10:00
murata
324f5e3ac9
AP_InertialSensor: Console output can be disabled
2022-05-17 09:53:06 +10:00
Andy Piper
e0b7e5f2a5
AP_InertialSensor: add throttle-based notch setup function
...
allocate harmonic notch filter if FFT is enabled
2022-05-04 17:05:51 +10:00
Peter Barker
94dc0e78cd
AP_InertialSensor: tidy includes
2022-05-03 09:14:58 +10:00
Leonardo Garcia
0eb6ae365a
AP_InertialSensor: Added BMI085 support
...
Fixed styling for 61125e2
Remove whitespace l202
Removed else
2022-04-27 18:37:39 +10:00
Iampete1
2d2165936a
AP_InertialSensor: use pitch to guess which axis the user is trying to calibrate, warn about Q_TRIM_PITCH on plane
2022-04-26 10:03:30 +10:00
Andrew Tridgell
db14ba46dc
AP_InertialSensor: call notch param update with semaphore held
2022-04-19 09:39:03 +10:00
Andrew Tridgell
dff0e5ecc1
AP_InertialSensor: fixed the last notch values to be per-instance
...
thanks to Andy for noticing this
2022-04-19 09:39:03 +10:00
Andrew Tridgell
184f84f4ee
AP_InertialSensor: don't update disabled notches
2022-04-19 09:39:03 +10:00
Andrew Tridgell
e2e1e74da5
AP_InertialSensor: switch to HarmonicNotch class
...
this makes the logic much easier to follow, without indexes into
arrays
2022-04-19 09:39:03 +10:00
Andrew Tridgell
e67d9b4179
AP_InertialSensor: support two full harmonic notch filters
2022-04-19 09:39:03 +10:00
Andrew Tridgell
95ae150a21
AP_InertialSensor: catch FIFO overruns on BMI088
...
we have seen errors where the BMI088 gets out of sync, so that the 3
axes are rotated. The data is shifted by 4 bytes, so that X=Z, Y=X
and Z=Y
this changes the BMI088 to "stop on full" mode, which is what Bosch
use in their example drivers, and also catches FIFO overrun events and
triggers a full FIFO reset. This should fix the problem with the FIFO
sync
2022-04-16 19:24:16 +10:00
Andrew Tridgell
ab5e8419d8
AP_InertialSensor: move INS_HNTC2 to a new parameter table ID
2022-04-16 08:14:06 +10:00
Andy Piper
29e8f96275
AP_InertialSensor: move frontend update into ramfunc.
2022-04-12 09:19:45 +10:00
Peter Barker
3dae386ae3
AP_InertialSensor: correct compilation with HAL_INS_ACCELCAL_ENABLED false
2022-03-22 10:39:44 +11:00
Peter Barker
a53af5277c
AP_InertialSensor: assume accel cals are stored for sitl-on-hw
...
Same as for SITL - they don't need to actually be in storage to be valid
2022-03-17 14:39:55 +11:00
Peter Barker
da21b48f7e
AP_InertialSensor: split AP_HAL_SITL and HAL_SIM_ENABLED
2022-03-17 14:39:55 +11:00
murata
efe8427279
AP_InertialSensor: Change from division to multiplication
2022-03-16 18:41:52 +11:00
Iampete1
b77476caa1
AP_InertialSensor: remove custom orentations
2022-03-02 18:16:42 +11:00
Peter Barker
fda4a65e3e
AP_InertialSensor: include cleanups
2022-03-01 11:21:33 +11:00