Commit Graph

3959 Commits

Author SHA1 Message Date
Peter Barker a50b777179 ArduPlane: let RC_Channel indicate AUX_FUNC::ARMDISARM needs no initialisation
All users set this.
2020-01-08 18:36:02 +11:00
Henry Wurzburg 040a1b7fbe Plane:fix typo in ARSPD_FBW_MAX param description 2020-01-02 12:00:52 -07:00
Peter Hall 660c9a8a60 Plane: move from FLAP_IN_CHANNEL to RCx_Option 2020-01-01 08:11:01 +11:00
Gone4Dirt 760909d046 Plane: Prevent FS action overiding VTOL land 2019-12-31 11:42:59 +11:00
Andrew Tridgell 56286d8df3 Plane: update release notes for 4.0.2 2019-12-30 14:44:44 +11:00
Andrew Tridgell 77f0810f01 Plane: removed init_vehicle from separate vehicles
use common call from AP_BoardConfig
2019-12-30 13:02:04 +11:00
Andy Piper eca398e7a2 Plane: create generic vehicle management and move runcam to it 2019-12-30 13:02:04 +11:00
Michael du Breuil 7d8005ef27 Plane: Update flaperons for all control modes
Fixes flaperons not working during takeoff, and is generally slightly
easier to reason about
2019-12-24 16:58:46 +11:00
Andrew Tridgell 6d4f4d7a3b Plane: allow negative VFR_HUD throttle 2019-12-24 15:14:03 +11:00
Peter Barker 1db9201a90 Plane: let GCS base class handle proximity and rangefinder messages 2019-12-24 12:08:54 +11:00
Andrew Tridgell 4774c78a12 Plane: update release notes for 4.0.2beta3 2019-12-23 20:26:43 +11:00
Andrew Tridgell 0e79044285 Plane: fixed range check for RC channel 2019-12-20 10:55:14 +11:00
Andrew Tridgell f3dfd62f32 Plane: fixed FS_GCS_ENABL=2 for hearbeat failsafe 2019-12-19 08:34:00 +11:00
Mark Whitehorn 56b2c697d2 Plane: change tailsitter_input to bitmask
update parameter metadata for Q_TAILSIT_INPUT and Q_FRAME_TYPE
2019-12-18 08:33:29 +11:00
Mark Whitehorn c16f3a2cba Plane: simplify body-frame roll axis swapping and constrain yaw rate max 2019-12-18 08:33:29 +11:00
Mark Whitehorn 14fc6c5446 Plane: add logging for tailsitter gainscaling and clean up tailsitter body-frame roll input handling
fix metadata for tailsitter param GSCMSK
rework roll/yaw scaling for body-frame roll options
add constraints on body-frame roll and yaw inputs
move speed_scaler logging into QTUN message
2019-12-18 08:33:29 +11:00
kd0aij 95da094bfe Plane: update tailsitter speedscaling logic
add tailsitter gain scaling option mask and logging
tailsitter qassist bugfix; thanks, @iampete
apply roll limit in tailsitter bodyframe roll control
add define for future exclusion of tailsitter gainscaling debug code/logging
tailsitter bodyframe roll and qacro input scaling bugfixes:
  respect Q_TAILSIT_RLL_MX and roll/yaw scale parameters in bodyframe roll modes
  fix unintended swap of Q_ACRO_RLL/YAW_RATE params in QACRO mode
don't scale motor tilt

Co-authored-by: IamPete1 <33176108+IamPete1@users.noreply.github.com>
2019-12-18 08:33:29 +11:00
giacomo892 1763be2c03 RC_Channel: added LOITER switch for plane 2019-12-17 16:14:53 +11:00
giacomo892 1ee3118bc4 Plane: added RC option for LOITER mode
Handy to have, and much better than use CIRCLE
2019-12-17 16:14:53 +11:00
Andrew Tridgell e27d1e8754 Plane: update release notes for 4.0.2beta2 2019-12-16 19:03:20 +11:00
Andrew Tridgell 43eb664be6 Plane: updated release notes for 4.0.2beta1 2019-12-16 19:03:18 +11:00
Peter Barker 33a0e55b32 Plane: correct duplicate button instance 2019-12-10 09:29:52 +09:00
Peter Barker 1fdb4b429f Plane: use https:// scheme for ardupilot URLs 2019-12-10 07:53:46 +11:00
Peter Barker a567e8bc94 Copter: use https:// scheme for ardupilot URLs 2019-12-10 07:53:46 +11:00
Peter Barker 3547e74991 Plane: move setting of GPS SYS_STATUS bits up to base class 2019-12-05 13:02:19 +11:00
Randy Mackay b3928d3eee Plane: scripting init sends failure message 2019-12-03 12:48:32 +08:00
Peter Barker 71017cb288 Plane: vehicle parent class now instantiates AHRS 2019-12-02 09:16:22 +11:00
Peter Barker 5447992558 Plane: rename system_status as it won't be called from base class 2019-11-27 14:27:53 +11:00
Marian Soban 0a59fed54f Plane: LTM telemetry support 2019-11-26 12:14:13 +11:00
Peter Barker c93d17b4b2 ArduPlane: use enum-class for SRV_CHANNEL_LIMIT_TRIM and friends 2019-11-26 10:17:17 +11:00
Henry Wurzburg f2d8a42de8 Plane: correct crash_detect param description...no manual mode option bit exists 2019-11-23 17:39:06 -08:00
Andrew Tridgell fba5732292 Plane: updated release notes for 4.0.1 2019-11-22 14:56:56 +11:00
Peter Barker 08e18ccdfe Plane: do not trust fence-channel PWM during RC failsafe 2019-11-19 10:59:02 +11:00
Andrew Tridgell d872ca27ce Plane: added dynamic harmonic notch support 2019-11-19 07:08:01 +08:00
Andrew Tridgell 89c43fa052 Plane: updated release notes for 4.0.1beta1 2019-11-18 21:31:22 +11:00
Andrew Tridgell 36baaeb3a0 Plane: added option to run idle governor in MANUAL mode
useful for quadplane testing
2019-11-17 20:10:54 +11:00
Andrew Tridgell 2b27cd2ce9 Plane: Add EFI Support 2019-11-17 20:10:54 +11:00
Randy Mackay accdf53a5b Plane: init aux function cases in alphabetical order 2019-11-12 18:56:13 +11:00
Peter Barker 87058ef141 Plane: rename parameter to avoid name conflict with lock 2019-11-12 16:33:12 +11:00
Peter Barker 2a22e7c8c5 Plane: adjust for renaming of RangeFinder files 2019-11-12 07:14:37 +08:00
Andrew Tridgell e5bad28f1d Plane: added Q_ASSIST_ALT parameter
this allows for quadplane assistance in fixed wing modes when the
aircraft drops below a given altitude. This could help save an
aircraft that is flying badly in fixed wing mode
2019-11-09 20:17:36 +11:00
Peter Barker 6cd4dfba2c Plane: use enum-class for RangeFinder Status 2019-11-09 08:01:53 +11:00
Peter Barker 0626f1fc2f Plane: stop providing current location to mount 2019-11-05 19:55:45 +11:00
Peter Barker ba90a1a5df Plane: let GCS superclass specify compass and param float capabilitiy 2019-11-05 11:26:23 +11:00
Andrew Tridgell ffaaf09f79 ArduPlane: moved AC_PID dependency to core 2019-11-02 16:31:04 +11:00
Peter Barker 614bb656b7 Plane: AC_AutoTune writes events itself now 2019-11-01 14:47:52 +08:00
Andrew Tridgell 680a89671f Plane: fixed doc path for Q_AUTOTUNE 2019-11-01 09:31:40 +11:00
Leonard Hall 87b49c64f8 Plane: limit ATC_MOT_MIX_MAX in case of a fly away 2019-10-31 12:23:48 +08:00
Andrew Tridgell 80bd038333 Plane: updated release notes for 4.0.0 2019-10-28 16:39:16 +11:00
vierfuffzig 6786bf0016 Plane: fix RCn_OPTION mode initialization 2019-10-27 07:33:45 +11:00
Michael du Breuil ee96ec7f0d Plane: Support new AP_Vehicle::set_mode 2019-10-25 08:48:22 +08:00
Peter Barker 1d99fbebc9 Plane: use ahrs singleton to log ATT, POS and AHRS2 2019-10-24 13:15:46 +11:00
Randy Mackay edb5f05339 Plane: minor comment changes 2019-10-22 07:15:48 +08:00
Henry Wurzburg 871e5f448c ArduPlane: added RC option for new takeoff mode 2019-10-21 08:41:58 +11:00
Andrew Tridgell abd08ac5ca Plane: fixed takeoff alt handling
thanks to Henry for noticing
2019-10-20 09:38:26 +11:00
Mark Whitehorn 1a2abae902 Plane: reduce QTUN log rate to 25Hz 2019-10-20 06:24:46 +11:00
Andrew Tridgell 9d1c6ae46e Plane: update release notes for 4.0.0beta4 2019-10-19 09:11:30 +11:00
Andrew Tridgell 3194059408 Plane: allow TAKEOFF mode on board with no compass 2019-10-17 12:19:43 +11:00
Andrew Tridgell f628524601 Plane: if already flying in TAKEOFF mode then skip takeoff 2019-10-17 12:19:43 +11:00
Andrew Tridgell dc2aaa7d5a Plane: deny reverse thrust in takeoff mode 2019-10-17 12:19:43 +11:00
Andrew Tridgell ff400243e0 Plane: added a new TAKEOFF flight mode
takeoff then circle in direction of takeoff
2019-10-17 12:19:43 +11:00
Henry Wurzburg 3e08e18202 Plane: add QACRO to flight mode list 2019-10-16 13:14:06 +11:00
Andrew Tridgell f821ca4677 Plane: remove AP_ADSB from wscript 2019-10-16 13:13:24 +11:00
Peter Barker 5d405896f8 Plane: move many members up to base class 2019-10-08 11:26:04 +11:00
Peter Barker a252aad39b Plane: become an AP_Vehicle 2019-10-08 11:26:04 +11:00
sas 9405fd6958 Plane: remove unused location argument to control_auto 2019-10-08 10:49:51 +11:00
Peter Barker fa0d0c6176 Plane: remove bogus ARMING_CHECK_NONE 'bitmask value' 2019-10-08 10:31:07 +11:00
Andrew Tridgell 2f936b0d3e Plane: updated release notes for 4.0.0beta3 2019-10-07 21:41:19 +11:00
Michael du Breuil f9580424f6 Plane: Resore old default behaviour for throttle curves
The change in this made QStabilize behave very differently then it had,
which is quite shocking in a test flight.
2019-10-07 21:17:07 +11:00
Andrew Tridgell db4ae9ff24 Plane: check airspeed and active Z controll for hover learning 2019-10-04 14:01:08 +10:00
Peter Barker 177f7bed81 Plane: remove unused configuration options 2019-09-27 11:58:10 -06:00
Peter Barker 3bb1b0845c Plane: stop compiling in AP_Buffer 2019-09-24 09:36:33 +10:00
Michael du Breuil 8bfab6d2f2 Plane: Geofence, speed up the no fence checks if disabled
This just checks if we are going to early out on the fence because it's
disabled. This also saves us 60 bytes of flash space. This technically
is a behaviour change as it was possible to load the fence before while
disabled if there was an RC channel mapped to it. This defers that until
the fence will have an action. The advantage of this though is that it
speeds up the check that's done per loop in a quadplane for stick mixing
2019-09-23 17:31:33 -06:00
Michael du Breuil 562b155f63 Plane: Remove unused geofence enable reason 2019-09-23 17:31:33 -06:00
Michael du Breuil 7d8b114b24 Plane: Reduce size of GeoFenceState
Cuts it from 32 bytes to 28
2019-09-23 17:31:33 -06:00
Michael du Breuil af0dfb6d8b Plane: Remove unneeded state from geofence 2019-09-23 17:31:33 -06:00
Andrew Tridgell 27187ca248 Plane: updated release notes for 4.0.0beta2 2019-09-24 08:46:52 +10:00
Andrew Tridgell c93d73b678 Plane: change master version to 4.1.0dev 2019-09-22 20:20:16 +10:00
Peter Barker 5730808778 Plane: remove stale enum entries for log message types 2019-09-18 15:02:57 +10:00
Andrew Tridgell 5c43b18672 Plane: fixed height_above_ground() for case when rangefinder is below min
this prevents a rangefinder that goes below min distance from causing
the calculations that depend on height above ground to fail
2019-09-17 09:36:26 +10:00
Andrew Tridgell 34b0967d09 Plane: prevent fwd motor from spinning up on ground in quadplane landing
if the rangefinder starts to measure below it's min range then the fwd
motor can spin up.

