David Sidrane
3f0d26c949
mpu6000:Support different clock freq per IC type
2017-07-11 09:51:31 +02:00
Lorenz Meier
f7ba70a032
MPU6K driver: Ensure that default range is always 16g by default
2017-07-06 22:15:53 +02:00
David Sidrane
15460ade77
Fixed 'test' function causes register checking to find a false faults
...
Added hold off of testing for register faults from the duration
of the test.
2017-04-14 09:58:14 +02:00
Daniel Agar
827725fbe0
cmake remove -Weffc++ ( #7044 )
...
- closes #7040
2017-04-13 13:30:22 -04:00
Beat Küng
58f42c19ad
mpu6000: use MPU6000_ACCEL_DEFAULT_RANGE_G define for accel range
2017-04-06 11:50:35 +02:00
Nate Weibley
3ba3aff505
Correct MPU6/9k external detection
2017-03-31 11:04:14 +02:00
Matthias Grob
5a00cb4770
MPU6000 driver: change default accelerometer range to +-16g
...
This range amkes much more sense for MAV applications.
It reduces vibration vulnerability caused by measurement range clipping.
2017-03-30 19:07:59 +02:00
Paul Riseborough
253683af5f
drivers: Don't require driver level gyro offsets to be non-zero
2017-02-01 08:40:23 +01:00
Paul Riseborough
c00c638b77
Remove IMU calibration parameter checks
2017-02-01 08:40:23 +01:00
Beat Küng
f746141afe
mpu6000: add & check for the device_type on driver startup
...
Fixes the following case: a board that has several bus_options enabled,
and wants to start a specific device (eg mpu6000 -T 20608 start). In that
case the given device_type is never actually checked, and since the start
routine iterates over all bus_options, several can match, and thus start
multiple instances of the driver (note that the whoami check is performed
against the value provided with -T and thus the check will pass).
This happens on Pixracer (PX4_SPIDEV_MPU and PX4_SPIDEV_ICM_20608 are both
set).
2017-01-31 23:38:50 +01:00
Beat Küng
7c47991504
px4fmu-v4 board config: use PX4_SPIDEV_ICM_20608 instead of PX4_SPIDEV_ICM_20602
...
This is what's used according to https://pixhawk.org/modules/pixracer .
2017-01-31 23:38:50 +01:00
Lorenz Meier
a9a31bc745
MPU6K: Device ID should come from the main instance, not interface
2017-01-29 16:24:47 +01:00
Lorenz Meier
af4e9b668b
MPU6K: Add missing bus identifier
2017-01-29 16:24:47 +01:00
Lorenz Meier
e88bb4cc09
MPU6K: Correctly register sub-type, remove magic numbers.
...
Before this change the MPU6K driver would register only the MPU6K family, but not the sub-type, which prevented telling individual sensors apart. This is a breaking change because users will have to perform their accel and gyro calibration again. However, it is unavoidable since right now the different sensors can end up with the same ID and the wrong offsets can be applied to the wrong sensor.
2017-01-29 16:24:47 +01:00
Lorenz Meier
7326fea142
Driver compile fixes
2017-01-19 19:24:52 +01:00
Lorenz Meier
9860a17e25
MPU6K: Fix device ID
2017-01-19 19:24:52 +01:00
Paul Riseborough
e84a189380
drivers: use driver class instance as surrogate sensor ID for gyro and accelerometer
2017-01-19 19:24:52 +01:00
Paul Riseborough
ddda5eccd6
drivers/mpu6000: Populate device ID in sensor topics
2017-01-19 19:24:52 +01:00
David Sidrane
df5b29abce
Bugfix:MPU6000 Driver accept unknown ICM20xxx product IDs
...
This allows a ICM20xxxx with an unkown product ID to be used
with the mpu6000 driver.
This change will issues a warning for any part with an unknown product ID.
For mpu6000 parts (-T 6000 or not specified) it will then exit.
For any ICM20xxxx part with an unknown product ID it will accept the ID
and run with it.
N.B. This fix expecte the value in the product ID register to be
a per chip constant. (Not changing during operations)
2016-12-23 17:08:30 +01:00
David Sidrane
f67e44215f
Fixes TAP-V1 CI Failure:
...
Reverted MPU6000_BUS_I2C_INTERNAL1 back to MPU6000_BUS_I2C_INTERNAL
Ony SPI has multiple device
2016-12-21 08:34:22 +01:00
David Sidrane
b250ec2730
Adding more Prudut IDs for ICM20689
2016-12-21 08:34:22 +01:00
Lorenz Meier
c220956961
MPU6K driver: More device names
2016-12-21 08:34:22 +01:00
Lorenz Meier
27201ba2a1
MPU6K: Support different device names
2016-12-21 08:34:22 +01:00
Lorenz Meier
fcc85f79d5
MPU6K: Make stop routine safe to call from any location in the startup code
2016-12-21 08:34:22 +01:00
David Sidrane
749fd2f155
Added ICM 20689
2016-12-21 08:34:22 +01:00
David Sidrane
6ebd24a678
Added ICM20602
2016-12-21 08:34:22 +01:00
Julian Oes
8ff237c69f
Remove size optimization for individual modules
...
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
Lorenz Meier
48a94e3570
Fixed i2c not running ( #5408 )
2016-09-01 09:19:30 +02:00
Lorenz Meier
79678c5f25
MPU6K fix code style
2016-08-19 22:24:41 +02:00
Lorenz Meier
306a911dc9
Fix MPU6K driver ICM extensions
2016-08-19 22:09:05 +02:00
Lorenz Meier
fe62c259e8
Fix MPU6K initialization
2016-08-19 11:10:11 +02:00
Lorenz Meier
a97c5ec4e1
MPU6K compile and code style fixes
2016-08-18 13:50:29 +02:00
Lorenz Meier
3d1f1522d9
MPU6K driver improvements
2016-08-18 12:55:54 +02:00
JochiPochi
31e634b082
mpu6000 driver: set icm registers only on icm devices
2016-08-17 20:50:44 +02:00
JochiPochi
e3557e0d3e
mpu6000 driver: Add DLPF set function for IMC20608
2016-08-17 20:50:44 +02:00
JochiPochi
ce27cc8326
mpu6000: Separate DLPF params for MPU and ICM family of sensors
2016-08-17 20:50:44 +02:00
Lorenz Meier
1c0a494b4d
Code style
2016-08-12 13:55:16 +02:00
David Sidrane
c5e11cd16f
TAP:Added i2c speed setting to init
2016-08-07 11:15:48 +02:00
David Sidrane
e8ae0fe13c
Made the MPU6000 driver a highbread using both hrt for SPI or workqueue for I2C
2016-08-07 11:15:48 +02:00
David Sidrane
5f342c3b5f
Added I2C to MPU6000 driver
2016-08-07 11:15:48 +02:00
David Sidrane
a420d47797
Minor fix usage ( #5094 )
2016-07-18 15:01:55 -10:00
Lorenz Meier
7398164fcc
Updated PX4 use / API of low level GPIO and other hardware-centric system facilities
2016-05-28 14:56:17 +02:00
Daniel Agar
1ecdb0f6fb
adjust stack sizes
2016-05-19 21:49:34 +02:00
Daniel Agar
69c1ce1714
WIP logger serialization
2016-05-14 11:27:07 +02:00
Daniel Agar
eb29b33620
use gcc attributes to align and pack
2016-05-14 11:27:07 +02:00
James Goppert
967e4dd127
Modified cmake to use STACK_MAX and STACK_MAIN
2016-04-14 13:36:36 -04:00
Lorenz Meier
b8c5f6be6a
MPU6K: Use shorter perf names
2016-03-28 13:03:41 +02:00
Julian Oes
b9cc0b74e2
drivers: re-use calibration topic
...
E.g. instead of defining a gyro_scale struct in drv_gyro.h, use the
gyro_calibration message.
2016-03-24 13:08:30 +01:00
Lorenz Meier
9172bf7271
MPU6K: Report start scan not as failure, but as not found if sensor is not around
2016-02-23 13:09:06 +01:00
Lorenz Meier
b240b3fc3c
MPU6K: Fix formatting
2015-12-01 13:36:52 +01:00