Commit Graph

6293 Commits

Author SHA1 Message Date
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
Andrew Tridgell
50e5ae6f7a HAL_Linux: added low level DSM decoder
based on dsm.c from PX4 project
2014-10-08 12:50:50 +11:00
Andrew Tridgell
9b207d029d HAL_Linux: change ring buffer to 300 entries 2014-10-07 14:57:34 +11:00
Andrew Tridgell
b1845ed00d HAL_Linux: initial support for parallel SBUS and PPM-SUM decoding 2014-10-07 14:57:34 +11:00
Andrew Tridgell
42e9dc3c31 HAL_Linux: added SBUS decoder from PX4 project
thanks Lorenz!
2014-10-07 14:57:34 +11:00
Andrew Tridgell
809b6cc855 AP_AHRS: added get_yaw_rate_earth()
used to estimate course correction on takeoff
2014-10-07 07:17:46 +11:00
Craig Elder
be352e9471 AP_GPS: Removed CFG-DAT message from 3DR-Ublox-NEO7
CFG-DAT is generated by U-Center but no longer used by the receiver.
2014-10-06 11:21:42 -07:00
Andrew Tridgell
e0e534628b HAL_Linux: support direct UDP output from UART drivers
this allows safe operation over WiFi links without MAVProxy
2014-10-06 15:13:03 +11:00
Randy Mackay
1754cacf3c AC_PosControl: remove completed to-do comments 2014-10-04 23:49:24 +09:00
Randy Mackay
f65e81cb07 AC_AttControl: remove some old comments 2014-10-04 23:49:21 +09:00
Randy Mackay
793ed20534 CoaxCopter: set throttle upper and lower flags 2014-10-04 23:49:19 +09:00
Randy Mackay
57f6d0ff60 SingleCopter: set throttle upper and lower flags 2014-10-04 23:49:16 +09:00
Randy Mackay
85fb4b122a MotorsMatrix: _min_throttle interpreted as 0 ~ 1000 range for throttle_lower flag
Also trigger throttle_upper flag when throttle in reaches 1000
2014-10-04 23:49:14 +09:00
Randy Mackay
91e5201439 Tri: _min_throttle interpreted as 0~1000 range for throttle_lower flag
limit.throttle_lower flag becomes true when the throttle passed into the
motors lib (which is in the 0 ~ 1000 range) is below _min throttle.
This makes the interpretation of the THR_MIN parameter consistent
between the main code (which uses 0 ~ 1000 range) and the motors lib
(which previously used the RC3_MIN ~ RC3_MAX range).
The remaining problem however is that the output of the motors continues
to use THR_MIN as if it were a pwm.  I don't believe this is a dangerous
problem however.
2014-10-04 23:49:11 +09:00
Craig Elder
7367ea04a7 AP_GPS: Adding support for the NEO7 GPS 2014-10-03 03:21:28 -07:00
priseborough
8aa267f75f AP_NavEKF : Fix bug in reset of GPS glitch offset
The GPS glitch offset was being zeroed during position resets. This caused the filter to reject subsequent GPS measurements if the GPS error persisted long enough to invoke a timeout and a position reset.
2014-10-03 09:17:03 +10:00
Randy Mackay
b3bbec24e4 RangeFinder: TYPE param description to PX4-I2C 2014-10-02 20:24:14 +09:00
Randy Mackay
8ce4893180 RangeFinder: TYPE param description to PX4-MaxbotixI2C
This hopefully reduces confusion for PX4/Pixhawk users with MaxBotix I2C
sonar
2014-10-02 16:49:15 +09:00
Randy Mackay
85eee31510 AHRS: rename ekfNotStarted method to initialised
Also created default implementation in AP_AHRS class so AP_AHRS_DCM does
not need to implement it.
2014-10-02 14:40:54 +09:00
priseborough
7cea7c6a18 AP_AHRS : add method to report if EKF is waiting to start 2014-10-02 14:38:29 +09:00
Andrew Tridgell
60aa017e11 GCS_MAVLink: added handle_set_mode() function 2014-10-01 14:19:04 +10:00
Randy Mackay
7caa611eb1 Compass_HIL: use instance specific orient and external 2014-10-01 13:02:03 +10:00
Randy Mackay
86aac4f40c Compass_HMC5843: use instance specific orient and external 2014-10-01 13:02:03 +10:00
Randy Mackay
900896977c Compass_VRBrain: use instance specific orient and external 2014-10-01 13:02:03 +10:00
Randy Mackay
85e82a0399 Compass_PX4: use instance specific orient and external 2014-10-01 13:02:03 +10:00
Randy Mackay
023b6afe8b Compass: add ORIENT2 and EXTERNAL2 params 2014-10-01 13:02:03 +10:00
Randy Mackay
16058cb730 Compass_VRBrain: primary compass based on use_for_yaw 2014-10-01 13:02:02 +10:00
Randy Mackay
01fa4ba619 Compass_PX4: primary compass based on use_for_yaw 2014-10-01 13:02:02 +10:00
Randy Mackay
798cc36e64 Compass: use_for_yaw for each compass 2014-10-01 13:02:02 +10:00
Randy Mackay
84d792216e Compass: use_for_yaw to use primary compass health
This allows the internal compass to be used if the external compass
fails.
2014-10-01 13:02:02 +10:00
Andrew Tridgell
d6c56b8f7a AP_NavEKF: make it clear that all sat counts are covered 2014-10-01 12:55:29 +10:00
Andrew Tridgell
a1f5be5b9e AP_NavEKF: simplify variable handling in EKF
use named state variables instead of states[] array where possible.
2014-10-01 12:55:29 +10:00
priseborough
8223a0d193 AP_NavEKF : Explicitly initialise gpsNoiseScaler to default value 2014-10-01 12:55:29 +10:00
priseborough
b61a6c64d7 AP_NavEKF : Reduce weighting on GPS when not enough satellites
GPS measurement variance is doubled if only 5 satellites, and quadrupled if 4 or less.
The GPS glitch rejection thresholds remain the same
This will reduce the impact of GPS glitches on attitude.
2014-10-01 12:55:29 +10:00
priseborough
7370e07c8d AP_AHRS : Prevent EKF starting if GPS sats less than AHRS_GPS_MINSATS 2014-10-01 12:55:29 +10:00
priseborough
f99f5759f5 AP_NavEKF : Fix bug in GPS innovation variance growth calculation
The uncertainty in acceleration is currently only scaled using horizontal accelerations, however during vertical plane aerobatics and high g pullups, misalignment in angles can cause significant horizontal acceleration error.
The scaling now uses the 3D acceleration vector length to better work during vertical plane high g maneouvres.
This error was found during flight testing with 8g pullups
2014-10-01 12:55:29 +10:00
priseborough
f0ee11e951 AP_NavEKF : Fix bug in reset of position, height and velocity states
If the inertial solution velocity or position needs to be reset to the GPS or baro, the stored state history for the corresponding states should also be reset.
Otherwise the next GPS or baro measurement will be compared to an invalid previous state and will be rejected. This is particularly a problem if IMU saturation or timeout has occurred because the previous states could be out by a large amount
The position state should be reset to a GPS position corrected for velocity and measurement latency. This will make a noticeable difference for high speed flight vehicles, eg 11m at 50m/s.
2014-10-01 12:55:28 +10:00
Randy Mackay
e7b4a02d26 GPS: fix SIRF set-binary message
This fixes an issue in which the the update rate for the mediatek, which
uses a similar protocol, was not being set correctly
2014-10-01 11:42:31 +09:00
Andrew Tridgell
f6cc8ce5bc GCS_MAVLink: fixed log erase and log request end 2014-10-01 11:45:51 +10:00
Randy Mackay
47c135c4e1 GCS_MAVLink: add comments around checking target 2014-09-30 15:18:35 +10:00
Randy Mackay
0322a876eb GCS_MAVLink: check target before erasing log 2014-09-30 15:18:31 +10:00
Randy Mackay
dbe1c55666 AC_WPNav: add shift_wp_origin_to_current_pos for takeoff
This shifts the origin to the vehicle's current position and should be
called just before take-off to ensure there are no sudden roll or pitch
moves on takeoff.
2014-09-29 15:26:18 +09:00
Randy Mackay
0803d79701 INS: param descriptions for ACC2, GYR2 2014-09-27 21:05:33 +09:00
Randy Mackay
e14ae0c0b1 Compass: param descriptions for OFS2, MOT2 2014-09-27 17:59:26 +09:00
Randy Mackay
5ca3c4baf6 Mission: fix CHANGE_ALT to store climb rate in lat param
The slightly confusing storage of climb rate in the lat field led to a
bug fix a few months ago that actually created a bug.
2014-09-26 23:23:04 +09:00
Andrew Tridgell
5eee51b5a4 APM_OBC: added heartbeat() method
this is used for when the plane is calibrating sensors, to ensure
heartbeat is continued to the failsafe board
2014-09-24 12:02:38 +10:00
Randy Mackay
c2c5807ec7 Compass: always default devid to zero 2014-09-23 20:35:18 +09:00
Randy Mackay
cf3b2be99c AC_PosControl: 4hz filter on z-axis velocity error 2014-09-22 13:40:01 +09:00
Randy Mackay
665f353416 AC_PosControl: 2hz filter on accel error
Replaced hard-coded filter with LowPassFilter class allowing the
filter's to be 2hz on both APM and Pixhawk
2014-09-21 17:53:55 +09:00
Randy Mackay
cf35bd3f42 LowPassFilter: add div by zero check 2014-09-21 17:33:59 +09:00
Jason Short
b57539a9ad AP_Motors: throttle_pass_through accepts pwm 2014-09-19 22:21:45 +09:00
Randy Mackay
765420ee04 AC_WPNav: add loiter_soften_for_landing method
This resets the position target to the current location.
2014-09-19 16:43:10 +09:00
Randy Mackay
ad37fc0408 AC_WPNav: WP_SPEED_DN parameter range to 0~500
Previous permissible descent speed of 10m/s was unnecessarily lenient.
Users can still bypass the suggested range through the MP's full
parameter list if they really want a very high descent speed.
2014-09-18 10:44:33 +09:00
Randy Mackay
6da1420541 HAL_VRBrain: implement force_safety_on 2014-09-18 09:58:48 +09:00
Randy Mackay
ffcd259b4e HAL_PX4: implement force_safety_on 2014-09-18 09:58:46 +09:00
Randy Mackay
033b14db16 AP_HAL: add force_safety_on method 2014-09-18 09:58:44 +09:00
Randy Mackay
1ce8e453c2 Mission: add support for DO_GRIPPER 2014-09-17 21:14:17 +09:00
Randy Mackay
1de89804e5 GCS_MAVLink: version update after adding DO_GRIPPER 2014-09-17 21:14:14 +09:00
Randy Mackay
064e214992 GCS_MAVLink: generate after adding DO_GRIPPER 2014-09-17 21:14:12 +09:00
Randy Mackay
b3bce13bdf GCS_MAVLink: add MAV_CMD_DO_GRIPPER 2014-09-17 21:14:09 +09:00
Randy Mackay
cffc904671 GCS_MAVLink: version update after generate 2014-09-17 21:14:06 +09:00
Randy Mackay
6b38547fc2 GCS_MAVLink: generate after move of PARACHUTE_ACTION 2014-09-17 21:13:54 +09:00
Randy Mackay
868f1a777d GCS_MAVLink: version updates after generate 2014-09-17 21:13:52 +09:00
Randy Mackay
69fd7b80aa GCS_MAVLink: generate run on master 2014-09-17 21:13:50 +09:00
Randy Mackay
d09bbd1d91 EPM: add params for pwm levels add re-grab feature
Also include some minor commenting changes
2014-09-17 21:13:37 +09:00
Randy Mackay
1401ee4077 EPM: add support for ver2, remove support ver 1 2014-09-17 21:13:32 +09:00
Randy Mackay
79f95efb71 RC_Channel_aux: add epm to servo function enum 2014-09-17 21:13:30 +09:00
priseborough
f71aeea61d AP_NavEKF : Reduce sensitivity on filter divergence check
Flying aerobatics with Trad Heli has shown that the divergence check can be false triggered when large magnetometer errors and GPS dropouts are present.
This can also happen with multi rotors if large yaw rates are present.
This was an unintended consequence of the ekfsmoothing patch which improved filter stability during high rate manoeuvres, but made the divergence test more sensitive.
2014-09-17 10:22:55 +09:00
priseborough
36bf304f29 AP_NavEKF : Reduce ripple in estimates that can cause copter motor 'pulsing'
This patch reduces the level of 5Hz and 10Hz 'pulsing' heard in motors due to GPS and altimeter fusion which cause a small 5Hz and 10Hz ripple on the output under some conditions. Attitude, velocity and position state corrections from GPS, altimeter and magnetometer measurements are applied incrementally in the interval from receiving the measurement to the predicted time of receipt of the next measurement. Averaging of attitude state corrections is not performed during periods of rapid rotation.
2014-09-17 10:22:49 +09:00
priseborough
5b72cb7610 AP_NavEKF : Clean up time stamps
Time stamps are now explicitly initialised to the current IMU time to avoid unwanted activation of timeout logic on filter start and various calls to the hal.scheduler->millis() object have been consolidated.
2014-09-17 10:22:45 +09:00
Andrew Tridgell
b69262b054 GCS_MAVLink: rebuild MAVLink headers 2014-09-11 20:16:27 +10:00
Andrew Tridgell
25f6dc2549 GCS_MAVLink: mavlink XML updates from upstream 2014-09-11 20:15:44 +10:00
Andrew Tridgell
593a97afd6 HAL_VRBRAIN: fixed storage bug in VRBRAIN too 2014-09-11 18:58:54 +10:00
Andrew Tridgell
d238ff7c5d HAL_Linux: fixed storage bug in Linux too 2014-09-11 18:58:54 +10:00
Andrew Tridgell
74525cad89 HAL_PX4: fixed dirty_mask calculation in FRAM storage
this could lead to a number of bytes on 512 byte boundaries not being
written when changed in ram, so they would revert on next boot
2014-09-11 18:58:54 +10:00
Andrew Tridgell
9d846d5f2a DataFlash: allow use of a smaller writebuf for PX4v1
this fixes logging on PX4v1
2014-09-09 17:32:44 +10:00
Randy Mackay
3e1bd04c94 TradHeli: update AttControl params to match multicopters 2014-09-09 14:41:57 +09:00
Andrew Tridgell
d3347e528d AP_Relay: added RELAY_DEFAULT parameter
this is useful when using a Pixhawk with an external relay, as it
allows you to cope with the pullup on the PWM pins
2014-09-04 16:48:33 +10:00
Andrew Tridgell
15470bd81b AP_GPS: added GPS_MIN_ELEV parameter
allows setting of satellite elevation mask in degrees
2014-09-04 14:46:10 +10:00
Andrew Tridgell
840a4dee1e AP_GPS: added GPS_SBAS_MODE parameter
allows SBAS to be enabled/disabled
2014-09-04 14:46:10 +10:00
Andrew Tridgell
cd50fe82b6 AP_GPS: fixed GPS time in HIL
account for 10 year difference in epoch between unix time and GPS time
2014-09-04 06:37:42 +10:00
Andrew Tridgell
effccacf46 AP_Mission: fixed acceptance radius outgoing
this needs to match incoming
2014-09-03 21:15:56 +10:00
Andrew Tridgell
3a5e960fe5 AP_Mission: revert APM_BUILD_TYPE change 2014-09-03 13:28:17 +10:00
Andrew Tridgell
c09c86868f AP_Vehicle: make APM_BUILD_TYPE() valid under arduino IDE 2014-09-03 13:28:04 +10:00
Andrew Tridgell
36b854fa98 AP_Mission: fixed build for arduino IDE 2014-09-03 13:20:31 +10:00
Andrew Tridgell
c4f84232e2 AP_Mission: make cmd.p1 be radius on plane for NAV_WAYPOINT 2014-09-03 12:38:30 +10:00
Randy Mackay
74553e523d INS: add get_accel_health_all and get_gyro_health_all
Returns true only if all available accels or gyros are healthy
2014-09-03 11:22:46 +09:00
Randy Mackay
50ae5b2519 InertialSensor: reorder .cpp file to match .h
No functional changes
2014-09-03 11:19:36 +09:00
Randy Mackay
102b71cde3 InertialNav: add credit to Tony Lambregts 2014-08-31 13:23:03 +09:00
Emile Castelnuovo
25d2ec1dea AP_HAL_VRBRAIN: enable 2nd GPS for VRBRAIN 5 2014-08-31 10:56:58 +09:00
Emile Castelnuovo
7a70c0132d AP_HAL: VRBRAIN corrected EEPROM size and added terrain folder on MicroSD 2014-08-31 10:56:56 +09:00
Emile Castelnuovo
4a5c31fe74 AP_relay: added default relay pin for VRBRAIN 2014-08-31 10:56:52 +09:00
Emile Castelnuovo
8e42b21bab AP_HAL_VRBRAIN: added management for external relay 1 and 2 2014-08-31 10:56:48 +09:00
Andrew Tridgell
a6ca11facf AP_TECS: allow zero throttle in flare for landing 2014-08-30 05:14:57 +10:00
Andrew Tridgell
6c1eed0a20 AP_TECS: bring in flare sink rate more slowly
this should reduce pitch overshoot in the flare
2014-08-30 05:13:18 +10:00
Randy Mackay
1c6606cc58 AC_WPNav: resolve twitch when passing spline waypoints
The target positions target velocity was being reset to zero as we
passed through a spline waypoint.
2014-08-28 11:00:51 +09:00
Andrew Tridgell
7547cd45f5 AP_TECS: bring the flare height rate demand in slowly
bring it in over 0.5s to give less of a bounce
2014-08-27 20:13:01 +10:00
Andrew Tridgell
500e20b08d AP_TECS: make TECS aware of LAND_PITCH_CD
this makes the flare a bit smoother
2014-08-27 20:11:48 +10:00
Andrew Tridgell
fb4ef0b5c6 AP_Vehicle: added land_pitch_cd for fixed wing 2014-08-27 20:11:03 +10:00
Andrew Tridgell
46ac52bccc HAL_Linux: removed retry loop on UART open
this was there for HAL_PX4 only, and makes no sense on Linux
2014-08-27 18:31:38 +10:00
Randy Mackay
d6aa868cac Mission: start next nav cmd immediately after prev completes 2014-08-27 18:05:49 +10:00
Andrew Tridgell
68dd61c7c7 AP_TECS: added TECS_LAND_TCONST
this allows control of the time constant for landing in TECS. A lower
time constant gives tighter altitude control on landing approach
2014-08-27 17:14:19 +10:00
Andrew Tridgell
5da5360dde HAL_SITL: fixed sonar correction for attitude 2014-08-27 17:14:19 +10:00
Andrew Tridgell
6b893a5865 GCS_MAVLink: slow down parameter send a lot with no flow control 2014-08-25 22:19:30 +10:00
priseborough
0f62dbf6ed AP_NavEKF : Clear compass fail on transition between armed and disarmed
This allows a compass that has been declared failed, possibly because of
external disturbances (eg movement of hatches, proximity of tools, etc)
to be given a second chance when the vehicle is armed.
2014-08-25 19:29:07 +10:00
Ju1ien
1c96bf0b1d AP_Mount.cpp - correct units in description
That should be corrected also in MP as the current code is expecting
degrees, not centidegrees.
2014-08-25 15:55:07 +09:00
Andrew Tridgell
eeb04ba1b8 AP_Terrain: fetch more terrain data around waypoints
this ensures we have data for a wide region (1km) around each waypoint
2014-08-25 14:55:15 +10:00
Andrew Tridgell
e9a9e33280 AP_AHRS: use EKF use_compass() if EKF enabled
this allows magfailed status to show on console via SYS_STATUS health
bits
2014-08-24 21:00:56 +10:00
Andrew Tridgell
5d40ec8014 AP_NavEKF: make use_compass() public 2014-08-24 21:00:24 +10:00
Randy Mackay
5a66ff1ef9 AC_AttControl: bug fix for ef target during acro 2014-08-23 22:17:54 +09:00
Randy Mackay
3e0b573dfe AC_AttControl: remove debug message 2014-08-22 22:58:48 +09:00
Randy Mackay
f6e12bda06 AC_AttControlHeli: integrate div-by-zero check for bf-to-ef conversion 2014-08-22 22:56:18 +09:00
Randy Mackay
c45338f080 AC_AttControl: div-by-zero check for bf-to-ef conversion 2014-08-22 22:56:15 +09:00
Andrew Tridgell
024d3b71e7 HAL_Linux: use a semaphore in suspend_timer_procs()
this is the start of multi-core aware code
2014-08-22 21:13:11 +10:00
Andrew Tridgell
dcdb53584b AP_InertialSensor: use lockless structures in MPU9250 driver
this avoids suspending timers when transferring data between main
thread and SPI read thread
2014-08-22 21:13:11 +10:00
Andrew Tridgell
7343de2893 AP_Notify: avoid suspend_timer_procs() by using atomic updates in ToshibaLED_PX4 2014-08-22 21:13:11 +10:00
Randy Mackay
691a3d8126 AC_AttControlHeli: add passthrough_bf_roll_pitch_rate_yaw 2014-08-22 16:28:57 +09:00
Robert Lefebvre
7d3e22af59 AC_AttitudeControl_Heli: Add use_flybar_passthrough accessor function. 2014-08-22 16:28:45 +09:00
Robert Lefebvre
9b1d9e3cf0 AC_AttitudeControl_Heli: Add passthrough_to_motor_roll_pitch function. 2014-08-22 16:28:42 +09:00
Robert Lefebvre
5c04af6d20 AC_AttitudeControl_Heli: Create Flybar Passthrough flag which will be used for control pass-through. 2014-08-22 16:28:38 +09:00
Andrew Tridgell
43e8b36e5b AP_RangeFinder: removed use of hrt_absolute_time() 2014-08-20 09:10:25 +10:00
Andrew Tridgell
5c9e5fbc11 AP_InertialSensor: removed use of hrt_absolute_time() 2014-08-20 09:10:24 +10:00
Andrew Tridgell
e143acd8bf HAL_VRBRAIN: minimise use of hrt_absolute_time() 2014-08-20 09:10:24 +10:00
Andrew Tridgell
48247b6adc HAL_PX4: minimise usage of hrt_absolute_time() 2014-08-20 09:10:24 +10:00
Andrew Tridgell
9f6d1f987b AP_Compass: removed use of hrt_absolute_time() 2014-08-20 08:41:28 +10:00
Andrew Tridgell
5280d8936d AP_Baro: remove usage of hrt_absolute_time()
use a single time base in all code
2014-08-20 08:41:15 +10:00
Andrew Tridgell
a14f8dbd0a AP_InertialSensor_MPU9250: use micros64() and millis64() 2014-08-20 08:02:34 +10:00
Andrew Tridgell
071323a736 HAL_VRBRAIN: added millis64() and micros64() 2014-08-20 08:01:44 +10:00