Thanks to Josh for reporting this!
2019-09-17 09:36:26 +10:00
Peter Barker a761cb62de Plane: remove get_advanced_failsafe override; singleton to be used 2019-09-17 09:13:43 +10:00
Andrew Tridgell 8b92df51db Plane: updated release notes for 4.0.0beta1 2019-09-16 12:59:25 +10:00
Andrew Tridgell 6572700baa Plane: fixed an issue with landing on rising ground
when landing on rising ground we don't want to use the terrain look
fwd correction for the flare calculation as otherwise we will flare
too early (and thus too high)
2019-09-16 12:52:00 +10:00
Andrew Tridgell 929426abf8 Plane: update release notes for 3.9.11 2019-09-15 19:08:16 +10:00
Andrew Tridgell 7751352a86 Plane: implement VTOL landing for AFS termination
this allows for vertical landing as an AFS_TERM_ACTION
2019-09-12 09:59:17 +10:00
Mark Whitehorn 788e7a840c Plane: default angle_boost to disabled for tailsitters 2019-09-12 09:05:42 +10:00
Andrew Tridgell b724608f03 Plane: update release notes for 3.9.11 2019-09-11 12:30:27 +10:00
Michael du Breuil 4f22dff14d Plane: Add an airspeed limit for quadplane takeoffs 2019-09-09 22:06:25 -06:00
Michael du Breuil 77afcf6a1b Plane: Abort takeoffs that take to long to complete 2019-09-09 22:06:25 -06:00
Henry Wurzburg 7178655cbe Plane: fixed landing after VTOL loiters 2019-09-10 08:57:13 +10:00
Michael du Breuil cf58f68e49 Plane: Rearrange header to save flash
Saves 392 bytes of flash on CubeBlack builds without increasing RAM
consumption at all. This also translates to a speed up as some of these
are looked up every loop multiple times.
2019-09-10 06:43:34 +10:00
Peter Barker 948d606694 Plane: remove ineffective DEVO_TELEM_ENABLED 2019-09-04 17:47:33 +10:00
Peter Barker b12f620233 Plane: fix format string warnings 2019-09-02 21:00:59 +10:00
IamPete1 27286b659b Plane: servos: update dspoiler auto trim 2019-09-01 09:00:16 +10:00
Peter Barker 32a71d2d5a Plane: mount uses AP_SerialManager singleton 2019-08-28 06:55:28 +10:00
Andrew Tridgell 296ce5a409 Plane: fixed throttle failsafe for FS_SHORT_ACTN=3
this is a replacement for #12043
many thanks to @Jaaaky for finding this issue
2019-08-26 17:20:24 +10:00
Andrew Tridgell 0ccd2fb273 Plane: update release notes for 3.9.10 2019-08-26 13:38:44 +10:00
Peter Barker 847f85a081 Plane: correct compilation with PARACHUTE==DISABLED 2019-08-23 13:22:44 +10:00
Andrew Tridgell 470a60f828 Plane: reset steering in MANUAL or when not stabilising 2019-08-22 20:10:09 +10:00
Michael du Breuil 0b0d0e2f8e Plane: Remove APM_Config.h 2019-08-21 22:16:49 -06:00
Peter Barker 1b36d64794 Plane: correct compilation with GEOFENCE_ENABLED==DISABLED 2019-08-20 23:03:32 -07:00
Michael du Breuil ea64077f77 Plane: Remove redundant protection 2019-08-20 23:59:06 +01:00
Andrew Tridgell 10770b5c7f Plane: update release notes for 3.9.10beta1 2019-08-18 16:18:43 +10:00
Peter Barker 2768d229ed Plane: stop updating sensor status flags
These are updated as required in the gcs library itself.
2019-08-17 17:45:03 +10:00
Peter Barker 466681a94e Plane: factor out a handle_command_int_do_reposition 2019-08-14 18:30:24 +10:00
Peter Barker cfe4ec4d1f Plane: add nullptr check for mavlink channel 0 2019-08-14 18:25:43 +10:00
Peter Barker 7e5a6f1895 Plane: avoid allocate a GCS_MAVLINK per mavlink channel 2019-08-14 18:25:43 +10:00
Peter Barker 20626a1fe1 Plane: move automatic declination setting into AP_Compass itself 2019-08-13 10:02:13 +10:00
Andrew Tridgell 1b775c96f5 Plane: added rangefinder correction by terrain data
allows for landing approach with terrain changes
2019-08-06 09:36:02 +10:00
Peter Barker b7b67f523d Plane: pass format string through to check_failed 2019-08-05 14:18:05 +10:00
Andrew Tridgell 6f57028c23 Plane: added release notes from 3.9.9 2019-08-04 18:01:51 +10:00
Leonard Hall 124d18228b Plane: Support seperate roll and pitch limits 2019-08-03 12:06:32 +09:00
Peter Barker 05c608e725 Plane: use MAV_FRAME_GLOBAL instead of MAV_FRAME_GLOBAL_INT in send_position_target 2019-07-30 10:55:21 +10:00
Peter Barker 20a20bde65 Plane: accept MAV_FRAME_GLOBAL for set_position and repositioning 2019-07-30 10:55:21 +10:00
Michael du Breuil 2d81ad63f5 Plane: Convert ARMING_CHECK 2019-07-30 10:42:16 +10:00
Michael du Breuil 3e214e1f8b Plane: Add keydump feature 2019-07-30 10:42:16 +10:00
Leonard Hall 34da437266 Plane: support for upgrade to PID object 2019-07-25 17:38:15 +09:00
Leonard Hall 157f786adf Global: rename desired to target in PID info 2019-07-25 17:38:15 +09:00
Michael du Breuil c6f884221e Plane: Fix parameter description on values to not use the delimiter character 2019-07-23 09:29:48 +10:00
Pierre Kancir 33e12a127c ArduPlane: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Michael du Breuil 22598b1a4b Plane: Reduce inerital nav dependence 2019-07-16 12:11:42 +09:00
Peter Barker 7c88eb670c Plane: RangeFinder uses AP_SerialManager singleton 2019-07-16 09:29:48 +10:00
Peter Barker 38e303389b Plane: avoidance no longer takes ahrs in constructor 2019-07-16 09:29:48 +10:00
Peter Barker 37014bdfe1 Plane: split RC_CHANNELS messages onto separate ap_message ids 2019-07-09 13:08:45 +10:00
Peter Barker 769e862807 Plane: stop passing relay and ahrs into camera constructor 2019-07-09 09:32:39 +10:00
Andrew Tridgell ff08de033e Plane: fixed home reset alt bias
this fixes a bug in the set of home alt while disarmed. The set had a
circular dependency which could cause a large bias to build up between
home alt and gps alt due to small fluctuations in barometer data

