Commit Graph

523 Commits

Author SHA1 Message Date
Peter Barker 83ca008f4e GCS_MAVLink: divide time allowed to send messages fairly 2020-05-11 18:15:39 +10:00
Matt Lawrence 9209b5f8dc GCS_Mavlink: Add routing for GoPro heartbeat 2020-05-11 18:15:39 +10:00
Andrew Tridgell e0b849594d GCS_MAVLink: don't send statustext from other than main thread
This fixes high stack usage in the RCIN thread when it notifies the
GCS of a new RCIN protocol. The problem is severe when signing is
enabled, as signing adds over 500 bytes to stack cost of sending a
mavlink msg

fixes issue #13615
2020-02-23 07:41:59 +11:00
Randy Mackay 7114402d27 GCS_MAVLink: send rc output mode banner to GCS 2020-02-23 07:41:39 +11:00
Randy Mackay 4a22f6b66a GCS_MAVLink: send optflow message even if no height estimate 2020-02-05 10:51:30 +11:00
Peter Barker 28dbfa7860 GCS_MAVLink: adjust for proximity status namespace change 2020-02-05 10:51:30 +11:00
Peter Barker af0e37478f GCS_MAVLink: adjust for proximity rangefinder types changing namespacing 2020-02-05 10:51:30 +11:00
Peter Barker d82f6882b2 GCS_MAVLink: any internal error means MAV_STATE_CRITICAL 2020-02-05 10:51:29 +11:00
Michael du Breuil 52e3d3534f GCS_MAVLink: Initial FTP support 2020-02-05 10:51:29 +11:00
Michael du Breuil 3d8fc54b5d GCS_MAVLink: Use the vehicle singleton to directly set the flight mode 2020-02-05 10:51:28 +11:00
Andrew Tridgell a832c3bff0 GCS_MAVLink: supply IMU temperature in mavlink extensions 2020-02-05 10:13:52 +11:00
Randy Mackay b3fbceccb2 GCS_MAVLink: minor fix to set_message_interval 2020-02-05 10:10:37 +11:00
Tatsuya Yamaguchi 48307e2268 GCS_MAVLink: add set_message_interval functions 2020-02-05 10:10:37 +11:00
Peter Barker 179db476bf GCS_MAVLink: allow upload of fence using mission item protocol
GCS_MAVLink: add support for fence inclusion circles

GCS_MAVLink: factor out a transfer_is_complete; start commenting properly
2020-02-05 10:09:54 +11:00
Randy Mackay 586b1f3c8c GCS_MAVLink: allow proximity to send only upward facing distances
this removes the requirement that a horizontal proximity sensor be enabled
2020-02-05 10:09:54 +11:00
Peter Barker 882d3b0c0d GCS_MAVLink: use singleton to get AP_AdvancedFailsafe pointer 2020-02-05 10:04:08 +11:00
Andrew Tridgell aea2238936 GCS_MAVLink: support MAV_CMD_FIXED_MAG_CAL_YAW 2020-01-10 18:48:49 +11:00
Andrew Tridgell 87f2839f3e GCS_MAVLink: fixed critical error on prefight cal ops 2019-12-12 20:43:35 +11:00
Andrew Tridgell 595a49eec4 GCS_MAVLink: send temperature for IMUs 2019-12-09 13:25:18 +11:00
Peter Barker 8da978b913 GCS_MAVLink: use sending_mavlink1 method in send_rc_channels_raw 2019-09-12 16:10:23 +10:00
Andrew Tridgell 98c2606c0a GCS_MAVLink: fixed assumption on return of snprintf 2019-09-12 08:43:31 +10:00
Peter Barker 8fc55b9678 GCS_MAVLink: remove comm_get_available
available returns an unsigned integer, so this was just weird
2019-09-10 15:45:27 +10:00
Peter Barker df5921a87c GCS_MAVLink: gate AP_DEVO_Telem behind !HAL_MINIMIZE_FEATURES 2019-09-04 17:47:33 +10:00
Michael du Breuil e5eeb6181d GCS_MAVLink: Remove the usage of force_safety_no_wait 2019-09-04 07:14:50 +10:00
Michael du Breuil a74f00d045 GCS_MAVLink: Remove single use method 2019-09-03 14:35:17 +10:00
Peter Barker 5d9b332bcb GCS_MAVLink: log exectuted COMMAND_LONG and COMMAND_INT packets 2019-08-27 09:32:00 +10:00
Andrew Tridgell cfc37f2089 GCS_MAVLink: log corrected timestamp for vision data
this allows for debugging of link lag issues
2019-08-26 12:27:31 +10:00
Peter Barker 052e721622 GCS_MAVLink: tweak timings debug messages 2019-08-24 15:33:50 +10:00
Peter Barker 74670a77be GCS_MAVLink: avoid allocating a GCS_MAVLINK per mavlink channel 2019-08-14 18:25:43 +10:00
Peter Barker 67bf00c1c3 GCS_MAVLink: ensure payload space before sending message ack
Also add comment about how we shouldn't be sending this message at all.
2019-08-13 16:48:17 +10:00
Peter Barker bb542ca39a GCS_MAVLink: queue AUTOPILOT_VERSION for sending instead of direct-send
Also allows the message to be requested for streaming or with
REQUEST_MESSAGE

