Commit Graph

6574 Commits

Author SHA1 Message Date
Jonathan Challinger 7224669399 AC_AttitudeControl: cleanup angle_ef_roll_pitch_rate_ef_yaw_smooth 2014-10-27 15:20:46 +09:00
Jonathan Challinger 779baa006d AC_PosControl: Use sqrt_controller function 2014-10-27 15:20:44 +09:00
Jonathan Challinger 0c4a489491 AC_AttitudeControl: use sqrt_controller function 2014-10-27 15:20:43 +09:00
Randy Mackay fc898a00a3 AC_AttControl: add sqrt_controller
Original code by Jonathan Challinger
2014-10-27 15:20:40 +09:00
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
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
Andrew Tridgell 1241da466b HAL_PX4: added millis64() and micros64() 2014-08-20 08:01:06 +10:00
Andrew Tridgell ead82ee581 HAL_Linux: implement millis64() and micros64() 2014-08-20 08:00:21 +10:00
Andrew Tridgell 6450c84987 HAL_Empty: added dummy millis64() and micros64() 2014-08-20 07:59:21 +10:00
Andrew Tridgell 5a55101703 HAL_SITL: added millis64() and micros64() 2014-08-20 07:57:45 +10:00
Andrew Tridgell 7439d34a5d AP_HAL: add millis64() and micros64() on faster boards
this can be used for much simpler scheduling, without any wrap
handling
2014-08-20 07:55:19 +10:00
Andrew Tridgell d01fa3bfbd AP_Baro: prevent reading the MS5611 too fast
setup the timer start after we've started the conversion to prevent
reading faster than the MS5611 is able to produce values
2014-08-19 21:16:13 +10:00
Andrew Tridgell b9dc2335ee HAL_Linux: run timer thread at average 1kHz without drift
this avoids drift in the 1kHz timer, to avoid bias in the IMU
filtering
2014-08-19 20:03:34 +10:00
Andrew Tridgell 3c2ab31415 AP_InertialSensor: get rid of data_ready for MPU9250
when running off a 1kHz timer and reading at 1kHz it is better to
double sample than it is to skip a sample, as skipping samples will
throw the filter off, whereas a double sample will have minimal effect
2014-08-19 20:03:33 +10:00
Andrew Tridgell 9e01c657e5 AP_InertialSensor: update MPU9250 driver for 1kHz operation
use a time base sample wait, with 1kHz sampling
2014-08-19 20:03:33 +10:00
Andrew Tridgell 532e9aace4 AP_InertialSensor: fixed timer bug in HIL sensors 2014-08-19 20:03:33 +10:00
Andrew Tridgell 8f280d212b HAL_Linux: don't use usleep() in suspend_timer_procs()
usleep can cause a large delay with PREEMPT kernel
2014-08-19 20:03:33 +10:00
Andrew Tridgell 94e14f5dcb HAL_Linux: split off RCOutput class to be specific to PXF and ERLE
this fixes the Replay tool
2014-08-19 20:03:33 +10:00
Andrew Tridgell 2ce219aeb8 HAL_Linux: split RCInput class into generic and PRU implementations
this will make it easier for other boards (such as NAVIO) to implement
their own RCInput mechanism
2014-08-19 20:03:33 +10:00
Andrew Tridgell 12239de00d AP_InertialSensor: fix data_ready return for L3GD20 2014-08-19 10:14:20 +10:00
Andrew Tridgell 21ff578cb0 HAL_VRBrain: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell 0a20d0db60 HAL_PX4: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell b4be93113c HAL_Linux: prevent read past end of buffer 2014-08-19 10:08:17 +10:00
Andrew Tridgell 7286e7acd2 AP_InertialSensor: fixed build errors on APM2 2014-08-19 10:08:17 +10:00
Andrew Tridgell b40bd479c4 HAL_Linux: moved FRAM vs FS choice into HAL_Linux headers 2014-08-19 10:08:17 +10:00
Andrew Tridgell 9fccb5f5ed HAL_Linux: clear more UART flags
this fixes a major timing issue caused by bad UART flags (I suspect
the echo flags) and the GPS auto detection code
2014-08-19 10:08:17 +10:00
Andrew Tridgell c87b0adc29 HAL_Linux: the MS5611 seems to be a bit happier at higher speed
still getting some bogus data, but less
2014-08-19 10:08:17 +10:00
Andrew Tridgell 41e65c2415 AP_Compass: fixed default orientation for PXF 2014-08-19 10:08:17 +10:00
Andrew Tridgell 50068a7c6a AP_InertialSensor: fixed default orientation for PXF board MPU9250 2014-08-19 10:08:16 +10:00
Andrew Tridgell 226b67d357 AP_HAL: make PXf default to MPU9250 2014-08-19 10:08:16 +10:00
Andrew Tridgell 6cc304e486 HAL_Linux: RCOutput should default to 50Hz on all boards 2014-08-19 10:08:16 +10:00
Andrew Tridgell 9d948d5a26 HAL_Linux: fixed name space collision in RCOutput 2014-08-19 10:08:16 +10:00
Andrew Tridgell 721d349922 HAL_Linux: fixed build of BusTest 2014-08-19 10:08:16 +10:00
Andrew Tridgell a4ef512f10 SPIDriver: fixed handling of 0 based SPI bus numbers 2014-08-19 10:08:16 +10:00
Andrew Tridgell 5fb2ad0068 HAL_Linux: fixed safety of RCInput code
don't loop forever waiting for pulses
2014-08-19 10:08:16 +10:00
Víctor Mayoral Vilches 5e5319e23b AP_InertialSensor: MPU9250 cleaning 2014-08-19 10:08:16 +10:00
bugobliterator ac11d282b5 HAL_Linux: Add support for PPM input to HAL_Linux
rcin thread continuously scans for values inside ring buffer maintained by pru with rcinpru0 firmware.
2014-08-19 10:08:16 +10:00
bugobliterator 072c39ea6a AP_HAL: Add option to select Storage type AP_HAL_Boards.h
user can set HAL_STORAGE as USE_FS or USE_FRAM inside AP_HAL_Boards.h as per his/her choice or board setup
2014-08-19 10:08:16 +10:00
bugobliterator 4b2f7cd163 HAL_Linux: Add FRAM HAL driver support for non-volatile storage
Support for File System starage mode is retained, appropriate Storage
mode can be set by defining USE_FS_STORAGE for File System storage
aand US_FRAM_STORAGE for FRAM storage.  Note: FS storage and FRAM
storage are never synced as of now.
2014-08-19 10:08:16 +10:00
Victor Mayoral Vilches 8a71fdf092 HAL_Linux: minor syntax fix in UARTDriver
Typo noticed by @hcervino.
2014-08-19 10:08:16 +10:00
Silvia b6baf78e73 HAL_Linux:duplicate `#include <sys/types<`deleted 2014-08-19 10:08:16 +10:00
Silvia 7fd0e8345d HAL_Linux: Duplicate `#include <unistd.h>`deleted 2014-08-19 10:08:16 +10:00
Víctor Mayoral Vilches 37793cd7fa AP_HAL_Namespace: Change LSM9DS0 into two different devices. 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches df1de4efd6 AP_InertialSensor: Driver added for the LSM303D 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 8968647873 AP_InertialSensor: INS_generic example, add support L3GD20 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 0f908a8ccd HAL_Linux: Add L3GD20 to the AP_InertialSensor header 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches e272ed8d96 AP_HAL: Add support for L3GD20 2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 556d46a4ef AP_InertialSensor: L3GD20 driver added
L3GD20 gyro userspace sensor added. The driver constructs
over the implementation of the PX4 Dev Team at
https://github.com/diydrones/PX4Firmware.
2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches bfacf08c30 HAL_Linux: LSM9DS0 legacy driver moved to AP_InertialSensor/LSM9DS0/
The new LSM9DS0 driver will consist of the AP_InertialSensor_L3GD20 and
the AP_InertialSensor_LSM303D. For that reason the old LSM9DS0
(consisting of gyro and accel+mag implemented on a single class) has
been moved to a folder.