Thanks to Nick Allen for spotting this
2019-07-07 19:20:32 +10:00
Andrew Tridgell aa18c75689 Plane: decay fw rate integrators when at low airspeed
this prevents large fixed wing control surface integrators from
causing issues when we have wind from behind in hover
2019-07-07 18:16:47 +10:00
Andrew Tridgell ebe2278f5d Plane: reset rate controller integrators if not run for 2s
this prevents a bug where integrator buildup can happen from a
previous flight mode
2019-07-07 18:16:47 +10:00
Peter Barker 1674cb0a85 Plane: EKF logging moved into EKF from logger 2019-07-06 19:05:51 +10:00
Hwurzburg 44f6f7335e Plane: Added Quadplane option for QRTL failsafe action 2019-07-05 11:25:56 +10:00
Peter Barker 3ab266b751 Plane: ServoRelayEvents uses Relay singleton 2019-07-03 23:59:24 -07:00
IamPete1 76663d66e8 Plane: support bicopter tiltrotors 2019-07-02 10:15:17 +10:00
Peter Barker 80c7449145 Plane: add sanity check when fetching GCS_MAVLink instance 2019-06-27 07:54:45 +10:00
Michael du Breuil 39c35814ec Plane: Send a heartbeat on mode change 2019-06-26 12:58:18 -07:00
Peter Barker 3e4366906b Plane: allow GCS MAVLink base class to handle out-of-time for sending messages 2019-06-25 10:29:40 +10:00
Peter Barker 78a1f97caa Plane: remove pointless protocol parameter to setup_uart 2019-06-25 09:47:08 +10:00
Peter Barker a900fa0117 Plane: stop pointlessly passing serial manager around 2019-06-25 09:47:08 +10:00
Michael du Breuil 183640789d Plane: Enable scripting parameters 2019-06-18 00:06:32 -07:00
Peter Barker 53d2a6c1e2 Plane: set os_sw_version to date fw was compiled
Also avoids non-trivial-designator compilation error
2019-06-18 10:54:01 +10:00
Peter Barker 584404a6da Plane: add RC options for changing mode 2019-06-18 10:48:47 +10:00
Michael du Breuil 1d379dd0b3 Plane: Update for AFS interface 2019-06-18 10:02:05 +10:00
Andrew Tridgell 08baabed4a Plane: modify FENCE_AUTOENABLE docs 2019-06-11 06:58:47 +10:00
Andrew Tridgell 5076058459 Plane: added FENCE_AUTOENABLE=3 option
this enables the fence when arming. If the vehicle is outside the
fence or it can't be enabled then arming fails
2019-06-11 06:58:47 +10:00
Peter Barker fb2422e496 Plane: stop setting eas2tas in AirSpeed - it can work it out itself 2019-06-06 12:44:36 +10:00
1iggy2 220176f283 Plane: added octa I frame 2019-06-04 09:49:44 +09:00
Peter Barker 13f7022cec Plane: move Arming functions into AP_Arming file 2019-05-30 16:02:10 +09:00
Peter Barker 8fdc2a1bad Plane: emit throttle armed and throttle disarmed statustexts 2019-05-30 07:37:30 +09:00
Peter Barker 92ce75517c Plane: move check for ARMING_CHECK_NONE back into Plane
Plane allows all prearm and arm checks to be bypassed with
ARMING_CHECK_NONE.  Not all vehicles allow this, so move this bypass
back into Plane.
2019-05-30 07:37:30 +09:00
Peter Barker 400aa53654 Plane: move arming-related functionality into parent classes
Logging moves up
arming via mavlink moves up
arming via switch moves up
2019-05-30 07:37:30 +09:00
Peter Barker 515e950a66 Plane: add missing override keywords in afs 2019-05-15 21:05:20 +10:00
Andrew Tridgell a7c6e9c007 Plane: restore WP num on watchdog reset 2019-05-15 15:33:48 +10:00
Tom Pittenger 08d5e7d4ae Plane: move heartbeat sending to gcs instead of by vehicles 2019-05-14 10:54:45 -06:00
Mark Whitehorn 34a1cf9528 Plane: move callback setup to QuadPlane::setup() 2019-05-08 10:28:42 +10:00
Mark Whitehorn aeaff72e14 Plane: fix acro stabilization check 2019-05-08 08:44:52 +10:00
Mark Whitehorn 4a7ce1b384 Plane: clean up qacro 2019-05-08 08:44:52 +10:00
Peter Hall 0b1d392342 Plane: only save gains if disarmed in autotune 2019-05-07 09:23:50 +10:00
Tom Pittenger 6970a66cad Plane: refactor stick_mixing to library 2019-05-03 13:14:11 -07:00
Andrew Tridgell cd72657c94 Plane: fixed qautotune exit
this was lost in the onion changes
2019-05-02 06:59:12 +10:00
Vinicius Knabben 99ad94ec49 Plane: Added parachute release on critcal sink rate and battery failsafe actions
Signed-off-by: Vinicius Knabben <viniciusknabben@hotmail.com>
2019-04-30 10:04:58 +10:00
IamPete1 02d976f264 plane: reinstate tailsitter roll limit 2019-04-30 09:20:40 +10:00
Mark Whitehorn dd50d435ab Plane: limit bodyframe roll mode to tailsitters 2019-04-30 08:51:24 +10:00
Andrew Tridgell 40245cabf1 Plane: update release notes for 3.9.8 2019-04-26 07:17:48 +10:00
Peter Barker 14a8bf3aec Plane: move responsibility for logging into library 2019-04-23 10:06:17 +10:00
Peter Barker ad16f31e11 Plane: call compass cal routine directly from sched table 2019-04-23 10:06:17 +10:00
Mark Whitehorn f054301ec2 Plane: add QACRO roll/pitch/yaw rate params 2019-04-23 09:46:38 +10:00
Mark Whitehorn 8bcf2439ad Plane: quadplane stabilize manual throttle midpoint and expo
move throttle curve logic to AP_Math

