Andrew Tridgell
26de54c29a
AP_AHRS: cope with 90 degree pitch in update_trig()
...
this prevents a numerical error in Replay
2014-10-25 11:21:04 +11:00
Michael Day
83c2f497a3
AP_Mission: Change jump_to_landing_sequence to get_landing_sequence_start
2014-10-24 21:42:06 +11:00
Andrew Tridgell
5ddbcc296d
AP_OpticalFlow: fixed example build
2014-10-24 21:38:03 +11:00
Andrew Tridgell
ad8b73c8aa
AP_Airspeed: update ARSPD_AUTOCAL docs
2014-10-24 17:16:17 +11:00
Randy Mackay
41a6393356
RangeFinder: PulsedLight I2C addr to 0x62
2014-10-24 15:08:04 +09:00
Andrew Tridgell
ad7c612334
AP_InertialSensor: fixed SITL with new HIL code
2014-10-24 15:05:44 +11:00
Andrew Tridgell
aeaa3c1e04
AP_InertialSensor: fixed build for VRBrain
2014-10-24 12:10:41 +11:00
Andrew Tridgell
40e83ceb1f
AP_InertialSensor: simplify next sample time calculations
...
this makes the calculation much clearer
2014-10-24 12:10:40 +11:00
Andrew Tridgell
9dfbdb1e69
AP_InertialSensor: run the MPU6000 at 1kHz on fast CPUs
...
use a software filter and 1kHz sampling for better filtering if we
have a fast enough CPU to do it
2014-10-24 12:10:40 +11:00
Andrew Tridgell
a047d1f569
AP_InertialSensor: moved default filter and sample_rate to frontend
...
this simplifies the backends and prevents code repitition
2014-10-24 12:10:40 +11:00
Andrew Tridgell
17b2214798
AP_InertialSensor: make it easier to add multiple backends
...
use _add_backend() to add new backends on startup
2014-10-24 12:10:40 +11:00
Andrew Tridgell
868ee3af23
AP_Mission: fixed example build
2014-10-24 12:10:40 +11:00
Andrew Tridgell
006185f08a
AP_InertialNav: fixed example build
2014-10-24 12:10:40 +11:00
Andrew Tridgell
f79ce92673
AP_AHRS: fixed example build
2014-10-24 12:10:40 +11:00
Andrew Tridgell
33c7432e97
AC_WPNav: fixed example build
2014-10-24 12:10:40 +11:00
Andrew Tridgell
31eeb657ca
AC_Sprayer: fixed example build
2014-10-24 12:10:39 +11:00
Andrew Tridgell
4fcf46005b
AC_Fence: fixed example build
2014-10-24 12:10:39 +11:00
Andrew Tridgell
9a98e63702
AC_AttitudeControl: fixed example build
2014-10-24 12:10:39 +11:00
Andrew Tridgell
bc5d79118d
AP_InertialSensor: updated comments
2014-10-24 12:10:39 +11:00
Andrew Tridgell
3a9a5a9c18
AP_InertialSensor: implement gyro and accel health monitoring
...
sensor is healthy if it gave a sample on the last update()
2014-10-24 12:10:39 +11:00
Andrew Tridgell
586fa9a816
AP_InertialSensor: added product_id support
...
fill in parameter from first backend
2014-10-24 12:10:39 +11:00
Andrew Tridgell
37dea4e367
AP_Common: added MPU9250 product ID
2014-10-24 12:10:39 +11:00
Andrew Tridgell
520727e5bd
AP_InertialSensor: fixed example build
2014-10-24 12:10:39 +11:00
Andrew Tridgell
dbcd02f2be
AP_InertialSensor: converted MPU9150 driver
...
untested conversion
2014-10-24 12:10:38 +11:00
Andrew Tridgell
ff5f791343
AP_InertialSensor: converted flymaple driver to new API
2014-10-24 12:10:38 +11:00
Andrew Tridgell
a42af0f2f1
AP_InertialSensor: use common AP_InertialSensor driver for PX4 and VRBRAIN
2014-10-24 12:10:38 +11:00
Andrew Tridgell
3ce7667e5a
AP_InertialSensor: tidy up MPU6000 driver
2014-10-24 12:10:37 +11:00
Andrew Tridgell
2d47a07480
AP_InertialSensor: ported L3G4200D driver to new API
2014-10-24 12:10:37 +11:00
Andrew Tridgell
deafcd6ddc
AP_InertialSensor: improved timing in all drivers
2014-10-24 12:10:37 +11:00
Andrew Tridgell
ff6d87f145
AP_InertialSensor: minor tidy up for HIL driver
2014-10-24 12:10:37 +11:00
Andrew Tridgell
85686c22ec
AP_InertialSensor: converted the APM1/Oilpan driver to new API
2014-10-24 12:10:37 +11:00
Andrew Tridgell
dcef9bb3b8
AP_InertialSensor: converted the MPU9250 driver to new API
2014-10-24 12:10:37 +11:00
Andrew Tridgell
d48beb0c0f
AP_InertialSensor: converted PX4 driver to new API
2014-10-24 12:10:37 +11:00
Andrew Tridgell
0ce5c99c26
SITL: update for new AP_InertialSensor API
2014-10-24 12:10:37 +11:00
Andrew Tridgell
ec11417705
AP_InertialSensor: converted HIL backend, which gets SITL working
2014-10-24 12:10:36 +11:00
Andrew Tridgell
448efc70a3
AP_InertialSensor: first steps in frontend/backend split
...
This converts the MPU6000 driver to a frontend/backend structure, and
disables all other drivers. They will be progressively re-enabled as
each is converted
2014-10-24 12:10:36 +11:00
Randy Mackay
04eb1073e8
DataFlash: log baro climbrate
2014-10-22 17:29:27 +09:00
Andrew Tridgell
e6c6fe095f
AP_Terrain: fixed a warning
2014-10-22 18:27:20 +11:00
Andrew Tridgell
b495905da5
AP_TECS: fixed some warnings
2014-10-22 18:27:18 +11:00
Andrew Tridgell
59610ebe88
AP_L1_Control: fixed some warnings
2014-10-22 18:27:16 +11:00
Andrew Tridgell
b8e73a737a
HAL_AVR: fixed warning
2014-10-22 18:26:45 +11:00
Randy Mackay
e80328d3a5
AC_WPNav: bug fix sanity check of set_speed_xy
...
This corrects a bug that allowed the waypoint speed to be set to zero
2014-10-21 22:10:22 +09:00
Randy Mackay
39c8535223
AHRS_DCM: sanity check AHRS_RP_P and AHRS_YAW_P
2014-10-21 21:41:41 +09:00
priseborough
2bc74934b8
AP_NavEKF: Track baro alt when pre-armed
...
This will help prevent spurious alt disparity warning messages for copter
2014-10-21 20:58:59 +09:00
Randy Mackay
a1cfd03c9b
AC_PosControl: bug fix dt calculation
...
fixes issue in which now could be earlier than _last_update_xy_ms
leading to a large dt value and a sudden lean on takeoff
2014-10-21 11:40:47 +09:00
Randy Mackay
0e11189c35
AP_InertialNav: add comments
2014-10-20 11:12:54 +09:00
Jonathan Challinger
5e381280dc
AP_InertialNav: update properly if home position moves
2014-10-20 10:59:50 +09:00
Andrew Tridgell
d84c1cd3e4
AP_OpticalFlow: fixed example build
2014-10-20 08:42:51 +11:00
Andrew Tridgell
15a661e17a
AP_Mission: fixed logic in jump_to_landing_sequence()
...
see comments on drones-discuss
2014-10-20 08:36:20 +11:00
Andrew Tridgell
8c6b875dcc
AP_Mission: avoid the AP_AHRS cast
...
get_position() is now const
2014-10-20 08:36:20 +11:00
Andrew Tridgell
270bac4472
AP_AHRS: make get_position() const
...
This allows use from within AP_Mission
2014-10-20 08:36:20 +11:00
Michael Day
ea91f4d47b
AP_Mission: Added support for MAV_CMD_DO_LAND_START
2014-10-20 08:36:19 +11:00
Michael Day
d62b9a7044
GCS_MAVLink: re-generated headers
2014-10-20 08:36:19 +11:00
Andrew Tridgell
e1a88a13a7
GCS_MAVLink: added MAV_CMD_DO_LAND_START
...
see discussion on drones-discuss
2014-10-20 08:36:19 +11:00
Andrew Tridgell
7636cc6971
GCS_MAVLink: merged upstream changes
2014-10-20 08:36:19 +11:00
Jonathan Challinger
1c75ce88f2
AP_Buffer: change pop_front to return a bool if successful
2014-10-20 08:26:14 +11:00
Jonathan Challinger
ceef10cc41
AP_Buffer: Add peek_mutable function allowing in-place modification of buffered objects
2014-10-20 08:26:14 +11:00
Jonathan Challinger
630a87d9a9
AP_Buffer: remove scalar assignment so that non-scalars can be buffered
2014-10-20 08:26:14 +11:00
Jonathan Challinger
cdd2199138
AP_Math: expand frame transformation test case for quaternions
2014-10-20 06:24:33 +11:00
Jonathan Challinger
3befe74afa
AP_Math: change quaternion class to use const references where optimal
2014-10-20 06:24:30 +11:00
Jonathan Challinger
70845882a7
AP_Math: fix up rotation test suite
2014-10-20 06:24:27 +11:00
Jonathan Challinger
6076f3fa22
AP_NavEKF: Quaternion::to_euler now uses references instead of pointers
2014-10-20 06:24:25 +11:00
Jonathan Challinger
1f7e393e38
AP_Math: refactor quaternion library
2014-10-20 06:24:22 +11:00
Andrew Tridgell
ef0eca4835
AP_Airspeed: fixed airspeed in Replay
2014-10-19 19:42:15 +11:00
Andrew Tridgell
7db0244dac
AP_Compass: added some comments
2014-10-19 17:02:45 +11:00
Jonathan Challinger
9054dd3f9a
AP_Compass: use apply_correction_function to eliminate duplication
2014-10-19 17:02:45 +11:00
Randy Mackay
677f6cce7f
AP_Motors: reduce slow-start increment for fast CPUs
2014-10-18 20:54:08 +09:00
Randy Mackay
542ec29e49
Parachute: set servo or relay to off position on every update
...
This resolves the issue of the parachute servo's position not being
initialised to the off position due to an ordering problem of the
auxiliary servos being initialised after the parachute object.
2014-10-18 17:26:23 +09:00
Randy Mackay
eed6a1ce61
OptFlow: fix example sketch so it compiles
2014-10-16 13:52:07 +09:00
Randy Mackay
a476a914b0
OptFlow_PX4: check healthy before updating
2014-10-15 16:36:40 +09:00
Randy Mackay
f504ea7b30
OptFlow_ADNS3080: check healthy before updating
2014-10-15 16:36:38 +09:00
Randy Mackay
d238f48dda
OptFlowPX4: fix compile error for APM
2014-10-15 16:36:33 +09:00
Randy Mackay
a9cfbb71b8
OptFlowPX4: use ORB to pull data from sensor
...
This change is required because PX4Firmware has changed the method used
to pull data from the sensor.
2014-10-15 16:36:25 +09:00
Randy Mackay
ec4581b35a
OptFlow: add ground_distance_m
2014-10-15 16:35:48 +09:00
Randy Mackay
4b0548973a
OptFlow: add PX4Flow support
2014-10-15 16:35:33 +09:00
Randy Mackay
3c4be75487
OptFlow: reorganise ADNS3080 to simplified interface
2014-10-15 16:35:31 +09:00
Randy Mackay
b64f9ed964
OptFlow: rename and restructure OpticalFlow class
...
AP_OpticalFlow.h becomes simply a file that includes all other optical
flow header files.
OpticalFlow class simplified to only return surface quality, raw output
and velocity vector.
2014-10-15 16:35:29 +09:00
Andrew Tridgell
4ad643b233
AP_AHRS: use a common function for updating the CD values
...
this ensures the wrapping of yaw is consistent between the 3 use cases
2014-10-15 13:18:08 +11:00
Andrew Tridgell
eec5cd5add
AP_AHRS: restore DCM attitude before update()
...
The DCM drift correction code uses the current attitude to calculate
error values to update its gyro drift correction. If we were using EKF
then without this patch the DCM code running as an alternative AHRS
source would be using the EKF attitude for calculating the error
value, leading to very bad gyro drift estimation
2014-10-15 11:15:33 +11:00
Andrew Tridgell
63c06ea2af
AP_AHRS: fixed calls to DCM in parent class
...
use_compass() and reset() are common to AP_AHRS_DCM and
AP_AHRS_NavEKF. As AP_AHRS_NavEKF is a child of AP_AHRS_DCM, when we
call use_compass() from within AP_AHRS_DCM we actually end up calling
AP_AHRS_NavEKF::use_compass().
This has the effect of disabling the compass in DCM when EKF is active
and EKF has decided not to use the compass. That means that the DCM
yaw (and in fact the whole attitude) can get badly off while EKF is
enabled, making DCM an ineffective fallback if EKF fails.
The fix is to call the specific class versions of use_compass() and
reset()
2014-10-15 10:12:50 +11:00
Andrew Tridgell
b437977547
AP_Compass: added set_offsets() interface
...
this will be used by Replay to prevent the need for saving parameters
2014-10-15 09:16:31 +11:00
Randy Mackay
6690aff305
AC_Motors: param description addition
2014-10-14 12:43:22 +09:00
Randy Mackay
d09faa0015
BattMon: minor param description additions
2014-10-14 12:42:57 +09:00
Randy Mackay
45e0e48e54
BattMon: minor param description update
2014-10-14 12:42:45 +09:00
Randy Mackay
3a81732721
Baro: minor param description updates
2014-10-14 12:42:27 +09:00
Randy Mackay
be1621877f
Mission: support GUIDED_ENABLE and GUIDED_LIMITS
...
This replaces the ardupilot only NAV_GUIDED command.
Also remove support for NAV_VELOCITY mission command which will be
replaced by SET_POSITION_TARGET non-mission command.
2014-10-13 21:40:23 +09:00
Andrew Tridgell
3c7cc5f40c
AP_RangeFinder: auto-update PX4 ll40ls max/min distance
...
this allows the range of the Lidar to be set by the user using
RNGFND_MAX_CM and RNGFND_MIN_CM
2014-10-13 19:07:38 +11:00
Jonathan Challinger
4a397a8d67
AC_PosControl: Protect from divide-by-zero in get_stopping_point_xy
2014-10-10 21:17:12 +09:00
Randy Mackay
023b2c0d6b
AP_InertialNav: fixed use of ahrs.get_velocity with EKF disabled
2014-10-09 16:43:24 +09:00
Andrew Tridgell
7b02d326f6
AP_InertialNav: fixed use of _ahrs.get_relative_position_NED() with EKF disabled
...
this prevents a floating point error caused by using an uninitialised
vector3 when switching between DCM and EKF control in AP_InertialNav
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-10-09 18:30:20 +11:00
Andrew Tridgell
39fadad7d6
HAL_Linux: fixed build warnings
2014-10-09 16:49:23 +11:00
Andrew Tridgell
b3894e8b10
HAL_VRBRAIN: reduce the number of times we split up UART reads and writes
2014-10-09 12:29:25 +11:00
Andrew Tridgell
10b0ca7ea8
HAL_PX4: reduce the number of times we split up UART reads and writes
2014-10-09 12:29:25 +11:00
Andrew Tridgell
c834589daa
HAL_Linux: reduce the number of times we split up UART reads
2014-10-09 12:29:25 +11:00
Andrew Tridgell
076bb1294e
HAL_Linux: improved UDP packetisation and add flow control reporting
...
report we have flow control on UDP and TCP
2014-10-09 12:29:25 +11:00
Randy Mackay
834f2bea07
INS: add gyro_calibrated_ok_all method
...
This returns true if the gyros have been calibrated successfully
2014-10-09 10:00:07 +09:00
Andrew Tridgell
70ca87c4e6
AP_RangeFinder: handle all I2C rangefinder types on PX4 in PX4Firmware
2014-10-09 11:06:16 +11:00
Andrew Tridgell
cebfef3ead
HAL_Linux: don't accept less than 5 input channels
2014-10-09 09:19:35 +11:00
Andrew Tridgell
a3fee16604
HAL_Linux: added DSM/Spektrum RCInput support
...
this decodes DSM using the RCIN pulses from the PRU
2014-10-08 12:50:50 +11:00
Andrew Tridgell
3e3f87188b
HAL_Linux: enable DSM power pin
2014-10-08 12:50:50 +11:00