Zach Flathers
6177cbbfe2
Plane: Add is_landing/is_taking_off scripting support
2023-06-26 06:54:56 -07:00
Iampete1
2f4b617464
Plane: remove SYS_NUM_RESETS, replaced by STAT_BOOTCNT
2023-06-20 11:10:36 +10:00
Peter Barker
9d3ebf0d54
ArduPlane: add option to disable relay and servorelay libraries
2023-06-20 09:36:39 +10:00
bugobliterator
f3159eeb58
ArduPlane: move sysid_my_gcs to be public
2023-06-17 14:49:22 +10:00
Paul Riseborough
c92f71842b
ArduPlane: Enable ground speed undershoot correction without GPS
...
The code had a bug where if GPS fix was lost, the demanded airspeed would be set to the measured or estimated airspeed causing unpredictable variations in the demanded airspeed.
This patch prevents the minimum ground speed protection speed up from running if the ground speed undershoot cannot be calculated.
This patch extends the range of conditions over which the minimum ground speed functionality can be used by enabling the ground speed undershoot to be calculated when the navigation system is able to estimate velocity.
2023-06-15 08:59:02 +10:00
Andrew Tridgell
a80e0fe11a
Plane: release notes for 4.4.0-beta2
2023-06-08 18:48:10 +10:00
Andrew Tridgell
425603b883
Plane: final release notes for 4.3.7
2023-05-31 11:35:26 +10:00
Andrew Tridgell
1ecd943769
Plane: fixed AP_ICEngine constructor call
...
now uses singleton
2023-05-30 07:29:55 +10:00
Andrew Tridgell
890c0844d0
Plane: release notes for 4.3.7-beta1
2023-05-24 20:05:25 +10:00
Iampete1
2254252aff
Plane: move mode manual reset into run function removing manual early return
2023-05-24 18:19:53 +10:00
Iampete1
0d6d16d4e4
Plane: Quadplane: move modes fully to run function
2023-05-23 09:52:55 +10:00
Henry Wurzburg
641b086c0f
Plane: Make mode takeoff entry climb to TKOFF_ALT before loitering
2023-05-20 08:52:47 +10:00
Paul Riseborough
52743787b2
Plane: Fix bug that can cause early exit from loiter to alt and time wp's
...
The check for the aircraft being lined up for a tangent exit has an early breakout condition if the next waypoint is too close to the loiter circle which can prevent the required ground course to waypoint ever being achieved. This check was using the WP_LOITER_RAD parameter value, not the actual radius being used which can be set differently by the mission plan. If a large value for WP_LOITER_RAD was set and being over-written by the mission plan with a smaller value compatible with the distance to the next waypoint, the aircraft would still exit early.
2023-05-18 02:35:47 -07:00
Andrew Tridgell
6870a15280
Plane: implement AP_PLANE_BLACKBOX_LOGGING
...
this allows for auto-arming of plane when we reach a specified 3D GPS
speed. Used for blackbox logging of F3A maneuvers
2023-05-18 12:59:09 +10:00
Peter Barker
59bc070555
ArduPlane: move call of notify.update up to AP_Vehicle
2023-05-17 18:41:15 +10:00
Iampete1
a20841e166
Plane: correct AETR log description ranges
2023-05-10 17:28:49 +10:00
Iampete1
4ca071045c
Plane: move defualt attitude control to base class
2023-05-02 09:29:40 +10:00
Iampete1
6111e9d9db
Plane: move Stabilize functions into mode
2023-05-02 09:29:40 +10:00
Iampete1
bb80881c10
Plane: don't trigger RC failsafe until RC has been received for the first time
2023-05-02 09:11:18 +10:00
Michael du Breuil
24c5fe54df
Plane: Support a long failsafe that goes straight to auto
...
This is very useful with an aircraft that is expected to be autonomously
operating in auto from takeoff to landing. It is convient to have a GCS
connected or RC, but the loss of either isn't considered a reason to
terminate the mission.
2023-04-28 09:37:12 +10:00
Randy Mackay
238d3354cc
Plane: version to 4.5.0-dev
2023-04-26 17:45:52 +10:00
Henry Wurzburg
b4c79c9105
Plane:add FlightOptions helper
2023-04-26 17:35:25 +10:00
Henry Wurzburg
c6a822abe1
Plane: fix error in Qplane wait for rudder neutral
2023-04-25 10:27:21 +10:00
Iampete1
74e4466cb4
Plane: use dedicated quadplane function for stick mixing enable
2023-04-25 10:06:50 +10:00
Henry Wurzburg
1415418d6e
Plane:Takeoff on rudder arm only after return to neutral
2023-04-25 09:28:45 +10:00
Mirko Denecke
eb6c5aa7d3
ArduPlane: remove unused update_transition() definition
2023-04-25 09:10:11 +10:00
Andrew Tridgell
e8b740df51
Plane: release notes for 4.4.0beta1
2023-04-21 09:52:55 +10:00
Peter Barker
068443718e
GCS_MAVLink: deprecate use of MISSION_SET_CURRENT message
...
The mavlink command MAV_CMD_DO_SET_MISSION_CURRENT has been in place since January 2019 and is superior to this.
2023-04-18 10:24:26 +10:00
Iampete1
5ec479579f
Plane: move guided roll, pitch and throttle overrides upto guided mode
2023-04-18 09:36:06 +10:00
Iampete1
5f56a603a8
Plane: Quadplane: use new motors thrust linearization, don't send air density ratio
2023-04-18 09:32:22 +10:00
Peter Barker
57d3ebf123
ArduPlane: make Plane use more of RC_Channel library for mode switching
2023-04-18 09:19:20 +10:00
Tom Pittenger
8a530ee0a6
Tools: move AP_KDECAN build to AP_Vehicle
2023-04-17 11:52:52 +10:00
Peter Barker
43c6bb3864
ArduPlane: AP_Arming ensures mission items present when in auto mode
...
Co-authored-by: Henry Wurzburg <hwurzburg@yahoo.com>
2023-04-14 07:49:54 +10:00
Peter Barker
98e2782851
Plane: correct compilation when AP_Rally disabled
2023-04-10 16:37:42 -07:00
Henry Wurzburg
c86c89f05c
ArduPlane: move estop pre-arm to AP_Arming and add exception
2023-04-11 09:24:06 +10:00
Henry Wurzburg
21d7a8102e
Plane:allow airbrakes to be used
2023-04-04 09:41:53 +10:00
Nick Exton
674d7facde
Plane: Use Location::same_loc_as() in QuadPlane::waypoint_controller()
2023-04-04 09:40:45 +10:00
Nick Exton
6a2bfeb3dd
Plane: Use new Location::same_loc_as() function
2023-04-04 09:40:45 +10:00
Andrew Tridgell
3d3cd435c2
Plane: release notes for 4.3.5
2023-03-26 16:45:38 +11:00
Andrew Tridgell
467cb75e95
Plane: release notes for 4.3.5beta1
2023-03-24 13:42:11 +11:00
bugobliterator
75aaebc758
ArduPlane: change INS_ to INS
2023-03-21 10:04:16 +11:00
Tom Pittenger
3ac55f97b1
Plane generalize Aux Switch VTOL abort for any plane abort landings
2023-03-15 13:31:43 -07:00
Henry Wurzburg
a86ff90b97
ArduPlane: add AUTO VTOL landing abort AUX sw
2023-03-14 10:52:23 +11:00
Randy Mackay
c12e15f580
Plane: remove unused do-control-video
2023-03-09 12:24:05 +11:00
Iampete1
d97bd6f5c3
Plane: titrotor: is_motor_tilting: dont cast to uint8
2023-03-07 10:28:11 +11:00
Tom Pittenger
96ee3651d2
Plane: Auto takeoff roll-limits to use TKOFF_LVL_ALT
2023-03-02 09:24:13 +11:00
Randy Mackay
d9795d3580
Plane: integrate camera frontend/backend split
2023-03-01 18:18:51 +11:00
Andrew Tridgell
8637f2d9c6
Plane: release notes for 4.3.4
2023-03-01 12:58:01 +11:00
Andrew Tridgell
a0634d8b5b
Plane: constrain tilt range for vectored yaw
...
this prevents a case where we can demand unlimited vectored yaw,
leading to loss of control
this was particularly noticible before the fix in #23023 - if you
armed for a 2nd time in QHOVER after moving the throttle above 10% so
throttle_wait was cleared then the motors would try to tilt fully so
one motor is in fwd flight position. This would cause a prop strike
while on the ground
2023-02-26 08:52:16 +11:00
Andrew Tridgell
38d7bcff6b
Plane: re-init throttle wait on quadplane arm and disarm
...
this prevents yaw from rudder arming on 2nd flight
2023-02-26 07:06:09 +11:00
Tom Pittenger
7a6f398668
Plane: add TKOFF_GND_PITCH
2023-02-23 11:12:39 +11:00
Iampete1
eefa3b1ce4
Plane: move training mode function to mode training
2023-02-22 19:26:59 +11:00
Iampete1
f6b0c3775c
Plane: move mode acro functions to mode acro
2023-02-22 19:26:59 +11:00
Peter Barker
c18276e19b
ArduPlane: add support for mavlink in-progress message
2023-02-21 17:07:41 +11:00
Iampete1
50eaa1cc54
Plane: move acro stabilization into mode acro
2023-02-21 11:27:24 +11:00
Iampete1
6bb0096b9d
Plane: move training stabilize function to training mode
2023-02-21 11:27:24 +11:00
Iampete1
549dd3875d
Plane: add mode ahrs convenience refence
2023-02-21 11:27:24 +11:00
Andrew Tridgell
a57e6455ab
Plane: use is_armed_and_safety_off()
...
this no longer sets soft_armed false when safety is on, and instead
uses is_armed_and_safety_off() when appropriate
2023-02-21 07:44:09 +11:00
Iampete1
5586f4ad3a
Plane: arming: modes: don't always display
2023-02-20 10:55:32 +00:00
Andrew Tridgell
312d37306e
Plane: ensure home is up to date on arming
...
remove any discrepancy which has crept in over the last few seconds
this also ensures that relative_altitude is updated, and copes with
the EKF refusing the resetHeightDatum call
2023-02-19 10:45:42 +11:00
Iampete1
2ffe677d39
Plane: combine per mode arm and pre-arm checks
2023-02-15 19:43:40 +11:00
Andrew Tridgell
4a96221a70
Plane: release notes for 4.3.4-beta1
2023-02-12 17:37:07 +11:00
Andrew Tridgell
99f997161a
Plane: holdoff auto takeoff till rudder neutral
...
when arming with rudder we need to hold off the takeoff until the user
has released the rudder stick or we can yaw badly during the takeoff
2023-02-09 07:02:32 +11:00
Andrew Tridgell
2989e2deba
Plane: added support for NAV_PACKAGE_PLACE mission item
...
this works in conjunction with a lua script to allow for a wide
variety of package place options
2023-02-09 07:02:12 +11:00
Peter Barker
648a13d3f7
ArduPlane: add and use AP_ADVANCEDFAILSAFE_ENABLED
2023-02-08 19:00:13 +11:00
Andrew Tridgell
7735614634
Plane: implement set_rudder_offset()
2023-02-08 16:25:39 +11:00
Pierre Kancir
321801a2c3
Plane: unify firmware name
2023-02-08 12:47:49 +11:00
Iampete1
d928e8b002
Plane: stop passing speed_scaler all over the place
2023-02-07 10:17:09 +11:00
Peter Barker
f0e17957f4
ArduPlane: avoid using struct Location
...
clang reports this could be a problem when compiling under some EABIs. Remove it from most places as it is just noise, replace with class where we want to avoid including Location.h
2023-02-04 22:51:54 +11:00
TsuyoshiKawamura
220e58ca6d
Plane: correct spelling in ReleaseNotes.txt
2023-02-01 14:16:28 +00:00
Iampete1
2d51b2c9b8
Plane: remove direct roll/pitch stick mixing support
2023-02-01 18:45:10 +11:00
Iampete1
a63a32d6f3
Plane: QRTL: combine threshold radius for QRTL and RTL
2023-01-31 10:57:21 +11:00
Henry Wurzburg
10b69e1c1f
Plane:expand yaw autotune to other modes
2023-01-31 10:02:16 +11:00
Andrew Tridgell
6623f1156c
Plane: transition pitch limit should not apply to FBWA
...
pilot should be able to override pitch, very important on motor
failure to control glide
2023-01-30 09:19:14 +11:00
Iampete1
76a10d9b26
Plane: relative_ground_altitude allow passing bool for terrain use
2023-01-25 19:34:53 +11:00
Iampete1
928a923f43
Plane: Quadaplane: QRTL use stopping point for climb submode altitude threshold
2023-01-25 19:34:53 +11:00
Iampete1
bf9d49b72d
Plane: Quadaplane: add param for min QRTL altitude when close to home
2023-01-25 19:34:53 +11:00
Iampete1
4a2a792624
Plane: QRTL: use cone for QRTL climb close to home
2023-01-25 19:34:53 +11:00
Iampete1
20934491e5
Plane: Quadplane: limit manual throttle tilt angle to Q_TILT_MAX
2023-01-24 10:28:36 +11:00
Iampete1
02ca9c855a
Plane: tailsitter: update I reset and limit handling
2023-01-24 10:27:02 +11:00
Iampete1
342d6f21be
ArduPlane: use check_enabled helper
2023-01-23 11:00:13 +09:00
Andrew Tridgell
43b4be6ffb
Plane: release notes for 4.3.3
2023-01-20 12:17:19 +11:00
Andrew Tridgell
9b2c7a90e7
Plane: fixed loiter.direction for VTOL approach
...
ensure the direction is setup correctly for both CW and CCW
2023-01-15 21:32:27 +11:00
Andrew Tridgell
77e63da4b3
Plane: added TKOFF_THR_MAX_T
...
time for max throttle on takeoff if no airspeed sensor
2023-01-15 12:17:27 +11:00
Iampete1
4e00a460fb
ArduPlane: use shared param info defines
2023-01-11 18:41:34 +11:00
Andrew Tridgell
5fba595001
Plane: update release notes for 4.3.3beta1
2023-01-10 15:14:26 +11:00
Peter Barker
bef10c21bf
ArduPlane: make check_var_info void
...
Given all the callers die anyway, make it void
2023-01-10 10:48:15 +11:00
Tom Pittenger
9440e3c544
Plane: bugfix - RTL_AUTOLAND no longer overrides loiter direction
2023-01-10 08:58:15 +11:00
Peter Barker
5fd555a07a
ArduPlane: implement parameter CopyFieldsFrom and use it
2023-01-03 11:08:43 +11:00
Henry Wurzburg
636a18f98f
Plane: Update Q_OPTIONS metadata to new format
2023-01-03 10:29:44 +11:00
Iampete1
3a4e07a73c
Plane: Events: consolodate failsafe evnt to single print
2023-01-03 10:26:46 +11:00
Peter Barker
9edac79db8
ArduPlane: use relay singleton in Parachute
2023-01-03 10:19:54 +11:00
olliw42
a89d5e1c83
Plane: QArco name4 longer than 4
2023-01-01 13:44:10 -08:00
Iampete1
a99748a13d
Plane: Quadaplane: use land_at_climb_rate_cm only when landing
2022-12-30 20:25:58 +09:00
Leonard Hall
87c684b5ee
Plane: Vtol: use land_at_climb_rate_cm for vertical rate control
2022-12-30 20:25:58 +09:00
Henry Wurzburg
1b39f00517
ArduPlane:test new flight options formats
2022-12-29 16:14:54 +11:00
Peter Barker
f8b8f652db
Plane: break FLIGHT_OPTIONS metadata onto separate lines
2022-12-28 13:21:18 +11:00
Jeremy
0db6146f60
Plane: Added Y4 config to Quadplane
2022-12-27 15:19:28 +11:00
Iampete1
da0927b076
Plane: Quadaplane: remove RTL navigate incorrect comment and unnedded check
2022-12-27 11:26:16 +11:00
Iampete1
4a21af22cb
Plane: move mode update_target_altitude to correct files
2022-12-27 10:30:14 +11:00
Andrew Tridgell
97e1c14114
Revert "Plane: default takeoff pitch to 15 deg for PPDS"
...
This reverts commit 210dac7356
.
this was committed by mistake
2022-12-24 13:26:31 +11:00
Andrew Tridgell
8686589cc0
Plane: release notes for 4.3.2
2022-12-23 10:18:29 +11:00
Iampete1
f28d7a3574
Plane: move adjust_altitude_target functianlity to per mode functions
2022-12-20 10:37:06 +11:00
Iampete1
ab43dadb57
Plane: altitude: add `plane.` prefix to Plane::adjust_altitude_target to minimise diff
2022-12-20 10:37:06 +11:00
Iampete1
e5e96eb4d8
Plane: tiltrotor: add throttle scaleing for vectored yaw
2022-12-20 09:48:56 +11:00
Peter Barker
5483398c7d
Plane: correct compilation when QAUTOTUNE compiled out
2022-12-18 09:19:12 +11:00
Peter Barker
0a5d76d81d
ArduPlane: code-generate chan-fetching methods
...
A recent PR had to change every single one of these methods, which was kind of unfortunate.
So generate the methods using a #define so the duplication happens at preprocessor-time.
2022-12-15 08:31:54 +11:00
Iampete1
da503a5e44
Plane: GCS_Mavlink: use base class DO_SET_HOME
2022-12-14 19:25:44 +11:00
Peter Barker
0cf56ea320
ArduPlane: make and use AP_LANDINGGEAR_ENABLED
2022-12-14 18:30:23 +11:00
Leonard Hall
16ccdeb058
Plane: Support changing update period in Motors
2022-12-13 17:10:06 +11:00
Leonard Hall
0bc5e68aed
Plane: Support changing update period
2022-12-13 17:10:06 +11:00
Henry Wurzburg
06730ab1bc
ArduPlane: add warning for large offset cal
2022-12-13 17:08:42 +11:00
Peter Barker
92a658c298
Plane: call adjust_altitude_target after setting waypoint
...
if we're too close to the next waypoint then we can end up using stale altitude target data when deciding whether a waypoint is complete or not.
2022-12-13 11:41:23 +11:00
Iampete1
b957ef1289
Plane: QRTL if RTL is expecting to VTOL land and close home with VTOL motors active
2022-12-13 10:32:32 +11:00
Andrew Tridgell
8dff38a4a1
Plane: updated release notes for 4.3.2beta2
2022-12-12 08:02:06 +11:00
Iampete1
152eb47020
Plane: Quadaplane: add aux function for QStabilize mode
2022-12-06 11:22:35 +11:00
Andrew Tridgell
289f76ac9c
Plane: added FAST_TASK() for key scheduler tasks
...
this will be needed with #22298 as that now relies on integrating
position based on loop times
2022-12-06 11:17:04 +11:00
Andrew Tridgell
6db842e967
Plane: ensure smoothed airspeed is > 0
...
prevent possible divide by zero
2022-12-06 09:02:44 +11:00
Andrew Tridgell
49d0a4906a
Plane: added turn corrdination to autotune yaw rate tuning
...
this makes it much easier to do a yaw rate autotune, and also means
you don't need to use the rudder stick at all, as the yaw controller
is already exercised nicely with roll movements, so overall the tune
is faster and more accurate as less cross-axis coupling
2022-12-06 09:02:44 +11:00
Andrew Tridgell
99066a27f8
Plane: ensure we init z controller when inactive
...
this prevents us getting the AC_PosControl internal error, which is
turning up as a common false positive.
2022-12-05 07:50:05 +11:00
Iampete1
d66485c60a
Plane: Quadplane: use uint16_t for output_motor_mask
2022-11-29 10:53:59 +11:00
Peter Hall
148c8d6eec
Plane: Quadplane: tiltrotor: add Q_OPTION to keep motors tilted up when disarmed in FW modes
2022-11-29 10:51:23 +11:00
Iampete1
edf89b02ea
Plane: Quadplane: 0 rate_bf_yaw_target as more or less the same as radians value in cd funcion
2022-11-25 18:13:00 +11:00
Wiktor Maslowski
72391d3649
ArduPlane: fix long booting
2022-11-25 11:09:43 +09:00
Peter Barker
447392c7f4
Plane: factor out handle_manual_control_axes
2022-11-23 19:33:46 +11:00
Henry Wurzburg
b9863d8514
Plane: enable QUAUTOTUNE build option
2022-11-22 10:58:03 +11:00
Andrew Tridgell
bff68b112c
Plane: update release notes for 4.3.2-beta1
2022-11-21 19:37:33 +11:00
Andrew Tridgell
21c9737ffa
Plane: increase NAV_SCRIPT timeout to 1s
...
this is needed for processing of very complex schedules
2022-11-14 20:35:31 +11:00
Andrew Tridgell
15a2e0c1c8
Plane: only apply THR_MIN if ICE has allow_throttle_while_disarmed
...
this fixes the disarmed throttle to be zero on normal aircraft
2022-11-14 11:14:09 +11:00
Peter Barker
de4dda2d17
ArduPlane: change namespace of MultiCopter and FixedWing params
...
this stops the libraries knowing anything about AP_Vehicle
2022-11-09 19:04:37 +11:00
Henry Wurzburg
a84f6b6dee
Plane: added AUTOTUNE_AXES function to normal tune
...
Co-authored-by: Peter Hall
2022-11-08 10:54:36 +11:00
Andrew Tridgell
a94f75fe29
Plane: fixed changing modes causing aerobatics abort
2022-11-07 21:22:43 +11:00
Andrew Tridgell
41fbbd92bc
Plane: zero error on release of sticks
...
this locks the attitude at exactly the stick release position on each
axis
thanks to Adrian Nagy for feedback
2022-11-02 07:55:37 +11:00
Andrew Tridgell
499fe79221
Plane: implement quaternion based ACRO mode
...
when ACRO_LOCKING=2 this implements a quaternion based ACRO
controller, which allows for accurate rolls and knife edge
2022-11-01 15:00:26 +11:00
Andrew Tridgell
500ac9b99c
Plane: cleanup abort of NAV_SCRIPT
...
use the same enable flag for tricks and auto NAV_SCRIPT_TIME and
ensure we disable if the script stops controlling
2022-10-29 21:22:29 +11:00
Andrew Tridgell
06edc9a139
Plane: constrain throttle in NAV_SCRIPT
2022-10-29 21:22:29 +11:00
Andrew Tridgell
210dac7356
Plane: default takeoff pitch to 15 deg for PPDS
2022-10-29 21:22:29 +11:00
Andrew Tridgell
ff5b4f1b13
Plane: unlock cruise/loiter heading while doing a scripted trick
...
and reset height
2022-10-29 21:22:29 +11:00
Henry Wurzburg
59b5a6e604
Plane: clarify ALT_HLD_FBWCM description
2022-10-26 21:21:25 +11:00
Peter Barker
fdd5c048a4
ArduPlane: rename parameter name BRD_SAFETYENABLE to BRD_SAFETY_DEFLT
2022-10-26 19:53:03 +11:00
Andrew Tridgell
0c14a28aa3
Plane: check for EFI enable in messages
2022-10-25 11:44:45 +11:00
Peter Barker
3400d5e4a5
ArduPlane: use fence singleton in afs check
2022-10-25 11:31:14 +11:00
Andrew Tridgell
d207e28de4
Plane: release notes for 4.3.1
2022-10-24 09:24:07 +11:00
Andrew Tridgell
6a005c893e
Plane: cover more cases in fence breach mode change
...
we want to allow all landing sequence mode changes
2022-10-24 09:16:38 +11:00
Andrew Tridgell
71fdf37055
Plane: allow mode switch on fence breach for RTL_AUTOLAND
...
when we are in a fence breach we by default disallow mode changes, but
we need to allow for the switch to AUTO if the reason is we are
entering a landing sequence, which is part of the RTL process which is
the fence action
2022-10-23 20:37:40 +11:00
Andrew Tridgell
90459ed6f4
Plane: two more arguments to NAV_SCRIPT_TIME
2022-10-23 18:11:15 +11:00
Andrew Tridgell
bffc09eaf5
Plane: fixed yaw rate tuning in AUTOTUNE mode
...
don't reset yaw rate controller continuously while we are trying to
use it
2022-10-23 12:18:20 +11:00
Andrew Tridgell
2b69124229
Plane: use Float16_t
2022-10-23 12:14:14 +11:00
Henry Wurzburg
1eb8b6d499
Plane:add info to LEVEL_ROLL_LIMIT description
2022-10-20 07:59:52 +11:00
Henry Wurzburg
58f8c34211
ArduPlane: update SRX descriptions
2022-10-19 23:26:45 +11:00