Commit Graph

13577 Commits

Author SHA1 Message Date
Randy Mackay
593f035c53 AP_Arming: remove required, min-volt, min-volt2 params from Copter 2017-01-17 11:45:08 +09:00
Randy Mackay
5be3d14648 AP_Arming: rudder_arming moved to AP_Arming_Plane 2017-01-17 11:45:08 +09:00
Peter Barker
1f37366c5b AP_Arming: make expected magnetic field strength available to subclasses 2017-01-17 11:45:08 +09:00
Peter Barker
8159c4b747 AP_Arming: add comments on parameters only currently used by plane 2017-01-17 11:45:08 +09:00
Peter Barker
362c6e1b9e AP_Arming: use callback in place of variable reference for home state 2017-01-17 11:45:08 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
363574244b AP_Stats: Add missing parameter units 2017-01-16 19:07:27 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
bebb128d22 AP_Proximity: Add missing parameter units 2017-01-16 19:07:27 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
cae557fb4c AP_NavEKF3: Correct display names, bitmask and units 2017-01-16 19:07:26 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
715d094678 AP_NavEKF2: Correct display names, bitmask and units 2017-01-16 19:07:26 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
2243d900d5 AP_Gripper: Add missing parameter units 2017-01-16 19:07:26 +00:00
Julien Beraud
0d4ca03dcd AP_HAL_Linux: init SPIDevice speed by default
Else a speed of 0 will be sent at each transfer.
Behaviour has changed when introducing SPIDevice
2017-01-16 10:23:47 -08:00
Randy Mackay
6aeef76768 AP_Proximity: fix get_boundary_points in case of multiple sensors 2017-01-16 16:38:18 +09:00
Andrew Tridgell
8aa100d164 AP_Baro: fix for change to timer API 2017-01-14 12:54:37 +11:00
mirkix
4e06be38ac AP_HAL: Add Bosch BMP280 driver 2017-01-14 12:52:07 +11:00
mirkix
1ce5e5360a AP_Baro: Add Bosch BMP280 driver 2017-01-14 12:52:07 +11:00
Andrew Tridgell
58a0a6a2fc AP_Compass: disable lis3mdl for now
pending investigation of possible hw error
2017-01-14 12:40:04 +11:00
Lucas De Marchi
5472bc4de1 Global: change Device::PeriodicCb signature
Remove bool return as it's never being used and not supported on PX4.
2017-01-14 10:03:54 +11:00
Pierre Kancir
5aa4bc4368 AP_Params: fix seg fault in debug function
otherwise at start, when loading paramter is could fail at AP_Param.cpp:611, Debug("scan past end of eeprom")"
2017-01-13 08:54:20 -08:00
murata
87c2dfd921 AP_Baro: Change to secure code, from magic number to sizeof value. 2017-01-12 13:56:18 -08:00
Andrew Tridgell
d005cbffd8 AP_Param: added convert_parent_class() 2017-01-12 17:39:37 +11:00
Andrew Tridgell
05e9462a9c AP_Param: added CONVERT_FLAG_REVERSE and CONVERT_FLAG_FORCE 2017-01-12 17:39:37 +11:00
Andrew Tridgell
e248078401 SRV_Channel: added AP_Motors servo channel parameter upgrading 2017-01-12 17:39:37 +11:00
Andrew Tridgell
d430cd62a6 AP_Param: fixed loading defaults file after storage
make sure defaults don't override storage values
2017-01-12 17:39:37 +11:00
Andrew Tridgell
0c32178d07 AP_Param: added reload_defaults_file()
this allows defaults to be set for parameters in pointer objects
2017-01-12 17:39:37 +11:00
Andrew Tridgell
ccae8979c1 AC_PID: expose filt_hz as a AP_Float
this allows defaults to be overridden
2017-01-12 17:39:37 +11:00
Andrew Tridgell
2086b591a2 AC_PID: expose ff() method in AC_PID
this allows for an abstract AC_PID class to be used in
AC_AttitudeControl for both multicopter and heli
2017-01-12 17:39:37 +11:00
Andrew Tridgell
8e3bf71aa9 AP_Motors: allow single, tri and coax to be part of multicopter class 2017-01-12 17:39:37 +11:00
Andrew Tridgell
5cf1c0869d AC_AttitudeControl: expose all functions via abstract class
this allows for a single class to be used for heli and multicopter
2017-01-12 17:39:37 +11:00
Andrew Tridgell
8799094278 AP_Motors: use SRV_Channel for tri tail servo 2017-01-12 17:39:37 +11:00
Andrew Tridgell
86e0b8a91f SRV_Channel: added automatic parameter upgrade 2017-01-12 17:39:37 +11:00
Andrew Tridgell
77a7e7ca01 RC_Channel: give access to internals to SRV_Channel
needed for parameter upgrade
2017-01-12 17:39:37 +11:00
Andrew Tridgell
c133b515e0 AP_ServoRelayEvents: fixed trim bug
thanks to Buzz for noticing!
2017-01-12 17:39:37 +11:00
Andrew Tridgell
26f9a5569f SRV_Channel: added tracker_yaw and tracker_pitch for antenna tracker channels 2017-01-12 17:39:37 +11:00
Andrew Tridgell
37c6bec902 HAL_QURT: fixed a bug in new_input()
same as for HAL_Linux
2017-01-12 17:39:37 +11:00
Andrew Tridgell
1bd9d0b7f9 HAL_PX4: cleanup whitespace 2017-01-12 17:39:37 +11:00
Andrew Tridgell
ea2e32c102 SRV_Channel: implement limit_slew_rate() 2017-01-12 17:39:37 +11:00
Andrew Tridgell
51864b23eb SRV_Channel: cleanup header 2017-01-12 17:39:37 +11:00
Andrew Tridgell
b6aa4205b4 RC_Channel: cleanup API and comments a bit 2017-01-12 17:39:37 +11:00
Andrew Tridgell
929fbce2c2 AP_LandingGear: use new SRV_Channels API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
b3d30cbd4b AP_Gripper: use new SRV_Channels API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
5817cc400c AC_Sprayer: use new SRV_Channels API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
1ac5776b8b AC_Sprayer: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
39ab1a0abc SITL: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
0942291e74 GCS_MAVLink: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
ede66aae17 AP_Tuning: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
f73f3bedda AP_ServoRelayEvents: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
7706741b9b AP_Parachute: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
4173432542 AP_Mount: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
ee7b9a3f8e AP_Camera: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
638f1364be AP_Motors: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
04ce73d8d7 AP_ICEngine: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
117974ef0f HAL_SITL: obey enable mask for output channels 2017-01-12 17:39:37 +11:00
Andrew Tridgell
9dc7dbfa16 AP_AdvancedFailsafe: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Andrew Tridgell
fd081a8cc6 SRV_Channel: split SRV_Channel into separate directory 2017-01-12 17:39:37 +11:00
Andrew Tridgell
0791186cd2 RC_Channel: split SRV_Channel into separate directory 2017-01-12 17:39:37 +11:00
Andrew Tridgell
64aa13e7f4 RC_Channel: 2nd stage of SRV_Channels conversion
allow for 16 output channel objects
2017-01-12 17:39:37 +11:00
mirkix
62fabca19d AP_InertialSensor: Enable I2C bypass for MPU9250 conntected via I2C to access internal AK8963 2017-01-11 21:44:24 -08:00
Pierre Kancir
ab9e88299f AP_HAL_SITL: Scheduler remove unreachable code & minor fix
usleep wasn't reached since synthetic clock is always used
correct style
make constructor explicit
use c++ cast
2017-01-12 01:27:16 +00:00
Pierre Kancir
63b3618fc7
AP_HAL_SITL: RCOuput minor fix
correct style
make constructor explicit
use c++ cast
2017-01-12 01:20:06 +00:00
Pierre Kancir
ff46964d22
AP_HAL_SITL: RCInput minor fix
fix style
make constructor explicit
remove unused _valid
correct read to return real length instead of fixed 8
correct implicit cast
2017-01-12 01:19:54 +00:00
Pierre Kancir
7f5b32f59f AP_HAL_SITL: GPIO minor fixes
fix style
make constructor explicit
fix implicit cast for unsigned to signed value
correct DigitalSource constructor definition
2017-01-12 01:06:20 +00:00
Pierre Kancir
8ade9d1fe8 AP_HAL_SITL: style fixes 2017-01-12 01:06:20 +00:00
Pierre Kancir
5b2b4430b3 AP_HAL_SITL: AnalogIn minor fixes
change pin to int16_t to match real implementation and prevent casting.
make constructor explicit
2017-01-12 01:06:20 +00:00
Randy Mackay
7c7144fd8f AP_Proximity: minor comment spelling fix 2017-01-11 21:48:23 +09:00
Randy Mackay
74f1899aeb AP_Proximity: boundary_points requires only one valid distance
Object avoidance is possible with just one valid distance
Boundary is initialised in new init_boundary function to be 100m from
vehicle
If sectors do not have valid distance measurements, we use the distance
from adjacent sectors.  This conveniently leads to a concave shaped
boundary that keeps the vehicle from travelling into the dataless sector.
2017-01-11 21:48:23 +09:00
Randy Mackay
a0a8472a44 AP_Proximity: fix consumption of distance-sensor messages 2017-01-11 21:48:23 +09:00
Lucas De Marchi
b910f230fb AP_HAL_Linux: RCInput: replace volatile with atomic 2017-01-11 11:25:00 +11:00
Andrew Tridgell
0a18f5e7b2 HAL_Linux: fixed a bug in RCInput::new_input
when a library called read() it would clear the new input flag, which
would cause new_input() in the main loop to return false. This could
trigger a false RC failsafe.
2017-01-09 21:47:19 -08:00
Andrew Tridgell
9b7f0f7957 AP_HAL: make new_input() API clearer in comments 2017-01-09 21:47:11 -08:00
Randy Mackay
d4daa10045 AP_Proximity: add MAV type to parameter descriptions 2017-01-10 11:00:00 +09:00
Francisco Ferreira
c6875e1756
AP_NavEKF2: remove editor information wrongly added in d408d25 2017-01-09 16:16:14 +00:00
murata
974d63a6b5 AP_HAL: Change the format of the return value of the method header. 2017-01-09 15:46:03 +00:00
Pierre Kancir
c0be20ece2 SITL: XPLANE fix member shadowing 2017-01-09 06:51:48 -08:00
Dr.-Ing. Amilcar Do Carmo Lucas
b7f32e216d AP_GPS: update parameter descriptions 2017-01-09 13:32:28 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
9389ec2274 AP_NavEKF2: fix parameter descriptions 2017-01-09 13:30:30 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
195e32c2fc AP_NavEKF3: fix some parameter descriptions 2017-01-09 13:30:24 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
8032ed295d AP_Avoidance: add units to param descriptions 2017-01-09 13:25:33 +09:00
Andrew Tridgell
eaf5676636 SITL: fixed unselection bitmask bug in XPlane 2017-01-09 09:55:14 +11:00
Andrew Tridgell
da45aef5c6 AP_HAL: fixed a logic bug in the srxl state machine
when decoding invalid input the buflen could grow to beyond the buffer
size, overwriting the next block of memory. On Disco this ended up
overwriting the Perf::_instance variable, which led to a segmentation
fault
2017-01-09 09:14:13 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas
713b08d830 AC_WPNav: Reduced WPNAV_SPEED minimum to 20cm/s 2017-01-07 14:30:07 +09:00
Andrew Tridgell
35d6dc141a SITL: only de-select data types in xplane once
don't fight the user
2017-01-07 14:41:23 +11:00
murata
c2521dd650 AP_Proximity: Change sprintf method to secure snprintf method. 2017-01-07 02:33:46 +00:00
Tom Pittenger
a81f5cefbe AP_Mission: don't wrap when masking via HIGH/LOWBYTE 2017-01-06 17:35:44 -08:00
Eugene Shamaev
dc3d10a28b AP_Mission: waypoint command parsing 2017-01-06 17:35:44 -08:00
Dr.-Ing. Amilcar Do Carmo Lucas
9aaeb6fe1a AP_GPS: Add missing GPS Types 2017-01-06 21:24:42 +00:00
murata
908d9a8a8c AP_ADSB: Change sprintf method to secure snprintf method. 2017-01-06 10:59:12 -08:00
Dr.-Ing. Amilcar Do Carmo Lucas
d408d25f92 More spelling stuff 2017-01-06 10:57:39 -08:00
Dr.-Ing. Amilcar Do Carmo Lucas
8419045aea Spell in comments 2017-01-06 10:57:39 -08:00
Nacho Carnicero
bc9facf608 AP_Mount: Fix Alexmos gimbal Mavlink targeting mode 2017-01-05 02:16:32 +00:00
Randy Mackay
946d30476a AP_InertialSensor: fix whoami for MPU6k 2017-01-05 10:29:51 +09:00
Victor Lambret
a4108251e3 AP_Baro: fix get_last_update(instance)
The method was not using the instance parameter. Instead it always use
primary barometer. Bug was not detected because method
get_last_update() is used where instance is _primary.

