Commit Graph

871 Commits

Author SHA1 Message Date
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
Andrew Tridgell 2ffb8d1583 AP_InertialSensor: fixed a bug where bus semaphore not held
during init of the invensense driver we could do a transfer without
the bus semaphore held. That violates the locking rules for the bus
2018-02-07 20:33:45 +11:00
Igor Anokhin e6d4b2a087 AP_InertialSensor: add LSM9DS1 entry
Enable LSM9DS1 in case it is selected
2018-02-06 09:31:26 -08:00
Igor Anokhin be386b2b73 AP_InertialSensor: LSM9DS1 add FIFO support
Make reading data with FIFO
2018-02-06 09:31:26 -08:00
Igor Anokhin 44d5112488 AP_InertialSensor: add LSM9DS1 support
Make LSM9DS1 driver
2018-02-06 09:31:26 -08:00
LukeMike 502f19cbae VRBRAIN / AP_InertialSensor: added inertial sensors init for VR Brain boards 2018-02-05 08:26:49 +11:00
Randy Mackay 9ea16bec15 AP_InertialSensor: resolve compiler warning in example 2018-01-23 08:32:48 +09:00
Andrew Tridgell 100363ba03 AP_InertialSensor: if no sensors found allow parameter change 2018-01-20 10:36:22 +11:00
Andrew Tridgell 24c424ae5d AP_InertialSensor: support over 1kHz IMUs
this allows for invensense IMUs to run above 1kHz by adjusting the
downsampling rate
2018-01-20 10:36:22 +11:00
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
2018-01-20 10:36:22 +11:00
Andrew Tridgell 9416165fe3 AP_InertialSensor: improved invensense debugging on ChibiOS 2018-01-20 10:36:22 +11:00
Andrew Tridgell 8ab35e8aca AP_InertialSensor: fixed MindPX-v2 orientation of IMU2 2018-01-15 11:46:02 +11:00
Andrew Tridgell dcab40459d AP_InertialSensor: support MindPX-v2 2018-01-15 11:46:02 +11:00
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
2018-01-15 11:46:02 +11:00
Andrew Tridgell 3fc095589c AP_InertialSensor: support ChibiOS FMUv4 2018-01-15 11:46:02 +11:00
bugobliterator 1c6beaa7c4 AP_InertialSensor: use new API for DMA safe allocation 2018-01-15 11:46:02 +11:00
Andrew Tridgell 39362a81ae AP_InertialSensor: support ChibiOS 2018-01-15 11:46:02 +11:00
Tom Pittenger 36f06d3576 AP_InertialSensor: remove AP_InertialSensor_UserInteract
leftover dead code from when CLI was removed
2018-01-11 08:11:07 +11:00
Pierre Kancir 8c8767e964 AP_InertialSensor: reduce QURT include scope 2017-12-27 15:13:30 +00:00
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
2017-12-14 08:12:28 +11:00
Andrew Tridgell 39c206ca03 AP_InertialSensor: limit delta-time from INS
limit delta-time to 2x average time

DEBUG CODE - DO NOT MERGE
2017-12-12 11:39:38 +11:00
Andrew Tridgell a0af4af5b5 AP_InertialSensor: debugging code for EK2 bug 2017-12-12 11:39:38 +11:00
Randy Mackay 38145f9541 AP_InertialSensor: fix param docs for notch and log settings 2017-12-12 07:59:41 +09:00
Peter Barker 161e2145cb AP_InertialSensor: tighten type of simple_accel_cal result 2017-12-01 17:01:10 +00:00
HeBin c056076e85 AP_InertialSensor: fix code style problem, delete useless codes 2017-11-22 10:20:00 -08:00
HeBin efbb030494 AP_InertialSensor: add Robsense PhenixPro Devkit Board support 2017-11-22 10:10:21 -08:00
Andrew Tridgell eab1d3af4f AP_InertialSensor: don't apply offsets in SITL backend
the offsets are applied in the rotate and correct methods
2017-11-01 17:09:21 +11:00
Peter Barker b997f445ff AP_InertialSensor: include sample count in ISBH 2017-10-27 16:33:45 +11:00
Peter Barker 9566abb3a8 AP_InertialSensor: add IMU batch sampling 2017-10-27 16:33:45 +11:00
Peter Barker 5096e2fca9 AP_InertialSensor: use df singleton, factor out log_{gyro,accel}_raw 2017-10-27 16:33:45 +11:00
Alexey Bulatov 069c98b8a9 AP_InertialSensor: Edge: add sensor's rotation YAW_90 2017-10-20 13:03:08 -07:00
Georgii Staroselskii ac6f7511bd AP_InertialSensor: examples: print temperature 2017-10-20 13:03:08 -07:00
Georgii Staroselskii 4f2d8f8df4 AP_InertialSensor: use ICM backend for Edge 2017-10-20 13:03:08 -07:00
Andrew Tridgell 6a6f9681ab AP_InertialSensor: allow for 1,1,1 accel scaling
this supports simple accel calibration
2017-10-10 10:57:38 +11:00
Andrew Tridgell f513c1c8dd AP_InertialSensor: support rotated IMUs in SITL 2017-10-10 10:57:38 +11:00
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.
2017-10-10 10:57:38 +11:00