Commit Graph

4952 Commits

Author SHA1 Message Date
Peter Barker e47c65f010 ArduPlane: remove Baro accumulate API
no backend actually needs to be prodded, everything is done on timers
2024-04-18 09:19:20 +10:00
Peter Barker c6d5bf5706 ArduPlane: fold startup_ground back into caller
remove stale comments around same.

rename method to avoid confusion
2024-04-17 22:18:22 +10:00
Peter Barker 46af21144a ArduPlane: move Arming, Beacon and RC_Mapper into ardupilotwaf.py
these were built for all vehicles, so put them in the common list
2024-04-17 18:11:46 +10:00
pieniacy 41474f862f Plane: Fix FBWB/CRUISE missing zero crossing of elevator input 2024-04-16 09:53:00 +10:00
Andrew Tridgell 5e3f26744a Plane: drop min Q_TRANSITION_MS to 500ms
Rolf makes a good argument for why some quadplanes need less than 2s
2024-04-11 07:16:15 +10:00
Andrii Fil a83c29cd67 ArduPlane: optional (CHUTE_OPTIONS:1) disarm defore parachute release 2024-04-10 21:55:51 +10:00
Peter Barker 39c87c0b1b Plane: call update_loiter before determining whether to fly home or not
we are calling "reached_loiter_target" as part of our checks as to whether to fly home or not.

We need to call update_loiter so the L1 controller can update its internal state for the new waypoint which do_RTL has set.  Depending on location (but typically), that will mean that L1's reached_loiter_target() will then return false, so we fly home.

This bug was affected by f8d7be5e43 .  Any sort of altitude error greater than 10m would delay us entering the landing sequence, allowing the L1 controller to update its state.
2024-04-10 17:44:25 +10:00
Peter Barker 42ce0867ae ArduPlane: move handling of DO_SET_HOME up to GCS_MAVLink base class 2024-04-09 09:35:16 +10:00
Mark Whitehorn 17a17a5955 Plane: fix units metadata for PTCH_LIM_MIN_DEG 2024-04-09 09:30:41 +10:00
Andrew Tridgell bf172378b5 Plane: release notes for 4.5.1 2024-04-08 13:09:16 +10:00
Andrew Tridgell f9cb380c31 Plane: release notes for 4.5.0 2024-04-02 12:21:37 +11:00
Iampete1 afec757c33 Plane: pass current location to mission landing methods 2024-04-02 11:11:59 +11:00
Iampete1 77ef4eb4e6 Plane: AP_Arming: use `mission.contains_item()` eather than `.mission.get_landing_sequence_start() > 0` 2024-04-02 11:11:59 +11:00
Andrew Tridgell 02a59ddc7d ArduPlane: release notes for 4.5.0-beta4 2024-03-22 17:28:28 +11:00
Iampete1 7912fcd511 Plane: do_RTL: don't log mode 2024-03-19 12:24:54 +11:00
Peter Barker 6cd55a9eda ArduPlane: stop passing serial manager to GPS init
it can get this via the singleton
2024-03-19 07:28:55 +11:00
Peter Barker 7a65848750 ArduPlane: move AP_OSD into common libraries list 2024-03-19 07:15:10 +11:00
Peter Barker 626d64f503 ArduPlane: allow HarmonicNotches to be compiled out of the code 2024-03-19 07:04:13 +11:00
Andrew Tridgell b4a97eca38 Plane: fixed throttle_at_zero()
this fixes a bug with TVBS land flare handling. The if() statement was
just far too complex and was giving the wrong answer
2024-03-15 09:26:40 +11:00
Andrew Tridgell 8ee05f7411 Plane: release notes for 4.5.0-beta3 2024-03-14 11:32:34 +11:00
Andrew Tridgell 980d328b53 Plane: make precsion QLOITER possible from lua 2024-03-12 10:45:56 +11:00
Peter Barker a682d304cf Plane: accept set_position_target_global_int with non_INT frames
the old frames are deprecated
2024-03-12 09:08:40 +11:00
Andrew Tridgell eb3215cf12 Revert "Plane: allow quadplanes to scale ESC CAN like normal"
this change can cause a flyaway if you have low SERVO3_MAX for
k_throttle. This can be reproduced with -f quadplane-can
2024-03-09 07:09:01 +11:00
Andrew Tridgell cbe5cf8c81 Plane: support precland in QLAND for pos, velocity and descent rate
allow full override in QLAND
2024-03-06 09:39:51 +11:00
Andrew Tridgell 8c33e2d289 Plane: allow QLAND to use precision landing override 2024-03-06 09:39:51 +11:00
Andrew Tridgell a4109c6cf2 Plane: compile in AC_PrecLand for scripting 2024-03-06 09:39:51 +11:00
Tom Pittenger 155f31a3a2 Plane: allow quadplanes to scale ESC CAN like normal 2024-03-06 09:30:58 +11:00
Andrew Tridgell 4d2c7f3d64 Plane: don't special case tilt rotors for motors shutdown
this allows for Q_M_SPOOL_TIME to work correctly for back transition
2024-03-06 08:01:52 +11:00
Iampete1 6461ebdfaf ArduPlane: don't try and send MSG_RANGEFINDER if AP_RANGEFINDER_ENABLED is false 2024-03-05 12:32:20 +11:00
Iampete1 674f75fce1 Plane: move manual mode throttle limits to main throttle limit function. 2024-03-05 11:38:28 +11:00
Andrew Tridgell bd928fb044 Plane: pass pitch trim parameter to TECS 2024-03-03 20:28:38 +11:00
Peter Barker 3085816a16 ArduPlane: move serial_manager parameters up to base class 2024-02-29 12:12:19 +11:00
Peter Barker 7a1f357904 ArduPlane: remove unused old_top_element param from convert_class 2024-02-27 10:37:45 +11:00
Peter Barker 30b8905b09 ArduPlane: convert EFI cvonversion to g2_conversion entry 2024-02-27 10:37:45 +11:00
Peter Barker e9668736b8 ArduPlane: simplify g2 object conversion 2024-02-27 10:37:45 +11:00
Paul Riseborough c8b5de34b5 Plane: Update description for Q_BCK_PIT_LIM 2024-02-23 15:26:47 +11:00
Paul Riseborough 95fb20dcd5 Plane: Prevent overloading quadplane wing during VTOL braking
Plane: Fix description for TECS_BCK_PIT_LIM

