Commit Graph

18277 Commits

Author SHA1 Message Date
Gustavo Jose de Sousa 6aa973dd47 AP_InertialSensor: Backend: calculate vibration and clipping on new raw sample
This is a good way of letting each implementation easily calculate vibration
and clipping: all they need to do is publish their sample rate and they don't
need to worry about the call for calculation.
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa e06627dfcb AP_InertialSensor: Backend: add hook for new raw accel samples
That hook will eventually do necessary things when a new accelerometer raw
sample arrives (like calculating vibration levels).
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa 5329e63742 AP_InertialSensor: allow publishing sample rate to frontend
That information will be used for a "centralized" vibration calculation.
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa ac3a677626 AP_InertialSensor: remove param rotate_and_correct from publish functions
Once that parameter is always false.
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa a56c8deaee AP_InertialSensor: Oilpan: apply correction on each new sample
These changes are for enabling unified accelerometer vibration and clipping
calculation. For that, we need the values "rotated and corrected" before they
are filtered and the calculation must be called as soon as a new sample arrives
as it takes the sample rate into account.

Thus, move code that applies "corrections" to be executed as soon as accel data
arrive and call _publish_accel() passing rotate_and_correct parameter as false.
Also, do the same for gyro so we can keep it consistent.
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa fc38691e0b AP_InertialSensor: MPU9250: apply correction on each new sample
These changes are for enabling unified accelerometer vibration and clipping
calculation. For that, we need the values "rotated and corrected" before they
are filtered and the calculation must be called as soon as a new sample arrives
as it takes the sample rate into account.

Thus, move code that applies "corrections" to be executed as soon as accel data
arrive and call _publish_accel() passing rotate_and_correct parameter as false.
Also, do the same for gyro so we can keep it consistent.
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa b844b220c3 AP_InertialSensor: MPU9150: apply correction on each new sample
These changes are for enabling unified accelerometer vibration and clipping
calculation. For that, we need the values "rotated and corrected" before they
are filtered and the calculation must be called as soon as a new sample arrives
as it takes the sample rate into account.

Thus, move code that applies "corrections" to be executed as soon as accel data
arrive and call _publish_accel() passing rotate_and_correct parameter as false.
Also, do the same for gyro so we can keep it consistent.
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa 487135afa2 AP_InertialSensor: MPU6000: apply correction on each new sample
These changes are for enabling unified accelerometer vibration and clipping
calculation. For that, we need the values "rotated and corrected" before they
are filtered and the calculation must be called as soon as a new sample arrives
as it takes the sample rate into account.

Thus, move code that applies "corrections" to be executed as soon as accel data
arrive and call _publish_accel() passing rotate_and_correct parameter as false.
Also, do the same for gyro so we can keep it consistent.
2015-09-07 11:14:42 +10:00
Gustavo Jose de Sousa f946f48dce AP_InertialSensor: LSM9DS0: apply correction on each new sample
These changes are for enabling unified accelerometer vibration and clipping
calculation. For that, we need the values "rotated and corrected" before they
are filtered and the calculation must be called as soon as a new sample arrives
as it takes the sample rate into account.

Thus, move code that applies "corrections" to be executed as soon as accel data
arrive and call _publish_accel() passing rotate_and_correct parameter as false.
Also, do the same for gyro so we can keep it consistent.
2015-09-07 11:14:41 +10:00
Gustavo Jose de Sousa 0963159bb8 AP_InertialSensor: Flymaple: apply correction on each new sample
These changes are for enabling unified accelerometer vibration and clipping
calculation. For that, we need the values "rotated and corrected" before they
are filtered and the calculation must be called as soon as a new sample arrives
as it takes the sample rate into account.

Thus, move code that applies "corrections" to be executed as soon as accel data
arrive and call _publish_accel() passing rotate_and_correct parameter as false.
Also, do the same for gyro so we can keep it consistent.
2015-09-07 11:14:41 +10:00
Gustavo Jose de Sousa 2ea8f1de3f AP_InertialSensor: L3G4200D: apply correction on each new sample
These changes are for enabling unified accelerometer vibration and clipping
calculation. For that, we need the values "rotated and corrected" before they
are filtered and the calculation must be called as soon as a new sample arrives
as it takes the sample rate into account.