use parameter THROTTLE_EXPO in get_pilot_throttle
2019-04-23 09:46:38 +10:00
Mark Whitehorn b515431008 AP_Math: add expo and throttle_curve functions 2019-04-23 09:46:38 +10:00
IamPete1 fb4b092917 plane: restore thr_min behaviour and update description 2019-04-23 09:39:45 +10:00
Pierre Kancir 65b4ba0539 ArduPlane: use past_interval_finish_line and line_path_proportion from Location 2019-04-23 09:20:43 +10:00
Mark Whitehorn 0a78368590 Plane: avoid arithmetic exception in powf 2019-04-23 09:15:55 +10:00
Mark Whitehorn e8adbba2fc Plane: bodyframe roll log target attitude bugfix 2019-04-23 09:15:55 +10:00
Mark Whitehorn 3e2a253f4a Plane: in QACRO mode, use multicopter attitude target to set nav_roll/pitch 2019-04-23 09:15:55 +10:00
Andrew Tridgell 4a47127c58 Plane: updated release notes for 3.9.8-beta1
# Conflicts:
#	ArduPlane/release-notes.txt
2019-04-22 17:08:03 +10:00
Andrew Tridgell 11e8243bc9 Plane: read RC input in failsafe handler 2019-04-22 17:03:23 +10:00
Andrew Tridgell 340722c3c3 Plane: don't overwrite home on an armed watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell ebbe01bd83 Plane: bypass arming checks for armed watchdog reboot 2019-04-22 16:53:35 +10:00
Andrew Tridgell f7c00c506e Plane: read RC inputs in plane failsafe code 2019-04-22 16:53:35 +10:00
Andrew Tridgell 468ee0bd9b Plane: removed an unnecessary delay on init 2019-04-22 16:53:35 +10:00
Andrew Tridgell 77516329fc Plane: show message for skipping gyro cal 2019-04-22 16:53:35 +10:00
Peter Barker bba902ab94 Plane: move setting of compass sys_status bits up 2019-04-16 09:48:23 +10:00
Peter Barker f09822a400 Plane: adjust for desired spool state and spool state renames 2019-04-14 12:18:03 +09:00
Peter Barker 3a4cbdd41f Plane: remove pointless update_notify shim 2019-04-11 05:31:43 -07:00
Peter Barker a19df642a0 Plane: RangeFinder now handles RFND logging 2019-04-09 22:17:58 +10:00
Michael du Breuil f5511d6119 Plane: Check all EKF cores for health 2019-04-09 10:53:25 +10:00
Peter Barker 3e505f33c3 Plane: use RSSI singleton for logging 2019-04-09 09:33:13 +10:00
Pierre Kancir d8990a002e Plane: update locations_are_same to same_latlon_as 2019-04-08 08:05:05 -07:00
Pierre Kancir 47141562c0 ArduPlane: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Leonard Hall 2daa5ffb9e Plane: replace set_throttle_out_unstabilized 2019-04-08 09:42:21 +09:00
Andrew Tridgell fb061a225a Plane: fixed build with HAL_MINIMIZE_FEATURES enabled
thanks to PompeCukor for noticing
2019-04-08 09:34:15 +10:00
Michael du Breuil 35bd143532 Plane: Update GPS before updating current_loc
Fixes 20ms of extra induced lag on the DCM position estimate
2019-04-05 23:08:24 -07:00
Michael du Breuil ea031d720a Plane: Fix RangeFinder init 2019-04-06 09:15:22 +11:00
Pierre Kancir 3f5999a6ad ArduPlane: move location_update to Location and rename to offset_bearing 2019-04-06 09:10:28 +11:00
Pierre Kancir 58328da5f3 ArduPlane: move get_bearing_cd to Location and rename to get_bearing_to 2019-04-06 09:10:28 +11:00
Michael du Breuil 8802ea10e5 Plane: include FWversion 2019-04-05 20:12:53 +11:00
Michael du Breuil 171f4ac3d3 Plane: Include needed AP_Logger header 2019-04-05 20:12:53 +11:00
Tom Pittenger ade6281923 Plane: use #if ADVANCED_FAILSAFE == ENABLED just like Rover and Copter 2019-04-03 17:46:50 -07:00
Tom Pittenger ca40c7f2d5 Plane: create afs_plane.h to match copter and rover structure 2019-04-03 17:46:50 -07:00
IamPete1 520f5f7894 Plane: add crow flap options paramiter 2019-04-04 09:18:11 +11:00
Patrick José Pereira c484b93314 Plane: Use new RC_Channel AUX_FUNC
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-04-03 09:53:58 -07:00
Tom Pittenger fbe483ccac Plane: gracefully-ish fail set_mode(qmode) 2019-04-02 16:28:52 +11:00
Tom Pittenger b8a44e6e52 Plane: rearranged some set_mode checks 2019-04-02 16:28:52 +11:00
Tom Pittenger 05774a8a5a Plane: fixed some rebase duplicate code. 2019-04-02 16:28:52 +11:00
Tom Pittenger 0270c57530 Plane: massive refactor and creation of Mode class 2019-04-02 16:28:52 +11:00
Peter Barker 29258f6752 Plane: rely on AP_Mission to emit GCS text 2019-04-02 11:07:58 +11:00
Peter Barker 903be58436 Plane: add param conversion from MAG_ENABLE to COMPASS_ENABLED 2019-04-02 10:24:49 +11:00
Peter Barker 73707077b5 Plane: move enabled parameter into compass library 2019-04-02 10:24:49 +11:00
Peter Barker a372428ec5 Plane: use sanitize method rather than location_sanitize function 2019-04-02 10:19:38 +11:00
Peter Barker f004765494 Plane: fix incorrect misleading comment 2019-03-31 18:35:53 -07:00
Andrew Tridgell 954b6ae791 Plane: fixed WAIT_ALTITUDE wiggle
when wiggle value is zero servos should be neutral
2019-03-30 10:49:41 +11:00
Tom Pittenger cd0879cff0 Plane: rename dataflash to logger 2019-03-28 11:19:41 -07:00
Tom Pittenger 7030dbc766 Plane: rename dataflash to logger 2019-03-28 16:40:57 +11:00
Peter Barker bbc38f41eb Plane: use convenience manual_override method 2019-03-27 22:33:47 -07:00
Mark Whitehorn b3f093b877 Plane: remove trig calls from constexpr 2019-03-28 09:41:14 +11:00
Peter Barker 7dafde5783 Plane: stop passing dataflash into handle_radio_status 2019-03-27 10:38:39 +11:00
Mark Whitehorn e0765747e7 Plane: add new tailsitter bodyframe roll option 2019-03-26 14:50:37 +11:00
Peter Barker d0bf257357 Plane: move various sensor status flag updates up 2019-03-26 11:03:21 +11:00
IamPete1 ffc94f19cd Plane: use AHRS view for all vtol modes 2019-03-26 10:41:55 +11:00
Peter Barker 6c5c14381f Plane: move devo telemetry handling to GCS 2019-03-19 14:39:14 +11:00
Peter Barker 1a55f0ffab Plane: FrSky support has moved to GCS 2019-03-19 14:39:14 +11:00
Peter Barker d58a15ca32 Plane: fill Notify flag for flying 2019-03-19 14:39:14 +11:00
Peter Barker f940564f2b Plane: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Mark Whitehorn 825055d736 Plane: add rate-only option for QACRO mode 2019-03-19 10:13:59 +11:00
Mark Whitehorn 6414f0e48e Plane: skip plane assignments in QACRO 2019-03-19 10:13:59 +11:00
Mark Whitehorn abfeee3a3d Plane: fix indentation 2019-03-19 10:13:59 +11:00
Andrew Tridgell 3907466f9d Plane: added TKOFF_TIMEOUT parameter
this allows for a timeout on auto-takeoff. This can be combined with
other takeoff parameters to allow the user to abort a hand-launch
after the motor has started without GCS interaction.

The 4m/s threshold is a bit arbitrary. We could make that a parameter
in the future if it is needed
2019-03-18 14:48:08 +11:00
Andrew Tridgell 2b6210d594 Plane: use WP height for height above ground in vtol landing
this allows for landings above or below the takeoff height without
requiring the use of terrain data. It allows both the use of vfwd
motor for holding against wind, and the correct height for land final
descent rate
2019-03-18 14:47:27 +11:00
Andrew Tridgell b4103d04cc Plane: never use vfwd motor if vtol motors shutdown 2019-03-18 13:38:41 +11:00
Andrew Tridgell 7908ad437e Plane: allow fwd motor to run in VTOL land hor positioning
this fixes an issue with vtol landings below the takeoff point
2019-03-18 13:38:41 +11:00
Peter Barker 0edba9070f Plane: move sending of RPM message up 2019-03-16 10:33:01 +09:00
Peter Barker d489d9a585 Plane: compass init never fails 2019-03-13 13:06:50 +11:00
Peter Barker ca7566fff9 Plane: use enum class for ArmingMethod and ArmingRequired 2019-03-12 19:48:14 +11:00
Peter Barker cbb0bfb809 Plane: is_flying_vtol: if spool mode is shut down we are not flying
The subsequent check for get_throttle passes if you switch from QHOVER
to MANUAL on the ground while armed.  get_throttle returns > 0.01 - but
the motors are shut down so no output occurs.
2019-03-12 10:21:11 +11:00
Peter Barker cf45b54070 Plane: quadplane use prearm checks from Attitude and Position controllers 2019-03-12 10:14:14 +11:00
Mark Whitehorn f7bf10fcfc ArduPlane: add rudder to tailsitter gain scaling 2019-03-12 10:12:23 +11:00
Mark Whitehorn 4a6b97828f ArduPlane: add tailsitter input type TAILSITTER_INPUT_BF_ROLL 2019-03-06 15:48:51 +11:00
Mark Whitehorn 01d6f1d932 ArduPlane: add body-frame yaw mode for tailsitters 2019-03-06 15:48:51 +11:00
IamPete1 872c3df45c Plane: tailsitter pull in copter ouputs from AP_motors 2019-03-06 14:46:39 +11:00
Peter Barker bd444d97dc Plane: move sending of airspeed_autocal into AP_AirSpeed 2019-03-06 11:32:52 +11:00
Mark Whitehorn 6e4a2b97f9 ArduPlane:add subclass for copter tailsitters
cleanup and add tailsit_motmx
add constexpr and motor mask check
add support for tricopter tailsitter
don't call output_motor_mask unless armed
fix whitespace
2019-03-06 07:53:46 +09:00
Peter Barker 94899bd2ed Plane: move sending of send_pid_tuning up 2019-03-05 10:41:56 +11:00
Mark Whitehorn 61aff344d3 ArduPlane: add high-speed Qmode tailsitter gain scaling with support for airspeed sensor 2019-03-05 10:27:42 +11:00
Mark Whitehorn 487ad7a90f Plane: add QACRO mode for quadplanes
use acro_r/p/y_rate params in qacro
port ACRO throttle handling from copter

handle non-tailsitter controls
2019-03-05 10:13:20 +11:00
Peter Barker a451380d61 Plane: avoid int32_t<->float conversions 2019-03-01 12:09:58 +11:00
Dr.-Ing. Amilcar do Carmo Lucas f430fd14f6 Plane: replace location_offset() and get_distance() function calls with Location object member function calls
This allows removing duplicated code
2019-02-28 11:44:09 +11:00
Andrew Tridgell cd1f21b806 Plane: removed some px4 specific code and docs 2019-02-27 20:32:37 +11:00
IamPete1 f24c6785f2 Plane: add E-stop 2019-02-27 08:51:24 +09:00
Andrew Tridgell 136e10a781 Plane: handle VTOL landing with incorrect height
if landing above expected height then run landing detector to allow a
switch from LAND_DESCEND to LAND_FINAL

this prevents the plane sitting on the ground until the battery runs
out
2019-02-26 11:12:58 +11:00
Peter Barker dea75a87fd Plane: AHRS set_orientation renamed to update_orientation 2019-02-26 10:28:09 +11:00
Michael du Breuil b290148ed0 Plane: Don't overwrite the quadplane loiter relax 2019-02-23 11:08:21 +11:00
Andrew Tridgell a278a152fc Plane: fixed throttle nudge
broken by recent radio input changes