We weren't checking for buffer space before sending this out, so it was
a possible source of corruption.
2019-08-13 16:29:45 +10:00
Peter Barker 57528b94cf GCS_MAVLink: allow complete() call on subclasses to fail
Also terminate uploads if any error occurs fetching items
2019-08-07 12:07:59 +10:00
Peter Barker 4b012ab62b GCS_MAVLink: deny upload of non-MISSION items if not doing mavlink2 2019-08-06 13:58:44 +10:00
Peter Barker cf0b7cf016 GCS_MAVLink: pass link object in place of channel to compass cal
Also eliminate intermediate function as just adding noise
2019-08-05 09:23:10 +10:00
Peter Barker 880e96448b GCS_MAVLink: tighten type on mavlink_coordinate_frame_to_location_alt_frame 2019-08-01 17:45:30 +10:00
Randy Mackay 767408ffe9 GCS_MAVLink: resolve gcs::send_text compiler warning 2019-07-30 09:02:39 +09:00
Peter Barker 5e55aedd20 GCS_MAVLink: add printf-format attribute to send_text methods 2019-07-26 10:54:41 +10:00
Peter Barker 0bbe049477 GCS_MAVLink: assert max length of statustexts we send to the GCS 2019-07-22 23:05:15 -07:00
Peter Barker 93ca243987 GCS_MAVLink: rearrange mission item handling code
This splits the missionitemprotocol handling entirely into separate
header files and separate compilation units.
2019-07-18 10:48:57 +09:00
Pierre Kancir b1506ca652 GCS_MAVLink: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Peter Barker 459680e7c8 GCS_MAVLink: make Avoidance responsible for sending collision message 2019-07-16 09:52:54 +10:00
Michael du Breuil b3c6d3d75a GCS_MAVLink: Refactor battery current interface 2019-07-14 00:28:00 -07:00
Peter Barker 6cb8fcc466 GCS_MAVLink: move use of AP_AHRS_NAVEKF_AVAILABLE into cpp file
This is defined in AP_AHRS which we only get transitively in the header
2019-07-09 22:32:57 +10:00
Peter Barker 1ebbe45fe1 GCS_MAVLink: split sending of RC_CHANNELS and RC_CHANNELS_RAW
Before this patch is applied we may never send the second message
because there's not room for it in the buffer and we can't return
failure-to-send (always interpreted as "retry") as we're in a void function.

Further, if you are on a mavlink2 connection we will not send out the
RC_CHANNELS_RAW message, depriving the user of any RC_CHANNELS messages.

This patch does have the drawback of doing more work on a mavlink1
connection - it has to fetch the data twice.  On the other hand, it also
allows the GCS to set the message rates independently for both
RC_CHANNELS and RC_CHANNELS_RAW so one or the other can be squelched.
That could be handy for reducing bandwidth if you know you're not using
more than 8 input channels.
2019-07-09 13:08:45 +10:00
Peter Barker c8353c1c13 GCS_MAVLink: fill target system and target component in MISSION_ITEM responses 2019-07-09 09:25:06 +10:00
Peter Barker ebd8170a15 GCS_MAVLink: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Michael du Breuil 18e979fd4f GCS_MAVLink: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil f955a4e4d5 GCS_MAVLink: Don't retain a FrSky instance if we aren't using it
Saves 96 bytes of RAM
2019-06-26 11:59:41 +10:00
Peter Barker 278ac5e6ed GCS_MAVLink: correct deferred body timing debug 2019-06-25 19:59:49 +10:00
Peter Barker feddaabc42 GCS_MAVLink: handle out-of-time to send messages in parent class 2019-06-25 10:29:40 +10:00