Detected with warnings, warnings are useful :-)
2017-01-04 17:32:24 +00:00
Peter Barker
889ec829fc AP_OpticalFlow: fix warning in SITL compilation 2017-01-02 15:58:32 +09:00
Tom Pittenger
063f517424 Plane, TECS, AP_Landing: rename stage LAND_ABORT to ABORT_LAND
this will reduce confusion when searching for FLIGHT_LAND_* and you get a bunch of takeoff related hits. It will also make more sense when the landing library fully manages the FLIGHT_LAND stage entirely because it will not mange FLIGHT_LAND_ABORT
2016-12-30 23:50:03 -08:00
Tom Pittenger
84e11fd899 Plane, AP_TECS: do not pass auto_land flag to TECS, it already knows it 2016-12-30 23:50:03 -08:00
Tom Pittenger
502768c979 AP_Landing: move enum FlightStages to AP_Vehicle::FixedWing 2016-12-30 23:50:03 -08:00
Tom Pittenger
8019cedf5b AP_Vehicle,AP_SpdHgtControl,AP_TECS: move enum FlightStages to AP_Vehicle::FixedWing 2016-12-30 23:50:02 -08:00
Andrew Tridgell
0d6801fbe6 AP_Param: added find_old_parameter() method
allows for custom conversion of parameters
2016-12-31 10:55:59 +09:00
Randy Mackay
bdfb12123f AP_Motors: fix frame-type enum for Y6B
Also remove unused NEW_PLUS
2016-12-31 10:55:23 +09:00
Randy Mackay
037e411e35 AP_Motors: fix example sketch
Also minor formatting fix
Thanks to OXINARF for spotting this
2016-12-31 10:55:23 +09:00
Randy Mackay
ffa6d1a5b9 AP_Motors: init fixes for frame_class, type and initialised_ok
Thanks to OXINARF for spotting these
2016-12-31 10:55:23 +09:00
Randy Mackay
a276f5dc90 AP_Motors: fix example sketch 2016-12-31 10:55:23 +09:00
Randy Mackay
7be0f437a9 AP_Motors: consolidate matrix multicopters
AP_MOTORS_x_FRAME definitions moved to motor_frame_type enum
init function and now accepts frame-class and type to perform initial motor setup
set_frame_class_and_type allows real-time changing of motor setup
initialised_ok flag and accessor records whether setup was successful
2016-12-31 10:55:23 +09:00
Randy Mackay
41189758b8 AP_Motors: move some functions to protected
Also minor formatting fix
2016-12-31 10:55:23 +09:00
murata
13ad06e652 AP_Notify: Change on / off of LED to ternary operator. 2016-12-30 15:02:16 -08:00
Andrew Tridgell
7a5ee29b6e AP_AHRS: fixed a build warning 2016-12-31 08:53:16 +11:00
Andrew Tridgell
ad518f0cc7 AP_AHRS: fixed EKF type 10 EKF nav scaler return 2016-12-29 18:43:32 +11:00
Shingo Matsuura
21ca1d3835 AP_Beacon: fixed comment. NE is correct. 2016-12-28 10:54:32 +09:00
Andrew Tridgell
f6cc506791 APM_Control: Added derating of steering wheel 2016-12-27 13:33:52 +11:00
Randy Mackay
e497dedf35 AP_Proximity: add MAV type
This accepts DISTANCE_SENSOR messages from eight sectors around the vehicle
2016-12-27 08:37:48 +09:00
Randy Mackay
8215b92371 AP_RangeFinder: MAV only accepts DISTANCE_SENSOR with orient 25
25 is  MAV_SENSOR_ROTATION_PITCH_270 meaning downward facing
2016-12-27 08:37:48 +09:00
murata
653030b038 AP_NavEKF2: Changed if statements to switch statement.
AP_NavEKF2: Change indentation.
2016-12-26 10:15:55 +09:00
Randy Mackay
a2f6d7c102 AP_HAL: minor comment fix to Device.h 2016-12-24 13:55:31 +09:00
Randy Mackay
2076da3a72 AP_Proximity: minor comment fix
No functional change
2016-12-24 13:55:28 +09:00
murata
d56bad781f AP_InertialSensor: change if statements to switch statement
No functional change
2016-12-24 12:23:59 +09:00
murata
398b7b83dd AP_InertialSensor: minor formatting fixes
No functional change
2016-12-24 12:23:58 +09:00
murata
6045612011 AP_Beacon: combine duplicate checks into device_ready method 2016-12-24 12:11:53 +09:00
Peter Barker
6fd771afc9 AP_Mission: starts_with_takeoff uses get_next_nav_cmd 2016-12-24 11:49:35 +09:00
Peter Barker
b4d1d0f918 AP_Gripper: servo gripper not valid unless aux channel assigned 2016-12-24 11:31:58 +09:00
murata
4c320373eb AP_AHRS: Change indentation.
AP_AHRS: Delete inserted message "no break"
2016-12-24 11:30:37 +09:00
Andrew Tridgell
bbccdce229 AP_Terrain: prevent use of invalid Location
loc is not initialised and can cause a fault on startup
2016-12-22 15:50:30 +11:00
priseborough
71eb46dd04 AP_NavEKF3: Fix bug in loss of aiding fallback
Fixes a bug introduced by the introduction of range beacon fusion to the fallback test.
2016-12-21 18:08:39 +11:00
priseborough
6dc7d25fde AP_NavEKF2: Fix bug in loss of aiding fallback
Fixes a bug introduced by the introduction of range beacon fusion to the fallback test.
2016-12-21 18:08:39 +11:00
murata
fd153f2861 AP_GPS: Change search method of GPS type to switch statement.
AP_GPS: Correct the tab code to white space.
2016-12-21 10:31:43 +09:00
Andrew Tridgell
22fd2025de AP_AHRS: fixed EKF type 10 2016-12-21 10:52:12 +11:00
Tom Pittenger
372837b959 Update AP_ADSB.cpp
AP_ADSB: fixed GPS.alt reporting  cm to mm conversion bug