Thanks to Michael for noticing!
2019-02-22 18:41:34 +11:00
Michael du Breuil c15983c690 Plane: prevent loss of control when Q_ENABLE is set while flying
Also rename check_throttle_suppression
2019-02-21 21:38:03 -07:00
Andrew Tridgell c290b1f3b5 Plane: fixed servo jitter due to airspeed estimate from throttle
when we have no other airspeed source and we are armed we get airspeed
from throttle. the default setting of k_throttle in the radio code
caused an oscillation of the value used in the airspeed estimate, each
time a RC frame came in.
2019-02-22 14:42:17 +11:00
Michael du Breuil 25a2c77782 Plane: Fix not logging quadplane control, and over logging attitude control 2019-02-22 11:59:26 +11:00
Andrew Tridgell d7abf27ec2 Plane: fixed servo jitter due to airspeed estimate from throttle
when we have no other airspeed source and we are armed we get airspeed
from throttle. the default setting of k_throttle in the radio code
caused an oscillation of the value used in the airspeed estimate, each
time a RC frame came in.
2019-02-22 10:27:36 +11:00
Peter Barker c24759d3df Plane: use abs not fabsf for integers 2019-02-20 19:23:54 +11:00
Peter Barker cdde2b7d64 Plane: Rally no longer takes ahrs in constructor 2019-02-20 18:03:38 +11:00
Michael du Breuil 5134af2298 Plane: Manage quadplane throttle during RC failsafe 2019-02-19 20:41:05 -07:00
Peter Barker 1ab80ddce0 Plane: move update_sensor_flags to GCS_Plane.cpp 2019-02-20 11:57:00 +11:00
Peter Barker 34853fb1bf Plane: move update_sensor_status_flags into GCS subclasses 2019-02-19 14:09:59 +11:00
Peter Barker a3c13fc028 Plane: move sensor flags to be a GCS thing rather than a GCS_MAVLINK thing 2019-02-19 14:09:59 +11:00
Peter Barker 33541dcbf6 Plane: GCS_MAVLink takes care of mavlink capabilities 2019-02-19 13:14:52 +11:00
Peter Barker 5690a0ea4a Plane: move try_send_message of nav_controller_output up 2019-02-19 10:08:00 +11:00
Mark Whitehorn 95b3a5bacd ArduPlane: implement hover throttle learning for quadplanes
disable by default
check quadplane.enable in update_hover_learn
2019-02-16 19:04:13 -08:00
Peter Barker 0858847294 Plane: remove redundant send_ekf_origin 2019-02-15 08:28:45 +11:00
Peter Barker 0c880a4c3e Plane: remove redundant home-setting sanity checks 2019-02-15 08:28:45 +11:00
Peter Barker b6bf8d8368 Plane: make setting of home boolean in preparation for sanity checks 2019-02-15 08:28:45 +11:00
Peter Barker 5a19f447a7 Plane: devo telemetry no long requires singleton classes to be passed in 2019-02-13 19:24:07 +00:00
Peter Barker 4f249db8bc Plane: move responsibility for parachute deployment up 2019-02-13 09:25:27 +09:00
Peter Barker 30671a6743 Plane: move handling of command-int MAV_CMD_DO_SET_HOME up
Plane: eliminate set_home shim around AP_AHRS::set_home
2019-02-13 09:42:26 +11:00
Peter Barker cfb3dfc4e5 Plane: AP_Frsky_Telem uses singletons 2019-02-12 17:53:23 +00:00
Andrew Tridgell 0089e98bb6 Plane: call AHRS resetHeightDatum() on baro reset
this prevents the AMSL estimate from the EKF going off badly if we
disarm at a high altitude
2019-02-12 12:17:02 +11:00
Peter Barker 3bba981a00 Plane: dataflash always emits rally points at startup 2019-02-12 11:48:55 +11:00
Mark Whitehorn b9f3118374 Plane: allow changing Q_TRIM_PITCH in flight
change float comparison to is_equal
2019-02-12 09:42:19 +11:00
Tom Pittenger c422a21f55 Plane: ICE to use ahrs singleton 2019-02-05 15:34:08 +11:00
Peter Barker 6e1dc79b75 Plane: move handling of RC_CHANNELS_OVERRIDE up 2019-02-05 13:59:21 +11:00
Peter Barker b48cb1e367 Plane: move sending of sys_status message up 2019-02-05 11:07:39 +11:00
Michael du Breuil df1632054e Plane: Update throttle mix 2019-02-05 11:05:54 +11:00
Andrew Tridgell 5dbf603450 Plane: separate out slew limit logic for left/right throttles 2019-02-03 05:06:37 -08:00
Andrew Tridgell 28cf9d2f24 Plane: allow rudder at zero throttle
if rudder disarming is disabled
2019-02-03 05:02:07 -08:00
Randy Mackay 4d5e13f1d4 Plane: : integrate AC_WPNav::get_speed rename to get_default_speed 2019-01-31 19:34:32 +09:00
Peter Barker a697d5f6fe Plane: AC_Fence is included for all vehicles 2019-01-31 13:44:29 +09:00
Peter Barker 11dd83e23a Plane: remove rally argument from Write_Rally - use singleton 2019-01-31 09:51:25 +09:00
Peter Barker 68b9e64077 Plane: remove old, unfulfilled method declarations 2019-01-30 09:03:52 +09:00
Tom Pittenger 05bf329d81 Plane: ignore battery failsafe during landing
fixes https://github.com/ArduPilot/ardupilot/issues/10320
2019-01-23 14:16:27 -07:00
Nathan E 4d7fc66657 Update parameters.cpp per magicrub comments 2019-01-23 09:24:18 -07:00
Nathan E 448d19ddbb Update ArduPlane/Parameters.cpp 2019-01-23 09:24:18 -07:00
Mark Whitehorn 5c81a78c9c Plane: tailsitter forward transition bugfix 2019-01-22 12:55:47 +11:00
Peter Barker 40856fef56 Plane: remove vestiges of old PX4_MIXER code 2019-01-19 19:31:03 +11:00
Peter Barker 6fc76a32af GLOBAL: use AP::logger() and strip redundant Log_ from methods 2019-01-18 18:08:20 +11:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
Peter Barker 99a93112b4 Plane: remove PX4-specific code that disables overrides on reboot 2019-01-18 17:32:02 +11:00
Andrew Tridgell bc438676ab Plane: fix tailsitter logged attitude targets 2019-01-18 14:16:55 +11:00
Peter Barker 129762d3af Plane: APM_Control uses DataFlash singleton, stop passing it 2019-01-18 14:14:22 +11:00
Francisco Ferreira d0fa931b09
Plane: add KDECAN to included libraries 2019-01-18 00:57:32 +00:00
Peter Barker 76b31f315a Plane: log_terrain_data no longer takes a DataFlash argument 2019-01-18 11:17:40 +11:00
Peter Barker a35fbb4a11 Plane: Log_Write_SIMSTATE no longer takes dataflash pointer 2019-01-18 11:16:54 +11:00
Peter Barker cb92fba701 Plane: remove PX4 FWVersion info 2019-01-16 11:47:55 +11:00
Peter Barker b258e89a2d Plane: adjust for Location_Class and Location unification 2019-01-16 11:45:29 +11:00
Peter Barker acafb0f3c1 Plane: adjust for location flags being moved out of union 2019-01-16 11:45:29 +11:00
Randy Mackay 2650b1fe93 Plane: desired-ground-idle replaces spin-when-armed 2019-01-15 11:41:44 +09:00
Michael du Breuil 843c92ced5 Plane: Remove some redundant code/state resets 2019-01-15 10:45:50 +11:00
IamPete1 9c0ac5899f Plane: pass rudder diffential thrust to AP_motors 2019-01-15 10:19:19 +11:00
IamPete1 eaed0a2d47 Plane: make rudder differnal thrust global 2019-01-15 10:19:19 +11:00
Andrew Tridgell f35cebcca4 Plane: fixed EKF yaw reset
we need to do the yaw reset before updating the rest of quadplane, or
it is not effective

