Commit Graph

540 Commits

Author SHA1 Message Date
Peter Barker bf79c49c23 ArduCopter: remove comment for already-removed in-delay-callback function
These are now attached to completely unrelated functions, which is
pretty bad.
2020-04-16 15:11:35 +09:00
Randy Mackay 255c5d4126 Copter: set-pos-target-global-int fails sooner if accel given
same change for set-position-target-local-ned processing
2020-03-02 14:26:33 +09:00
Randy Mackay b21ecda76f Copter: fix guided mode handling of terrain altitudes 2020-03-02 14:26:33 +09:00
Peter Barker ce5f23810b ArduCopter: log disarm method 2020-02-22 12:16:29 +11:00
Randy Mackay d04c86be1e Copter: minor format changes to GCS_MAVlink.cpp 2020-02-17 14:42:49 +09:00
Sachchit Vekaria f6125b26e8 Copter: Allowing Terrain Following in Guided Mode
Uses frame type of MAVLINK_MSG_ID_SET_POSITION_TARGET_GLOBAL_INT message to decide the value of terrain_alt boolean.
2020-02-17 14:42:42 +09:00
Peter Barker 9466126fa8 Copter: let AP_Vehicle base class worry about scheduler delay callback 2020-01-21 11:37:28 +11:00
Peter Barker a56ab9136e Copter: let GCS base class handle proximity and rangefinder messages 2019-12-24 12:08:54 +11:00
Peter Barker 46832e9dee Copter: rename system_status as it won't be called from base class 2019-11-27 14:27:53 +11:00
Peter Barker 5d1261da73 Copter: rename parameter to avoid name conflict with lock 2019-11-12 16:33:12 +11:00
Mark Whitehorn 6dd28f7d74 ArduCopter: change in_sensor_config_error to in_config_error 2019-11-08 10:14:34 +11:00
Peter Barker 976acb3a58 Copter: let GCS superclass specify compass and param float capabilitiy 2019-11-05 11:26:23 +11:00
Peter Barker e6c6189fe5 Copter: cope with change in namespace of LogEvent enum
Also move Acro Trainer types into an enum class as the global defines
interfere with the Event names.

Also eliminate the Log_Write_Event wrappers.
2019-11-05 08:19:26 +08:00
Michael du Breuil b42b1c08c4 Copter: Support new AP_Vehicle::set_mode 2019-10-25 08:48:22 +08:00
Randy Mackay 36327d56de Copter: reject reboot request from GCS if auto esc cal on next reboot
this resolves an edge case in which the motors could spin up on the next reboot because the user didn't unplug the battery to reboot the flight controller
2019-10-15 07:41:44 +09:00
Peter Barker 1b29cf14a6 Copter: remove get_advanced_failsafe override; singleton to be used 2019-09-17 09:13:43 +10:00
Peter Barker b4537bebd8 Copter: move control_mode_t into being Mode::Number enum class
Fixes this compiler error:

In file included from ../../ArduCopter/sensors.cpp:1:
In file included from ../../ArduCopter/Copter.h:195:
../../ArduCopter/mode.h:1291:9: fatal error: declaration shadows a variable in the global namespace [-Wshadow]
        AUTO,           // after A and B defined, pilot toggle the switch from one side to the other, vehicle flies autonomously
        ^
../../ArduCopter/defines.h:38:5: note: previous declaration is here
    AUTO =          3,  // fully automatic waypoint control using mission commands
    ^
1 error generated.
2019-09-13 13:12:08 +09:00
Peter Barker f8f5e7f5ae Copter: correct compilation when guided mode is disabled 2019-08-22 17:47:45 +01:00
Randy Mackay 709c874d8b Copter: integrate AP_OAPathPlanner 2019-08-17 09:42:43 +09:00
Peter Barker 48a1b2f436 Copter: avoid allocate a GCS_MAVLINK per mavlink channel 2019-08-14 18:25:43 +10:00
Peter Barker 18de327e7f Copter: tighten type on mavlink_coordinate_frame_to_location_alt_frame 2019-08-01 17:45:30 +10:00
Peter Barker 5538800ad0 Copter: use MAV_FRAME_GLOBAL instead of MAV_FRAME_GLOBAL_INT in send_position_target 2019-07-30 10:55:21 +10:00
Leonard Hall 157f786adf Global: rename desired to target in PID info 2019-07-25 17:38:15 +09:00
Pierre Kancir c330b87592 ArduCopter: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Michael du Breuil e0d7b71e95 Copter: Reduce dependency on inertial nav 2019-07-16 12:11:42 +09:00
Peter Barker 6435a867f5 Copter: split RC_CHANNELS messages onto separate ap_message ids 2019-07-09 13:08:45 +10:00
Peter Barker 332e878bae Copter: correct nullptr dereference in sensor-config error loop 2019-07-09 10:01:23 +10:00
Peter Barker bb3d2a0b37 Copter: pass GCS_MAVLink object rather than channel number in motortest 2019-07-02 10:04:56 +10:00
Peter Barker b0beca7b01 Copter: allow GCS MAVLink base class to handle out-of-time for sending messages 2019-06-25 10:29:40 +10:00
Peter Barker f3c1791341 Copter: stop passing gcs chan into method which wants an object 2019-06-25 09:45:54 +10:00
Michael du Breuil df37a3d603 Copter: Remove wrapper around MAVLink send heartbeat 2019-06-18 13:59:52 +01:00
Peter Barker 676d75c391 Copter: correct namespacing of Copter modes
This makes us look like Rover and Plane in terms of namespacing for the
Mode classes, and removes a wart where we #include mode.h in the middle
of the Mode class.