Issue 5424
2016-12-20 15:57:52 +01:00
murata
753638851e AP_Baro: Changed if statements to switch statement. 2016-12-20 14:13:47 +00:00
Pierre Kancir
47f1a754c5 AP_Math: add some test for vector2 equality test 2016-12-20 14:09:04 +00:00
Pierre Kancir
eae093cd2a AP_Math: add test for is_equal for int 2016-12-20 14:09:04 +00:00
Pierre Kancir
da49149d19 AP_Math: is_equal correct comparison for integer as epsilon doesn't exist.
Credit to Kwikius for the right solution
2016-12-20 14:09:04 +00:00
Randy Mackay
e7f2c9870a AC_Avoid: add accessor for proximity enabled 2016-12-20 19:48:07 +09:00
Randy Mackay
b114d3928e AC_Avoid: fix distance to lean angle logic
Fixes from PR review including
(a) make some local variables const
(b) rename angle_max to veh_angle_max
(c) fix distance_to_lean_pct logic so distance of zero returns maximum lean angle
2016-12-20 19:48:04 +09:00
Randy Mackay
1b582b2009 AC_Avoid: avoidance for non-GPS flight modes 2016-12-20 19:47:58 +09:00
Randy Mackay
fbbd13db75 AP_Proximity: add get_object methods for use with non-GPS avoidance 2016-12-20 19:47:56 +09:00
Peter Barker
802206baed AP_AHRS: remove use of uninitialised value 2016-12-19 19:51:16 -08:00
Lucas De Marchi
9569ed94a9 AP_InertialSensor: Invensense: use capital letters for define 2016-12-20 09:23:30 +09:00
Jonathan Challinger
86406199a9 AC_PrecLand: reserve parameter indices 2016-12-20 09:21:51 +09:00
murata
a2649949df AP_Compass: Changed if statements to switch statement. 2016-12-19 22:28:34 +00:00
Pierre Kancir
bf135aeff7 SITL: Aircraft correct some syntax, implicit cast, make some local variable const, remove tabs and whitespace 2016-12-19 14:53:17 +00:00
Pierre Kancir
ce734b5f7b AP_Math: Remove unecessary check 2016-12-19 14:36:03 +00:00
Randy Mackay
3ed9eb98f3 SITL: minor comment fix for SIM_Multicopter 2016-12-19 17:01:04 +09:00
Randy Mackay
5d0be2de9f AP_Gripper: minor comment fix 2016-12-19 17:01:01 +09:00
priseborough
f1c05ee320 AP_NavEKF3: Allow accel switch on bias uncertainty to be adjusted 2016-12-19 08:07:15 +11:00
Andrew Tridgell
a30745903a AP_InertialSensor: use ACC2_BIAS 2016-12-19 08:07:15 +11:00
Andrew Tridgell
65c3d0e060 SITL: added ACC2_BIAS 2016-12-19 08:07:14 +11:00
priseborough
7d4a50f483 AP_NavEKF3: Prevent unwanted core switch on startup
Require primary core to be healthy for 10 seconds before starting selection logic
2016-12-19 08:07:14 +11:00
priseborough
cd6fd0ea45 AP_NavEKF3: Improvements to range finder selection logic
Enables the horizontal speed at which we switch from range finder to alternate to be adjusted.
Does not switch from range finder to alternate based on speed when speed estimate is invalid.
2016-12-19 08:07:14 +11:00
Andrew Tridgell
0e14992b34 DataFlash: hide direct EK2/EK3 logging
should call Log_Write_EKF and let it choose the types
2016-12-19 08:07:14 +11:00
Andrew Tridgell
0870e02584 AP_AHRS: fixed example build 2016-12-19 08:07:13 +11:00
Andrew Tridgell
29bc07f410 AP_HAL: setup for building ucavcan on FMUv3 but not FMUv2
save a lot of flash space on FMUv2
2016-12-19 08:07:12 +11:00
Andrew Tridgell
67b97b21db AP_BoardConfig: switched to always using in-tree sensors 2016-12-19 08:07:12 +11:00
Andrew Tridgell
bd0a0510ed AP_HAL: define FMUv3 2016-12-19 08:07:11 +11:00
priseborough
60ebe97e10 AP_InertialSensor: remove unused EKF1 include 2016-12-19 08:07:11 +11:00
priseborough
509709ce9d AP_Motors: remove unused EKF1 include 2016-12-19 08:07:11 +11:00
priseborough
453ced4a38 AP_GPS: remove unused EKF1 include 2016-12-19 08:07:11 +11:00
priseborough
bb29c74e52 AP_NavEKF: remove EKF1 2016-12-19 08:07:11 +11:00
priseborough
809bfc1154 GCS_MAVLink: replace call to EKF1
Return hagl from primary EKF
2016-12-19 08:07:11 +11:00
priseborough
f70cc3cf34 AP_InertialNav: remove EKF1 2016-12-19 08:07:10 +11:00
priseborough
6d086e0c31 AP_Mount: remove EKF1 2016-12-19 08:07:10 +11:00
priseborough
78f89e0663 AP_Beacon: Update parameters for EKF3 testing 2016-12-19 08:07:10 +11:00
priseborough
33a7c682a3 AP_AHRS: Add EKF3 and remove EKF1 2016-12-19 08:07:10 +11:00
Andrew Tridgell
b00ec26957 DataFlash: Add EKF3 and remove EKF1 2016-12-19 08:07:09 +11:00
Andrew Tridgell
75688c8342 AP_OpticalFlow: Add EKF3 and remove EKF1 2016-12-19 08:07:09 +11:00
priseborough
7202acc1b5 AP_NavEKF3: Default EKF3 to off
Will revert this and set EKF2 to off by default after testing is completed on all platform types
2016-12-19 08:07:09 +11:00
priseborough
39969e7d8e AP_NavEKF3: added EKF3 for EKF experimentation
AP_NavEKF3: Implement same maths as PX4/ecl EKF

