21249 Commits

Author SHA1 Message Date
Beat Küng
fdb75dbba2 accelerometer_calibration: simplify & fix if temp compensation is enabled
if compensation enabled, scale & offsets for the drivers should be reset,
but actually only the params were reset and accel_scale was still applied
to the driver via ioctl.
2017-02-01 08:40:23 +01:00
Beat Küng
d0ea4e8876 accelerometer_calibration: cleanup 2017-02-01 08:40:23 +01:00
Beat Küng
69fd8447ae accelerometer_calibration: make sure to initialize sensor_correction properly 2017-02-01 08:40:23 +01:00
Beat Küng
51def4fc60 gyro_calibration: make sure to initialize sensor_correction properly
if it's not published yet or published with low frequency, this makes sure
we have valid data.

also:
- _sensor_correction -> sensor_correction
- remove unnecessary init of sensor_correction_sub
2017-02-01 08:40:23 +01:00
Beat Küng
f890c82c97 mc_att_control_main: remove unnecessary memset for _sensor_correction 2017-02-01 08:40:23 +01:00
Paul Riseborough
c00c638b77 Remove IMU calibration parameter checks 2017-02-01 08:40:23 +01:00
Paul Riseborough
fb774bef67 commander: enable accel cal to adjust thermal compensation parameters 2017-02-01 08:40:23 +01:00
Paul Riseborough
bdd3b094a7 sensors: report mapping from uORB to compensation parameter index 2017-02-01 08:40:23 +01:00
Paul Riseborough
8b1a5461c4 sensors: Update documentation 2017-02-01 08:40:23 +01:00
Paul Riseborough
ba9e8741c0 msg: Add mapping from uORB index to compensation parameter index
This mapping is required so other applications can use the correct compensation data, even if the uORB ordering changes.
2017-02-01 08:40:23 +01:00
Paul Riseborough
f2f5034832 sensors: prevent high frequency updating of sensor corrections
The use of a float to integer cast was causing high frequency reporting when the float value was close to the rounding boundary.
2017-02-01 08:40:23 +01:00
Paul Riseborough
62694d92d2 commander: rework IMU cal for compatibility with temperature compensation 2017-02-01 08:40:23 +01:00
Paul Riseborough
add298c0b5 mc_att_control: use legacy offset and scale definition (+2 squashed commits)
Squashed commits:
[f81a8b0] mc_att_control: remove unnecessary initialisers
[f3d3f48] mc_att_control: accommodate changes to sensor_correction topic
2017-02-01 08:40:23 +01:00
Paul Riseborough
170bc91587 sensors: fix bug in thermal compensation temperature limit (+2 squashed commits)
Squashed commits:
[2df1d9e] sensors: change definition of sensor offset and scale factor to match legacy code
[089e103] sensors: publish thermal corrections for all sensors
2017-02-01 08:40:23 +01:00
Paul Riseborough
1dd9a10260 msg: publish thermal corrections for all sensors 2017-02-01 08:40:23 +01:00
pixhawk
ef2a5599a1 mag_calibration: Make sure calibration fails if any mag fails; More checks on calibration results 2017-02-01 08:38:26 +01:00
pixhawk
fded02220b calibration_routines: use PX4_ISFINITE() instead of isnan() 2017-02-01 08:38:26 +01:00
Beat Küng
1da934049c matrix_alg: use PX4_ISFINITE() instead if isnan() & isinf() 2017-02-01 08:38:26 +01:00
pixhawk
5c96c8c1b3 Removed std::fill_n since it is not supported 2017-02-01 08:38:26 +01:00
pixhawk
9fe65d0957 Fix array initialization bug 2017-02-01 08:38:26 +01:00
Siddharth Bharat Purohit
2c831c314e commander: correct mag cal offset direction 2017-02-01 08:38:26 +01:00
Siddharth Bharat Purohit
c6f8bcf8b3 commander: use mathlib matrix_alg functions 2017-02-01 08:38:26 +01:00
Siddharth Bharat Purohit
b46b7a3ca3 mathlib: add matrix eval funcs for raw arrays 2017-02-01 08:38:26 +01:00
Siddharth Bharat Purohit
78b8deda15 commander: add ellipsoid 9 param fit for magnetometer corrections 2017-02-01 08:38:26 +01:00
Siddharth Bharat Purohit
c9ac15f0dd commander: fix code style 2017-02-01 08:38:26 +01:00
Siddharth Bharat Purohit
f811777789 commander: add new math for sphere fit for compass calibration 2017-02-01 08:38:26 +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
Lucas De Marchi
d6ef703fa4 aerofc: disable internal compass (#6485)
It uses a shared I2C bus with MS65611 which causes noise on the baro
reads. This will rely on the external compass instead of the internal
one.
2017-01-31 07:07:52 -10:00
Daniel Agar
899e406005 cmake optionally find and use ccache 2017-01-30 08:57:53 +01:00
Daniel Agar
dcddcdd28e cmake git ver depend on index and HEAD 2017-01-30 08:57:53 +01:00
Daniel Agar
159b35919a cmake nuttx build use full path to copy stamp
- fixes #6469
2017-01-30 08:57:53 +01:00
Lorenz Meier
40aa785720 DSM: Report zero channel count / decode fail through correct data path v1.6.0rc1 2017-01-30 08:45:54 +01:00
Daniel Agar
de128aaa6e dsm rctest fix num_values return 2017-01-30 08:41:26 +01:00
Daniel Agar
93b0f07b43 travis-ci run tests 2017-01-30 08:41:26 +01:00
Lorenz Meier
d1372ddb67 Snapdragon RC driver: Move RC struct out of main loop to preserve channel values. Initialize raw rc count. 2017-01-30 08:28:59 +01:00
Lorenz Meier
2c24900b9d FMU: Initialize raw RC count 2017-01-30 08:27:49 +01:00
Lorenz Meier
e7a0089340 9250: Fill device ID for mag correctly 2017-01-29 16:24:47 +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
be2c73e9c3 HMC driver: Device ID should come from the main instance, not the interface 2017-01-29 16:24:47 +01:00
Lorenz Meier
a520c62d1a Allow setting the device ID in device driver 2017-01-29 16:24:47 +01:00
Lorenz Meier
1b06c04b5c Sensors: Style fix 2017-01-29 16:24:47 +01:00
Lorenz Meier
9cacdaafc7 Sensors: Reset gyro and accel calibration if one sensor goes missing.
This is to ensure that if sensor IDs are fixed we do not end up in a state where the system is partially calibrated and the need for re-calibration is not properly communicated to the user.
2017-01-29 16:24:47 +01:00
Lorenz Meier
d0d1a8e04f MS5611: Add missing bus identifier 2017-01-29 16:24:47 +01:00
Lorenz Meier
0ee68071fc 9250: Add missing bus identifier 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
40e5d25196 LPS25H: Add missing bus identifier 2017-01-29 16:24:47 +01:00
Lorenz Meier
19d4c65a70 LIS: Add missing bus identifier 2017-01-29 16:24:47 +01:00
Lorenz Meier
6c7a8b594e HMC: Add missing bus identifier 2017-01-29 16:24:47 +01:00
Lorenz Meier
f80a1df133 Sensor header: Add previously unknown device identifiers 2017-01-29 16:24:47 +01:00