Plane: Add diagnostics logging for VTOL upper pitch limit calc

Plane: Rework "Prevent overloading quadplane wing during VTOL braking"

Implement an independent speed scaler calculation. During VTOL modes the plane surface speed scaler does not follow a 1/IAS function at low airspeed.
2024-02-23 15:26:47 +11:00
Paul Riseborough 378c2fd6c9 Plane: Fix tilt rotor surging during high speed QLOITER flight 2024-02-23 15:26:47 +11:00
Iampete1 642a5e13d0 Plane: manual fix `use_throttle_limits` and `use_battery_compensation` 2024-02-22 13:13:05 +11:00
Peter Barker d2d89b02cc ArduPlane: move gripper up to AP_Vehicle
also make the singleton return a reference rather than a pointer
2024-02-21 21:05:12 +11:00
bugobliterator 3300687aef ArduPlane: fix version setting in CheckFirmware app descriptor 2024-02-21 18:54:17 +11:00
Iampete1 8a1872bd2a Plane: allow set_throttle in manual and move disarmed override up 2024-02-20 11:35:17 +11:00
Ryan Friedman 227cfe781d ArduPlane: Add DDS release details
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2024-02-20 08:34:06 +09:00
CallanDaniel a404693c7f Plane: QLAND if long failsafe on VTOL takeoff 2024-02-20 09:39:15 +11:00
Peter Barker 6f9400a353 ArduPlane: use AUX_FUNC instead of typedef aux_func_t 2024-02-15 08:41:30 +11:00
Iampete1 5216dc92f9 Plane: reorder set_throttle function 2024-02-14 20:01:31 +11:00
Andrew Tridgell b6d8b37018 Plane: release notes for 4.5.0-beta2 2024-02-14 11:22:22 +11:00
Peter Barker 739a4a97da ArduPlane: move parameter storage formatting up to AP_Vehicle 2024-02-13 14:23:35 +11:00
Richard Marko 04b46678a4 treewide: fix shebangs - /bin/bash -> /usr/bin/env bash
Most scripts/tools use non-portable `/bin/bash`, switch
to environment agnostic `/usr/bin/env bash`.
2024-02-13 11:36:23 +11:00
Peter Barker fcd7c5beb9 ArduPlane: move logger object up to AP_Vehicle 2024-02-13 10:54:29 +11:00
Iampete1 6b32227d2f Plane: output nav scripting throttle with rest of nav scripting stuff 2024-02-13 10:50:03 +11:00
Iampete1 3aa742e1b9 Plane: rework `isHeadingLinedUp` function for loiter breakout 2024-02-13 10:48:47 +11:00
Henry Wurzburg d91ff440e7 ArduPlane: fix autofence enable in takeoff mode 2024-02-13 10:45:39 +11:00
Peter Barker 04fab27136 ArduPlane: move RC bits in mavlink to common code
Plane's semantics change to be like Copter. Rover, Sub and Tracker will start reporting the bits
2024-02-10 11:46:44 +11:00
Peter Barker 33895e8816 Plane: move scripting up to AP_Vehicle 2024-02-07 18:24:12 +11:00
Peter Barker 9aab59ca9e ArduPlane: add comment for lost AP_Stats object params 2024-02-07 18:24:12 +11:00
Peter Barker e7a6a2e3ec ArduPlane: move can_mgr.init call up to AP_Vehicle
... also adds the call for Blimp...
2024-02-06 11:03:54 +11:00
Iampete1 2f42f55278 Plane: move pilot throttle output up to control modes 2024-02-06 11:02:28 +11:00
Andrew Tridgell 4f327e44ea Plane: fixed handling of arming with safety on
if safety is on and you force arm them turn safety off then Q modes
cannot run the motors as the AP_Motors armed state will still be off.