Replace attitude vector states with quaternions
Remove gyro scale factor states
Add XY accel delta velocity bias estimation
Initial tuning
Add GPS body frame offset compensation

AP_NavEKF3: Fix bugs and consolidate aiding switch logic

Switching in and out of aiding modes was being performed in more than one place and was using two variables.
The reversion out of GPS mode due to prolonged loss of GPS was not working.
This consolidates the logic and ensures that PV_AidingMode is only changed by the setAidingMode function.

AP_NavEKF3: prevent multiple fusion mode changes per filter update

AP_NavEKF3: Update tuning defaults

AP_NavEKF3: Fix bug causing switching in and out of aiding
If the GPS receiver was disconnected and no data received, then then the gpsGoodToAlign check did not get a chance to run and becasue it was previously true the EKF would switch back into aiding.
This prevents this by ensuring that gpsGoodToAlign defaults to false when the check is not being performed.
An additional check has also been dded to ensure that there is GPS data to fuse before we declare ready to use GPS.

AP_NavEKF3: Fix bug preventing planes recovering from bad magnetometers
This bug created a race condition whereby if the EKF had to reset the yaw to the GPS ground course to recover from a bad magnetometer, the new heading could be over-written by the bad magnetic heading when the plane reached the height for the scheduled reset.

AP_NavEKF3: Improve switch-over to backup magnetometer
When switching over to a back up magnetometer, ensure that the earth field estimate are reset. Otherwise mag earth field estimates due to the previous failed mag could cause data from the new mag to be rejected.

AP_NavEKF3: enable automatic use of range finder height

AP_NavEKF3: Fix bug in handling of invalid range data

AP_NavEKF3: Fix height drift on ground using range finder without GPSAP_NavEKF3:

AP_NavEKF3: Handle yaw jumps due to core switches

AP_NavEKF3: Enable simultaneous GPS and optical flow use

AP_NavEKF3: fix console status reporting

AP_NavEKF3: send messages to mavlink instead of console

This allows the GCS to better handle the display of messages to the user.

AP_NavEKF3: replace deprecated function call

AP_NavEKF3: Compensate for sensor body frame offsets

AP_NavEKF3: Fix bug in median filter code

AP_NavEKF3: save some memory in the position offsets in EKF3

We don't need to copy that vector3f for every sample. A uint8_t does the job

AP_NavEKF3: Add fusion of range beacon data

AP_NavEKF3: Bring up to date with EKF2

AP_NavEKF3: Misc range beacon updates

AP_NavEKF3: Add mising accessors

AP_NavEKF3: remove duplicate include

AP_NavEKF3: Prevent NaN's when accessing range beacon debug data

AP_NavEKF3: Update range beacon naming

AP_NavEKF3: updates

AP_NavEKF3: miscellaneous changes

AP_NavEKF3: misc updates

AP_NavEKF3: misc range beacons updates

AP_NavEKF3: add missing rover default param
2016-12-19 08:06:47 +11:00
Andrew Tridgell
ab05472e0e AP_AHRS: added EKF3 for EKF experimentation
Conflicts:
	libraries/AP_AHRS/AP_AHRS_NavEKF.cpp