Legacy LSM9DS0 didn't probe to receive "correct" data.
2014-08-19 10:08:15 +10:00
Víctor Mayoral Vilches 82186a3961 HAL: Add two new SPI devices
SPIDevice_LSM303D and SPIDevice_L3GD20 added to the enum.
The code has also been formated.
2014-08-19 10:08:15 +10:00
Andrew Tridgell 60e501d5ab AP_GPS: moved UBX log headers to DataFlash
headers were not always being written
2014-08-19 10:08:15 +10:00
Andrew Tridgell 2b02fdbbc9 DataFlash: moved UBX logging headers to DataFlash 2014-08-19 10:08:15 +10:00
NullVoxPopuli c672b3e324 Copter: Added support for V-Shaped and A-Shaped VTail Quadcopter frames
Signed-off-by: NullVoxPopuli <LPSego3+dev@gmail.com>
2014-08-18 14:31:01 +09:00
Andrew Tridgell d8fe4f366d APM_OBC: added AFS_RC_FAIL_MS, AFS_MAX_GPS_LOSS and AFS_MAX_COM_LOSS 2014-08-17 18:06:42 +10:00
Andrew Tridgell 4e97c98fa1 APM_OBC: removed use of extern function 2014-08-17 09:13:29 +10:00
Randy Mackay de747d215a Revert "GCS_MAVLink: send radio_in using rcmap"
This reverts commit 0881ccbee0.
2014-08-16 20:31:14 +09:00
Emile Castelnuovo 0d62b15292 AP_HAL: added missing CONFIG_HAL_BOARD_SUBTYPE #define for HAL_BOARD_VRBRAIN 2014-08-16 20:28:57 +10:00
Emile Castelnuovo 3b53c167a0 AP_Compass: VRBRAIN. Deal with external mag connected on internal I2C on VRBRAIN 4.5
This enables user to set the external parameter to true even if only one compass is connected
2014-08-16 20:28:50 +10:00
Emile Castelnuovo bbb9925c47 DataFlash: Added four more channels for logging 2014-08-16 20:28:46 +10:00
Andrew Tridgell 8f3dad0d1c APM_Control: increase available range for roll and pitch 2014-08-16 18:07:22 +10:00
Randy Mackay 0881ccbee0 GCS_MAVLink: send radio_in using rcmap 2014-08-16 15:27:03 +09:00
Randy Mackay d6890ce878 Notify: remove ToshibaLED support from APM
This saves about 1k of precious flash
2014-08-16 10:30:30 +09:00
Andrew Tridgell b38c9544f9 AP_RangeFinder: make values clearer for APM2 2014-08-15 20:28:22 +10:00
Randy Mackay 0c4ee422a4 Rally: fix comment to clarify altitudes are absolute 2014-08-14 21:10:21 +09:00
Randy Mackay fd5dee96e4 BaroGlitch: check baro health after alt calculation
Also correct type of distance_cm internal variable
2014-08-14 16:03:33 +09:00
Randy Mackay 424a65663a Baro: init members to resolve compiler warning 2014-08-14 16:03:30 +09:00
Randy Mackay 53b073148b BaroGlitch: use baro healthy() 2014-08-14 16:03:21 +09:00
Randy Mackay 280db8725a Arming: use baro healthy() function 2014-08-14 16:03:18 +09:00
Randy Mackay 78b1bf8282 Baro: example sketch to use healthy() function 2014-08-14 16:03:15 +09:00
Randy Mackay 76634ee8c3 Baro_PX4: use healthy flag 2014-08-14 16:03:12 +09:00
Randy Mackay d29fe51cb3 Baro_VRBrain: use healthy flag 2014-08-14 16:03:09 +09:00
Randy Mackay 24db492131 Baro_MS5611: use healthy flag 2014-08-14 16:03:06 +09:00
Randy Mackay 72f6985bd8 Baro_HIL: use healthy flag 2014-08-14 16:03:04 +09:00
Randy Mackay fdb38dec5f Baro_BMP085: use healthy flag 2014-08-14 16:03:02 +09:00
Randy Mackay 330d883f97 Baro: add altitude sanity check
healthy flag made protected
healthy accessor fn added which also check latest calculated altitude
was ok
2014-08-14 16:02:59 +09:00
Randy Mackay e9fbea9497 Baro: make get_altitude_difference const 2014-08-14 16:02:55 +09:00
Andrew Tridgell df3c565cd8 AP_L1_Control: prevent another NaN in L1 2014-08-14 14:10:03 +10:00
Randy Mackay 58257e3858 AC_AttControl: set rate D term filter from ins filter 2014-08-14 11:47:35 +09:00
Randy Mackay 51f40fe3d6 INS: add accessor for mpu6k filter 2014-08-14 11:47:23 +09:00
lthall 329118b7c9 Copter: AC_ATT correct yaw error calculation 2014-08-14 11:47:13 +09:00
lthall 90dc9411a5 Copter: ACRO Error calculation fix 2014-08-14 11:47:08 +09:00
Randy Mackay 46369badb3 ServoRelayEvents: init members to resolve compiler warning 2014-08-14 11:27:35 +09:00
Randy Mackay d026749f1b Notify: add break to resolve compiler warning 2014-08-14 11:27:34 +09:00
Randy Mackay 039f4740ce Mount: correct comment on set_mode_to_default time 2014-08-14 11:27:34 +09:00
Randy Mackay 5614e42063 Mount: init members to resolve compiler warnings 2014-08-14 11:27:33 +09:00
Randy Mackay 9b9f6cd47a AC_MotorsHeli: init member to resolve compiler warning 2014-08-14 11:27:33 +09:00
Randy Mackay 0e7cbd28c8 INS_HIL: init members to resolve compiler warnings 2014-08-14 11:27:32 +09:00
Randy Mackay 534922adc3 GPSGlitch: init members to resolve compiler warnings 2014-08-14 11:27:31 +09:00
Randy Mackay a6de3283b6 AHRS_DCM: init members to resolve compiler warnings 2014-08-14 11:27:31 +09:00
Randy Mackay 3fd2b3b4a1 AC_WPNav: init members to resolve compiler warnings 2014-08-14 11:27:30 +09:00
Randy Mackay af28b74944 Baro_BMP085: init members to resolve compiler warnings 2014-08-14 11:27:29 +09:00
Andrew Tridgell adb9d462aa GCS_MAVLink: regenerated MAVLink headers 2014-08-14 11:01:59 +10:00
Andrew Tridgell f9d5715754 GCS_MAVLink: merged latest upstream common.xml 2014-08-14 11:01:41 +10:00
Andrew Tridgell 3357df9529 AP_Mission: fixed example sketch 2014-08-14 10:48:31 +10:00
Andrew Tridgell e1a13edf3d RC_Channel: fixed example build 2014-08-13 22:12:30 +10:00
Andrew Tridgell 184420355d PID: fixed example build 2014-08-13 22:12:24 +10:00
Andrew Tridgell b16d84023e Filter: fixed example build 2014-08-13 22:12:20 +10:00
Andrew Tridgell 5025f04cb1 AP_OpticalFlow: fixed example build 2014-08-13 22:12:14 +10:00
Andrew Tridgell c76c3457fd AP_Menu: fixed example build 2014-08-13 22:12:08 +10:00
Andrew Tridgell 184c4c8ac5 AP_Math: fixed example build 2014-08-13 22:12:04 +10:00
Andrew Tridgell 8e15b4db0d HAL_Empty: fixed example build 2014-08-13 22:12:00 +10:00
Andrew Tridgell 928024854e HAL_AVR: fixed example build 2014-08-13 22:11:53 +10:00
Andrew Tridgell b61ecb47af AP_HAL: fixed example build 2014-08-13 22:11:46 +10:00
Andrew Tridgell 2502ca3ec7 AP_Declination: fixed example build 2014-08-13 22:11:30 +10:00
Andrew Tridgell c49981c03d AP_Compass: fixed example build 2014-08-13 22:11:25 +10:00
Andrew Tridgell 1c94b39d6e AP_ADC: fixed example build 2014-08-13 22:11:21 +10:00
Andrew Tridgell 83dc9bf5b3 AC_PID: fixed example build 2014-08-13 22:11:16 +10:00
Andrew Tridgell ea26f15e5e GCS_Console: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell 6c19f23ace DataFlash: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell 8540174854 AP_Rangefinder: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell e43cac1b26 AP_Notify: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell fddf895d66 AP_Mount: fixed example build 2014-08-13 21:48:36 +10:00
Andrew Tridgell 2e83555892 AP_Motors: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell ce193f5c5c AP_Mission: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 917c9f7865 AP_Math: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 24251a7e12 AP_InertialSensor: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell f0f25eb1d7 AP_InertialNav: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 41f7ad42d4 HAL_PX4: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell baa5aeea81 HAL_FLYMAPLE: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 4bb72f8d85 HAL_AVR: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 5cca163b1f AP_HAL: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell b08b76b8ff AP_GPS: fixed example build 2014-08-13 21:48:35 +10:00
Andrew Tridgell 40709f655e AP_BattMonitor: fixed example build 2014-08-13 21:46:22 +10:00
Andrew Tridgell a400cbc922 AP_Baro: fixed example build 2014-08-13 21:46:14 +10:00
Andrew Tridgell f6f51ceebe AP_Airspeed: fixed example build 2014-08-13 21:46:09 +10:00
Andrew Tridgell 0f5b65e40e AP_AHRS: fixed example build 2014-08-13 21:46:04 +10:00
Andrew Tridgell 759a55d633 AC_WPNav: fixed example build 2014-08-13 21:45:56 +10:00
Andrew Tridgell e2b813480f AC_Sprayer: fixed example build 2014-08-13 21:45:49 +10:00
Andrew Tridgell f721e020f5 AC_Fence: fixed example build 2014-08-13 21:45:43 +10:00
Andrew Tridgell a9153519dc AC_AttitudeControl: fixed example build 2014-08-13 21:45:38 +10:00
Andrew Tridgell 2297c6bcd2 AP_TECS: added TECS_LAND_SINK parameter
this controls the sink rate for the final stage of landing
2014-08-13 21:38:05 +10:00
Andrew Tridgell 52cdd6394f StorageManager: cope with a wider range of storage sizes 2014-08-13 21:35:26 +10:00
Andrew Tridgell c864f3eed5 HAL_PX4: enable full storage size on PX4 2014-08-13 18:46:45 +10:00
Andrew Tridgell e34463a4bb AP_HAL: flymaple build fix 2014-08-13 18:46:44 +10:00
Andrew Tridgell a70b195a4a SITL: fixed limits on storage 2014-08-13 18:46:44 +10:00
Andrew Tridgell 984064f3d3 AP_InertialSensor: fixed example build 2014-08-13 18:46:44 +10:00
Andrew Tridgell d40d0f6aec AP_HAL: removed old storage type read/write functions
not needed any more
2014-08-13 18:46:44 +10:00
Andrew Tridgell 2d9e9879a2 AP_Limits: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell 7a12ff0271 AP_Mission: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell 7cbb326405 AP_Rally: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell f133f45c3c AP_Param: convert to using StorageManager 2014-08-13 18:46:43 +10:00
Andrew Tridgell f748e07ecf AP_HAL: ensure we have subtypes for all boards 2014-08-13 18:46:43 +10:00
Andrew Tridgell 3640ae9cdf SITL: allow for different storage sizes 2014-08-13 18:46:43 +10:00
Andrew Tridgell e53c872e1f StorageManager: added example sketch
note: this destroys the data
2014-08-13 18:46:43 +10:00
Andrew Tridgell 66a21c4c33 StorageManager: first version of storage management library
used to divvy up eeprom/fram and allow for expandable storage
2014-08-13 18:29:04 +10:00
Mikhail Avkhimenia c42cc12f23 AP_Notify: Add dummy LED configuration for Navio 2014-08-12 22:13:00 +10:00
Mikhail Avkhimenia 34da221c3d AP_InertialSensor: Use MPU9250 DRDY pin only on boards that support it 2014-08-12 22:13:00 +10:00
Mikhail Avkhimenia a09fbb4171 HAL_Linux: Add SPI configuration for Navio
This changes the SPI bus number to be zero based on Linux
2014-08-12 22:13:00 +10:00
Mikhail Avkhimenia 83bbee491c AP_Baro_MS5611: add address switch for Navio board 2014-08-12 22:09:29 +10:00
Mikhail Avkhimenia 784533e9c8 AP_HAL: add configuration for HAL_BOARD_SUBTYPE_LINUX_NAVIO 2014-08-12 22:09:17 +10:00
Andrew Tridgell bc95e746ce GCS_MAVLink: fixed example sketch builds 2014-08-11 11:06:17 +10:00
Andrew Tridgell 778b5e8a16 AP_PerfMon: removed unusued commented code 2014-08-11 09:39:02 +10:00
Andrew Tridgell 47655ee78e DataFlash: removed more unusued BufferRead functions 2014-08-11 09:39:02 +10:00
Daniel Frenzel 74460cd526 DataFlash: Delete unused BufferRead function
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:42 +10:00
Daniel Frenzel dd705e3fdb AP_Param: signed/unsigned conversion
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:34 +10:00
Daniel Frenzel 1c7e8f8fb2 AP_Mission: Consecutive return, break, continue, goto or throw statements are unnecessary.
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:26 +10:00
Daniel Frenzel c97b460a6b AP_GPS: removed wrong reassignment of msec
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:19 +10:00
Daniel Frenzel df075b8f63 AP_PerfMon: removed unused blocking_writes
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:11 +10:00
Daniel Frenzel b1a9d6bbcc AP_Math: Using const references in matrix3
Signed-off-by: Daniel Frenzel <dgdanielf@gmail.com>
2014-08-11 09:24:05 +10:00
Andrew Tridgell b559e9d331 SITL: better rangefinder simulation
able to handle a wider range, and takes account of attitude
2014-08-10 22:37:07 +10:00
Andrew Tridgell ef98eba722 SITL: added SIM_SONAR_SCALE parameter
used for simulating different kinds of rangefinders
2014-08-10 22:36:38 +10:00
Andrew Tridgell a4cd9c4bd7 AP_Airspeed: added HIL support 2014-08-10 18:16:53 +10:00
Andrew Tridgell b296508da4 AP_GPS: make setHIL take const references 2014-08-09 22:50:15 +10:00
Andrew Tridgell bf0ce79176 SITL: make it possible to use SITL-HIL
strangely enough, using HIL in SITL is a great way to debug HIL!
2014-08-09 22:50:15 +10:00
Andrew Tridgell f8ceccce32 AP_InertialSensor: improved HIL timing consistancy
try to keep the average time for each sample right
2014-08-09 22:50:15 +10:00
Andrew Tridgell 2e5913df93 RC_Channel: fixed k_manual for set_servo_limit()
this allows for failsafe takeover of k_manual channels, which fixes
the behaviour for ignition failsafe
2014-08-09 22:50:14 +10:00
Andrew Tridgell d1a75874a1 HAL_PX4: don't report power status change if in first 5 seconds 2014-08-09 22:50:14 +10:00
Andrew Tridgell 9a1bac06d4 GCS_MAVLink: added send_battery2() 2014-08-09 22:50:14 +10:00
Andrew Tridgell ab6302540d AP_BattMonitor: added 2nd battery voltage monitoring 2014-08-09 22:50:14 +10:00
Andrew Tridgell 11025c8da9 GCS_MAVLink: rebuild MAVLink headers 2014-08-09 22:50:14 +10:00
Andrew Tridgell 67e1b66757 GCS_MAVLink: added battery2 message 2014-08-09 22:50:14 +10:00
Randy Mackay 5d4e019397 BaroGlitch: increase max accel to 15m/s/s 2014-08-09 15:47:52 +09:00
Andrew Tridgell 3ee3a71644 AP_NavEKF: prevent a possible numerical error on startup
fixes issue #1294
2014-08-08 15:55:20 +10:00
Andrew Tridgell 144dcb4552 APM_OBC: use send_statustext_all() 2014-08-08 13:54:21 +10:00
Andrew Tridgell f49258eb31 GCS_MAVLink: added send_statustext_all() method
used for sending text messages from libraries
2014-08-08 13:54:21 +10:00
Andrew Tridgell 1d4d848300 AP_InertialSensor: fixed a build warning 2014-08-08 13:48:03 +10:00
Andrew Tridgell a812bf621f APM_OBC: added AFS_ENABLE parameter
AFS system is disabled by default
2014-08-08 13:48:03 +10:00
priseborough bc3c85be20 AP_L1_Control : Fix potential divide by zero error 2014-08-07 19:04:42 +10:00
Andrew Tridgell ed6ab5f1d3 AP_InertialSensor: use bool for blocking_read()
uint8_t return was confusing
2014-08-07 13:09:17 +10:00
Michael Carpenter b4c0e1215b AP_InertialSensor: Use return value of blocking_read to handle calibration timeouts 2014-08-07 13:04:18 +10:00
Andrew Tridgell 786661ca2b GCS_MAVLink: better handling of high severity STATUSTEXT messages 2014-08-07 12:55:52 +10:00
Przemek Lekston ae4814a773 AP_AHRS_DCM.cpp: changed the direction of position projection to ensure correct behavious in crosswind 2014-08-07 12:34:30 +10:00
Andrew Tridgell bc560b466e GCS_MAVLink: regenerate MAVLink headers 2014-08-07 12:34:30 +10:00
Andrew Tridgell 5ed24557b3 GCS_MAVLink: import latest MAVLink XML 2014-08-07 12:34:30 +10:00
Andrew Tridgell af4dee39d8 AP_Terrain: added note on CPU cost of height_amsl() 2014-08-07 09:51:14 +10:00
Andrew Tridgell dc72dfb70a AP_Terrain: added terrain lookahead API
this allows for predicting altitude needed to climb over upcoming
terrain
2014-08-07 09:30:35 +10:00
Andrew Tridgell b92873cab1 AP_Math: prevent negative longitude scaling
for crazy locations
2014-08-07 09:30:02 +10:00
Andrew Tridgell 7752196628 AP_SpdHgtControl: added get_max_climbrate() 2014-08-07 09:29:40 +10:00
Andrew Tridgell c990714377 AP_TECS: added get_max_climbrate() 2014-08-07 09:29:31 +10:00
Andrew Tridgell f0f46a77d7 AP_Terrain: don't request data at 0/0 2014-08-06 22:13:37 +10:00
Andrew Tridgell 642a07b6bd AP_Terrain: enable the terrain database by default
MissionPlanner now supports terrain data, and having terrain data in
logs is useful even if users don't fly terrain missions
2014-08-06 20:53:34 +10:00
Andrew Tridgell efa1d370fa AP_Terrain: added missing TerrainMission.cpp 2014-08-06 19:32:53 +10:00
Andrew Tridgell 88bc1fb4d3 AP_Rally: fixed build for non-standard vehicle types 2014-08-06 17:59:20 +10:00
Andrew Tridgell a701fa2098 AP_Terrain: added automatic rally point checking 2014-08-06 17:59:19 +10:00
Andrew Tridgell 723aa7e336 AP_Rally: added last_change_time_ms() call 2014-08-06 17:59:19 +10:00
Andrew Tridgell 7da939047f AP_Terrain: added automatic waypoint checking
check we have terrain data for all waypoints
2014-08-06 17:59:19 +10:00
Andrew Tridgell df55ae86c4 AP_Mission: added last_change_time_ms() call
will be used by terrain lib for scanning waypoints
2014-08-06 17:59:19 +10:00
Andrew Tridgell 9ca65602c6 AP_Terrain: added dataflash logging 2014-08-06 17:59:19 +10:00
Andrew Tridgell cd8fca40fb DataFlash: added TERR log message for terrain data 2014-08-06 17:59:19 +10:00
Andrew Tridgell 7c4d31c481 AP_TECS: added TECS_PITCH_MAX and TECS_PITCH_MIN
this allows the TECS controlled pitch limits to be smaller than the
FBWA limits. It is common for a human pilot to want a bit more
discretion over pitch than you want the automatic controller to use
2014-08-06 17:59:18 +10:00
Andrew Tridgell 147a7b8b69 AP_Terrain: added extrapolation based on last available data
if we run out of terrain data then extrapolate using the last
available terrain height at the AHRS position. This can be used to
cope with GCS outages over long distances where the terrain data isn't
preloaded
2014-08-06 17:59:18 +10:00
Randy Mackay e0fc2dd50e AC_PosControl: remove 20cm on takeoff 2014-08-05 09:11:57 +09:00
akdslr a404404806 AP_RangeFinder: Added a call to sonar.update in RFIND_test 2014-08-04 22:13:16 +10:00
Randy Mackay 1362bdc338 AC_PosControl: smooth take-off with accel PID's I term
This avoids an instantaneous jump in throttle during take-off by loading
the accel PID's I term with the expected change in throttle level
2014-08-04 21:04:09 +09:00
Randy Mackay 5596001d39 AC_Motors: make get_throttle_out const 2014-08-04 21:04:09 +09:00
Randy Mackay e550c1e9a3 AC_PosControl: add set_alt_target_to_current_alt method 2014-08-04 16:54:04 +09:00
Randy Mackay 009f42b2e1 InertialNav: do not reset velocity after glitch clears 2014-08-04 11:31:46 +09:00
Andrew Tridgell 6ebff35fe2 AP_Baro: don't include I2C MS5611 on APM1 either 2014-08-03 17:17:20 +10:00
Randy Mackay fe24721218 BaroGlitch: increase default ok distance to 5m
When taking off some copters hove a sudden baro altitude dip of 4m
2014-08-02 11:43:06 +09:00
Randy Mackay f12d06d76b DataFlash: typo fix in ListAvailableLogs 2014-08-01 15:14:44 +09:00
Randy Mackay 538372c02c InertialNav: remove accessor to set time_constants 2014-08-01 15:14:43 +09:00
Andrew Tridgell 3fa30f91db DataFlash: avoid CLI functions on APM2 for copter 2014-08-01 15:57:15 +10:00
Randy Mackay c68d4fdfcb BaroGlitch: init members to resolve compiler warning 2014-08-01 14:07:34 +09:00
Randy Mackay 621cc2b953 Mission: bug fix to condition-change-alt
Fix contributed by oniondream, thanks!
2014-08-01 12:51:50 +09:00
priseborough d5442fe64e AP_NavEKF : Modified compass fail logic
If the vehicle can fly without a compass (a fly forward vehicle)
then if the compass times out (large errors for more than 10 seconds,
then it will be declared permanently failed and will not be
used until the filter is reset
2014-07-31 21:12:11 +10:00
Andrew Tridgell cc735a4200 AP_InertialSensor: some more debug info for VibTest 2014-07-31 12:48:30 +10:00
Matthias Badaire c7cd1c9fde AP_Frsky_Telem: added initial Frsky telemetry library
based on work from the PX4Firmware tree, this adds a library which can
create and send Frsky telemetry packets
2014-07-29 17:08:19 -07:00
Randy Mackay 728da12441 BaroGlitch: remove debug 2014-07-29 22:05:09 +09:00
Andrew Tridgell c538cc0665 AP_Baro: fixed example build 2014-07-29 21:04:26 +10:00
Andrew Tridgell 03dc27147e AP_Math: port examples to Linux 2014-07-29 15:49:38 +10:00
Randy Mackay 053a45e9cf AC_WPNav: fix example sketch 2014-07-29 12:01:09 +09:00
Randy Mackay 6a6482fb03 AC_Sprayer: fix example sketch 2014-07-29 12:00:59 +09:00
Randy Mackay 71df1eb94f AC_Fence: fix example sketch 2014-07-29 12:00:46 +09:00
Randy Mackay 424cb1aeca AC_AttControl: fix example sketch 2014-07-29 12:00:33 +09:00
Randy Mackay 2951fb50e9 InertialNav: fix example sketch 2014-07-29 11:51:49 +09:00