Andrew Tridgell
a42af0f2f1
AP_InertialSensor: use common AP_InertialSensor driver for PX4 and VRBRAIN
10 years ago
Andrew Tridgell
d48beb0c0f
AP_InertialSensor: converted PX4 driver to new API
10 years ago
Andrew Tridgell
5c9e5fbc11
AP_InertialSensor: removed use of hrt_absolute_time()
11 years ago
Andrew Tridgell
ca12592448
AP_InertialSensor: allow for 3 accels and 3 gyros on Pixhawk
...
this supports FMUv3
11 years ago
Andrew Tridgell
2c85a7ba56
AP_InertialSensor: expose get_primary_accel() for use in AHRS
11 years ago
Andrew Tridgell
b1c5f23bbd
AP_InertialSensor: make get_delta_time() const
...
allows use from AP_NavEKF
11 years ago
Randy Mackay
b7565affcd
INS: add support for 400hz for PX4
11 years ago
Andrew Tridgell
6d39cf5e49
AP_InertialSensor: another attempt at fixing the spurious bad gyro health warnings
...
cope with _get_sample() not being called for a while
11 years ago
Andrew Tridgell
99e2dc87c9
AP_InertialSensor: prevent INS healthy errors while initialising
...
during gyro cal we shouldn't mark the gyro unhealthy
11 years ago
Andrew Tridgell
433ad19335
AP_InertialSensor: fixed loop limits
...
stops pointless operations
11 years ago
Andrew Tridgell
e54fc6b8e3
AP_InertialSensor: make sure we wait for a sample before update()
11 years ago
Andrew Tridgell
cba0cb963a
AP_InertialSensor: auto-failover to working gyro and accel
11 years ago
Andrew Tridgell
a0688a69d4
AP_InertialSensor: generalise the accel/gyro calibration for N sensors
11 years ago
Andrew Tridgell
d9b6f7f0f7
AP_InertialSensor: implement up to two sensors on PX4
11 years ago
Andrew Tridgell
71bb462ad0
AP_InertialSensor: use fabsf()
11 years ago
Andrew Tridgell
f10a4b04ae
AP_InertialSensor: make PX4 healthy call _get_sample()
...
this prevents a false positive during times like arming where we are
not reading the sensors
11 years ago
Andrew Tridgell
f5299e2e11
AP_InertialSensor: added healthy check for PX4 and HIL
...
used to detect bad accels
11 years ago
Andrew Tridgell
7831113f84
AP_InertialSensor: yield the CPU for the right time in wait_for_sample()
...
this improves timing performance
11 years ago
Andrew Tridgell
8532e2bff8
AP_InertialSensor: fixed timing of PX4 sensor samples
11 years ago
Andrew Tridgell
e5e4cdee18
AP_InertialSensor: added wait_for_sample() API call
...
this waits for a new INS sample to arrive, using whatever method is
most efficient on each INS type
12 years ago
Andrew Tridgell
14636e1cdf
AP_InertialSensor: changed num_samples_available() to sample_available()
...
this makes the interface clearer. It also fixes a 3D accel cal bug.
12 years ago
Andrew Tridgell
396c4f30d2
AP_InertialSensor_PX4: don't set QUEUEDEPTH
...
the default of 2 samples is fine
12 years ago
Andrew Tridgell
8b80beadc4
PX4: make FMUv2 identify itself differently
...
so we can tell which is which in logs
12 years ago
Andrew Tridgell
e5ad9dbd15
AP_InertialSensor: switch PX4 driver to fixed time per sample model
...
this makes the driver much simpler, and does away with the need for an
accumulate function
12 years ago
Andrew Tridgell
38fe89d661
AP_InertialSensor: switch to non-averaging system for PX4 IMUs
...
always use the latest value, based on a lowpass filter in the driver
12 years ago
Andrew Tridgell
46c5d18585
AP_InertialSensor: disable averaging on FMUv2
...
the new filter from Leonard means we shouldn't average values, and
instead just use the last value
12 years ago
Julian Oes
c3b27629ec
AP_InertialSensor: run PX4 FMUv2 at 800Hz
...
this gives much better noise suppression
12 years ago
Randy Mackay
318a831b57
INS: set default filter to 20hz for APM2.x and PX4
12 years ago
Andrew Tridgell
1121254606
AP_InertialSensor: added filter frequency support to PX4 driver
12 years ago
Andrew Tridgell
5643c371b9
AP_InertialSensor: removed unused new_data_available() and temperature() APIs
12 years ago
Andrew Tridgell
f60d657f72
AP_InertialSensor: added timer for accumulating samples for PX4
...
this makes the driver much more tolerant of sketch timing errors
12 years ago
Andrew Tridgell
3d0cb755d2
AP_InertialSensor: user a timer to drive data collection on PX4
...
this reduces the chance of missing a sample if the main sketch is a
bit slow
12 years ago
Andrew Tridgell
16d72ca160
AP_InertialSensor: update PX4 driver to use read() method
12 years ago
Andrew Tridgell
d7996acdf7
AP_InertialSensor: added set_board_orientation() method
12 years ago
Andrew Tridgell
6142eac4b4
AP_InertialSensor: simplify get_delta_time() API
...
use a single float return rather than two APIs.
This also changes the MPU6k driver to match the new 2.9 behaviour of
using the MPU6k sample timing instead of micros()
12 years ago
Andrew Tridgell
ae09b31176
AP_InertialSensor: added PX4 gyro/accel driver
12 years ago