2016-12-18 10:28:04 +11:00
priseborough
fd8916ef38 DataFlash: fix Baro 3 labels 2016-12-18 10:28:04 +11:00
priseborough
cd669738a5 AP_Beacon: fix SITL param error 2016-12-18 10:28:04 +11:00
priseborough
fe69d9a0ea AP_NavEKF2: remove duplicate include 2016-12-18 10:28:04 +11:00
priseborough
a8f3a374e2 AP_NavEKF2: replace sqrt function calls with sqrtf
Prevents compiler errors and un-wanted use of double precision types
2016-12-18 10:28:04 +11:00
Lucas De Marchi
b0ddf81687 Remove stdbool.h include for C++ sources
This header is not needed in our C++ sources.
2016-12-16 11:38:52 -08:00
Andrew Tridgell
790d186c6c AP_Compass: switched to unified Invensese driver for AK8963 2016-12-16 12:31:34 +11:00
Andrew Tridgell
65b9b86099 AP_InertialSensor: unify MPU6000 and MPU9250 drivers
make a single AP_InertialSensor_Invensense driver. This avoids a lot
of duplication and will save time as new varients are added
2016-12-16 12:31:34 +11:00
murata
0f486aeecb AC_Fence: shorten calculation of return value 2016-12-15 10:42:48 +09:00
Tom Pittenger
3e2098192b AP_Landing: add is_complete() accessor 2016-12-14 04:32:30 -08:00
Tom Pittenger
f09007cbe9 AP_Landing: use a common reset for uniform landing wipe 2016-12-14 04:32:30 -08:00
Tom Pittenger
7daf1a87be AP_Landing: non-functional change - re-organizing header declarations 2016-12-14 04:32:30 -08:00
Tom Pittenger
e061e1734c AP_Landing: abstract land abort request method 2016-12-14 04:32:30 -08:00
Randy Mackay
d41467424b DataFlash: fix to suppressing comment for case fall through
no functional change
eclipse stops complaining if no-break is used in place of fall-through
2016-12-14 13:25:15 +09:00
Randy Mackay
0dd7e78c2b RangeFinder: fix to suppressing comment for case fall through
no functional change
eclipse stops complaining if no-break is used in place of fall-through
2016-12-14 13:22:31 +09:00
Randy Mackay
2da7ea746b MotorsHeli: minor formatting updates 2016-12-14 13:21:59 +09:00
Leonard Hall
a09d4db4fd AP_MotorsMulticopter: fix battery resistance calculation 2016-12-14 11:07:29 +09:00
priseborough
76106889d5 AP_NavEKF2: Prevent unwanted core switch on startup
Require primary core to be healthy for 10 seconds before starting selection logic
2016-12-13 01:18:28 +00:00
Andrew Tridgell
8a1275356d AP_Baro: moved MS5611 reset before prom read
thanks to Jacob and Lucas for pointing this out
2016-12-13 11:10:35 +11:00
murata
b48ea53f60 Revert "AC_Fence: Activate the create flag."
This reverts commit c63a6a2738.
2016-12-09 23:55:29 +00:00
Andrew Tridgell
be9ac273ce AP_Param: apply notify check to AP_ParamV too
thanks to Francisco
2016-12-09 14:36:01 -08:00
Andrew Tridgell
a440ac4c9d AP_Compass: use a set_and_notify for external and IDs
ensure that GCS that connects quickly gets the right value
fixes issue #5364
2016-12-09 14:36:01 -08:00
Andrew Tridgell
eaa68f32e3 AP_Param: avoid a notify if value is already correct 2016-12-09 14:36:01 -08:00
priseborough
69f3c83c20 AP_NavEKF2: Don't use speed switch criteria when speed estimate is invalid
Prevent unwanted switches from range finder to Baro height aiding due to triggering of the speed threshold
2016-12-09 21:17:28 +00:00
priseborough
14a0155f5e AP_NavEKF2: Allow threshold speed for range finder use to be adjusted 2016-12-09 21:17:28 +00:00
Lucas De Marchi
899fce53ff AP_Compass: IST8310: minor fixes and refactors
- Inline code that needs to take and release the lock in init()
    function, just like other drivers
  - Minor changes to coding style and renames to be similar to other
    drivers
2016-12-09 10:08:37 -08:00
Georgii Staroselskii
f061572e13 AP_Compass: add IST8310 support
One needs to specify I2C address and a bus number in AP_Compass.cpp to use it.
2016-12-09 10:08:37 -08:00
murata
c63a6a2738 AC_Fence: Activate the create flag. 2016-12-09 17:25:27 +00:00
Randy Mackay
b296bc1d00 GPS: MAV driver fix for sanity checks of cog, sat count 2016-12-08 15:52:26 +09:00
Randy Mackay
8118222946 GPS: MAV driver fix for GPS_INPUT altitude 2016-12-08 15:52:26 +09:00
Randy Mackay
9e62f12dd7 GPS: MAV driver gets support for HIL_GPS message 2016-12-08 15:52:26 +09:00
Randy Mackay
9fc0bc19e7 AP_Beacon: fix potential out-of-bounds write to beacon_state
uncovered by covarity and wickedshell
2016-12-08 15:39:37 +09:00
Ivan Smirnov
d4d35bdcbd AP_HAL_Linux: Scheduler: added _timer_tick for uartD 2016-12-07 10:25:00 -08:00
murata
25e47cce6b AP_NavEKF2: Changed sqrt method to sqrtf method.
AP_NavEKF2: Changed sqrt method to sqrtf method.
2016-12-07 15:41:41 +00:00
Andrew Tridgell
05d9455f87 Revert "HAL_PX4: Add input parameter check."
This reverts commit 5f41b09fde.

This change is completely incorrect. It is quite common to do SPI
transfers with zero send bytes, and is required for many sensors and
other devices
2016-12-07 12:47:10 +11:00
Jonathan Challinger
6e47bed97d AP_RangeFinder: fix hard fault with LightWareI2C 2016-12-07 07:52:38 +11:00
Pierre Kancir
556993d7f0 AP_Math: Vector2 add == operator for int 2016-12-06 09:31:21 -08:00
Pierre Kancir
6bf1322633 AP_Math: polygon.cpp correct float comparison 2016-12-06 09:31:21 -08:00
Pierre Kancir
385e5badd8 Ap_Compass: LIS3MDL fix order 2016-12-06 09:31:21 -08:00
Pierre Kancir
c49c851a57 Ap_Compass: AK09916 fix order 2016-12-06 09:31:21 -08:00
Pierre Kancir
8ef5067e12 AP_Motors: MotorsHeli_Single utilize an explicit type cast to avoid the loss of a fractional part. 2016-12-06 06:25:15 -08:00
Tom Pittenger
03b5523b43 AP_Landing: abstract out init_start_nav_cnd work to landing lib
This reverts commit 3e89580383 and fixes it
2016-12-06 03:45:17 -08:00
Andrew Tridgell
3e89580383 Revert "AP_Landing: abstract out init_start_nav_cnd work to landing lib"
This reverts commit 8d8775125a.

doesn't build
2016-12-06 17:32:10 +11:00
Tom Pittenger
8d8775125a AP_Landing: abstract out init_start_nav_cnd work to landing lib 2016-12-05 18:43:47 -08:00
Tom Pittenger
2d8c9c5129 AP_Landing: added missing break 2016-12-05 18:43:15 -08:00
Michael du Breuil
f9acca67d3 AP_Mission: Align with spec better
Location is out of spec for NAV_RETURN_TO_LAUNCH