thanks to Leonard for noticing the bug!
2019-01-14 08:32:17 +11:00
Andrew Tridgell 53a1d98b68 Plane: fixed VTOL takeoff to ignore lat/lon in mission
we should always takeoff vertically
2019-01-11 13:48:45 +11:00
Peter Barker 5c90a2dab2 Plane: Terrain uses rally singleton 2019-01-09 10:14:16 +11:00
Michael du Breuil d6cac4b52a Plane: Add a failure timer for quadplane forward transitions
Falls over to QLAND if we fail to transition
2019-01-08 10:52:12 +11:00
Michael du Breuil 64e152fbc0 Plane: Remove unneeded GCS rally override 2019-01-08 10:39:50 +11:00
Michael du Breuil ae6dc01cd5 Plane: Reset all storage when format version is incorrect 2019-01-08 10:35:37 +11:00
murata 02d692f32e Plane: Delete NuttX version processing 2019-01-08 10:06:20 +11:00
Andrew Tridgell 97e54f6359 Plane: allow mavlink when in sensor error 2019-01-04 19:17:31 +11:00
Michael du Breuil 09f6ec8a00 Plane: Remove unneeded AP_Buffer include 2018-12-31 11:41:43 +09:00
Michael du Breuil e6bc44f471 Plane: Fix cases where quadplane level transition was not applied 2018-12-31 10:36:32 +11:00
Michael du Breuil 69c87c6c4a Plane: Disallow arming if quadplane has been requested but isn't available 2018-12-28 18:09:21 +11:00
IamPete1 9c2db806f3 Plane: add units to Q_VFWD_ALT 2018-12-28 16:15:41 +11:00
Andrew Tridgell 7939f3488b Plane: log PIDs during QAUTOTUNE twitch 2018-12-22 15:10:23 +11:00
Andrew Tridgell 088442880e build: removed makefile build system 2018-12-22 11:06:59 +11:00
Andrew Tridgell 9117dcc54b Plane: don't log QTUN when VTOL not active 2018-12-21 22:17:52 +11:00
Andrew Tridgell d3afc9424a Plane: make QTUN logging match copter logging 2018-12-21 22:17:52 +11:00
Andrew Tridgell 1013eddfce Plane: use AHRS_View for RATE logging 2018-12-21 22:17:52 +11:00
IamPete1 1a98989ac6 Tailsitter: move mixer to AP_motors 2018-12-21 11:19:18 +09:00
Michael du Breuil a78bce32c0 Plane: Allow users to force target airspeed in cruise or fbwb 2018-12-18 22:36:55 -08:00
Peter Barker d133f998c5 Plane: split SIMSTATE, AHRS2 and AHRS3 onto their own ap_message ids 2018-12-19 13:19:23 +11:00
Peter Barker 54022b6b57 Plane: split DISTANCE_SENSOR onto its own ap_message id 2018-12-19 07:24:37 +11:00
Randy Mackay a96c1566ec Plane: fix quadplane pos control param docs 2018-12-18 12:01:07 +00:00
Peter Barker 17f244ce9f Plane: try_send_message caller checks telemetry_delayed 2018-12-18 14:25:56 +11:00
Peter Barker 5137c0ab5f Plane: split SYS_STATUS and POWER_STATUS onto separate ap_messages 2018-12-18 14:05:20 +11:00
Michael du Breuil 47dfafd670 Plane: Ensure that the plane is an appropriate distance out before starting the approach 2018-12-18 10:11:22 +11:00
Michael du Breuil 05484c3987 Plane: Support a different landing airspeed for fw quadplane landings 2018-12-18 10:11:22 +11:00
Michael du Breuil 1a45755ffd Plane: Support a different landing radius for quadplane fw approach 2018-12-18 10:11:22 +11:00
Michael du Breuil f1154a6e7c Plane: Pass the mission command around rather then fetching it 2018-12-18 10:11:22 +11:00
Michael du Breuil 42e67d5849 Plane: Whitespace fixes 2018-12-18 10:11:22 +11:00
Michael du Breuil e8885ee1a5 Plane: Fly a planned abort sequence if available 2018-12-15 09:03:25 +11:00
Nikhil Upadhye d1e93bae83 Plane: adding new mode QAUTOTUNE
copter like autotune support for quadplanes and tailsitter in VTOL mode.

cleanup
2018-12-14 16:33:11 +11:00
Peter Barker 9d323b4b90 Plane: move accept_packet to GCS_MAVLink base class 2018-12-14 12:44:31 +11:00
Peter Barker 56675851b6 Plane: DataFlash uses AP_Mission singleton 2018-12-13 14:45:30 +09:00
Peter Barker 2978da5ecd Plane: GCS_MAVLink now uses Mission singleton 2018-12-13 10:52:52 +09:00
Peter Barker bcf68a9103 Plane: split MSG_SCALED_PRESSURE into three separate messages 2018-12-12 21:36:01 +11:00
Peter Barker a263364959 Plane: GCS_MAVLink uses dataflash singleton 2018-12-11 08:43:47 +09:00
Michael du Breuil f3a843ebf7 Plane: Fix a comma in bitmask that was breaking emitters 2018-12-11 10:24:40 +11:00
Peter Barker 153228bef5 Plane: call GCS update functions at quadcopter main loop rate 2018-12-10 12:52:41 +09:00
Peter Barker 18d4df8d4f Plane: split MSG_RAW_IMU1 into per-IMU ap_messages 2018-12-10 12:52:41 +09:00
Peter Barker 67042d39d1 Plane: send both SYS_STATUS or POWER_STATUS or neither 2018-12-10 12:52:41 +09:00
Peter Barker d1727d26a1 Plane: rename send_extended_status1 to send_sys_status 2018-12-10 12:52:41 +09:00
Peter Barker 7f5c0db949 Plane: adjust for new update entry points into GCS 2018-12-10 12:52:41 +09:00
Peter Barker 1ca67df663 Plane: add parameter stream to list-of-all-streams 2018-12-10 12:52:41 +09:00
Andrew Tridgell fa04c2d094 Plane: prevent jitter on surfaces due to speed scaling
when disarmed the k_throttle output can oscillate due to stage in the
loop we are at, even though actual output is zero. This can cause
jitter in the speed scaling, which causes surface movement

To fix, don't use k_throttle value when disarmed
2018-12-06 17:44:11 +11:00
Randy Mackay 71708ee4ea Plane: quadplane uses set_defaults_from_table 2018-12-06 12:23:41 +09:00
Peter Barker edd4f6d14d Plane: rename MSG_EXTENDED_STATUS2 to MSG_MEMINFO 2018-12-04 18:01:38 +11:00
Peter Barker de479032ba Plane: rename MSG_RAW_IMU2 and MSG_RAW_IMU3 to reflect what they send 2018-12-04 17:45:32 +11:00
Andrew Tridgell 6c7af3830b Plane: apply throttle slew to dual-motor setups
thanks to Alex for noticing this issue
2018-12-04 09:08:31 +11:00
IamPete1 c6e70c0454 Plane: add roll limit for tailsitters
Quadplane: add tailsitter pitch params
2018-12-01 09:40:07 +11:00
Andrew Tridgell b6519c88a5 Plane: fixed a bug in Q_ASSIST_ modes for tiltrotors
when a tilt-rotor drops below Q_ASSIST_SPEED we need to keep it in the
airspeed wait state until it has regained airspeed, otherwise we will
end up with too low throttle
2018-11-30 18:17:42 +11:00
Leonard Hall 0943ace7a9 Plane: Zero Yaw correction during transition
and relax attitude controller when not using lift motors.
2018-11-30 18:16:29 +11:00
Andrew Tridgell c081ce9adb Plane: don't relax attitude controllers for tailsitters
this fixes an issue with testing control movement when disarmed
2018-11-30 13:01:53 +11:00
Peter Barker ba3a369651 Plane: remove update_events scheduler shim 2018-11-27 10:07:13 +11:00
Michael du Breuil 1e220d3d37 Plane: Add support for mode change to QLand as a failsafe 2018-11-24 14:37:04 -08:00
Peter Barker d4e88bc6ba Plane: remove pointless wrappers around RC_Channels functions 2018-11-23 10:56:17 +11:00
Peter Barker 03b71e1123 Plane: remove pointless wrappers around gcs functions 2018-11-23 10:56:17 +11:00
Andrew Tridgell 4d8fbdfcfd Plane: fixed spoiler left rudder order
thanks to @jgilbertfpv for noticing
2018-11-20 20:10:00 +11:00
Andrew Tridgell 1d00d26b9e Plane: added parameters for crow flaps
DSPOILER_CROW_W1 and DSPOILER_CROW_W2 for inner and outer control
surfaces
2018-11-20 10:00:38 +11:00
jgilbertfpv 4d6547c533 Plane: added crow brakes and diff. spoilers
added crow braking via flap channel to differential spoilers and
reversed dspoiler outputs because having the inner elevon go up and
outer go down causes tip stall. now inner goes down, outer goes
up. still could use a percentage adjustment to change how much throw
each surface gets when using flap input.
2018-11-20 10:00:38 +11:00
Andrew Tridgell 987b556299 Plane: disable crash detection if no GPS and no airspeed 2018-11-19 07:32:20 +11:00
Andrew Tridgell b660022b20 Plane: handle long GPS loss in crash detector
fixes issue #9349
2018-11-19 07:32:20 +11:00
DOMINATOR\Eugene 802ae94e2c ArduPlane: move airspeed update to library 2018-11-17 07:52:42 +11:00
Andrew Tridgell 03f1deca9f Plane: support REVERSE_THROTTLE rc option
this provides a more convenient way to setup for reverse throttle
2018-11-16 08:33:35 +11:00
Andrew Tridgell da69bf3391 Plane: added an abstraction for reverse thrust
use have_reverse_thrust() and get_throttle_input()
2018-11-16 08:33:35 +11:00
Peter Barker a5c34f6172 Plane: OpticalFlow takes care of its own logging 2018-11-13 10:40:23 +11:00
Peter Barker e53a009a35 Plane: do not pass ahrs to opticalflow constructor 2018-11-13 10:40:23 +11:00
Peter Barker 12c67ecaab Plane: move sending of optical flow status up to base class 2018-11-13 10:40:23 +11:00
Andrew Tridgell c59b2c156a Plane: fixes for Q_TRIM_PITCH
improved documentation and variable names
2018-11-12 17:05:04 +11:00
IamPete1 5a7bd61e8c Quadplane: add trim params 2018-11-12 17:05:04 +11:00
Andrew Tridgell 85a1f9e40d Plane: added ACCZ pid tuning 2018-11-12 15:36:39 +11:00
Andrew Tridgell 432d786f82 Plane: pass height to landing gear update 2018-11-10 21:24:19 +11:00
Michael du Breuil 8ce0460daf Plane: Remove old parameter conversion 2018-11-10 18:58:54 +11:00
Michael du Breuil 8e906e0ba0 Plane: Add support for a loiter to alt approach to VTOL landing 2018-11-10 18:58:54 +11:00
Andrew Tridgell f89c770c46 Plane: moved LANDING_GEAR to common RC_Channel 2018-11-09 14:35:14 +11:00
Eugene Shamaev 01178a75e9 Plane: added landing gear support 2018-11-09 14:35:14 +11:00
Peter Barker 818bb8d56d Plane: don't pass ahrs to terrain constructor 2018-11-08 20:59:45 +11:00
Peter Barker 4b68ca79dc Plane: stop passing ahrs to Mission constructor 2018-11-08 10:01:16 +09:00
Andrew Tridgell f2b8067023 Plane: pass manual_rc_mask to iocmu mixer 2018-11-07 07:35:45 +11:00
Andrew Tridgell c3d434bc35 Plane: pass mixing gain to iomcu 2018-11-07 07:35:45 +11:00
Andrew Tridgell d5c29fc57e Plane: use IOMCU mixing if available 2018-11-07 07:35:45 +11:00
Michael du Breuil 1c54fa0230 Plane: Remove old battery conversion that conflicts with new monitor 2018-11-06 10:18:39 +09:00
Michael du Breuil d9e02403e1 Plane: Fix battery failsafe parameter conversion 2018-11-06 10:18:39 +09:00
Michael du Breuil 9e1b0de6b7 Plane: Make capability init consistent 2018-11-05 14:04:36 +11:00
Andrew Tridgell 1c162c8b64 Plane: ensure speed scaling covers full aircraft speed range
this is important for very fast or very slow aircraft
2018-11-02 15:30:50 +11:00
Andrew Tridgell 5ce418b4ea Plane: added FLIGHT_OPTIONS bit for disabling pitch up check in takeoff
some takeoff procedures use high pitch angles
2018-10-31 18:53:36 +11:00
Andrew Tridgell a00e06ea13 Plane: added TKOFF_ACCEL_CNT for multi-shake to start
this allows you to setup shake to start with a lower accel threshold,
but with multiple fwd/back movements needed.