This ensures that the motors are armed immediately we arm. This
matches what copter does when arming with safety on
2024-02-03 15:55:36 +11:00
Peter Barker 89417f07a6 ArduPlane: move call to BoardConfig.init to AP_Vehicle 2024-02-01 07:59:11 +11:00
Iampete1 b119a2a6d7 Plane: move guided throttle passthrough to mode_guided 2024-01-31 18:21:27 +11:00
Andrew Tridgell 629cb92642 Plane: mark master as 4.6.0 dev 2024-01-31 10:42:38 +11:00
Randy Mackay d70ff4db75 Plane: 4.5.0-beta1 release notes 2024-01-31 10:05:08 +11:00
Peter Barker 0bc2c15485 Plane: move AP_Stats to AP_vehicle 2024-01-30 11:12:21 +11:00
Iampete1 c84e5b337e Plane: move forward throttle output in VTOL modes to QuadPlane update 2024-01-30 11:06:09 +11:00
Henry Wurzburg 3973c28f15 Plane:add TKOFF_TIMEOUT to MODE TAKEOFF 2024-01-30 11:02:53 +11:00
Peter Barker 127961e692 Plane: break out a method for set-attitude-target 2024-01-24 19:10:35 +11:00
Peter Barker f96add13e9 Plane: break out a method for set-position-target-local-ned 2024-01-24 19:10:35 +11:00
Peter Barker 5bc2b1a09b Plane: break out a method for set-position-target-global-int 2024-01-24 19:10:35 +11:00
Peter Barker 57535b538e ArduPlane: handle RADIO_STATUS is GCS base class 2024-01-24 18:43:15 +11:00
Peter Barker 2f0cb8b650 ArduPlane: use virtual method for GCS_MAVLink::handle_message
use more appropriate naming for the method.
2024-01-24 09:07:41 +11:00
J.R. Bronkar 2be84183b7 ArduPlane: fractional Loiter Turn Support
Adds special storage handling for loiter turns. Fractional Loiter
Turns 0<N<1 are stored by multiplying the turn number by 256, then
dividing that number by 256 on retrieval.
2024-01-22 20:27:20 -08:00
Andrew Tridgell e602aa68a4 Plane: removed incorrect comment 2024-01-23 15:00:30 +11:00
Andrew Tridgell 649fbe9f24 Plane: make the 90x factor more obvios 2024-01-23 15:00:30 +11:00
Andrew Tridgell 0d434c8b54 ArduPlane: fixed parameter names 2024-01-23 15:00:30 +11:00
Andrew Tridgell a4302e5fb8 Plane: tidy 2 comments 2024-01-23 15:00:30 +11:00
Andrew Tridgell 2b6ffe17e3 ArduPlane: tidy TRIM_PITCH to PTCH_TRIM_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell 108a0b77bd Plane: Q_ACCEL_Z -> Q_PILOT_ACCEL_Z 2024-01-23 15:00:30 +11:00
Andrew Tridgell 57e88e2242 Plane: Q_VELZ_MAX -> Q_PILOT_SPD_UP and Q_VELZ_MAX_DN -> Q_PILOT_SPD_DN 2024-01-23 15:00:30 +11:00
Andrew Tridgell 2d0a236b49 Plane: Q_LAND_SPEED -> Q_LAND_FINAL_SPD 2024-01-23 15:00:30 +11:00
Andrew Tridgell 5619dca389 Plane: TRIM_PITCH_DEG to PTCH_TRIM_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell ee884ab137 ArduPlane: convert LAND_PITCH_CD to LAND_PITCH_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell 89a947cdca ArduPlane: change LIM_ROLL_CD to ROLL_LIMIT_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell 17d6192e22 ArduPlane: convert LIM_PITCH_MIN/MAX -> PTCH_LIM_MIN/MAX_DEG 2024-01-23 15:00:30 +11:00
Andrew Tridgell a3d622b37d Plans: rename ALT_CRUISE_MIN to CRUISE_ALT_FLOOR 2024-01-23 15:00:30 +11:00
Andrew Tridgell 8151647e04 ArduPlane: convert ALT_HOLD_RTL and ALT_HOLD_FBWCM 2024-01-23 15:00:30 +11:00
Andrew Tridgell 5723b1c780 ArduPlane: convert MIN_GNDSPEED_CM to MIN_GROUNDSPEED 2024-01-23 15:00:30 +11:00
Andrew Tridgell 912e2f224b ArduPlane: convert ARSPD_FBW_MIN/MAX to AIRSPEED_MIN and AIRSPEED_MAX 2024-01-23 15:00:30 +11:00
Andrew Tridgell 94edcc4654 ArduPlane: change TRIM_ARSPD_CM to AIRSPEED_CRUISE 2024-01-23 15:00:30 +11:00
Tim Tuxworth 3cf0de2224 Plane: convert parameter TRIM_PITCH_CD to TRIM_PITCH_DEG 2024-01-23 15:00:30 +11:00
Simon Hancock 6f832bbd3b ArduPlane: Updates to log message units and help text
Separate descriptions for PID and PIQ messages
Co-authored-by: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2024-01-21 14:26:54 +11:00
Henry Wurzburg f7f9fda6a7 Plane:expand description of AUTOTUNE_OPTIONS 2024-01-21 12:31:38 +11:00
Iampete1 7e79a13053 Plane: ask mode if battery voltage compensation should be done 2024-01-18 12:28:38 +11:00
Peter Barker 6ee5ab41fd ArduPlane: allow compilation with HAL_LOGGING_ENABLED false 2024-01-17 18:25:55 +11:00
Iampete1 01c8717308 Plane: ask flight mode if min/max throttle limits should be applied 2024-01-16 11:07:53 +11:00
Iampete1 17fb9455a9 Plane: `set_throttle` add early return for disarmed and throttle suppression 2024-01-16 11:07:53 +11:00
Iampete1 3e955d12fa Plane: Quadaplane: add helper `allow_forward_throttle_in_vtol_mode` 2024-01-16 11:07:53 +11:00
Peter Barker b3897c020e ArduPlane: make AHRS attitude member variables private 2024-01-14 12:47:47 +11:00
Peter Barker 0690e3c9fa ArduPlane: remove entire airspeed_checks if AP_AIRSPEED_ENABLED is off
saves bytes and removes some redundant code which is obscured when the ifdefs are inside the body
2024-01-10 18:33:41 +11:00
Peter Barker 6c105d2649 PLane: return MAV_RESULT_COMMAND_INT_ONLY if command-long support not compiled in 2024-01-02 18:58:07 +11:00
Henry Wurzburg 4b692b470f add note about Qmode FS switches to FS actions) 2024-01-02 13:00:05 +11:00
Henry Wurzburg 1f78cb29b4 Plane: correct TKOFF_LVL_ALT metadata 2023-12-25 17:05:20 -07:00
Iampete1 ab0755d0d8 Plane: rework forward throttle votlage compensation into sub class and split min/max from throttle 2023-12-20 19:28:47 +11:00
Ryan Friedman 2e393bbbc6 ArduPlane: Make set position tgt depend on ext ctrl
* Set position target used to just be used in scripting, now it's used
  by DDS in external control

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-20 02:37:01 +00:00
Ryan Friedman 003c50a13c ArduPlane: add REP-147 Global Position Control
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-20 02:37:01 +00:00
Ryan Friedman c22a3439d4 AP_ExternalControl: add REP-147 Global Position Control
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-12-20 02:37:01 +00:00
Andrew Tridgell 0ec994c46b Plane: release notes for 4.4.4 2023-12-19 15:08:48 +11:00
Iampete1 c98bdd155a Plane: Quadplane: log tailsitter speed scailing in TSIT msg 2023-12-19 11:20:42 +11:00
Michael du Breuil 9aa0ceb9dd Plane: Fix AP_Relay param naming 2023-12-19 10:01:01 +11:00
Thomas Watson f20893259d Plane: remove references to legacy UART order 2023-12-19 06:53:15 +11:00
Lachlan Conn d5cc1d4ad0 Plane: QAssist speed warning added
Also updated the severity of other QAssist messages
2023-12-13 18:08:36 +11:00
Iampete1 5642d2449a Plane: allow set_takeoff_expected in manual mode 2023-12-12 11:51:33 +11:00
Iampete1 740b04aed3 Plane: Mode: ensure flight stage is correct on successful mode change 2023-12-12 11:51:33 +11:00
Iampete1 21a9f8e3a2 Plane: move landing servo override out of throttle control function 2023-12-12 11:51:33 +11:00
Bob Long f8d7be5e43 Plane: fix bug in RTL_AUTOLAND with rally points
After loading the rally point, ModeRTL:navigate checks if rally altitude
has been reached before altitude_error_cm gets updated
2023-12-12 10:58:22 +11:00
Randy Mackay 31e39fc385 Plane: 4.4.4-beta1 release notes 2023-12-05 20:27:01 +11:00
Iampete1 4ac9eb9509 Plane: set_servos_controlled: rework throttle output 2023-12-05 11:00:55 +11:00
Iampete1 41f61da0d9 Plane: Quadplane: add `get_throttle_input` method that behaves the same as Plane::get_throttle_input did 2023-11-29 18:15:01 +11:00
Iampete1 483ef18087 Plane: ignore invalid pilot throttle 2023-11-29 18:15:01 +11:00
Tom Pittenger d1b2c6e564 Plane: set nav_controller stale on mode change 2023-11-28 10:27:19 +11:00
Tom Pittenger 0e9f9920bc Plane: mode LoiterAltQLand to reuse loiter point if available 2023-11-28 10:27:19 +11:00
Randy Mackay 93a2e728da Plane: SYSID_MYGCS param increment 2023-11-28 07:54:45 +09:00
Tom Pittenger b468af81ac Plane: wrap Watt Limiiter in #if AP_BATTERY_WATT_MAX_ENABLED 2023-11-26 11:57:14 +11:00
Andy Piper 60d5e65a1d Plane: DFF logging docs 2023-11-21 13:26:23 +11:00
Andy Piper 0d10f74bf7 Plane: update PID notch centers at 1Hz with average loop rate 2023-11-21 13:26:23 +11:00
Peter Barker ba8e770a81 ArduPlane: stop streaming trying SIM_STATE messages outside sim 2023-11-20 19:25:25 +11:00
Peter Barker ec5fa8bd62 ArduPlane: tidy sending of esc telem generator messages 2023-11-20 19:25:25 +11:00
Peter Barker e1e1fae604 ArduPlane: tidy sending of queued mcu status messages 2023-11-20 19:25:25 +11:00
Peter Barker 803a56a6b4 ArduPlane: tidy sending of queued opticalflow messages 2023-11-20 19:25:25 +11:00
Peter Barker 4f76a6ec65 ArduPlane: tidy sending of queued mount messages 2023-11-20 19:25:25 +11:00
Peter Barker 4b285fa579 ArduPlane: add and use AP_MAVLINK_COMMAND_LONG_ENABLED 2023-11-16 10:50:21 +11:00
Peter Barker e0eacdc197 ArduPlane: handle DO_SET_MISSION_CURRENT as both long and int 2023-11-16 10:50:21 +11:00
Andrew Tridgell 74c9520449 Plane: update release notes for 4.4.3 2023-11-14 12:52:09 +11:00
Andrew Tridgell a318ef333d Plane: release notes for 4.4.3-beta1 2023-11-07 11:20:37 +11:00
Henry Wurzburg 73f58d3624 ArduPlane: expand explanations in FWD THR docs 2023-11-07 10:57:04 +11:00
Iampete1 55040175e6 Plane: Cruise: only lock in heading once moving forwards 2023-11-04 19:07:55 +11:00
Iampete1 5087a4262d Plane: set_servos_idle: output left and right throttles 2023-10-31 14:06:22 +11:00
Iampete1 8061b1b4c2 Plane: move set_servos_idle functionality to ModeAuto 2023-10-31 14:06:22 +11:00
Iampete1 7e4b5b0c97 Plane: rework set_servos_controlled function 2023-10-31 11:18:19 +11:00
Iampete1 a6206bde3c Plane: move to new `using_airspeed_sensor` ahrs method 2023-10-31 10:39:21 +11:00
Peter Barker c91968017b ArduPlane: tidy use of GPS mavlink defines 2023-10-27 14:16:47 +11:00
Peter Barker 628bc02bf1 ArduPlane: save bytes when AP_AIS_ENABLED is false 2023-10-27 14:16:47 +11:00
Peter Barker 7961eb6045 Plane: consider nan as zero in DO_REPOSITION
QGC's interfaces want to send nan for these parameters
2023-10-27 14:16:07 +11:00
Peter Barker edb4f25953 ArduPlane: remove MSG_BATTERY_STATUS from steams if AP_BATTERY_ENABLED is false 2023-10-26 13:23:57 +11:00
Michael du Breuil 28d4603a46 Plane: Support not sending a status text on state change 2023-10-25 09:39:51 -07:00
Paweł Rozenblut 1c6b4debe2 Plane: send attitude target message implementation (for quadplanes)
Minor modification -  implementation of the send_attitude_target msg. streaming (for quadplanes). The code is analogous in its structure and functionality to the implementation in Copter

Co-Authored-By: Peter Hall <33176108+IamPete1@users.noreply.github.com>
2023-10-25 09:53:13 +11:00
Michael du Breuil b630efd4db ArduPlane: Pass the 4th parameter to ICE for engine start 2023-10-24 14:11:39 -07:00
Peter Barker a97adcf9cd ArduPlane: handle MAV_CMD_NAV_TAKEOFF via command_long and command_in 2023-10-24 12:59:19 +11:00
Andrew Tridgell 63de33bce9 Plane: update release notes for 4.4.2 2023-10-23 07:38:33 +11:00
Peter Barker aa78f53498 Plane: use origin-relative altitudes rather than home-relative 2023-10-18 19:49:06 +11:00