Andrew Tridgell
491d1da9e7
AP_InertialSensor: special check for CubeBlack to force INS_USE3=1
...
this will cope with users loading old parameter files
2019-07-31 12:59:41 +10:00
Andrew Tridgell
999b503523
AP_InertialSensor: default INS_USE3 to 1
2019-07-31 12:54:28 +10:00
Andrew Tridgell
5e420e2adf
AP_IneertialSensor: fixed startup race in SITL
2019-07-10 11:14:59 +10:00
Andrew Tridgell
aee7740ae9
AP_InertialSensor: fixes for backport of BMI088 driver
2019-07-09 16:23:45 +10:00
Andrew Tridgell
9773f841b8
AP_InertialSensor: add drivers for register bank based Invensense Sensors
2019-07-09 16:23:45 +10:00
Andrew Tridgell
99bbcddc26
AP_InertialSensor: added driver for BMI088
...
setup for 1600 Hz accel sample, 2kHz gyro sample, 24g accel range
2019-07-09 16:23:45 +10:00
Phillip Kocmoud
d484e9300a
AP_InertialSensor: probe IMUs for mRoControlZeroF7
2019-07-09 16:23:45 +10:00
Andrew Tridgell
7a9203ef29
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-06 15:50:34 +10:00
Andrew Tridgell
a5e3cd664b
AP_InertialSensor: added RC switch for killing IMUs
2019-07-06 15:50:34 +10:00
Andrew Tridgell
0bbe9bfb71
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-06 10:03:18 +10:00
Jaaaky
715f117d4b
AP_InertialSensor: fix accelcalsimple watchdog
2019-05-03 10:37:34 +10:00
Andrew Tridgell
ca37b06af2
AP_InertialSensor: don't set INS_ENABLE_MASK to found IMU mask
2019-04-22 14:47:43 +10:00
Andrew Tridgell
4139450db8
AP_InertialSensor: prevent watchdog in accelcal
2019-04-20 17:35:49 +10:00
Andrew Tridgell
3f0af2ce29
AP_InertialSensor: skip gyro cal on watchdog reset
2019-04-20 13:55:08 +10:00
Andrew Tridgell
645629baa2
AP_InertialSensor: fixed orientation of 2nd OmnibusF7V2 IMU
2018-12-12 16:28:42 +11:00
Michael du Breuil
1efad07a84
AP_InertialSensor: Remove unused ADC include
2018-07-17 09:29:50 +10:00
Andrew Tridgell
5f8b57ba19
AP_InertialSensor: added SITL device IDs
2018-07-13 10:19:01 +10:00
Lucas De Marchi
49d08ba72a
Global: remove minlure
...
Minlure is a port of ArduPilot to Minnow Board connected to daughter
board. Very few of those were produced and nobody is flying with it.
It served its purpose and all the the improvements to ArduPilot remain
regardless of it not being supported anymore. Now it's just adding
maintenance work with no clear benefit, so pull the plug.
2018-06-26 07:32:08 -07:00
Patrick José Pereira
0c06bf89e5
AP_InertialSensor: Use SITL singleton
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Andrew Tridgell
89b8124560
AP_InertialSensor: added BMI055 IMU driver
2018-06-08 09:56:41 +10:00
Andrew Tridgell
bfa66c9397
AP_InertialSensor: detect two IMUs on FMUv5
2018-06-06 07:15:41 +10:00
Francisco Ferreira
8b32960d3e
AP_InertialSensor: remove Qualcomm board support
2018-05-17 09:57:20 +10:00
Peter Barker
1a640e3405
AP_InertialSensor: parameterise sensor-rate logging, generalise it
...
AP_InertialSensor: add parameters for push-to-log interval and count
AP_InertialSensor: rename BAT_RAW to BAT_OPT
This becomes a bitmask of options for the BatchSampler
AP_InertialSensor: rename 'fast sample' to 'sensorrate sample'
AP_InertialSensor: const sensor-rate filter method
AP_InertialSampler: remove hard-coding of sample rate multiplier
AP_InertialSensor: use parameter to enable/disable sensor-rate logging
AP_InertialSensor: use a parameter to control sensor-rate logging
AP_InertialSensor: allow backends to override sensor data multiplier
e.g. some accelerometers are sensitive over wider ranges than the default 16G
AP_Inertialsensor: correct sample rate multiplier
2018-05-01 09:35:29 +10:00
Andrew Tridgell
44131202cd
AP_InertialSensor: 4kHz batch sampling
2018-05-01 09:35:29 +10:00
Jacob Walser
ad4e928e7d
AP_InertialSensor: add support for custom board orientations
2018-04-24 13:04:37 +01:00
Andrew Tridgell
ca9d1a55fe
AP_InertialSensor: support ICM-20689 IMU
...
like the 20789, but without the baro
2018-04-24 08:03:46 +10:00
Andrew Tridgell
ea2dc9b831
AP_InertialSensor: added OMNIBUSF7V2 INS sensors
...
a dual-IMU board
2018-04-12 11:50:44 +10:00
Andrew Tridgell
f788cde5c7
AP_InertialSensor: use multiply for fifo scale factors
...
this fixes issue from #8118 too
2018-04-10 14:17:16 +10:00
Peter Barker
be634a893f
AP_InertialSensor: remove unused ins error count logging
2018-04-04 14:21:20 +01:00
Peter Barker
aca87ab638
AP_InertialSensor: remove pointless initialisations
...
AP_InertialSensor: avoid pointless zeroing in constructor
AP_InertialSensor is either in bss or is created via new (which zeroes
memory)
2018-04-04 12:14:02 +01:00
Peter Barker
2396a248ed
AP_InertialSensor: use ahrs singleton for simple accelcal
2018-04-02 23:25:05 +01:00
Lucas De Marchi
c4e8aeb105
AP_InertialSensor: remove linux-only include
...
We already include AP_HAL.h that includes the platform-agnostic gpio
header, which is all that this driver needs. This is an alternative
fix to #7794 .
2018-03-09 11:12:31 -08:00
Andrew Tridgell
53b76efbd2
AP_InerialSensor: setup INT_PIN_CFG correctly
...
this restores the behavior lost with the 20789 driver change
2018-03-08 21:25:14 -08:00
Andrew Tridgell
e8726865ab
AP_InertialSensor: Correct scaling of batch data
2018-03-08 18:00:16 -08:00
Andrew Tridgell
455c0e25e1
AP_InertialSensor: allow for HAL_INS_NONE
2018-03-02 12:52:50 +11:00
Peter Barker
4288133ce0
AP_InertialSensor: correct compiler warning
...
../../libraries/AP_InertialSensor/AP_InertialSensor_Invensense.h:108:14:
warning: private field '_error_count' is not used
[-Wunused-private-field]
uint16_t _error_count;
2018-03-02 09:26:37 +09:00
Andrew Tridgell
b61caa9c57
AP_InertialSensor: added SP01 board type
2018-02-14 18:27:00 +11:00
Peter Barker
096f7367bf
AP_InertialSensor: add ins() to AP:: namespace
2018-02-13 17:15:05 +11:00
Andrew Tridgell
b5e5b622c7
AP_InertialSensor: use register header for Revo driver
2018-02-10 09:14:41 +11:00
Andrew Tridgell
0e6497aa85
AP_InertialSensor: merged in Revo driver
2018-02-10 09:14:41 +11:00
Andrew Tridgell
b380143349
AP_InertialSensor: improved handling of I2C invensense sensor
...
on I2C the lower bus bandwidth changes the tradeoffs
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b33c815e96
AP_InertialSensor: added whoami for prototype 20789
2018-02-08 17:36:33 +11:00
Andrew Tridgell
ad8db6cda3
AP_InertialSensor: added sensor type ICM20789_SPI
2018-02-08 17:36:33 +11:00
Andrew Tridgell
b9e5649888
AP_InertialSensor: support PCNC1
2018-02-08 17:36:33 +11:00
Peter Barker
71cf3941a7
AP_InertialSensor: move Invensense register defines into separate file
2018-02-08 17:36:33 +11:00
Peter Barker
3ee112843c
AP_InertialSensor: configure bypass for 20789 like we do for AK8963
2018-02-08 17:36:33 +11:00
Peter Barker
5d94172ada
AP_InertialSensor: remove clearing of BIT_USER_CTRL_I2C_MST_EN bit in user_ctrl
...
This bit should never be set on 20789
2018-02-08 17:36:33 +11:00
Andrew Tridgell
5a4f0fed2d
AP_InertialSensor: added ICM-20789 support
2018-02-08 17:36:33 +11:00
Andrew Tridgell
f4521772c1
AP_InertialSensor: don't try fast sampling on a MPU6500
...
it can't do it
2018-02-07 20:33:45 +11:00
Andrew Tridgell
d575d676b6
AP_InertialSensor: fixed another transfer without bus semaphore
2018-02-07 20:33:45 +11:00