NAV_LOITER_UNLIM couldn't roundtrip the provided loiter radius
2016-12-05 17:31:36 -08:00
Tom Pittenger
84bdf15203 AP_Airspeed: updated comment to match PR 2016-12-05 17:19:57 -08:00
jinchengde@gmail.com
efd0f0b832 modify NavEKF2 for AHRS Test 2016-12-05 17:10:23 -08:00
murata
d619d33374 AP_HAL_PX4: UARTDriver: Delete the condition that does not hold. 2016-12-05 16:53:36 -08:00
Andrew Tridgell
eea7758a63 AP_Baro: added GND_EXT_BUS option
this is needed to enable probing for a MS5611 on external I2C bus. The
MS5611 looks the same as a MS5525 airspeed sensor, so we can't just
auto-probe. Users will need to enable external barometers
2016-12-05 16:51:49 -08:00
Andrew Tridgell
43bac678cd AP_Airspeed: Added MS5525 airspeed driver
also improved averaging in MS4525 driver
2016-12-05 16:51:49 -08:00
Andrew Tridgell
04731dccd6 AP_Airspeed: rename MS4525 driver
ready for new driver types
2016-12-05 16:51:49 -08:00
Andrew Tridgell
e2192d5b4d HAL_PX4: report user bus number not system bus number 2016-12-05 16:51:49 -08:00
Andrew Tridgell
c657ad449b AP_HAL: added get_bus_address()
used to report sensor probing results in drivers
2016-12-05 16:51:49 -08:00
Andrew Tridgell
60c29417f1 AP_HAL: added uint16 access functions 2016-12-05 16:51:49 -08:00
Andrew Tridgell
bc33c19f21 AP_IRLock: fixed build 2016-12-05 16:51:49 -08:00
Andrew Tridgell
8b8837ab72 GCS_MAVLink: fixed build 2016-12-05 16:51:49 -08:00
Andrew Tridgell
bdc41446ae AP_OpticalFlow: fixed build 2016-12-05 16:51:49 -08:00
Andrew Tridgell
14a1f559c7 AP_Airspeed: added ARSPD_TYPE and use standard driver backend methods
this will allow for new sensor types
2016-12-05 16:51:49 -08:00
Tom Pittenger
b614b41d6d AP_TECS: fixed compiler warning
- AP_Landing _landing was declared out-of-order
2016-12-05 16:46:55 -08:00
Tom Pittenger
725a9c40a6 AP_Landing: fixed compiler warnings
- init variable out of order, callbacks were declared first
2016-12-05 16:15:20 -08:00
Pierre Kancir
79a9e8dfad AP_Math: Matrix_alg fix implicite cast from bool to float 2016-12-05 12:39:31 -08:00
Pierre Kancir
f54cf6e097 AP_NavEKF: storeIndex remove second initialisation 2016-12-05 12:39:31 -08:00
Pierre Kancir
de05e6ba29 InertialSensor : MPU9250 utilize an explicit type cast to avoid the loss of a fractional part 2016-12-05 12:39:30 -08:00
Pierre Kancir
13c16e187f InertialSensor: MPU6000 utilize an explicit type cast to avoid the loss of a fractional part 2016-12-05 10:59:45 -08:00
Pierre Kancir
a5161edc97 SITL: remove duplicate 2016-12-05 10:59:45 -08:00
Pierre Kancir
421524951f AC_PosControl: remove unnecessary parentheses 2016-12-05 10:59:45 -08:00
Pierre Kancir
fb7a00799f AP_Math: quaternion fix missing return 2016-12-05 10:33:41 -08:00
Florent Martel
abc2cdb61b AP_FrSky_Telem: fixed sign of vertical velocity (+ve up) 2016-12-04 15:05:16 -08:00
Pierre Kancir
f9c8827809 SITL: Scheduler correct misplaced parenthese && switch to do while loop 2016-12-04 18:28:14 +00:00
murata
86e495f415 AP_Arming: Do not set check results each time. 2016-12-03 20:39:33 +00:00
Francisco Ferreira
202c33491e RangeFinder: remove useless returns and update comment 2016-12-03 17:44:06 +00:00
murata
a99bde9dad RangeFinder: Change type determination from if state to switch state. 2016-12-03 17:33:01 +00:00
mirkix
7e33ba04a9 AP_HAL: Add BBBmini PX4FLOW I2C bus number 2016-12-03 21:07:07 +11:00
Tom Pittenger
608da33d80 AP_Landing: merged GCS text for aborted landing 2016-12-02 17:40:01 -08:00
murata
5f41b09fde HAL_PX4: Add input parameter check. 2016-12-02 17:09:47 -08:00
Tom Pittenger
3a9ad24907 AP_Landing: compute wind_alignment and half of head-wind
Determine how aligned heading_deg is with the wind. Return result
is 1.0 when perfectly aligned heading into wind, -1 when perfectly
aligned with-wind, and zero when perfect cross-wind. There is no
distinction between a left or right cross-wind. Wind speed is ignored
2016-12-02 15:35:28 -08:00
Peter Barker
0e2b3781ae AP_Gripper: a valid() method 2016-12-02 12:52:53 +11:00
Peter Barker
4a1439ca0b AP_Gripper: add grabbed and released method 2016-12-02 12:52:53 +11:00
Peter Barker
20b83861e9 AP_Mission: support for NAV_CMD_PLACE
AP_Mission: check return values of mission fetches
2016-12-02 12:52:50 +11:00
Peter Barker
20b86605fa SITL: gripper closes faster, vary load carried by gripper
If gripper is closed on ground it is considered to be carrying
something
2016-12-02 12:04:05 +11:00
Peter Barker
b751f836bb SITL: attach a string with a mass on the end to servo gripper 2016-12-02 12:04:05 +11:00
Peter Barker
f8918d15b1 SITL: add a hagl method to aircraft 2016-12-02 12:04:05 +11:00
Peter Barker
f1c23dc9be SITL: remove argument to on_ground
This was always the current position
2016-12-02 12:04:05 +11:00
Peter Barker
e24f3f9419 SITL: correct on-ground correction
Using the cached ground_height_difference may mean
you end up at the wrong height if you were near
the edge of an SRTM square and had high horizontal
velocity
2016-12-02 12:04:05 +11:00
Peter Barker
319cfa766b RC_Channel: add method to get current radio out for a function 2016-12-02 12:04:05 +11:00
Andrew Tridgell
23480a92ad HAL_PX4: only include parts needed for build
allow for external USE_FLASH_STORAGE define in build
2016-12-02 09:58:36 +11:00
Andrew Tridgell
6bc0c76d54 HAL_PX4: update for new AP_FlashStorage API
allow flash sector erase while disarmed
2016-12-02 09:49:40 +11:00
Andrew Tridgell
bfd137e36a AP_FlashStorage: added erase_ok callback
this allows for simpler operation when application wants to allow
erase while disarmed.
2016-12-02 09:49:40 +11:00
Andrew Tridgell
0e00c3cf9b AP_FlashStorage: reduced sector size for example
allows it to fit in SRAM on PX4
2016-12-02 09:49:40 +11:00
Andrew Tridgell
a66924422f HAL_PX4: implement optional flash backend for storage
this allows the last two flash sectors to be used as storage for
parameters, waypoints etc.