This was done mechanically for the most part.

I've had to remove the convenience reference for ap as part of this.
2019-06-11 09:18:22 +09:00
Peter Barker 6dce39cbe1 Copter: use AP_Arming methods to arm and disarm vehicle
Really just changing the namespace of init_arm_motors
2019-05-30 07:37:30 +09:00
Dr.-Ing. Amilcar do Carmo Lucas 402b1cba3f Copter: replace 4 divisions with multiplications 2019-04-24 08:52:41 -07:00
Peter Barker 7945c1fdfd Copter: mode class unfriends everyone, make relevant methods public 2019-04-20 10:04:33 +09:00
Randy Mackay 571d933b3f Copter: fix send_pid_tuning
the rate roll PID was being overwritten when PID logging was enabled
2019-04-13 13:33:52 +09:00
Pierre Kancir 43dcf066c1 ArduCopter: move check_latlng to Location 2019-04-08 12:56:01 -07:00
Rajat Singhal 49554bf8d9 Copter: Add function for sending POSITION_TARGET_LOCAL_NED message 2019-03-29 09:11:14 +11:00
Peter Barker 86bd531b24 Copter: use convenience manual_override method 2019-03-27 22:33:47 -07:00
Peter Barker 7a1648059b Copter: stop passing dataflash into handle_radio_status 2019-03-27 10:38:39 +11:00
Patrick José Pereira 33764d6c3b Copter: Fix typo
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-03-26 15:39:23 +11:00
Peter Barker f4a21d446f Copter: move command-long DO_SET_HOME up 2019-03-19 19:56:13 +11:00
Peter Barker a5c18ff8f5 Copter: move vehicle_initialised to be on GCS not GCS_MAVLink 2019-03-19 14:39:14 +11:00
Peter Barker e22b29bce4 Copter: FrSky support has moved to GCS 2019-03-19 14:39:14 +11:00
Peter Barker 366051c39f Copter: use enum class for AltFrame enumeration 2019-03-19 10:31:18 +11:00
Peter Barker 85d9dd6f64 Copter: move sending of RPM message up 2019-03-16 10:33:01 +09:00
Peter Barker f189860162 Copter: use enum class for ArmingMethod and ArmingRequired 2019-03-12 19:48:14 +11:00
Peter Barker 281dbfcef8 Copter: support send_extended_sys_state 2019-03-12 09:16:13 +09:00
Peter Barker eed73749f9 Copter: move sending of send_pid_tuning up 2019-03-05 10:41:56 +11:00
Andrew Tridgell ef3306d408 Copter: fixed crash on mavlink send before pos_control is allocated 2019-02-26 16:18:26 +11:00
Peter Barker a48f461158 Copter: remove position-vector methods
Both were used in just one place
2019-02-26 14:09:21 +11:00
Peter Barker 5ff80e06d1 Copter: move update_sensor_status_flags into GCS subclasses 2019-02-19 14:09:59 +11:00
Peter Barker 039aa3f3b3 Copter: move sensor flags to be a GCS thing rather than a GCS_MAVLINK thing 2019-02-19 14:09:59 +11:00
Peter Barker f759c7ac7e Copter: GCS_MAVLink takes care of mavlink capabilities 2019-02-19 13:14:52 +11:00
Peter Barker 9bc23d3f28 Copter: move try_send_message of nav_controller_output up 2019-02-19 10:08:00 +11:00
Peter Barker 0dce6172f2 Copter: use visual odometry singleton 2019-02-15 16:56:13 +11:00
Peter Barker 13db459f49 Copter: remove redundant home-setting sanity checks 2019-02-15 08:28:45 +11:00
Peter Barker 5ae52038fa Copter: make setting of home boolean in preparation for sanity checks 2019-02-15 08:28:45 +11:00
Peter Barker 270fa2dfb9 Copter: move handling of command-int MAV_CMD_DO_SET_HOME up 2019-02-13 09:42:26 +11:00
Peter Barker 3765bae5e0 Copter: remove checking for coordinate frames
This is very much NFC.  This change uncovers previous dead code in the
case that we are not ignoring yaw.
2019-02-12 09:07:50 +09:00
Peter Barker 243cf690da Copter: use altitude frame mapping function 2019-02-12 09:07:50 +09:00
Peter Barker 47a0796684 Copter: move handling of fence point handling up 2019-02-08 11:47:59 +09:00
Peter Barker 727d42be1c Copter: move handling of MAV_CMD_DO_SET_FENCE_ENABLED up
This has the effect of losing the statustext messages.  We should not be
sending statustext messages for things that complete successfully, and
this data is available in the fence_status mavlink message (and in
SYS_STATUS too)
2019-02-08 11:47:59 +09:00
Peter Barker 587e02e92e Copter: remove pv_ functions that duplicate Location functions 2019-02-06 11:02:50 +09:00
Peter Barker 609b4f87c5 Copter: move handling of RC_CHANNELS_OVERRIDE up 2019-02-05 13:59:21 +11:00
Peter Barker 7197cf9e5c Copter: move sending of sys_status message up 2019-02-05 11:07:39 +11:00
Randy Mackay 42c7f5ceb4 Copter: integrate WPNAV::set_speed_z split to set_speed_up and set_speed_down 2019-01-31 19:34:32 +09:00
Randy Mackay 717fb4d823 Copter: integrate AC_WPNav::get_speed rename to get_default_speed 2019-01-31 19:34:32 +09:00
Peter Barker 1412921561 Copter: move sending of fence_status message up 2019-01-31 13:44:29 +09:00
Peter Barker b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
Peter Barker 845f015648 Copter: adjust for Location_Class and Location unification 2019-01-16 11:45:29 +11:00
Peter Barker f48d757bd4 Copter: adjust for location flags being moved out of union 2019-01-16 11:45:29 +11:00
Michael du Breuil 6bb84bfcc5 Copter: Remove unneeded GCS rally override 2019-01-08 10:39:50 +11:00
Peter Barker 8626c9573a Copter: split SIMSTATE, AHRS2 and AHRS3 onto their own ap_message ids 2018-12-19 13:19:23 +11:00
Peter Barker 56ec2691ae Copter: split DISTANCE_SENSOR onto its own ap_message id 2018-12-19 07:24:37 +11:00
Peter Barker bfc82fb1d8 Copter: try_send_message caller checks telemetry_delayed 2018-12-18 14:25:56 +11:00
Peter Barker f8a05564e8 Copter: split SYS_STATUS and POWER_STATUS onto separate ap_messages 2018-12-18 14:05:20 +11:00
Peter Barker 0e6efd6de0 Copter: move accept_packet to GCS_MAVLink base class 2018-12-14 12:44:31 +11:00
Peter Barker 8ac5ee02ea Copter: GCS_MAVLink now uses Mission singleton 2018-12-13 10:52:52 +09:00
Peter Barker ca2a49c1c6 Copter: split MSG_SCALED_PRESSURE into three separate messages 2018-12-12 21:36:01 +11:00
Peter Barker ff89000e96 Copter: split MSG_RAW_IMU1 into per-IMU ap_messages 2018-12-10 12:52:41 +09:00
Peter Barker 3d8588a636 Copter: send both SYS_STATUS or POWER_STATUS or neither 2018-12-10 12:52:41 +09:00
Peter Barker 75fb9780f7 Copter: rename send_extended_status1 to send_sys_status 2018-12-10 12:52:41 +09:00
Peter Barker 05f2e51b4d Copter: adjust for new update entry points into GCS 2018-12-10 12:52:41 +09:00
Peter Barker 924b278120 Copter: add parameter stream to list-of-all-streams 2018-12-10 12:52:41 +09:00
Peter Barker 41ead10d22 Copter: rename MSG_EXTENDED_STATUS2 to MSG_MEMINFO 2018-12-04 18:01:38 +11:00
Peter Barker 7e76871b9e Copter: rename MSG_RAW_IMU2 and MSG_RAW_IMU3 to reflect what they send 2018-12-04 17:45:32 +11:00
Peter Barker ee5339f931 Copter: remove pointless wrappers around gcs functions 2018-11-23 10:56:17 +11:00
Peter Barker 33d40500ac Copter: move sending of optical flow status up to base class 2018-11-13 10:40:23 +11:00
Peter Barker 73940df48e Copter: move mission into mode_auto 2018-11-09 13:35:40 +09:00
Peter Barker 72440e2af3 Copter: allow VFR_HUD.alt to be relative-alt if DEV_OPTIONS has bit 2 set 2018-11-06 11:26:38 +09:00
Peter Barker 1d322046b0 Copter: tidy up send_pid_tuning 2018-11-06 08:19:15 +09:00
Peter Barker 7c86ce4d81 Copter: change default streamrate for ADSB from 5 to 0
No other stream has a default streamrate in Copter.

