Andy Piper
c7a43f2a90
AP_InertialSensor: put some functions in fast ram
...
precisely split backend/frontend on Invensense for RAMFUNC allocation
allow building with no IMUs
2022-02-09 12:47:55 +00:00
Peter Barker
558f6babc4
AP_InertialSensor: correct compilation if INS_TEMPERATURE_CAL_ENABLE is off
2022-02-08 10:44:01 +11:00
Peter Barker
c1c329e2b4
AP_InertialSensor: add and use AP_SIM_INS_ENABLED
2022-01-17 19:14:39 +11:00
Jaaaky
f80a9ba3ce
AP_InertialSensor: Fix issue #19599 Failed to build Pixhawk1 with O3
...
As suggested by @tridge
2022-01-17 08:33:27 +11:00
Peter Barker
80178f5d07
AP_InertialSensor: mark FTN as a streamed message
2022-01-05 16:34:36 +11:00
Peter Barker
6084682634
AP_InertialSensor: move INS notch filter logging into INS
2022-01-05 16:34:36 +11:00
Andy Piper
3fd79b8ffb
AP_InertialSensor: BMI270 driver
2021-12-31 09:25:29 +11:00
Andrew Tridgell
7c8794b0bd
AP_InertialSensor: fixed INS_generic example
...
useful for driver development
2021-12-30 10:02:35 +11:00
Andrew Tridgell
662327f2ea
AP_InertialSensor: added support for more ADIS IMUs
...
support 32 bit delta angles and velocities
2021-12-29 18:25:18 +11:00
Andy Piper
6e3b502110
AP_InertialSensor: inline vector ops for backends and temp cal
2021-12-22 18:23:33 +11:00
Andy Piper
d44478ff59
AP_InertialSensor: calculate number of notches based on motor count
...
configure default harmonics if dynamic harmonics
set number of notches correctly for FFT operation
include static notch in filter calculation and allow harmonic options on static notch
2021-12-22 18:13:38 +11:00
Jaaaky
bbb38504d6
AP_InertialSensor: Fix multi #include's
2021-12-21 10:38:46 +11:00
Peter Barker
c6734ad825
AP_InertialSensor: correct logging of inertial-sensor reg-change logging
2021-12-18 21:25:27 +11:00
QioTek
e5a8695640
AP_InertialSensor: added support for ICM-20608-D sensor
2021-12-17 07:58:48 +11:00
QioTek
586c2064a6
AP_InertialSensor: added support for IIM-42652 and ICM-40605 sensors
...
handle new Invensense v3 sensor types
2021-12-14 11:38:36 +11:00
Josh Henderson
27bcec9d6e
AP_InertialSensor: for all Cubes ensure use of non-isolated IMU
2021-11-30 10:20:54 +11:00
Randy Mackay
0de96f3f4a
AP_InertialSensor: vibe units m/s/s
...
also specify no multiplier
2021-11-18 13:23:06 +09:00
Andrew Tridgell
12c10dce32
AP_InertialSensor: fixed comments on IMU types supported
2021-11-09 08:05:03 +11:00
Buzz
168dc34566
AP_InertialSensor: New fallback type = NONE, which successfully does nothing like an INS, but without needing a real one, like esp32 dev boards.
...
Good for boards that u want to boot even when they dont have an IMU attached.
Author: Charles Villard <charlesvillard10@gmail.com>
Author: Buzz <davidbuzz@gmail.com>
2021-11-01 17:40:31 +11:00
Andy Piper
6a00819b2d
AP_InertialSensor: convert APM_BUILD_COPTER_OR_HELI() to APM_BUILD_COPTER_OR_HELI
2021-10-26 11:42:12 +11:00
Gone4Dirt
290794bf93
AP_InertialSensor: Add APM_BUILD_Heli
2021-09-29 19:55:48 +10:00
Peter Barker
dac4134533
AP_InertialSensor: move from HAL_NO_GCS to HAL_GCS_ENABLED
2021-09-22 21:37:00 +10:00
Andrew Tridgell
fefade783b
AP_InertialSensor: allow accelcal with a rotation
2021-09-17 14:07:14 +10:00
Andrew Tridgell
4fdc1ebc30
AP_InertialSensor: fixed locking issue in delta accumulation
...
this fixes a bug in calculating delta velocity and delta acceleration
between threads.
2021-08-31 10:10:18 +10:00
Pierre Kancir
29b13ff98a
AP_InertialSensor: fix externalAHRS detection
...
'A = B >= C' kind. The expression is calculated as following: 'A = (B >= C)'
2021-08-25 16:37:13 +09:00
Scott Parlane
4d95a9d1c3
AP_InertialSensor: BMI160: Allow configuring the rotation
2021-08-13 12:32:28 +10:00
Scott Parlane
700edd241f
AP_InertialSensor: BMI160: Make it possible to use I2C
...
The BMI160 chip talks the same protocol over SPI and I2C,
so simply allowing I2C in hwdef is sufficient to allow it to be used.
2021-08-13 12:32:28 +10:00
Scott Parlane
6554c535a1
AP_InertialSensor: BMI160: Remove linux-only restriction
2021-08-13 12:32:28 +10:00
bugobliterator
f20b7d0f8e
AP_InertialSensor: change class name from SITL::SITL to SITL::SIM
2021-08-05 07:25:31 +10:00
Andrew Tridgell
f68ed4f0a4
AP_InertialSensor: mark log messages as streaming
2021-08-03 10:23:36 +10:00
Andrew Tridgell
0f3dc195b6
AP_InertialSensor: fixed build warning
2021-07-27 19:50:21 +10:00
Siddharth Purohit
c4caf2ff54
AP_InertialSensor: add HAL_INS_ENABLED
2021-06-30 17:06:02 +10:00
Siddharth Purohit
447935bf4c
AP_InertialSensor: remove dependence on gcs for AP_Periph builds
2021-06-30 17:06:02 +10:00
Peter Barker
731cf038f0
AP_InertialSensor: remove @Values from param metadata where @Bitmask exists
2021-06-23 18:37:34 +10:00
Peter Barker
52a52e1e5b
AP_InertialSensor: remove HIL support
2021-06-15 09:47:31 +10:00
nkruzan
f4c18e0f9c
AP_InertialSensor_Invensense: set reset count to 1 if 10s has passed since last reset
2021-05-25 10:46:38 +10:00
Josh Henderson
2b20dcf128
AP_InertialSensor: move GYR & ACC logging functions to Logging.cpp
2021-05-01 14:15:58 +10:00
Josh Henderson
9792202810
AP_InertialSensor: Privatize Logging
2021-04-29 19:19:12 +10:00
Andrew Tridgell
b3ed4f4b12
AP_InertialSensor: fixed handling of more than 3 accel/gyro instances
...
allows for first 3 to work without a panic
2021-04-13 09:36:52 +10:00
Andrew Tridgell
dcf6bcea6e
AP_InertialSensor: removed assert calls
...
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Tatsuya Yamaguchi
2c95093d36
AP_InertialSensor: fix temperature sensor on LSM9DS0
2021-03-16 12:09:19 +11:00
Peter Barker
2b0bf45891
AP_InertialSensor: remove separate calls to get delta-times for vel and ang
2021-03-13 11:29:29 +11:00
Pierre Kancir
67540dc5bb
AP_InertialSensor: fix example
2021-03-03 18:07:38 +11:00
Pierre Kancir
c8a7ab1a75
AP_InertialSensor: fix example
2021-03-03 18:07:38 +11:00
Andrew Tridgell
bf999f701f
AP_InertialSensor: fixed ICM-20602 y offset bug
...
this works around a bug in the ICM-20602 that can cause the Y facttory
offset register to change unexpectedly. We don't know what triggers
this.
The fix is to save the factory offset at boot and restore it if it
changes. We log a message describing the change, but don't mark the
IMU unhealthy as this happens too often and we don't want to fallback
to a 2nd less good quality IMU (eg. MPU6000 on MatekH743)
2021-02-24 18:18:37 +11:00
Andrew Tridgell
4cddf37984
AP_InertialSensor: log unexpected register changes
...
when the register checking code finds an error we will log what
register changed and to what value
2021-02-24 18:18:37 +11:00
Andrew Tridgell
85ef6b7ac6
AP_InertialSensor: added optional logging of register changes
2021-02-24 18:18:37 +11:00
Andrew Tridgell
25dd08a1fd
AP_InertialSensor: added force_save_calibration()
2021-02-15 07:24:40 +11:00
Peter Barker
3da156e358
AP_InertialSensor: prevent nullptr dereference in SITL
2021-02-05 15:02:12 +11:00
Andrew Tridgell
0535c4f592
AP_InertialSensor: default TMAX to 70
...
if user forgets to set this then better to just timeout rather than
calibrating over a small range
2021-01-27 09:49:35 +11:00