Commit Graph

477 Commits

Author SHA1 Message Date
Peter Barker 2e494d496b ArduPlane: allow Plane to run MAV_CMD_MISSION_START as long and int 2023-10-11 19:05:56 +11:00
Peter Barker be3f292ba4 ArduPlane: don't send fence_status mavlink message if fence not compiled in 2023-10-04 19:13:23 +11:00
Peter Barker e965b987f6 Plane: accept MAV_CMD_DO_LAND_START as both command_long and COMMAND_INT 2023-10-04 19:04:25 +11:00
Iampete1 73db3c3823 Plane: MAV_CMD_GUIDED_CHANGE_HEADING: allow changing heading type or rate for same heading 2023-10-03 11:28:18 +11:00
Peter Barker af3992d795 Plane: handle DO_GO_AROUND as both COMMAND_LONG and COMMAND_INT 2023-09-27 17:37:55 +10:00
Peter Barker c726dec834 ArduPlane: remove COMPASS_CAL messages from streamrates if tumble cal disabled
fatal error in SITL if we try to send messages with these disabled
2023-09-26 11:39:50 +10:00
Peter Barker 11ffb059ae Plane: accept MAV_CMD_DO_AUTOTUNE_ENABLE as both long and int 2023-09-26 11:36:57 +10:00
Peter Barker 63c88fea58 Plane: handle DO_PARACHUTE as both COMMAND_LONG and COMMAND_INT 2023-09-20 17:37:59 +10:00
Peter Barker 06f1ac07bc Plane: accept motor test as both command long and command int 2023-09-19 20:31:03 +10:00
Peter Barker ee316f04ed Plane: allow DO_VTOL_TRANSITION as both LONG and INT commands 2023-09-13 21:25:14 +10:00
Peter Barker c1b5e9a446 ArduPlane: support preflight calibration via command_int 2023-09-13 17:24:07 +10:00
Peter Barker 445f1fa272 Plane: handle DO_CHANGE_SPEED as COMMAND_INT 2023-09-12 09:22:36 +10:00
Peter Barker 4103d5cdb9 Plane: accept DO_ENGINE_CONTROL as both COMMAND_LONG and COMMAND_INT 2023-08-29 11:48:24 +10:00
Peter Barker 7df3d29e9d ArduPlane: pass mavlink_message_t to handle_command_*_packet
the "special case" blocks are getting longer and longer.  Merge the switch statements for the command type to be handled by passing around the message.
2023-08-22 10:11:33 +10:00
Shiv Tyagi ecdc036eb6 Plane: use AP_FOLLOW_ENABLED 2023-08-15 09:57:35 +10:00
Peter Barker 5c7e22debb ArduPlane: correct return error return codes for DO_FOLLOW
in the case it wasn't compiled in the return code would be correct.

in the case that the parameter was invalid we would return FAILED, which is wrong, it should be DENIED
2023-08-01 10:43:34 +10:00
Peter Barker 354e3fa5bf Plane: rely on conversion from long to int for DO_FOLLOW
we have code which tries to handle commands coming in as command long as command int.