This implements https://github.com/ArduPilot/ardupilot/issues/2221
2018-10-31 18:53:36 +11:00
Peter Barker 27b444f4e8 Plane: move handling of gimbal messages up
Plane: move handling of mav_cmd_do_mount_control up

Plane: move handling of deprecated mount messages up

Plane: move handling of command_do_set_roi up

Plane: mount no longer takes ahrs in constructor
2018-10-30 17:19:14 +11:00
Peter Barker 7890fbeaa1 Plane: let AP_Mission handle common camera commands 2018-10-30 15:37:18 +11:00
Peter Barker 1653b34b2b Plane: move servorelayevents mission handling into AP_Mission 2018-10-30 15:37:18 +11:00
Peter Barker dc6a03f5e0 Plane: mission library handles gripper 2018-10-30 15:37:18 +11:00
Peter Barker 3b49e46c36 Plane: AC_Avoid is built on all vehicles 2018-10-30 12:10:42 +11:00
Andrew Tridgell 009786a338 Plane: small update to failsafe documentation 2018-10-18 11:38:07 +11:00
Peter Barker 9e4e17c797 Plane: leave AHRS to log and notify home changes 2018-10-16 10:55:13 +11:00
Peter Barker 4e3e39a3e8 Plane: make libraries get EKF control limits themselves 2018-10-09 10:47:38 +11:00
Michael du Breuil 3aed07a83a Plane: Create a scripting object 2018-10-09 10:08:52 +11:00
Michael du Breuil 02d37d43d2 Plane: Disallow climbs during TRANSITION_AIRSPEED_WAIT 2018-10-02 09:35:47 +10:00
Michael du Breuil b945970914 Plane: Fix FLIGHT_OPTIONS bitmask doc 2018-09-27 17:20:49 +01:00
Michael du Breuil b2ef6b901e Plane: Cope with AC_PosControl renaming 2018-09-20 15:15:45 -07:00
Michael du Breuil b6efc8a20b Plane: reduce some copy pasted code 2018-09-20 13:47:21 -07:00
Andrew Tridgell adf318ce06 Plane: release notes for 3.9.2beta3 2018-09-20 07:17:34 +10:00
Leonard Hall 13c27e0eb8 Plane: Missing Loiter Init on accel 2018-09-19 17:29:55 +09:00
Andrew Tridgell 0e0d847f7f Plane: updated release notes for 3.9.2beta2 2018-09-15 16:11:04 +10:00
Andrew Tridgell 5136b90d27 Plane: do attitude relax after 100ms 2018-09-15 11:00:29 +10:00
Leonard Hall e50414d8b9 Plane: Log VTOL targets in ATT message in VTOL mode 2018-09-15 11:00:29 +10:00
Leonard Hall 7372a7b5f9 QuadPlane: Remove repeat I term reset 2018-09-15 11:00:29 +10:00
Andrew Tridgell ef154cf3fa Plane: fixed relaxing of attitude controller on transition
this fixes an issue found by Leonard where the attitude controller
could have residual control left over from a previous transition when
engaging the VTOL attitude controller
2018-09-15 11:00:29 +10:00
Andrew Tridgell 2215913b02 Plane: added speed scaling reduction for Q modes
when in a Q mode reduce surface movements at low airspeed, in case we
have the wind from behind us. This prevents the control surfaces from
causing instability
2018-09-14 19:28:29 +10:00
Andrew Tridgell 2d3942222b Plane: handle reverse thrust in AFS failsafe
and zero differential thrust
2018-09-13 08:15:02 +10:00
Andrew Tridgell 455f15a157 Plane: handle twin motor planes for AFS failsafe 2018-09-13 08:15:02 +10:00
Andrew Tridgell 6707c8af36 Plane: update release notes for 3.9.2beta1 2018-09-12 16:33:49 +10:00
Andrew Tridgell aa1548e404 Plane: fixed throttle when terminated
thanks to Michael Thomas for reporting this
2018-09-12 14:13:33 +10:00
Randy Mackay d6a102234e Plane: rename rudder_arming to get_rudder_arming_type 2018-09-11 19:34:39 +10:00
Randy Mackay b61b25e5bf Plane: minor format fix to Parmeters.cpp 2018-09-11 19:34:39 +10:00
Randy Mackay 96d494c2e8 Plane: use parent AP_Arming rudder value 2018-09-11 19:34:39 +10:00
Michael du Breuil f150cae75a Plane: Allow center throttle to be trim airspeed in cruise 2018-09-11 09:07:00 +10:00
Michael du Breuil ee96c53844 Plane: Don't go to minimum airspeed when in RC failsafe in cruise/fbwb 2018-09-11 09:07:00 +10:00
Michael du Breuil f9e56f9d12 Plane: Respect frame type on VTOL_TAKEOFF commands
allow missioncommands to fail to start
2018-09-11 06:42:00 +10:00
Peter Barker b574f4c1fc Plane: move support for inverted flight to rc-aux-switch
Functional change here; if someone de-configures the rc aux switch in
flight they will remain inverted
2018-09-07 09:07:40 +10:00
Peter Barker 4ad1869f43 Plane: add arm/disarm on aux switch 2018-09-06 08:26:50 +10:00
Peter Barker 901664ce09 Plane: add support for RCn_OPTION (servorelay,camera)
Closes #7071
Closes #7666
2018-09-05 13:44:07 +10:00
Michael du Breuil 925d76bb8c Plane: Small cleanup to quadplane const (and clarity) 2018-09-04 15:11:41 +10:00
Leonard Hall e11c7c6069 QuadPlane: remove true from init of loiter 2018-09-04 13:37:28 +09:00
Peter Barker 1aa75e4c3e Plane: use camera singleton to get camera rather than callback 2018-08-31 15:48:56 +10:00
Peter Barker 558158c62a Plane: GCS_MAVLink uses compass singleton, stop implementing get_compass 2018-08-31 15:48:56 +10:00
Andrew Tridgell 066c26e445 Plane: updated 3.9.1 release notes 2018-08-31 12:35:59 +10:00
Michael du Breuil 3098744777 Plane: Fix a stale rudder input that was left from rebase 2018-08-28 10:44:17 +10:00
Michael du Breuil 8417bcc7d5 Plane: Add flight options bitmask 2018-08-28 09:40:53 +10:00
Andrew Tridgell d1f419b530 Plane: updated release notes for 3.9.1beta3 2018-08-23 13:30:14 +10:00
Michael du Breuil e4bbcd5ee3 Plane: Don't initilize motors with a trim value 2018-08-23 13:19:08 +10:00
Andrew Tridgell d9b72f6821 Plane: reset rudder input during RC failsafe 2018-08-23 12:55:11 +10:00
Michael du Breuil 9ed5184d98 Plane: Remove unneeded ServoRelayEvent mask set 2018-08-20 21:31:06 -07:00
Michael du Breuil fa1ad09a3b Plane: Remove unneeded rudder set 2018-08-21 08:32:56 +10:00
Andrew Tridgell b11552e945 Plane: update release notes for 3.9.1beta2
# Conflicts:
#	ArduPlane/release-notes.txt
2018-08-17 20:43:02 +10:00
Alexander Malishev 001948d40c Plane: publish navigation info to OSD 2018-08-16 10:26:34 +10:00
Michael du Breuil c8cb5b9e0f Plane: Log target airspeed to NTUN messages 2018-08-09 11:53:05 +10:00
Michael du Breuil 3d923d0572 Plane: Send a quadplane version of NAV_CONTROLLER_OUTPUT 2018-08-07 09:49:01 +10:00
Randy Mackay 903d00c4b2 Plane: remove compass accumulate 2018-08-06 11:05:34 +10:00
Andrew Tridgell 690bbcdaad Plane: release notes for 3.9.0 2018-08-06 10:44:29 +10:00
Andrew Tridgell c964a393c0 Plane: fixed RC_Channels parameter docs 2018-08-04 12:28:38 +10:00
Peter Barker 9ce02bc504 Plane: minimal support for inheritting from RC_Channel 2018-08-01 12:11:30 +09:00
Michael du Breuil eea8267704 Plane: Update notify initilization 2018-08-01 09:22:09 +10:00
Andrew Tridgell 4f2508d89f Plane: updated release notes for 3.9.0beta6 2018-07-30 18:18:53 +10:00
Andrew Tridgell 1d675390ab Plane: make soaring an optional build feature
this disables soaring on px4-v2, saving 5k of flash