Thus, move code that applies "corrections" to be executed as soon as accel data
arrive and call _publish_accel() passing rotate_and_correct parameter as false.
Also, do the same for gyro so we can keep it consistent.
2015-09-07 11:14:41 +10:00
Andrew Tridgell e12c20bd22 Plane: prepare for 3.4.0-beta2 release 2015-09-07 09:30:34 +10:00
Andrew Tridgell 16d06ef0a9 Plane: set throttle trim to min on startup
this prevents possibly motor startup for bad RC3_TRIM values
2015-09-07 09:17:22 +10:00
Andrew Tridgell 2d60934335 Plane: require 5 channels to run failsafe passthrough 2015-09-07 09:16:14 +10:00
Andrew Tridgell 6991a1b9e9 AP_Compass: ensure we have payload space to send MAG_CAL messages 2015-09-07 08:58:11 +10:00
Andrew Tridgell 2baa0ac2f2 AP_Compass: disable COMPASS_LEARN when mag calibration used 2015-09-07 08:07:17 +10:00
Andrew Tridgell 6c74782997 autotest: added QMAC to locations list
Queanbeyan Model Aircraft Club, where CASA OC tests are run in
Canberra
2015-09-07 08:07:17 +10:00
Andrew Tridgell 745a5998f2 AP_Camera: added CAM_RELAY_ON parameter
allows for camera that trigger low
2015-09-07 08:07:17 +10:00
Randy Mackay dc4923a88d Copter: suppressing comment for switch case fall through 2015-09-06 16:01:33 +09:00
Randy Mackay 8c1212d4a6 Plane: support do-mount-control via command-long 2015-09-06 16:01:31 +09:00
Randy Mackay 958d279b7c Rover: support do-mount-control via command-long 2015-09-06 16:01:28 +09:00
Randy Mackay 5e38adfae3 Copter: remove support for configure as command long
Also protect mount calls with MOUNT definition
2015-09-06 16:01:21 +09:00
Randy Mackay fa0aa6f5c9 Mount: remove support for do-mount-configure as command long
Also fix bug in do-mount-control so that do-mount-control can switch mount into retract mode

Also removes ability to set which axis are stabilized through
ardupilotmega mount_configure message
2015-09-06 16:01:18 +09:00
squilter 8320c06700 Copter: Support do-mount-control via command-long 2015-09-06 16:01:16 +09:00
squilter cc58ec917c Mount: add support for do_mount_control via command_long 2015-09-06 16:01:12 +09:00
Andrew Tridgell 079161ef3a AP_Compass: fixed raw_field init in AK8963 driver
thanks to Peter for spotting this
2015-09-03 21:27:22 +10:00
Andrew Tridgell 5710697847 DataFlash: fixed some build warnings 2015-09-03 20:25:14 +10:00
Michael Oborne cce46cf0c5 AP_GPS_SBF: add support for Septentrio gps 2015-09-03 19:43:31 +10:00
Michael Oborne 52577e4105 DataFlash: add sbf event message 2015-09-03 19:43:31 +10:00
Michael Oborne b861233677 AP_HAL_SITL: add file based gps 2015-09-03 19:43:31 +10:00
Lucas De Marchi 0000ff45cb AP_HAL_Linux: RCOutput_PCA9685: remove trailing whitespace 2015-09-03 18:43:21 +10:00
Lucas De Marchi 18321a77c4 AP_HAL_Linux: rename RCOutput_Navio to RCOutput_PCA9685
The RCOutput_Navio is now generic enough to be used by other boards.
Rename it to use the name of the chip, PCA9685.
2015-09-03 18:43:21 +10:00
Lucas De Marchi e1f0284df2 AP_HAL_Linux: PCA9685: build on all Linux boards 2015-09-03 18:43:21 +10:00
Fabio Mello c0caed1b64 AP_HAL_Linux: RCOutput_Navio: allow to use internal clock
It's possible to use the internal clock in PCA96895 if we account for
the drift it contains. This is a bit different from solutions in other
projects like the Adafruit library and the PX4 firmware: instead of
applying a correction to the final frequency we apply the correction to
the clock since this is the source of the error.

With this fix we arrived to much better results across different lots of
sensors.

The Navio board continues to use the external clock and should have no
difference behavior.
2015-09-03 18:43:21 +10:00
Lucas De Marchi 6c042b6666 AP_HAL_Linux: RCOutput_Navio: allow to have other offset 2015-09-03 18:43:21 +10:00
Lucas De Marchi 3beaf34aa1 AP_HAL_Linux: RCOutput_Navio: allow to have other OE pin
While at it also rename enable_pin to follow the convention of starting
with underscore for private members.
2015-09-03 18:43:21 +10:00
Andrew Tridgell fdb1cc38b0 Copter: removed redundent copter dereference 2015-09-03 16:59:24 +10:00
Andrew Tridgell e4b2fc711d AP_Compass: added message for compass cal when armed 2015-09-03 16:59:22 +10:00
Siddharth Bharat Purohit 347d1f0a25 Copter: use handle message function for compass cal from compass library 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit 0c004c13a1 AntennaTracker: implement on-board compass calibration for Antenna tracker 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit aea1db7348 ArduPlane: implement on-board compass cal for arduplane 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit b8a9f9ebc5 APMrover2: implement on-board compass calibration for APMrover 2015-09-03 16:59:14 +10:00
Andrew Tridgell f4cdf57d8f AP_Compass: added handling of compass calibration mavlink messages 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit 1ffbffa0e7 AP_Math: check if failed to allocate memory 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit 75829f5533 AP_Compass: remove extra compass field correction 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit 3abdf85796 AP_Compass_Calibrator: remove unrequired variables 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit c126017035 AP_Compass: reduce to if healthy check from if-else 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit 2fb002798c generate.sh 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit 63973bff31 AP_Compass_AK8963: move variable declarations before goto 2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit 3fc47b33e8 message_definition: add autoreboot option for mag cal 2015-09-03 16:59:14 +10:00