This causes us small amounts of overhead as it marks all channels as
streaming.
2018-11-05 14:57:55 +09:00
Peter Barker 859f4828a1 Copter: move handling of gimbal messages up
Copter: move handling of mav_cmd_do_mount_control up

Copter: move handling of deprecated mount messages up

Copter: move handling of command_do_set_roi up

Copter: move handling of command_do_set_roi up

Copter: mount no longer takes ahrs in constructor
2018-10-30 17:19:14 +11:00
Peter Barker 1a660cefae Copter: remove unused STREAM_RAW_CONTROLLER_msgs variable 2018-10-16 10:17:12 +11:00
Sam Bristow 823d09b212 Copter: Fix confusing indentation
Commit d94663d5 introducted a minor whitespace issue which made the
indentation of the nested if statements slightly confusing. We may as
well clean it up sooner rather than later :-)
2018-10-15 16:32:15 +11:00
chobitsfan d94663d5af Copter: support changing vertical speed in DO_CHANGE_SPEED 2018-10-13 13:16:26 +09:00
Raouf 46b669a056 Copter: send obstacle_distance messages to proximity lib 2018-10-02 10:37:13 +09:00
Peter Barker a30cdf6806 Copter: eliminate failsafe.rc_override_active
Use RC_Channels::has_active_overrides() instead
2018-09-05 11:54:32 +10:00
Peter Barker ec6c59faa3 Copter: move handling of disable-gcs-rc-overrides-channel-option up 2018-09-05 11:54:32 +10:00
Peter Barker f005ee4a4c Copter: use camera singleton to get camera rather than callback 2018-08-31 15:48:56 +10:00
Peter Barker ec52c22c7c Copter: GCS_MAVLink uses compass singleton, stop implementing get_compass 2018-08-31 15:48:56 +10:00
Randy Mackay 920300899e Copter: rename gcs_check_input to gcs_update
this makes the names consistent with Rover and Plane
2018-08-24 15:30:50 +09:00
Matt fd332287b2 COPTER: Add mavlink landing gear control
Add MAV_CMD_AIRFRAME_CONFIGURATION (# 2520), which is for landing gear
control.
Param 1 is not used in ArduPilot
Param 2 is deploy/retract. 0 is deploy, 1 is Retract
2018-08-03 10:59:15 +09:00
Peter Barker 819d892baf Copter: handle MAV_CMD_ACCELCAL_VEHICLE_POS in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker 7fc580921a Copter: handle command_long in GCS base class 2018-07-06 09:43:09 +10:00
Peter Barker aa4ee64af2 Copter: handle command_int in base class 2018-07-06 09:43:09 +10:00
Peter Barker df83cb034e Copter: use ArmingMethod enumeration 2018-07-03 15:16:38 +10:00
Peter Barker c84b102c1c Copter: move mavlink reboot code up to base class 2018-07-03 12:12:25 +10:00
Peter Barker cff1969a29 Copter: make do_user_takeoff a member of Mode 2018-06-26 09:11:21 +09:00
Peter Barker 70d159cb38 Copter: raise EKF failure even if USB is connected
This will let EKF go bad if your PixHawk is connected to your laptop.
This doesn't seem to be a problem for the other vehicles.

This also allows the EKF to go bad in-flight if you happen to have
connected (against AP's recommendations) your companion computer to your
flight controller via USB.  Since people do this, it is better to have
the checks than not.
2018-06-26 10:07:55 +10:00
Pierre Kancir 2d5cbd2cf8 ArduCopter: report crosstrack_error 2018-06-26 08:42:14 +09:00
Andrew Tridgell b43316d743 Copter: added ESC_TELEMETRY to mavlink streams 2018-06-21 10:48:02 +10:00
Peter Barker ca8a1ae488 Copter: use magic force arm/disarm definitions 2018-06-20 11:43:38 +10:00
Peter Barker fd9ce90b8e Copter: option to force arm, bypassing checks 2018-06-20 11:43:38 +10:00
Peter Barker 4d6408857f Copter: return appropriate response to failed disarm 2018-06-20 11:43:38 +10:00
Peter Barker 485cafb343 Copter: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Peter Barker 955baa47c2 Copter: move handling of MAV_CMD_DO_GRIPPER up 2018-06-11 19:07:39 +01:00
Michael du Breuil 6c94811e00 Copter: Update to support new RC override conventions 2018-06-05 09:51:09 +10:00
Peter Barker 78d2c52a3f Copter: move try_send_message handling of EKF_STATUS_REPORT up 2018-06-01 16:12:45 +01:00
Peter Barker 7c98082389 Copter: create persist_streamrates() callback to indicate persistence 2018-05-29 13:08:29 +10:00
Peter Barker 5f2221fe74 Copter: move handling of VFR_HUD into GCS_MAVLink_Copter 2018-05-29 13:00:40 +10:00
Peter Barker 81e9edd80a Copter: move sending of sim state up 2018-05-23 18:36:50 +10:00
Peter Barker ec1539f9c8 Copter: add type-correctness for stream messages 2018-05-22 11:21:25 +10:00
Peter Barker de7a8e20e2 Copter: eliminate MSG_LIMITS_STATUS 2018-05-22 09:05:14 +09:00
Peter Barker 50ca76b6bd Copter: move try_send_message of servo-output-raw up 2018-05-21 19:08:08 +01:00
Peter Barker 7c8583d51d Copter: implement sending of position_target_global_int 2018-05-18 20:26:37 +10:00
Peter Barker 33582107b6 Copter: move sending of GLOBAL_POSITION_INT up to GCS_MAVLINK 2018-05-17 15:48:06 +01:00
Peter Barker da1b2579c4 Copter: move send_attitude up to GCS_MAVLINK 2018-05-17 18:28:43 +10:00
Peter Barker e4a2b03488 Copter: move try_send_message sending of scaled_pressure up 2018-05-17 15:37:14 +10:00
Peter Barker 88883c7c7f Copter: move try_send_message sending of sensor offsets up 2018-05-17 15:37:14 +10:00
Peter Barker 93f1815d50 Copter: move try_send_message of RAW_IMU up to GCS_MAVLINK 2018-05-17 15:37:14 +10:00
Peter Barker 9dce133938 Copter: handle setting of ekf origin in GCS_MAVLink 2018-05-17 10:13:42 +10:00
Michael du Breuil fe8e1b4274 Copter: Move MAVLink rangefinder up to parent 2018-05-16 23:21:41 +01:00
Michael du Breuil 033a8ec4d5 Copter: Send all distance sensors 2018-05-16 23:21:41 +01:00
Peter Barker ec6fb0c612 Copter: move sending of battery data up 2018-05-09 11:40:31 -07:00
Peter Barker e90ce4ced9 Copter: move data stream send up 2018-05-09 16:15:38 +10:00
Peter Barker dee40f3fe5 Copter: make scheduler track whether it has called the delay callback 2018-05-09 16:15:38 +10:00
Peter Barker 6dd9f50f7c Copter: move try_send_message handling of RC_CHANNELS up 2018-05-08 12:33:32 +01:00
Peter Barker 75ad33ddcd Copter: move try_send_message of heartbeats up to GCS_MAVLINK 2018-05-07 11:30:13 -06:00
Peter Barker d7af5c0c44 Copter: move try_send_message handling of VIBRATION up 2018-05-07 11:23:28 -06:00
Dr.-Ing. Amilcar do Carmo Lucas c8d1dad493 Copter: document stream content 2018-04-27 19:54:00 +09:00
Peter Barker 4b5953734d Copter: use AP_ServoRelayEvents singleton 2018-04-18 20:31:55 +09:00
Peter Barker ba8b3e2415 Copter: create an AutoYaw helper object to hold auto-yaw state 2018-04-18 13:27:43 +09:00
Michael du Breuil d96919ed21 Copter: Use RC_Channels instead of hal.rcin 2018-04-11 21:47:07 +01:00
Michael du Breuil adb7ecef92 Copter: Check MANUAL_CONTROL target 2018-04-10 16:54:34 +01:00
Francisco Ferreira 8ff74f31e9
Copter: fix method shadowing 2018-04-03 16:29:33 +01:00
Peter Barker 0c8110ecb2 Copter: factor vehicle's mavlink send_heartbeat 2018-04-03 13:05:19 +01:00
Peter Barker d58e2214d2 Copter: tidy handling of barometer calibrations 2018-04-02 23:25:05 +01:00
Peter Barker cca4d5136e Copter: move common calibration functions up 2018-04-02 23:25:05 +01:00