Andrew Tridgell
8178ab4037
Plane: make mav_type in HEARTBEAT configurable
...
needed for qgc to setup for quadplanes
2017-10-20 15:41:06 +11:00
Andrew Tridgell
0aed5a9a57
Plane: prevent controller windup on ground
...
when on the ground in an auto-throttle mode lik FBWB or CRUISE, we may
have the throttle suppressed. In that case we should not run the
multicopter controller on quadplanes, or it may build up control which
will then apply on takeoff. This is particularly severe for aircraft
that are not level on the ground, such as taildragger quadplanes
Fixes https://discuss.ardupilot.org/t/quadplane-flips-on-takeoff/22095
many thanks to Sriram for reporting
2017-10-20 15:41:04 +11:00
Andrew Tridgell
1a95dcbdd7
Plane: update docs for Q_YAW_RATE_MAX
2017-10-20 15:40:58 +11:00
Michael du Breuil
615f6dfadb
Plane: Don't log PIDL messages
2017-10-17 14:37:11 -07:00
Michael du Breuil
cc55e5a8fa
Plane: Don't log SONR if there are no rangefinders
2017-10-16 10:10:26 -07:00
Andrew Tridgell
f81ec9b1b3
Plane: support simple accelcal
2017-10-10 10:57:38 +11:00
Andrew Tridgell
f5b4d8d99c
Plane: added frame type 11 for FlreFlyY6
2017-10-06 11:36:34 +11:00
Michael du Breuil
52fc2c82af
Plane: Report GPS health
2017-09-27 19:29:32 +01:00
Lucas De Marchi
a2b67ed615
ArduPlane: use static method to construct AP_Landing
2017-09-26 03:01:21 +01:00
Lucas De Marchi
e10c60e492
ArduPlane: use static method to construct controllers
2017-09-26 03:01:21 +01:00
Lucas De Marchi
05c870a4d4
ArduPlane: use static method to construct AP_TECS
2017-09-26 03:01:21 +01:00
Lucas De Marchi
bfd13dfe87
global: use static method to construct AP_AHRS_DCM
2017-09-26 03:01:21 +01:00
Lucas De Marchi
beabae6a98
global: use static method to construct AP_AHRS_NavEKF
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c9fbf7b722
global: use static method to construct AP_NavEKF3
2017-09-26 03:01:21 +01:00
Lucas De Marchi
e2fe36357a
global: use static method to construct AP_NavEKF2
2017-09-26 03:01:21 +01:00
Lucas De Marchi
6781a44046
global: use static method to construct AP_Avoidance_*
2017-09-26 03:01:21 +01:00
Lucas De Marchi
119e82f32e
ArduPlane: add static create method for AP_Avoidance_*
2017-09-26 03:01:21 +01:00
Lucas De Marchi
6d009cdf6e
global: use static method to construct AP_ADSB
2017-09-26 03:01:21 +01:00
Lucas De Marchi
cf6ea9642e
global: use static method to construct AP_Terrain
2017-09-26 03:01:21 +01:00
Lucas De Marchi
31db77e47b
global: use static method to construct AP_Parachute
2017-09-26 03:01:21 +01:00
Lucas De Marchi
eadd650d78
global: use static method to construct AP_RSSI
2017-09-26 03:01:21 +01:00
Lucas De Marchi
b05610870c
global: use static method to construct AP_Rally
2017-09-26 03:01:21 +01:00
Lucas De Marchi
18aa88b329
global: use static method to construct AP_Mount
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c3647f0185
global: use static method to construct AP_Camera
2017-09-26 03:01:21 +01:00
Lucas De Marchi
cc53e7bc4b
global: use static method to construct AP_ServoRelayEvents
2017-09-26 03:01:21 +01:00
Lucas De Marchi
13d7f58036
global: use static method to construct AP_Relay
2017-09-26 03:01:21 +01:00
Lucas De Marchi
9ce6019138
global: use static method to construct AP_Frsky_Telem
2017-09-26 03:01:21 +01:00
Lucas De Marchi
b022c02029
global: use static method to construct AP_BattMonitor
2017-09-26 03:01:21 +01:00
Lucas De Marchi
69b6d95cb2
global: use static method to construct AP_Board_Config{,_CAN}
2017-09-26 03:01:21 +01:00
Lucas De Marchi
a74e700006
global: use static method to construct RCMapper
2017-09-26 03:01:21 +01:00
Lucas De Marchi
72fd2d6f05
global: use static method to construct AP_SerialManager
2017-09-26 03:01:21 +01:00
Lucas De Marchi
fbe0d9761c
global: use static method to construct AP_OpticalFlow
2017-09-26 03:01:21 +01:00
Lucas De Marchi
2d2876a226
ArduPlane: use static method to construct AP_Arming_Plane
2017-09-26 03:01:21 +01:00
Lucas De Marchi
b36a5919f5
global: use static method to construct AP_Mission
...
This also move the initialization to be in the header for those that
weren't already to maintain consistency.
2017-09-26 03:01:21 +01:00
Lucas De Marchi
de5e044b02
global: use static method to construct AP_RPM
2017-09-26 03:01:21 +01:00
Lucas De Marchi
40fd1b346c
global: remove rangefinder from AP_AHRS_NavEKF
...
AP_AHRS_NavEKF doesn't use the rangefinder, it just delegates the
calls to the right estimator.
For libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.cpp the initialization
order has also been modified to match the order on vehicles. It's more
correct since it passes a reference when EKF2/EKF3 are already
constructed, while thos constructors use a pointer. Ideally these
should be moved to an init() method though, or use a get_instance().
2017-09-26 03:01:21 +01:00
Lucas De Marchi
9027a55696
global: use static method to construct RangeFinder
2017-09-26 03:01:21 +01:00
Lucas De Marchi
f5c2ffffb9
global: remove DataFlash from AP_Mount::init()
2017-09-26 03:01:21 +01:00
Lucas De Marchi
53c82b4aaf
global: use static method to construct DataFlash_Class
2017-09-26 03:01:21 +01:00
Lucas De Marchi
62ac0ab8aa
global: use static method to construct AP_Notify
2017-09-26 03:01:21 +01:00
Lucas De Marchi
de680dac5b
global: use static method to construct AP_Scheduler
2017-09-26 03:01:21 +01:00
Lucas De Marchi
8094482f21
global: use static method to construct AP_GPS
2017-09-26 03:01:21 +01:00
Lucas De Marchi
87b30b4552
global: use static method to construct AP_InertialSensor
2017-09-26 03:01:21 +01:00
Lucas De Marchi
c1a957fbf3
global: use static method to construct Compass
2017-09-26 03:01:21 +01:00
Lucas De Marchi
91feec0e14
global: use static method to construct AP_Baro
2017-09-26 03:01:21 +01:00
Lucas De Marchi
96e7ea4d69
ArduPlane: protect version.h from inclusion and use ap_version.h
2017-09-23 21:37:45 -07:00
Lucas De Marchi
36c80daa86
ArduPlane: do not include version.h/ap_version.h
...
The interface provided by each vehicle should be used to get the
version.
2017-09-23 21:37:45 -07:00
Lucas De Marchi
18ff17e22c
ArduPlane: move version to a static member
...
We should never include version.h or ap_version.h headers directly
on a header since this will trigger a complete rebuild of the
codebase when we commit to the repository. The ap_version.h header
is auto-generated containing information from the current commit.
If we include it in a header, every other file that ends up including
that header (directly or indirectly) will need to be rebuilt. No
ccache's cache beats having to do nothing when the header is just
not included.
version.h contains information that is kept on a struct inside
each vehicle. Rather than using the macros from each vehicle,
the getter should be preferred, which returns an AP_FWVersion
referente.
2017-09-23 21:37:45 -07:00
Ferruccio Vicari
85ab3edc5f
Plane: Smoother transition to QLOITER and QLAND
...
Use estimated stopping position
2017-09-21 07:57:38 +10:00
Peter Barker
1a724ded2a
Plane: AP_Arming: sanity-check fs timeout parameters
2017-09-20 09:46:24 -07:00
mirkix
7c6be7c421
Plane: change format of reset alt target message
2017-09-20 20:28:53 +10:00
Randy Mackay
667cdcdfcf
Plane: resolve compiler warning while using send_text
...
non-functional change
2017-09-20 12:14:38 +09:00
Randy Mackay
2073d65975
Plane: command-long DO_SET_HOME check first param is zero
2017-09-20 12:14:38 +09:00
Randy Mackay
640fb91329
Plane: accept DO_SET_HOME within COMMAND_INT
2017-09-20 12:14:38 +09:00
Andrew Tridgell
3d16ca7144
Plane: fixed MANUAL_RCMASK
...
ensure it only applies in MANUAL, and fixed input scaling in px4io
2017-09-19 17:05:56 +10:00
Peter Barker
7e631ba16c
Plane: move handling of SET_GPS_GLOBAL_ORIGIN up
2017-09-19 15:44:23 +09:00
mirkix
b682f3f6d9
Plane: fix parameter units
2017-09-19 11:34:26 +10:00
Randy Mackay
3d7b6ddc40
Plane: support SET_GPS_GLOBAL_ORIGIN message
2017-09-19 10:30:15 +09:00
Peter Barker
1304b86d09
Plane: remove old DO_SET_MODE support
...
We no longer support setting anything except custom-modes
2017-09-19 01:24:11 +01:00
Andrew Tridgell
35c1a732a6
Plane: allow takeoff in guided then fw loiter
...
this allows for quadplane takeoff in GUIDED with Q_GUIDED_MODE=0. The
takeoff will be VTOL, but subsequent guided points will be fixed wing
2017-09-18 10:21:53 +10:00
Tom Pittenger
85b7f1bbb4
Plane: guided takeoff success should return true
2017-09-13 14:46:22 -07:00
Michael du Breuil
4fd13d5205
Plane: Support landing terminations on landing backends that support it
2017-09-13 13:15:08 -07:00
Peter Barker
aee939f891
Plane: move gcs_out_of_time into GCS object
2017-09-12 18:28:07 +01:00
Andrew Tridgell
73d6a05241
Plane: support change alt for GUIDED from qgc
2017-09-11 13:26:48 +10:00
Andrew Tridgell
1c75cd7039
Plane: update release notes for 3.8.2
2017-09-11 09:57:28 +10:00
Andrew Tridgell
11b9805dce
Plane: added MANUAL_CONTROL support
...
allows for joystick with QGC
2017-09-11 07:55:48 +10:00
Andrew Tridgell
37220e1568
Plane: removed unused prototypes
2017-09-10 17:15:18 +10:00
David Ingraham
750212eb8f
Plane: Remove deprecated control surface mixing functions
...
This commit removes the deprecated functions used for calculating elevon and vtail mixes. This code is currently unrechable.
The functions that called these were removed in PR #6546 .
2017-09-10 17:14:14 +10:00
Andrew Tridgell
d61705ee51
Plane: added release notes for plane 3.8.2beta1
2017-09-09 08:32:14 +10:00
Andrew Tridgell
600a5c44d2
Plane: allow changing of target altitude in GUIDED
2017-09-09 08:14:09 +10:00
Andrew Tridgell
bc17c26dbf
Plane: limit pitch in transition to QLOITER and QLAND
...
when switching to QLOITER or QLAND when in forward flight, limit the
maximum pitch to prevent a sudden decelleration
2017-09-09 08:14:09 +10:00
Andrew Tridgell
b6809655d4
Plane: smooth the transition to LAND_FINAL in quadplanes
...
this makes for a much smoother change to LAND_FINAL, without a jerk as
it changes vertical speed
2017-09-09 08:14:09 +10:00
Andrew Tridgell
8411ac5c57
Plane: fixed a problem with descent rate in landings for quadplanes
...
use xy controller instead of xyz controller, which prevents calling z
controller twice, which led to poor height control
2017-09-09 08:14:09 +10:00
Andrew Tridgell
baee71a5b4
Plane: added GUIDED takeoff for quadplanes
...
this allows takeoff in GUIDED mode in the same way as copters
2017-09-09 08:14:09 +10:00
Michael du Breuil
1f5743e900
Plane: Report the primary magnetometer health rather then the first
2017-09-08 10:27:17 +10:00
Andrew Tridgell
a88e663191
Plane: adjust target altitude slowly in QRTL mode
...
this fixes a sudden throttle drop when starting the descent in QRTL mode
thanks to Marco for finding this issue
2017-09-07 07:22:13 +10:00
Andrew Tridgell
87e52a9f0f
Plane: prepare for 3.8.1 release
2017-09-03 19:31:30 +10:00
Peter Barker
0c7c2a41c4
Plane: handle param_request_list in GCS_MAVLINK base class
2017-08-30 15:54:47 +01:00
Peter Barker
dd4bffb4a2
Plane: handle param_set in GCS_MAVLINK base class
2017-08-30 15:54:47 +01:00
Peter Barker
0db1711b1f
Plane: move send_autopilot_request calls up to GCS base class
2017-08-30 15:54:46 +01:00
Peter Barker
c15c1b84a4
Plane: add constant structure holding firmware version
2017-08-30 15:54:46 +01:00
Peter Barker
0708130b5e
Plane: correct bad case fallthrough
2017-08-30 15:54:46 +01:00
Andrew Tridgell
6bfed07eae
Plane: updated USE_REV_THRUST docs
2017-08-30 08:46:53 +10:00
Michael du Breuil
8630037fd7
Plane: Parameterize the home altitude reset conditions
2017-08-29 13:09:46 -07:00
Andrew Tridgell
d541ac509f
Plane: removed TRIM_RC_AT_START parameter
...
this option caused a lot more problems than it solved, and is buggy
2017-08-29 07:35:49 +10:00
Andrew Tridgell
1a207c919b
Plane: fixed bug in TRIM_AUTO
...
fixed trim for differential spoilers
2017-08-29 07:35:49 +10:00
Andrew Tridgell
4124d371c9
Plane: fixed minacc and delay for launch
...
See
https://discuss.ardupilot.org/t/tkoff-thr-minacc-and-tkoff-thr-delay-doesnt-work-together/19928
2017-08-29 07:35:04 +10:00
Peter Barker
2861c1d06a
Plane: add ArduSub to list of SYSID_SW_TYPE
2017-08-24 19:50:38 +09:00
Peter Barker
212174bc0e
Plane: remove unused defines
2017-08-24 19:48:17 +09:00
Lucas De Marchi
44ffb67837
ArduPlane: use FALLTHROUGH define
...
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Randy Mackay
c80a83322a
Plane: integrate simpler Log_Write_EKF
2017-08-23 11:19:14 +09:00
Peter Barker
8272fb8fa2
Plane: remove unused repeating events defines
2017-08-22 09:58:12 -07:00
Peter Barker
9732b19f04
Plane: move serial_control case to base class
2017-08-17 12:42:31 +01:00
Peter Barker
4321abd477
Plane: move play_tune and led_control handling to base class
2017-08-17 12:27:10 +01:00
Peter Barker
8eeae45300
Plane: use GCS_MAVLINK subclasses to handle set_mode
2017-08-16 11:58:10 +10:00
Michael du Breuil
833ec1336e
Plane: Expose the AFS instance to MAVLink
2017-08-15 15:14:56 +01:00
Peter Barker
1a665280e9
Plane: remove CLI
2017-08-14 10:23:50 +09:00
Peter Barker
c6b9c84d1f
Copter: remove CLI
2017-08-14 10:23:50 +09:00
Peter Barker
d33cd801a1
Plane: send gps messages as separate queued messages
2017-08-09 16:18:22 +01:00
Peter Barker
c3e86840b2
Plane: move sending of gps_raw up
2017-08-09 16:18:22 +01:00
Peter Barker
933cd7a44c
Plane: move sending of system_time up
2017-08-09 16:18:22 +01:00
Peter Barker
4aee416c1d
Plane: move sending of camera_feedback up
2017-08-09 16:18:22 +01:00
Peter Barker
9eb96886e5
Plane: move sending of meminfo up
2017-08-09 16:18:22 +01:00
Peter Barker
a9c866f574
Plane: use new retry_deferred method
2017-08-05 23:14:36 +01:00
Andrew Tridgell
3802e7bc3b
Plane: mark version as 3.8.1-dev
2017-08-05 17:19:32 +10:00
Andrew Tridgell
6e84210d1b
Plane: prepare for plane 3.8.0 release
2017-08-05 17:19:32 +10:00
Peter Barker
4cb94b80ee
Plane: move try_send_message queued_param_send up
2017-08-03 14:34:33 +01:00
Peter Barker
089f6f4650
Plane: move try_send_message send_hwstatus up
2017-08-03 14:33:37 +01:00
Peter Barker
fee9e83881
Plane: move try_send_message mission handling up
2017-08-03 14:24:47 +01:00
Peter Barker
a740c10dfe
Plane: move try_send_message compass message handling up
2017-08-03 14:24:46 +01:00
Peter Barker
50cbbc324b
Plane: base SYS_STATUS load average on variable loop rate
2017-08-01 19:39:27 +01:00
Andrew Tridgell
9b16836da5
Plane: cope better with more RC trim/min/max values
...
when min > trim we need to do RC scaling via rc_config. This loses the
ability to go beyond RC limits, but that can be coped with using
MANUAL_RCMASK
2017-08-01 08:25:32 +10:00
Andrew Tridgell
99df31f6ec
Plane: fixes from review
...
thanks Francisco
2017-08-01 08:25:32 +10:00
Andrew Tridgell
ea1a4bc176
Plane: improve px4_mixer handling of servo trim/min/max
2017-08-01 08:25:32 +10:00
Andrew Tridgell
cff692ca48
Plane: implement MANUAL_RCMASK
...
this replaces the functionality of the old "with input"
aileron/elevator functions, but in a much more flexible way. It means
that people who want to fly in MANAUL mode will have the ability to
have full control of trims and mixing using transmitter mixers if they
need that functionality
2017-08-01 08:25:32 +10:00
Andrew Tridgell
fedd2c558c
Plane: added AETR log message
...
this makes debugging mixers much easier
2017-08-01 08:25:32 +10:00
Andrew Tridgell
5d91e29cea
Plane: fixed px4_mixer for new function based mixing
...
this fixes the OVERRIDE_CHAN functionality to work correctly with the
new function based mixing code
It isn't a perfect match for ArduPilot mixing, but it is very close
for the key control surfaces, including mixed surfaces
2017-08-01 08:25:32 +10:00
Andrew Tridgell
0266168e69
Plane: removed old elevon and vtail mixers
...
now only use the function based mixing, and auto-convert on startup
2017-08-01 08:25:32 +10:00
Andrew Tridgell
178e7eca54
Plane: always setup target airspeed
...
this sets up a target airspeed even when flying without an airspeed
sensor. This is needed for quadplanes without airspeed sensors where
we use synthetic airspeed during the transition in TECS
2017-07-31 09:55:44 -07:00
Andrew Tridgell
909f109b3f
Plane: don't start a transition while disarmed
...
this can caused flooding of the GCS console while disarmed in FBWA
mode
2017-07-30 12:39:36 -07:00
Peter Barker
1cb6962f84
Plane: move common mavlink camera handling up
2017-07-28 14:32:58 +01:00
Peter Barker
2fb46a67dd
Plane: camera is responsible for taking distance-based-images and logging
2017-07-28 14:27:53 +01:00
Peter Barker
fbcd072d98
Plane: move gps inject handling up to GCS_MAVLINK
2017-07-27 12:03:25 +01:00
Patrick José Pereira
60834e9af0
Plane: Allow a second activation of parachute
...
The hardware can fail in the first activation,
this patch allow a second chance to active the parachute successfully.
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2017-07-26 17:51:34 +01:00
Peter Barker
87af817893
Plane: handle common GPS messages in base GCS_MAVLINK class
2017-07-25 14:00:45 +01:00
Peter Barker
fa39f315c6
Plane: move starting of new logs into DataFlash
2017-07-19 16:37:28 +01:00
Peter Barker
ea892d278f
Plane: remove MSG_STATUSTEXT entirely
2017-07-18 16:12:59 +01:00
Michael du Breuil
f87a69dcf2
Plane: Throttle based landing aborts should ask the landing library
...
Throttle based aborts should be requesting a go around from AP_Landing.
This was missed in the initial port.
2017-07-17 08:43:50 -07:00
Peter Barker
7f0cb82797
Plane: move handling of PREFLIGHT_SET_SENSOR_OFFSETS up
2017-07-17 14:17:19 +01:00
Peter Barker
6047026b11
Plane: move handling of MAG_CAL command longs up
2017-07-17 14:17:19 +01:00
Peter Barker
2b6752e0b4
Plane: move MAV_CMD_START_RX_PAIR handling to base class
2017-07-17 14:17:19 +01:00
Peter Barker
7042d3e9c9
Global: all vehicles get AP_Relay and AP_ServoRelayEvent libraries
2017-07-17 00:06:31 +01:00
Peter Barker
36eab56178
Plane: move mavlink support for servo/relay up
2017-07-16 23:56:00 +01:00
Peter Barker
3af52d9db3
Plane: add common handling of mavlink command messages
2017-07-16 23:56:00 +01:00
Michael du Breuil
b8e6ad7476
Plane: Document loop max time as being in microseconds
2017-07-15 17:27:04 +09:00
Peter Barker
983686745e
Plane: move rally-point handling up
2017-07-14 01:28:05 +01:00
Peter Barker
a250f47f13
Plane: remove unneeded telemetry_delayed parameter
2017-07-12 17:01:36 +01:00
Peter Barker
c9c4b31e99
Plane: move handling of incoming statutext messages up
2017-07-12 16:52:24 +01:00
Peter Barker
c058fba5ac
Plane: eliminate GCS_MAVLINK::send_statustext_all
2017-07-11 23:53:53 +01:00
Peter Barker
592729733e
Copter: eliminate GCS_MAVLINK::send_statustext_all
2017-07-11 23:53:53 +01:00
Peter Barker
1be52495f1
Plane: eliminate global static GCS_MAVLINK::send_home_all
2017-07-11 23:48:39 +01:00
Peter Barker
d850feb75f
Plane: move common mission handling up to GCS_MAVLINK
2017-07-11 23:45:17 +01:00
Peter Barker
250f315678
Plane: eliminate gcs_send_mission_item_reached wrapper
2017-07-11 23:45:16 +01:00
Peter Barker
3b0a7703c4
Plane: eliminate gcs_send_message wrapper
2017-07-11 23:45:16 +01:00
Peter Barker
5a8f01c19c
Plane: use send_text method on the GCS singleton
2017-07-09 17:17:29 -04:00
Peter Barker
685706952c
ArduPlane: use Notify singleton for sending statustext
2017-07-09 17:17:29 -04:00
Peter Barker
5b3b61a2e4
Plane: move GCS functions up to superclass GCS
2017-07-07 16:18:37 +01:00
Andrew Tridgell
1d626db3b1
Plane: use scaled outputs for AFS failsafe
...
we need to use scaled outputs so that derived outputs (such as elevons
and vtail) have a valid input to use
2017-07-04 07:59:28 +10:00
Peter Barker
923b201025
Plane: send servos outputs after flaperon update
2017-07-04 07:59:28 +10:00
Peter Barker
38921c4f1a
Plane: correct AFS terminate for rcin/servos split
2017-07-04 07:59:28 +10:00