LukeMike
502f19cbae
VRBRAIN / AP_InertialSensor: added inertial sensors init for VR Brain boards
7 years ago
Randy Mackay
9ea16bec15
AP_InertialSensor: resolve compiler warning in example
7 years ago
Andrew Tridgell
100363ba03
AP_InertialSensor: if no sensors found allow parameter change
7 years ago
Andrew Tridgell
24c424ae5d
AP_InertialSensor: support over 1kHz IMUs
...
this allows for invensense IMUs to run above 1kHz by adjusting the
downsampling rate
7 years ago
Andrew Tridgell
c0c5f23aa5
AP_InertialSensor: added INS_ENABLE_MASK
...
this allows for only a specified subset of IMUs to be probed, so you
can disable IMUs that aren't needed.
The back corresponds to bits in the order the IMUs are normally probed
on the board
7 years ago
Andrew Tridgell
9416165fe3
AP_InertialSensor: improved invensense debugging on ChibiOS
7 years ago
Andrew Tridgell
8ab35e8aca
AP_InertialSensor: fixed MindPX-v2 orientation of IMU2
7 years ago
Andrew Tridgell
dcab40459d
AP_InertialSensor: support MindPX-v2
7 years ago
Andrew Tridgell
febe414766
AP_InertialSensor: disable fast sampling on 2nd IMU on Pixracer
...
it also hosts a mag, and gets lots of FIFO resets if we try to run it
at 8kHz
7 years ago
Andrew Tridgell
3fc095589c
AP_InertialSensor: support ChibiOS FMUv4
7 years ago
bugobliterator
1c6beaa7c4
AP_InertialSensor: use new API for DMA safe allocation
7 years ago
Andrew Tridgell
39362a81ae
AP_InertialSensor: support ChibiOS
7 years ago
Tom Pittenger
36f06d3576
AP_InertialSensor: remove AP_InertialSensor_UserInteract
...
leftover dead code from when CLI was removed
7 years ago
Pierre Kancir
8c8767e964
AP_InertialSensor: reduce QURT include scope
7 years ago
Andrew Tridgell
99499dece2
AP_InertialSensor: removed create() method for objects
...
See discussion here:
https://github.com/ArduPilot/ardupilot/issues/7331
we were getting some uninitialised variables. While it only showed up in
AP_SbusOut, it means we can't be sure it won't happen on other objects,
so safest to remove the approach
Thanks to assistance from Lucas, Peter and Francisco
7 years ago
Andrew Tridgell
39c206ca03
AP_InertialSensor: limit delta-time from INS
...
limit delta-time to 2x average time
DEBUG CODE - DO NOT MERGE
7 years ago
Andrew Tridgell
a0af4af5b5
AP_InertialSensor: debugging code for EK2 bug
7 years ago
Randy Mackay
38145f9541
AP_InertialSensor: fix param docs for notch and log settings
7 years ago
Peter Barker
161e2145cb
AP_InertialSensor: tighten type of simple_accel_cal result
7 years ago
HeBin
c056076e85
AP_InertialSensor: fix code style problem, delete useless codes
7 years ago
HeBin
efbb030494
AP_InertialSensor: add Robsense PhenixPro Devkit Board support
7 years ago
Andrew Tridgell
eab1d3af4f
AP_InertialSensor: don't apply offsets in SITL backend
...
the offsets are applied in the rotate and correct methods
7 years ago
Peter Barker
b997f445ff
AP_InertialSensor: include sample count in ISBH
7 years ago
Peter Barker
9566abb3a8
AP_InertialSensor: add IMU batch sampling
7 years ago
Peter Barker
5096e2fca9
AP_InertialSensor: use df singleton, factor out log_{gyro,accel}_raw
7 years ago
Alexey Bulatov
069c98b8a9
AP_InertialSensor: Edge: add sensor's rotation YAW_90
7 years ago
Georgii Staroselskii
ac6f7511bd
AP_InertialSensor: examples: print temperature
7 years ago
Georgii Staroselskii
4f2d8f8df4
AP_InertialSensor: use ICM backend for Edge
7 years ago
Andrew Tridgell
6a6f9681ab
AP_InertialSensor: allow for 1,1,1 accel scaling
...
this supports simple accel calibration
7 years ago
Andrew Tridgell
f513c1c8dd
AP_InertialSensor: support rotated IMUs in SITL
7 years ago
Andrew Tridgell
d5cab1140a
AP_InertialSensor: added simple_accel_cal()
...
this is useful for mass market vehicles where a full 3D accel cal is
too complex.
7 years ago
Lucas De Marchi
b05610870c
global: use static method to construct AP_Rally
7 years ago
Lucas De Marchi
69b6d95cb2
global: use static method to construct AP_Board_Config{,_CAN}
7 years ago
Lucas De Marchi
87b30b4552
global: use static method to construct AP_InertialSensor
7 years ago
Lucas De Marchi
d566567d87
AP_InertialSensor: add static create method
7 years ago
Lucas De Marchi
caa4e3ee89
AP_InertialSensor: remove raspilot
8 years ago
Lucas De Marchi
06fe5ce8ba
AP_InertialSensor: implement periodic thread for AuxiliaryBus
8 years ago
Andrew Tridgell
7e1368f7a5
AP_InertialSensor: implement notch filter on gyro
8 years ago
Kevin Lopez Alvarez
ca3627c140
AP_InertialSensor: add ppro support
8 years ago
Randy Mackay
51fa8fb0bd
AP_InertialSensor: resolve member init order compiler warning
8 years ago
Randy Mackay
edc9d4db5b
AP_InertialSensor: increase accel filter to 20hz
8 years ago
Peter Barker
6ae86a0b8c
AP_InertialSensor: use DataFlash should_log to determine raw logging
8 years ago
Leonard Hall
447b20efa5
AP_InertialSensor: reduce accel filter to 10hz
8 years ago
Andrew Tridgell
62b826953d
AP_InertialSensor: use AP_Math rand_float()
8 years ago
Andrew Tridgell
bfd8d151c8
AP_InertialSensor: lower slave rate with fast sampling
...
On an invensense IMU with fast sampling we need to lower the slave
sample rate for slave sensors such as the built-in AK8963 compass on a
MPU9250.
The slave rate is set as a multiple of the main rate, so it needs to be
much lower for fast sampling. If we leave it high then it greatly
impacts on IMU sample rate.
Without this change a MPU9250 with fast sampling and a compass enabled
will give a gyro rate of around 7200Hz. With this change it gets 7760Hz
8 years ago
Andrew Tridgell
519a293af9
AP_InertialSensor: fixed instance usage in set_gyro_oversampling()
...
thanks Francisco!
8 years ago
Andrew Tridgell
112b22516a
AP_InertialSensor: fixed use of accel2_noise
...
thanks Francisco!
8 years ago
Andrew Tridgell
2876f1467c
AP_InertialSensor: converge sensor rate quickly, then slowly
...
converge fast for the first 60 seconds, then more slowly to reduce
noise
8 years ago
Andrew Tridgell
db25b6e966
AP_InertialSensor: estimate and log sensor rates for all IMUs
...
this adds IMU.GHz and IMU.AHz log fields so we can see the actual
observed sensor rates of each IMU
8 years ago
Andrew Tridgell
49cc0965c0
AP_InertialSensor: separate handling of FIFO and non-FIFO sensors
...
FIFO sensors produce data at a well known rate, but samples come in
bunches, so we can't use the system clock to calculate deltaT.
non-FIFO sensors produce data when we sample them, but that rate is
less regular due to timing jitter.
For FIFO sensors this changes makes us use a learned sample rate,
which allows for different clock speeds on sensor and system board.
For non-FIFO sensors we use the system clock to measure deltaT
the overall effect is a fix for sensors that produce samples at other
than the claimed datasheet rate.
8 years ago