This is needed to consider pr #9042, which takes a lot of flash space
2018-07-30 13:09:15 +10:00
Andrew Tridgell 16c7ab81dc Plane: pass rc_speed to motor backend constructors
this sets the right speed as early as possible
2018-07-28 15:25:57 +10:00
Andrew Tridgell a4d3b08d87 Plane: release notes for 3.9.0beta5 2018-07-19 12:42:27 +10:00
IamPete1 20c67019b0 Plane: added Q_TAILSIT_THSCMX
this provides more flexibility in tailsitter throttle scaling
2018-07-19 09:48:25 +10:00
Andrew Tridgell 149a6af48f Plane: releases notes for plane 3.9.0beta4 2018-07-18 20:45:02 +10:00
Andrew Tridgell 07187f7797 Plane: fixed ARMING_REQUIRE=2 for dual-motor planes
many thanks to Marco for finding this bug!
2018-07-18 19:58:02 +10:00
Michael du Breuil f25726fbb1 Plane: Remove unused ADC include 2018-07-17 09:29:50 +10:00
Andrew Tridgell ad55605605 Plane: update version to 3.10.0-dev 2018-07-06 11:01:05 +10:00
Andrew Tridgell db1f1a42d6 Plane: updated 3.9.0beta2 release notes 2018-07-06 10:59:55 +10:00
Peter Barker 94ad85a67d Plane: handle MAV_CMD_ACCELCAL_VEHICLE_POS in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker d077723028 Plane: handle command_int in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker d76e7d210b Plane: handle command_long in GCS base class 2018-07-06 09:43:09 +10:00
Andrew Tridgell 1d91f18177 Plane: fixed version for enums 2018-07-05 11:10:31 +10:00
Andrew Tridgell bd4515947a Plane: updated release notes 2018-07-05 11:10:27 +10:00
Peter Barker 85f339caae Plane: remove annoying ice_update shim 2018-07-04 21:08:47 +01:00
Peter Barker e404562544 Plane: remove vexing button_update shim 2018-07-04 21:08:47 +01:00
Peter Barker c42fb6d797 Plane: remove pointless rangefinder_init shim function 2018-07-04 21:08:47 +01:00
Peter Barker 4502fd21c3 Plane: use compass singleton for logging 2018-07-04 20:11:27 +01:00
Peter Barker 3bfa4c8678 Plane: use singletons in AP_Arming 2018-07-03 13:44:11 +10:00
Peter Barker 320e24af65 Plane: move mavlink reboot code up to base class 2018-07-03 12:12:25 +10:00
Jacob Walser 4eb00ac779 Plane: refactor output_test -> output_test_seq 2018-07-02 11:31:58 -04:00
Lucas De Marchi 1a45aa12f5 AP_Param: warn on last pass only about unknown parameters
Do not warn about unknown parameters on the first pass, i.e. when
AP_Param:load_all() is called. This is because we may still not know
about dynamically loaded parameters. When we call the second (last)
time, we expect to already know all possible parameters, so print a
warning to both console and the debug terminal.
2018-06-28 10:18:19 -07:00
Lucas De Marchi 7f0d5ddf21 AP_Param: stop panic()'ing on unknown parameters
Our track record on keeping parameters up to date with master is not
great and panic()'ing when loading them apparently is not helping
because every and each vehicle has a different file.

On aerofc load_defaults_file() is used in the same way as
load_embedded_param_defaults() is in which the panic() behavior has been
previously removed.

This finishes the removal of the panic param and add warnings to the
debug console when reading the parameters (rather than when counting
them).
2018-06-28 10:18:19 -07:00
Andrew Tridgell bc503cc600 Plane: moved OSD to top level params
this is to give lots of depth for OSD params (which will be very
complex)
2018-06-27 14:55:00 +10:00
Alexander Malishev 75bf6984f5 Plane: added OSD support 2018-06-27 14:55:00 +10:00
Michael du Breuil 1c276e6af7 Plane: Remove unneeded wrapper functions
Also removes unneeded battery failsafe flag clearing
2018-06-27 11:39:35 +10:00
Peter Barker 23919daf11 Plane: use arming check_failed function 2018-06-23 15:33:19 +10:00
Andrew Tridgell d454bc555e Plane: added ESC_TELEMETRY to mavlink streams 2018-06-21 10:48:02 +10:00
Peter Barker f984e5e31d Plane: use magic force arm/disarm definitions 2018-06-20 11:43:38 +10:00
Peter Barker f5e241af01 Plane: option to force arm, bypassing checks 2018-06-20 11:43:38 +10:00
Peter Barker 2b7f9247e8 Plane: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Peter Barker 9824832523 Plane: use AP_RTC
Plane: AP_GPS now sets the system time directly
2018-06-15 08:01:22 +10:00
Michael du Breuil 12da35220c Plane: Simplify radio trimming, improve MAVLink report 2018-06-11 16:29:36 -07:00
Michael du Breuil fae8d1e489 Plane: Log navigation target location
Closes #4358
2018-06-12 09:08:58 +10:00
Peter Barker 2cdcca2841 Plane: move handling of MAV_CMD_DO_GRIPPER up 2018-06-11 19:07:39 +01:00
Andrew Tridgell d8a7618e15 Plane: update use of AC_Loiter controller for quadplane
this changes the way the loiter controller is initialised for QLOITER,
after discussions with Leonard.

The way we were doing it could cause a sudden acceleration demand when
switching into QLOITER.

This also changes the default loiter parameters to reduce the maximum
acceleration that will be applied in QLOITER. Many thanks to Leonard for
the advice
2018-06-11 08:40:58 +09:00
Michael du Breuil 47c0048499 Plane: Remove manual polling of flap input channel 2018-06-05 09:51:09 +10:00
Michael du Breuil a98a8d0789 Plane: Update to support new RC_Overrides conventions 2018-06-05 09:51:09 +10:00
Michael du Breuil 749861f8ad Plane: Only send healthy airspeed reports 2018-06-05 09:27:19 +10:00
Michael du Breuil 44f2a652f3 Plane: Remove software type param 2018-06-05 09:14:12 +10:00
Peter Barker 9437e893e5 Plane: move try_send_message handling of EKF_STATUS_REPORT up 2018-06-01 16:12:45 +01:00
Peter Barker ac729f4614 Plane: lock home when it is set from the GCS 2018-05-29 14:38:45 +10:00
Peter Barker 18c4823427 Plane: return MAV_RESULT_ACCEPTED for setting home to current location 2018-05-29 14:38:45 +10:00
Peter Barker bc9df01d21 Plane: remove sending of statustext for home location 2018-05-29 14:38:45 +10:00
Peter Barker 22306c370b Plane: factor out a Plane::set_home 2018-05-29 14:38:45 +10:00
Peter Barker ad600fff68 Plane: split home-set and home-locked state 2018-05-29 14:38:45 +10:00
Peter Barker 5a087ee7e2 Plane: create persist_streamrates() callback to indicate persistence 2018-05-29 13:08:29 +10:00
Peter Barker 8b4ffb11f5 Plane: move sending of vfr_hud up 2018-05-29 13:00:40 +10:00
Tom Pittenger 4dca1c48f2 Plane: update vehicle max_speed to ADSB library 2018-05-23 14:02:45 -07:00
Peter Barker ef77bea4eb Plane: move sending of simstate up 2018-05-23 18:36:50 +10:00
Peter Barker 2a68eca273 Plane: add type-correctness for stream messages 2018-05-22 11:21:25 +10:00
Peter Barker 2112d76b75 Plane: move try_send_message of servo-output-raw up 2018-05-21 19:08:08 +01:00
Andrew Tridgell ce73918873 Plane: fixed throttle_percentage for twin engine planes
there is no servo output for function 70 - use the scaled value
2018-05-21 14:39:56 +10:00
Andrew Tridgell 805b159fd4 Plane: update release notes for 3.9.0 2018-05-21 14:38:35 +10:00