A change to the bootloader to not erase the last two sectors is needed
2016-12-02 09:49:39 +11:00
Andrew Tridgell
b0832e6c15 HAL_PX4: factor out storage functions
ready for multiple backends
2016-12-02 09:49:39 +11:00
Andrew Tridgell
d4f679f954 HAL_PX4: removed support for old storage files on microSD 2016-12-02 09:49:39 +11:00
Andrew Tridgell
4cfd63c30a HAL_PX4: refactor storage to use bitmask class 2016-12-02 09:49:39 +11:00
Andrew Tridgell
6adad11e2f AP_Common: added simple bitmask class 2016-12-02 09:49:39 +11:00
Andrew Tridgell
ed8f9b444a HAL_PX4: fixed whitespace 2016-12-02 09:49:38 +11:00
Andrew Tridgell
7ba957b946 HAL_SITL: flush stdout on panic 2016-12-02 09:49:38 +11:00
Andrew Tridgell
fc21e0f16f AP_FlashStorage: a flash storage driver
this will allow for a storage backend using flash sectors in a log
structure
2016-12-02 09:49:38 +11:00
Andrew Tridgell
a1bce2b54d AP_Compass: use get_random16() 2016-12-02 09:49:38 +11:00
Andrew Tridgell
a8d10e8c2c AP_Math: added get_random16() 2016-12-02 09:49:38 +11:00
Andrew Tridgell
cd57422eed AP_Baro: set retries high during init of MS5611 on I2C 2016-12-02 09:47:51 +11:00
Andrew Tridgell
4f1f6ec019 AP_Compass: added retries during init for i2c devices
higher in init, lower for run
2016-12-02 09:47:51 +11:00
Andrew Tridgell
28a318145c AP_HAL: move set_retries() up to Device class
we really need set_retries() high during init for nearly all i2c
devices, and as many are written against the generic device class
moving it to the Device class makes this a lot easier. It is a NOP on
SPI.
2016-12-02 09:47:51 +11:00
Georgii Staroselskii
e735a56c82 AP_BattMonitor: add default PM definitions for Navio boards
As it turns out we haven't had default PM defs for power modules
intended to be used with Navio boards.
2016-12-01 05:41:37 -08:00
Przemek Lekston
6d65b351cd AP_Mount: allow computation of gps point target in earth fixed frame 2016-12-01 18:42:48 +09:00
Randy Mackay
fc5f4c20cd AP_NavEKF2: remove redundant check of beacon nullptr
thanks to muramura for spotting this
2016-12-01 14:53:26 +09:00
Randy Mackay
08619a96be AP_Beacon: remove debug and editor settings
thanks to muramura for spotting this
2016-12-01 14:53:16 +09:00
murata
292257eaf2 AP_Beacon: checksum check uses XOR 2016-12-01 13:54:34 +09:00
murata
bcdd836820 AC_AttControl: remove unnecessary check of thr-mix-min
Checks directly above ensure this check can never be true
2016-12-01 13:52:04 +09:00
priseborough
665ba1c009 AP_NavEKF2: Fix bug in reporting of vertical position reset
Fixes a bug that allows the last reported reset time to to wind back and an out of date reset delta to be reported if a switch to a core that has previously been reset occurs.
Allows multiple consumers provided they access on the same frame.
2016-12-01 10:35:38 +09:00
priseborough
7f347e39dd AP_NavEKF2: Fix bug in reporting of horizontal position reset
Fixes a bug that allows the last reported reset time to to wind back and an out of date reset delta to be reported if a switch to a core that has previously been reset occurs.
Allows multiple consumers provided they access on the same frame.
2016-12-01 10:35:38 +09:00
priseborough
656d9bb2c4 AP_NavEKF2: Fix bug in reporting of yaw reset
Fixes a bug that allows the last reported reset time to to wind back and an out of date reset delta to be reported if a switch to a core that has previously been reset occurs.
Allows multiple consumers provided they access on the same frame
2016-12-01 10:35:38 +09:00
Georgii Staroselskii
865ff753f3 AP_Compass: use LSM9DS1 as primary for Navio 2
This compass has been proved to work better on Navio boards. Users also
don't like high offsets (even though, they don't really mean much in
this context) reported by AK8963 in MPU9250 on Navio 2.
2016-11-30 12:04:53 -08:00
Alexey Bulatov
96db31635d AP_Compass: set orientation ROLL_180 for LSM9DS1 on Navio2 2016-11-30 12:04:04 -08:00
Alexey Bulatov
163fa07ac0 AP_Compass: make orientation of LSM9DS1 compass configurable 2016-11-30 12:02:07 -08:00
Randy Mackay
a517db4b5e AP_OpticalFlow: resolve compiler warning 2016-11-30 18:00:15 +09:00
Randy Mackay
dfd58cc57b AP_InertialSensor: fix build warning for MPU9250 2016-11-30 18:00:14 +09:00
Randy Mackay
699279ed1f AP_InertialSensor: fix build warning for MPU6000 2016-11-30 18:00:13 +09:00
Randy Mackay
5009e83b6d AP_Compass: fix build warning for HMC5843 2016-11-30 18:00:12 +09:00
priseborough
431a74e0b4 DataFlash: log range beacon fusion data 2016-11-30 17:56:53 +09:00
priseborough
bbdf3982c6 DataFlash: remove Log_Write_EKF 2016-11-30 17:56:52 +09:00
Randy Mackay
66a9093cd0 AP_NavEKF2: getRangeBeaconDebug returns false on failure to get beacon data 2016-11-30 17:56:51 +09:00
priseborough
0ec8f0932a AP_NavEKF2: Prevent output of NaN's in range beacon debug output
This can happen if this accessor function is called before the EKF states are initialised
2016-11-30 17:56:50 +09:00
Randy Mackay
fbecda7eeb AP_NavEKF2: change order of variable initialisation
No functional change, this modifies the init order to match the declaration order.
2016-11-30 17:56:49 +09:00
Randy Mackay
82854953e7 AP_NavEKF2: minor comment fix 2016-11-30 17:56:48 +09:00
Randy Mackay
14a73e499a AP_NavEKF2: initialise two range beacon structures 2016-11-30 17:56:47 +09:00
priseborough
2ee8250807 AP_NavEKF2: Changes from code review by @muramura 2016-11-30 17:56:46 +09:00
Randy Mackay
1f4606e48a AP_NavEKF2: protect against null beacon 2016-11-30 17:56:45 +09:00
Randy Mackay
51ccfca31c AP_NavEKF2: fix format of statustext for beacon init 2016-11-30 17:56:44 +09:00
priseborough
ef03a85cd3 AP_NavEKF2: add range beacon interface and fusion method 2016-11-30 17:56:43 +09:00
priseborough
b4961971e0 AP_AHRS: add beacon object to ahrs 2016-11-30 17:56:42 +09:00
priseborough
4482743af5 AP_Beacon: Improve simulator testing of beacons 2016-11-30 17:56:41 +09:00
Randy Mackay
1225e18898 AP_Beacon: add sitl testing parameter file 2016-11-30 17:56:40 +09:00
Andrew Tridgell
5b83fa3a77 AP_Beacon: added SITL backend 2016-11-30 17:56:39 +09:00
Randy Mackay
821fc516fb AP_Beacon: library to accept distances from beacons 2016-11-30 17:56:37 +09:00
Randy Mackay
c4aa37525e SerialManager: add beacon to list of protocols 2016-11-30 17:56:35 +09:00
Leonard Hall
8af192ed9d AC_AttControl: allow MOT_THR_MIX_MAX to be 2.0
The parameter description maximum of 0.9 should keep most users from
setting this parameter above 0.9 but there are rare cases for very high powered copters with low hover-throttle values where setting as high as 2.0 improves attitude control
2016-11-30 17:56:34 +09:00
Andrew Tridgell
8468add63e AP_Motors: mark PWM_TYPE as reboot required 2016-11-30 10:53:26 +11:00
Andrew Tridgell
ce5ed66b45 HAL_PX4: auto-scale brushed output with ESC output range 2016-11-30 10:53:26 +11:00
Andrew Tridgell
ce517384e1 AP_Motors: support MODE_PWM_BRUSHED16KHZ 2016-11-30 10:53:26 +11:00
Andrew Tridgell
b3286c3da0 HAL_PX4: support MODE_PWM_BRUSHED16KHZ 2016-11-30 10:53:25 +11:00
Andrew Tridgell
fac8f1db03 AP_HAL: added MODE_PWM_BRUSHED16KHZ 2016-11-30 10:53:25 +11:00
Peter Barker
bc45ab5409 DataFlash: add a heartbeat for the io thread in DataFlash_File 2016-11-29 15:14:09 -08:00
Peter Barker
e11c276b35 DataFlash_File: stop trying to stuff a uint64_t into a uint32_t 2016-11-29 15:14:09 -08:00
Peter Barker
fff2068a5a AP_Arming: add arming check for logging actually started 2016-11-29 15:14:09 -08:00
Peter Barker
5776b3fddb AP_Arming: check CardInserted in AP_Arming 2016-11-29 15:14:09 -08:00
Andrew Tridgell
a2e92c4054 AP_BoardConfig: increase uavcan bus settle time to 2s
needed to ensure zubax mag has time to come up
2016-11-29 12:51:16 +11:00
Peter Barker
2c8a0a9123 DataFlash: rotate files when vehicle is disarmed 2016-11-28 09:42:09 -08:00
Peter Barker
fc79fb4ab4 DataFlash: know about armed state of vehicle 2016-11-28 09:42:09 -08:00
Randy Mackay
bac5deed43 AP_IRLock: health reporting based on successful I2C transfer
This change is required because sync messages are only sent if a target is visible
2016-11-28 12:08:36 +09:00
Andrew Tridgell
28b3de91cf AP_Compass: fixed orientation of internal i2c compass for FMUv1
thanks to Peter for noticing
2016-11-28 13:02:15 +11:00
Andrew Tridgell
40bd3a8861 HAL_PX4: tidy up thread wait code
use the same method for all threads. Makes for tidier top output
2016-11-28 10:28:01 +11:00
Andrew Tridgell
f039a37971 HAL_PX4: set names on all bus threads 2016-11-28 10:18:52 +11:00
Andrew Tridgell
00ccacb2ab AP_HAL: expose device bus number 2016-11-28 10:18:32 +11:00
Andrew Tridgell
f04b186879 HAL_PX4: fixed bug in instantiation of I2C bus threads
we ended up with a thread per device instead of a thread per bus!
2016-11-28 09:53:19 +11:00
Andrew Tridgell
12e0c840e8 HAL_PX4: set thread names for main threads 2016-11-28 09:47:49 +11:00
Andrew Tridgell
c62b64a600 AP_IRLock: improved sync protocol for IRLock I2C driver 2016-11-28 08:39:06 +11:00
Andrew Tridgell
50db4d362d AC_PrecLand: use new in-tree IRLock driver 2016-11-28 08:26:58 +11:00
Andrew Tridgell
c6ea451c56 AP_IRLock: new in-tree IRLock driver on I2C 2016-11-28 08:26:58 +11:00
Andrew Tridgell
22717f23be AP_OpticalFlow: apply yaw for flow in all drivers 2016-11-28 08:26:57 +11:00
Andrew Tridgell
06dfbc3e09 AP_OpticalFlow: added common driver for PX4Flow
used on Linux and NuttX boards
2016-11-28 08:26:57 +11:00
Andrew Tridgell
52715c5d16 AP_OpticalFlow: fixed default pixart flow scaling 2016-11-28 08:26:57 +11:00
Andrew Tridgell
9b93e12bbb AP_OpticalFlow: retry config register write up to 5 times 2016-11-28 08:26:57 +11:00
Andrew Tridgell
ea462d80e6 AP_OpticalFlow: added _applyYaw method to backend
for common handling of yaw correction
2016-11-28 08:26:57 +11:00
Andrew Tridgell
abc42c737c AP_OpticalFlow: added update function for Pixart flow driver 2016-11-28 08:26:57 +11:00
Andrew Tridgell
0be1b1aac2 AP_OpticalFlow: give access to AHRS from all backends 2016-11-28 08:26:56 +11:00
Andrew Tridgell
def6e014cf HAL_SITL: removed old optflow simulation 2016-11-28 08:26:56 +11:00
Andrew Tridgell
42435e700b SITL: expose height above ground to all models 2016-11-28 08:26:56 +11:00
Andrew Tridgell
2e2f8ad8cf AP_OpticalFlow: added SITL flow driver as normal driver
move away from HAL_SITL embedded drivers
2016-11-28 08:26:56 +11:00
Andrew Tridgell
a96ed8c188 AP_HAL: added virtual destructor for Semaphores 2016-11-28 08:26:56 +11:00
Andrew Tridgell
0889b25afa AP_OpticalFlow: initial code for Pixart optical flow chip 2016-11-28 08:26:56 +11:00
Randy Mackay
54a87ad35c AP_Proximity: set minimum boundary distance
AC_Avoidance will not stop if it thinks the vehicle is on or outside the polygon.  Setting a minimum distance ensures the vehicle is always within the polygon.
2016-11-27 15:05:48 +09:00
Randy Mackay
57ae14ab4c AP_Proximity: add get distances, distance_max, distance_min
These are used to send distance-sensor messages to the ground station
2016-11-27 15:05:45 +09:00
Randy Mackay
b46cc623a0 AC_Avoidance: adjust_velocity_polygon accepts body-frame points 2016-11-27 15:05:42 +09:00
Randy Mackay
55d79d9a32 AC_Avoidance: proximity sensor method re-uses polygon fence boundary code 2016-11-27 15:05:41 +09:00
Randy Mackay
cdee68174d AC_Avoidance: rename adjust_velocity_polygon_fence 2016-11-27 15:05:39 +09:00
Randy Mackay
79280036de AC_Avoidance: rename adjust_velocity_circle_fence method 2016-11-27 15:05:38 +09:00
Randy Mackay
40c4e75ae7 AC_Avoidance: remove unnecessary const float arguments 2016-11-27 15:05:36 +09:00
Randy Mackay
6293fa1595 AP_Proximity: add boundary points for object avoidance
This returns a fence which can be used for object avoidance by AC_Avoidance
2016-11-27 15:05:35 +09:00
Randy Mackay
26332251f5 AP_Proximity: add ignore areas
Only SF40c uses these ignore areas for now at least.
It is safe to increase the eeprom locations for the 2nd proximity instance because we only define a single instance.
2016-11-27 15:05:27 +09:00
Randy Mackay
87dea46f5d AP_Proximity: add get_closet_object for use in pre-arm checks 2016-11-27 12:03:06 +09:00
Randy Mackay
a56c9545bd AP_Proximity: SITL driver filles in backend sector data 2016-11-27 12:03:04 +09:00
Randy Mackay
f594a5a7d6 AP_Proximity: move sectors to backend
This prepares for sectors to be re-used by the SITL driver
2016-11-27 12:03:01 +09:00
Andrew Tridgell
f9845c93b1 AP_InertialSensor: keep transfers nicely setup for DMA on stm32
this avoids using stack based bounce buffers which may not support DMA
on stm32
2016-11-27 11:26:10 +11:00
Andrew Tridgell
37a9a78725 HAL_PX4: avoid bounce buffers for SPI when possible 2016-11-27 11:10:18 +11:00
Andrew Tridgell
f3d401abb9 HAL_PX4: fixed FMUv1 build 2016-11-27 07:45:54 +11:00