Change to rely on that code working, rather than handling both command-long and command-int variants
2023-08-01 10:43:34 +10:00
Henry Wurzburg b4c79c9105 Plane:add FlightOptions helper 2023-04-26 17:35:25 +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
Tom Pittenger 3ac55f97b1 Plane generalize Aux Switch VTOL abort for any plane abort landings 2023-03-15 13:31:43 -07:00
Peter Barker c18276e19b ArduPlane: add support for mavlink in-progress message 2023-02-21 17:07:41 +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 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
Iampete1 da503a5e44 Plane: GCS_Mavlink: use base class DO_SET_HOME 2022-12-14 19:25:44 +11:00
Peter Barker 447392c7f4 Plane: factor out handle_manual_control_axes 2022-11-23 19:33:46 +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
Andrew Tridgell 0c14a28aa3 Plane: check for EFI enable in messages 2022-10-25 11:44:45 +11:00
Henry Wurzburg 58f8c34211 ArduPlane: update SRX descriptions 2022-10-19 23:26:45 +11:00
Andrew Tridgell 1421fccdac Plane: send HYGROMETER_SENSOR data if available 2022-10-19 13:17:30 +11:00
Peter Barker 93c1b53a67 ArduPlane: stop sending BATTERY2 by default 2022-10-18 11:12:49 +11:00
Tom Pittenger 46bc30a40c Plane: add guided radius to mavlink DO_REPOSITION 2022-10-11 09:35:28 -07:00
Peter Barker 3a61c97221 ArduPlane: do not send MSG_RPM if RPM not enabled 2022-09-28 20:10:21 +10:00
Peter Barker 81c138e0a4 Plane: remove logging of CMDI
This is a duplicate of the data logged into "MAVC"
2022-09-14 17:44:50 +10:00
Michael du Breuil dba90ec227 Plane: Don't send HWSTATUS by default 2022-09-13 14:27:06 +10:00
Randy Mackay c255b3b5b6 Plane: replace send-mount-status with send-gimbal-device-attitude-status 2022-08-15 20:29:25 -04:00
Michael du Breuil f183b21fc5 Plane: Support vtol landing options on NAV_VTOL_LAND
This allows the same mission to contain both circular and straight
landing items, and doesn't require on the fly tweaking
2022-08-15 17:05:00 -07:00
Iampete1 ee778dbd3a Plane: Quadplane: add option_is_set helper for Q_OPTIONS 2022-08-09 13:21:00 +10:00
Peter Barker b0bee613d4 ArduPlane: add and use AP_ICENGINE_ENABLE 2022-07-22 08:48:16 +10:00
Iampete1 50024a6ec2 Plane: add AIS to ADSB stream rate 2022-07-12 09:39:54 +10:00
Randy Mackay 402ea2b72d Plane: remove unused MSG_GIMBAL_REPORT 2022-06-07 09:27:47 +10:00
Peter Barker 6152b8618f ArduPlane: remove handling of MAVLINK_MSG_ID_SET_HOME_POSITION
We decided to remove this after 4.2 was out in favour of
MAV_CMD_DO_SET_HOME which has been available since 2015.

The gcs-maintainers list was notified in Feburary.
2022-05-10 09:46:22 +10:00
Peter Barker fd4a00a654 ArduPlane: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 2784f8fa7f Plane: remove persistent guided_WP_loc state
So instead of updating plane.guided_WP_loc and then calling
set_guided_WP(void) to copy that state into plane.next_WP_loc we pass
the new location in the call to set_guided_WP(const Location &loc).

avoidance was the only place which was not entirely over-writing
plane.guided_WP_loc.  However, plane.next_WP_loc was updated to be the
current location when we entered guided mode.  If we update the
horizontal/vertical avoidance now it is relative to the current
location, not the guided wp location, which could be quite important.
2022-03-22 10:14:40 +11:00
Peter Barker 1f5165349e Plane: correct compilation when airspeed disabled 2022-03-20 21:47:05 +11:00
Andrew Tridgell cc9b9813cb Plane: review fixes
thanks Pete!
2022-03-10 07:34:20 +11:00
Andrew Tridgell 33bc067edf Plane: fix NAV_CONTROLLER_OUTPUT in Q modes
Q modes don't always use wp_nav, but do use pos_control

AUTO and QRTL setup the plane navigation as well, so can use the L1
data
2022-03-10 07:34:20 +11:00
Andrew Tridgell 3fe9a55269 Plane: added APIs for lua ship landing 2022-03-10 07:34:20 +11:00
Andrew Tridgell c54fb0f51b Plane: link in AP_Follow
ready for ship landing
2022-03-10 07:34:20 +11:00
Peter Barker 452a5df0cc ArduPlane: add RebootRequred to stream rate parameters 2022-03-01 11:01:12 +11:00
Peter Barker 458d43fc1e ArduPlane: send deprecated message warning for MAVLINK_MSG_ID_SET_HOME_POSITION 2022-02-10 12:13:43 +11:00