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
Peter Barker
210c2070a1
GCS_MAVLink: remove include of AP_Param.h in GCS_MAVLink.h
...
This will help break include loops.
2019-07-17 18:05:29 +10: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
Peter Barker
c0993509f7
GCS_MAVLink: declare GCS_MAVLINK as a class as it hasn't been defined yet
2019-07-16 09:29:48 +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
c6533723de
GCS_Param: correct sending of parameters of length 16
2019-07-06 18:06:17 +10:00
Peter Barker
ebd8170a15
GCS_MAVLink: add missing include for AP_RTC
2019-07-04 13:57:40 +10:00
Peter Barker
f31b7b5772
GCS_MAVLink: remove stray undef of undefined macro
2019-07-02 10:02:55 +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
Andrew Tridgell
f28df4dff1
GCS_MAVLink: support MAV_CMD_BATTERY_RESET command
2019-06-25 09:56:25 +10:00
Peter Barker
a55c40949b
GCS_MAVLink: remove pointless protocol parameter to setup_uart
2019-06-25 09:47:08 +10:00
Peter Barker
ca449cd979
GCS_MAVLink: stop pointlessly passing serial manager around
2019-06-25 09:47:08 +10:00
Peter Barker
45fab82345
GCS_MAVLink: eliminate redundant static pointer to serialmanager
2019-06-25 09:47:08 +10:00
Andrew Tridgell
b6dbb8f464
GCS_MAVLink: always show AHRS healthy with EKF type 10
...
this fixes an issue noticed by Marco with xplane
2019-06-25 00:28:45 +08:00
Peter Barker
c11da6a85d
GCS_MAVLink: routing example: use GCS_Dummy in place of custom GCS
2019-06-20 11:41:19 +10:00
Peter Barker
0963957b31
GCS_MAVLink: correct GCS_Dummy firmware version
2019-06-18 10:54:01 +10:00
Peter Barker
c39a622653
GCS_MAVLink: take sw_version from AP_FWVersion struct
2019-06-18 10:54:01 +10:00
Peter Barker
a2c4bfea0c
GCS_MAVLink: use send_to_active_channels for parameters
2019-06-18 10:27:56 +10:00
Michael du Breuil
be7afe346b
GCS_MAVLink: Fix AP_GPS include
2019-06-18 10:02:05 +10:00
Michael du Breuil
8c00102259
GCS_MAVLink: Reduce scoping on AP_BattMonitor include
2019-06-18 10:02:05 +10:00
Peter Barker
ae85994c59
GCS_MAVLink: include internal error count as errors4 in SYS_STATUS
2019-06-12 10:05:59 +10:00
Peter Barker
f385a4a329
GCS_Common: fix compiler warnings on missing parentheses
2019-06-11 21:50:53 +10:00
Randy Mackay
6ed09d83f3
GCS_MAVLink: send_home_position uses const Location reference
2019-06-11 13:13:22 +09:00
Rajat Singhal
bc22aeb4da
GCS_Mavlink: Correct format specifier in UART panic message
2019-06-11 13:36:03 +10:00
Peter Barker
a025794bae
GCS_MAVLink: correct is_streaming check and update of is-streaming mask
2019-06-11 09:26:10 +10:00
Peter Barker
264a757095
GCS_MAVLink: add send_to_active_channels method
2019-06-06 12:41:48 +10:00
Peter Barker
4d46c801f2
GCS_MAVLink: panic in SITL if we fail to write to uart
2019-06-06 12:41:48 +10:00
Peter Barker
99c56c1770
GCS_MAVLink: fix MAV.txp log field
...
This was being promoted to an unsigned.
2019-06-04 09:05:37 +10:00
Peter Barker
75ae6b59b0
GCS_MAVLink: allow Copter to disallow mavlink disarm
2019-05-30 07:37:30 +09:00
Peter Barker
e340873d88
GCS_MAVLink: canonicalise on success on commanded-to-arm-when-armed
...
This means the mavlink return value indicates the current arm status of
the vehicle rather than success/failure of transitioning to the armed or
disarmed state (where trying to arm when armed is considered a failure).
MAVLink is a lossy communication mechanism. It would not be
unreasonable for a GCS to issue a disarm command multiple times to
increase the chances of the command getting through.
2019-05-30 07:37:30 +09:00
Peter Barker
b857d2c1af
GCS_MAVLink: handle MAV_CMD_COMPONENT_ARM_DISARM
2019-05-30 07:37:30 +09:00
Peter Barker
1b90643751
GCS_MAVLink: report more internal errors in SYS_STATUS
2019-05-23 07:29:29 +10:00
Peter Barker
d0105c8fa7
GCS_MAVLink: factor mission handling, use for Rally
...
GCS_MAVLink: allow all mission types to be cleared
GCS_MAVLink: remove unused parameters from handle-mission-count
2019-05-22 08:53:45 +10:00
Andrew Tridgell
e2d863498b
GCS_MAVLink: clear last msgs when done
...
this makes MON and WDOG logs clearer
2019-05-17 08:56:06 +10:00
Andrew Tridgell
64c723fd31
GCS_MAVLink: record mavlink msg IDs for watchdog
2019-05-15 15:33:48 +10:00
Andrew Tridgell
3772f58be9
GCS_MAVLink: removed unusued AP_Common/Semaphore.h
2019-05-15 15:33:48 +10:00
Tom Pittenger
1f3c3c853f
GCS_MAVLink: move heartbeat sending to gcs instead of by vehicles
2019-05-14 10:54:45 -06:00
Tom Pittenger
4c641c6e2b
GCS_MAVLink: comply with mavlink spec to ignore rc_override UINT16_MAX
2019-05-10 15:30:54 -07:00
Jaaaky
971e3af826
GCS_MAVLink: prgama away address-of-packed-member only for g++ >= 9
2019-05-03 01:57:26 +10:00
Peter Barker
9273ac3631
GCS_MAVLink: pragma away address-of-packed-member
...
g++-9 throws a lot of warnings for taking addresses of packed members.
We can have this warning for our ArduPilot code, but there's way too
many issues within MAVLink to put up with.
2019-05-01 19:36:49 -07:00
Peter Barker
a0c80a0b3b
GCS_MAVLink: make send_text and send_textv const
2019-05-01 10:18:46 +10:00
Peter Barker
e6653f42dd
GCS_MAVLink: correct examples with override keyword
2019-04-30 09:29:59 +10:00
Pierre Kancir
e3057b40f3
GCS_MAVLINK: remove mavlink send_buf usage
2019-04-23 09:41:00 +10:00
Pierre Kancir
cc14885913
GCS_MAVLINK: remove mavlink send_buf usage
2019-04-23 09:41:00 +10:00
Andrew Tridgell
2313970eaf
GCS_MAVLink: added method to lockup autopilot
...
used for watchdog testing
2019-04-22 16:53:35 +10:00
Peter Barker
c143ec47da
GCS_MAVLink: Bitmask is now a template
2019-04-16 15:12:07 +10:00
Peter Barker
efb98437e6
GCS_MAVLink: move setting of compass sys_status bits up
2019-04-16 09:48:23 +10:00
Peter Barker
08cbf18958
GCS_MAVLink: header include fixes for RSSI changes
2019-04-09 09:33:13 +10:00
Pierre Kancir
5a7081b457
GCS_MAVLink: move check_latlng to Location
2019-04-08 12:56:01 -07:00
Andrew Tridgell
f998a74adf
GCS_MAVLink: don't report SCALED_PRESSURE2 with a non-existant airspeed sensor
2019-04-08 12:52:19 +10:00
Randy Mackay
bbd051b246
GCS_MAVLink: send OPTICAL_FLOW messages to optical flow driver
2019-04-08 11:26:59 +09:00
Peter Barker
31daaf9933
GCS_MAVLink: add floating-point-constant designators
2019-04-05 23:04:17 -07:00
Peter Barker
5c4983ffcd
GCS_MAVLink: stop converting compass cal floats to ints before saving
2019-04-05 06:09:25 -07:00
Michael du Breuil
8cafbe394f
GCS_MAVLink: Fix includes
2019-04-05 20:12:53 +11:00
Rajat Singhal
b7a40f2bfe
GCS_Mavlink: Add function for sending POSITION_TARGET_LOCAL_NED message
2019-03-29 09:11:14 +11:00
Tom Pittenger
8845cc2053
GCS_MAVLink: rename dataflash to logger
2019-03-28 16:40:58 +11:00
Peter Barker
30a66d9f13
GCS_MAVLink: implement a convenience manual_override method
2019-03-27 22:33:47 -07:00
Randy Mackay
b496af411e
GCS_MAVLink: fix typo
2019-03-28 13:54:19 +09:00
Peter Barker
778bff966c
GCS_MAVLink: stop passing dataflash into handle_radio_status
...
It can use the singleton instead
2019-03-27 10:38:39 +11:00
Peter Barker
0ef26a6950
GCS_MAVLink: add support for request_message
2019-03-26 16:20:50 +11:00
Peter Barker
2796beac8d
GCS_MAVLink: move various sensor status flag updates up
2019-03-26 11:03:21 +11:00
Peter Barker
b3203601f3
GCS_MAVLink: send internal errors as bitmask in sys_status
2019-03-21 21:34:33 +11:00
Peter Barker
236056ffbd
GCS_MAVLink: take 0,0 as meaning set-home-to-current-location
...
This isn't in spec, but is what Sub used to do, and what other vehicles
also used to do.
We treat 0,0 as "current location" in various other places, so it kind
of makes sense here too.
2019-03-19 19:56:13 +11:00
Peter Barker
95745f0d31
GCS_MAVLink: move command-long DO_SET_HOME up
2019-03-19 19:56:13 +11:00
Peter Barker
bc2080cea2
GCS_MAVLink: move devo telemetry handling to GCS
2019-03-19 14:39:14 +11:00
Peter Barker
3100c8edad
GCS_MAVLink: GCS can report simple/supersimple input modes
2019-03-19 14:39:14 +11:00
Peter Barker
cf264a7d5e
GCS_MAVLink: move vehicle_initialised to be on GCS not GCS_MAVLink
2019-03-19 14:39:14 +11:00
Peter Barker
b12d20d86c
GCS_MAVLink: add support for frame_string
2019-03-19 14:39:14 +11:00
Peter Barker
ab1c42696c
GCS_MAVLink: move FRsky telemetry up into common GCS telemetry class
2019-03-19 14:39:14 +11:00
Peter Barker
5eb9622105
GCS_MAVLink: correct compilation for ALT_FRAME issue
2019-03-19 12:06:03 +11:00
Michael du Breuil
75caad52c0
GCS_MAVLink: Always check the return value on get_velocity_NED
2019-03-19 11:42:54 +11:00
Andrew Tridgell
778b88cba2
GCS_MAVLink: disable reboot when armed
...
this prevents reboot on vehicles that have ARMING_REQUIRE=0, which
applies to some planes, but those vehicles tend to not use MAVLink
reboot anyway.
2019-03-19 10:53:37 +11:00
Peter Barker
3dc2db8d9a
GCS_MAVLink: queue parameter request even if we can't fit a reply ATM
2019-03-19 10:37:09 +11:00
Peter Barker
4eba6d4fe2
GCS_MAVLink: exempt requested parameters from buffer space reservation
...
Fixes a problem where we reserve space to send replies but then do not
bypass the reserved-space checks when sending them.
2019-03-19 10:37:09 +11:00
Peter Barker
f0200a4d9b
GCS_MAVLink: GCS_Common: correct overflows in bandwidth and count calculations
2019-03-19 10:37:09 +11:00
Peter Barker
716b0fdc88
GCS_MAVLink: use enum class for AltFrame enumeration
2019-03-19 10:31:18 +11:00
Peter Barker
bb1ae30594
GCS_MAVLink: move sending of RPM message up
2019-03-16 10:33:01 +09:00
Randy Mackay
27b50f125c
GCS_MAVLink: send_set_position_target always sends alt-above-home
2019-03-15 14:51:35 +09:00
Randy Mackay
066a443e5f
GCS_MAVLink: add send_set_position_target_global_int
...
this supports sending the position target to an offboard navigation controller
2019-03-15 14:51:35 +09:00
Peter Barker
34e09a55be
GCS_MAVLink: support send_extended_sys_state
2019-03-12 09:16:13 +09:00
Michael du Breuil
f7b34677df
GCS_MAVLink: Don't send BATTERY_STATUS for empty instances
2019-03-11 22:42:59 +00:00
Peter Barker
74702b8688
GCS_MAVLink: make sending of send_pid_tuning up
2019-03-05 10:41:56 +11:00
IamPete1
20d79207d8
GCS_MAVLink: make send_global_position_int virtual
2019-03-01 20:57:54 +11:00
Peter Barker
ace5192852
GCS_MAVLink: retry sending home/origin if it fails
...
Also grants us the ability to stream these messages
2019-02-26 14:01:41 +11:00
Peter Barker
9f27e91f33
GCS_MAVLink: add simple stats to dataflash
2019-02-26 11:23:57 +11:00
Peter Barker
138d93702a
GCS_MAVLink: use Location to change alt frames
2019-02-26 10:35:39 +11:00
Peter Barker
49493676ea
GCS_MAVLink: use MAV_PARAM_TYPE for sending parameter messages
...
... rather than mavlink_message_type_t
2019-02-26 08:20:25 +11:00
Peter Barker
8de4ee7348
GCS_MAVLink: move update_sensor_status_flags into GCS subclasses
2019-02-19 14:09:59 +11:00
Peter Barker
cb33f290a7
GCS_MAVLink: move sensor flags to be a GCS thing rather than a GCS_MAVLINK thing
...
These are a per-vehicle thing, not a per-mavlink-backend thing.
2019-02-19 14:09:59 +11:00
Peter Barker
91c8d0b915
GCS_MAVLink: clarify packetReceive calling handlemessage checks
...
modules/libcanard/
2019-02-19 13:40:32 +11:00
Peter Barker
bfb3f0d62e
GCS_MAVLink: make capabilities comes from subclass, not HAL
2019-02-19 13:14:52 +11:00
Peter Barker
de615ee11d
GCS_MAVLink: move try_send_message of nav_controller_output up
2019-02-19 10:08:00 +11:00
Randy Mackay
f8e49e5438
GCS_MAVLink: call send_esc_telemetry for AP_ToshibaCAN ESCs
2019-02-18 20:55:47 +09:00
Peter Barker
4a0887b807
GCS_MAVLink: measure stream slowdown in ms
...
This costs us a couple of extra bytes of RAM and gains us not doing a
whole heap of multiplies
2019-02-16 13:45:47 +11:00
Peter Barker
63427629e1
GCS_MAVLink: use visual odometry singleton
2019-02-15 16:56:13 +11:00
Peter Barker
dffc5568fe
GCS_MAVLink: remove redundant home validation checks
2019-02-15 08:28:45 +11:00
Peter Barker
d8847a6192
GCS_MAVLink: move handling of command-int MAV_CMD_DO_SET_HOME up
2019-02-13 09:42:26 +11:00
Peter Barker
64b4e69e34
GCS_MAVLink: break out an altitude enumeration mapping function
2019-02-12 09:07:50 +09:00
Tom Pittenger
9f0e895c37
GCS_MAVLink: unify singleton naming to _singleton and get_singleton()
2019-02-10 19:09:58 -07:00
Peter Barker
be841d5d0a
GCS_MAVLink: add sanity check for rally mavlink message handling
2019-02-08 11:47:59 +09:00
Peter Barker
0ef7c6af59
GCS_MAVLink: move handling of fence point manipulation up
2019-02-08 11:47:59 +09:00
Peter Barker
8d45a8ff53
GCS_MAVLink: move handling of MAV_CMD_DO_SET_FENCE_ENABLED up
2019-02-08 11:47:59 +09:00
Peter Barker
ae68b58678
GCS_MAVLink: move handling of RC overrides up
...
Based on commit 8db5e5308731b6916d5da58a650cef015b887180 by dposea
2019-02-05 13:59:21 +11:00
Peter Barker
120f0822ae
GCS_MAVLink: move sending of sys_status message up
2019-02-05 11:07:39 +11:00
Peter Barker
f1907679e7
GCS_MAVLink: move sending of fence_status message up
2019-01-31 13:44:29 +09:00
Peter Barker
8b74ab32a3
GCS_MAVLink: support get_message_interval
2019-01-30 13:56:55 +09:00
Peter Barker
c487d120e3
GCS_Common: stop passing mission to Write_EntireMission
2019-01-29 19:07:05 -08:00
Pavlo Kolomiiets
094505a76a
GCS_MAVLink: add WHEEL_DISTANCE to ap_message enum
2019-01-28 19:35:18 +09:00
Michael du Breuil
753f360d06
GCS_Common: NACK a failed partial mission write
2019-01-23 00:06:07 -07:00
Peter Barker
b19f760628
GCS_MAVLink: don't allow signing key to be set up when armed
...
Discussion is here:
https://github.com/ArduPilot/ardupilot/issues/10298
2019-01-23 17:39:10 +11:00
Peter Barker
e4120c848c
GCS_MAVLink: correct payload space check for mission requests
2019-01-22 09:01:57 +11:00
Peter Barker
8e19e805c6
GCS_Common: clarify enumeration item name MSG_NEXT_WAYPOINT
2019-01-22 09:01:57 +11:00
Peter Barker
da1ded7cb9
GCS_MAVLink: rename queued_waypoint_send to queued_mission_request_send
2019-01-22 09:01:57 +11:00
Peter Barker
6fc76a32af
GLOBAL: use AP::logger() and strip redundant Log_ from methods
2019-01-18 18:08:20 +11:00
Peter Barker
b47733142f
GLOBAL: rename DataFlash_Class to AP_Logger
2019-01-18 18:08:20 +11:00
Peter Barker
33baae80b1
GCS_MAVLink: remove PX4-specific code that disables overrides on reboot
2019-01-18 17:32:02 +11:00
Francisco Ferreira
ee13110ad0
GCS_MAVLink: send KDECAN ESC telemetry
2019-01-18 00:57:33 +00:00
Francisco Ferreira
f68f83505c
GCS_MAVLink: add preflight CAN command
2019-01-18 00:57:33 +00:00
Andrew Tridgell
ea2970bf26
GCS_MAVLink: adjust for new fields in DISTANCE_SENSOR
2019-01-17 08:43:13 +11:00
Peter Barker
8fd8ae660b
GCS_MAVLink: send multiple async replies per call to send_queued_param
2019-01-15 10:11:21 +11:00
Peter Barker
99ea5d1a5e
GCS_MAVLink: avoid initial rush of params into uart
...
bandwidth calculation is based on this.
2019-01-15 10:11:21 +11:00
Peter Barker
35f3906424
GCS_MAVLink: do not adjust parameter stream rate on MAV_DATA_STREAM_ALL
2019-01-14 13:27:55 +11:00
Michael du Breuil
27d461348e
GCS_MAVLink: Use rally singleton
2019-01-08 10:39:50 +11:00
Andrew Tridgell
42283b2595
GCS_MAVLink: allow param send in delay callback
...
this is needed for startup sensor error handling
2019-01-04 19:17:31 +11:00
Peter Barker
701d8588cc
GCS_MAVlink: correct use of stream_slowdown
2019-01-03 14:57:05 +11:00
Peter Barker
9577cb8b39
GCS_MAVLink: send text messages to notify even if no GCSs connected
2019-01-03 14:56:27 +11:00
Andrew Tridgell
c99dd5f9e8
GCS_MAVLink: implement UART pass-thru
2018-12-29 15:58:22 +11:00
Peter Barker
aa7844e4a7
GCS_MAVLink: split SIMSTATE, AHRS2 and AHRS3 onto their own ap_message ids
2018-12-19 13:19:23 +11:00
Peter Barker
979e5261d5
GCS_MAVLink: remove unused method
2018-12-19 10:55:38 +09:00
Peter Barker
77be393ad4
GCS_MAVLink: split DISTANCE_SENSOR onto its own ap_message id
2018-12-19 07:24:37 +11:00
Peter Barker
61e048a41b
GCS_MAVLink: tidy queued_param_send a little
2018-12-18 21:51:31 +11:00
Peter Barker
f8863971a2
GCS_MAVLink: move try_send_message telemetry_delayed call up to caller
2018-12-18 14:25:56 +11:00
Peter Barker
039ade421e
GCS_MAVLink: split SYS_STATUS and POWER_STATUS onto separate ap_messages
2018-12-18 14:05:20 +11:00
Peter Barker
294be787f8
GCS_MAVLink: correct SYSID_ENFORCE for our own mavlink-connected components
2018-12-14 12:44:31 +11:00
Peter Barker
759a8e5553
GCS_MAVLink: move accept_packet to base class
2018-12-14 12:44:31 +11:00
Francisco Ferreira
a50a9c65ad
GCS_MAVLink: change order in removing message from bucket
...
A call to find_next_bucket_to_send would change sending_bucket_id so the if would have a wrong meaning
The call also changes the bucket_message_ids_to_send so currently there is no bug, but it can change
2018-12-14 09:17:02 +09:00
Peter Barker
dfd0ecd2bd
GCS_MAVLink: use mission singleton
2018-12-13 10:52:52 +09:00
Peter Barker
cf5dd7cdd7
GCS_MAVLink: emit pressure data for separate airspeed instances
2018-12-12 21:36:01 +11:00
Peter Barker
cc5ad393e7
GCS_MAVLink: split MSG_SCALED_PRESSURE into three separate messages
2018-12-12 21:36:01 +11:00
Peter Barker
eb2ef9fd2d
GCS_MAVLink: use dataflash singleton rather than storing pointer
2018-12-11 08:43:47 +09:00
Peter Barker
1c6af7d777
GCS_Common: don't attempt to shove timesync message into a full channel
2018-12-10 15:25:10 +11:00
Peter Barker
6e7b9aa727
GCS_MAVLink: remove dead code
2018-12-10 12:52:41 +09:00
Peter Barker
160c29e01f
GCS_MAVLink: change number of buckets to 10
2018-12-10 12:52:41 +09:00
Peter Barker
17c82999d0
GCS_MAVLink: use panic() call for what it is good for
2018-12-10 12:52:41 +09:00
Peter Barker
a9c5affe8a
GCS_MAVLink: be consistent about calling count() or first_set
2018-12-10 12:52:41 +09:00
Peter Barker
8d970c13c0
GCS_MAVLink: avoid considering no_message_to_send equal to -1
2018-12-10 12:52:41 +09:00
Peter Barker
57fee7e8ef
GCS_MAVLink: remove redundant check in find_next_bucket_to_send
2018-12-10 12:52:41 +09:00
Peter Barker
e91ee3e54a
GCS_MAVLink: rename confusingly-named method
2018-12-10 12:52:41 +09:00
Peter Barker
b696986de6
GCS_MAVLink: clarify extra code in do_try_send_message is debug code
2018-12-10 12:52:41 +09:00
Peter Barker
f9399a708c
GCS_MAVLink: use defined no_message_to_send constant for what it's good for
2018-12-10 12:52:41 +09:00
Peter Barker
0dfe5b64bf
GCS_MAVLink: clarify comment on sending requests
2018-12-10 12:52:41 +09:00
Peter Barker
54d9e74f17
GCS_MAVLink add description for special messages
2018-12-10 12:52:41 +09:00
Peter Barker
5a0e0e7a87
GCS_MAVLink: rename DEBUG_SEND_MESSAGE_TIMINGS to GCS_DEBUG_SEND_MESSAGE_TIMINGS
2018-12-10 12:52:41 +09:00
Peter Barker
b6ac20ce32
GCS_MAVLink: use correct type for streamrate values
2018-12-10 12:52:41 +09:00
Peter Barker
c70fec305c
GCS_MAVLink: avoid squashing close-together intervals into same bucket
2018-12-10 12:52:41 +09:00
Peter Barker
e4bc874083
GCS_MAVLink: cap the minimum message interval to 80% of the main loop rate
2018-12-10 12:52:41 +09:00
Peter Barker
e08a8d03d2
GCS_MAVLink: initialise last_sent_ms when reusing bucket
2018-12-10 12:52:41 +09:00
Peter Barker
09905bb2f2
GCS_MAVLink: send data for sensors even if no data for other sensors
...
This is notable when you have a lot of compasses, for example
2018-12-10 12:52:41 +09:00
Peter Barker
c15de72095
GCS_MAVLink: split MSG_RAW_IMU1 into per-IMU ap_messages
...
Also allows for sending SCALED_IMU for the first IMU rather than RAW_IMU
2018-12-10 12:52:41 +09:00
Peter Barker
ef46acda71
GCS_MAVLink: support MAV_CMD_SET_MESSAGE_INTERVAL
2018-12-10 12:52:41 +09:00
Peter Barker
f0a95182be
GCS_MAVLink: add is_active and is_streaming methods
2018-12-10 12:52:41 +09:00
Peter Barker
75e63db366
GCS_MAVLink: rename MSG_EXTENDED_STATUS2 to MSG_MEMINFO
2018-12-04 18:01:38 +11:00
Peter Barker
d5322633ed
GCS_MAVLink: rename MSG_RAW_IMU2 and MSG_RAW_IMU3 to reflect what they send
2018-12-04 17:45:32 +11:00
Andrew Tridgell
259723eb26
GCS_MAVLink: use JitterCorrection class
2018-12-04 11:37:38 +11:00
Randy Mackay
70817bb6a7
GCS_Common: optical flow comp fields should include flow
2018-11-28 20:38:58 +09:00
Matt
adf78ab8d3
MAVLINK: Forward to private channels if sysid and compid match
...
If the target system ID and target component ID match a private channel,
it is ok to forward that mavlink traffic. Any traffic without a
matching sysid or compid will not be forwarded on the channel
2018-11-28 11:33:23 +11:00
Peter Barker
686abb5e61
GCS_MAVLink: warn user via text message of mission upload failure
2018-11-26 14:31:41 -08:00
Andrew Tridgell
1e354d53c9
GCS_MAVLink: added private channel mask
...
this allows a channel to be marked "private". A private channel gets
heartbeats, but doesn't get forwarded packets or broadcast messages
This is used by solo gimbal driver
2018-11-24 11:00:37 +11:00
Peter Barker
f4cf4c7fa2
GCS_MAVLink: remove unused variable
2018-11-23 14:25:20 +09:00
Peter Barker
38fdcb02a4
GCS_MAVLINK: move sending of optical flow status up to base class
2018-11-13 10:40:23 +11:00
Peter Barker
3749cfd764
GCS_MAVLink: allow vehicles to override VFR_HUD.alt
2018-11-06 11:26:38 +09:00
Peter Barker
1eac03a257
GCS_MAVLink: scale parameter send rate according to link bandwidth
2018-10-30 19:31:37 +11:00
Peter Barker
890a62fc51
GCS_MAVLink: move handling of gimbal messages up
...
GCS_MAVLink: move handling of mav_cmd_do_mount_control up
GCS_MAVLink: move handling of deprecated mount messages up
GCS_MAVLink: move handling of command_do_set_roi up
GCS_MAVLink: move handling of command_do_set_roi up
GCS_MAVLink: handle MAV_CMD_DO_MOUNT_CONFIGURE
GCS_MAVLink: call renamed AP_Mount send_mount_status msg
GCS_MAVLink: add support for MAV_CMD_DO_SET_ROI_LOCATION
2018-10-30 17:19:14 +11:00
chobits
ed12c6719d
GCS_MAVLink: log vision data pitch/roll/yaw in degree
2018-10-30 11:39:47 +09:00
Peter Barker
96b5be0e7d
GCS_MAVLink: account for snprintf now null-terminating strings
2018-10-21 07:54:30 +11:00
Peter Barker
26e7abe6c4
GCS_MAVLink: use camera singleton to get camera rather than callback
2018-08-31 15:48:56 +10:00
Peter Barker
d5f6911db7
GCS_MAVLink: use compass singleton instead of subclass callback
2018-08-31 15:48:56 +10:00
Pierre Kancir
2661ad2ed3
GCS_Common: remove status text for gripper
2018-08-27 14:39:49 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
b9df513705
GCS_MAVLink: remove redundant ret = true statements (NFC)
2018-08-26 18:21:45 +10:00
Andrew Tridgell
5988c3258f
GCS_MAVLink: use Semaphore.h
2018-08-16 12:40:10 +10:00
Andrew Tridgell
a26e534654
GCS_MAVLink: use WITH_SEMAPHORE()
...
this is a suggestion from Peter, will need some discussion
2018-08-16 12:40:10 +10:00
Andrew Tridgell
048a52ebc0
GCS_MAVLink: make mavlink send from multiple threads safe
...
this takes a lock to prevent interleaving of mavlink msgs from
multiple threads
2018-08-16 12:40:10 +10:00
Andrew Tridgell
5de49aa5aa
GCS_MAVLink: flush parameters on reboot
2018-08-16 12:40:10 +10:00
Michael du Breuil
83d01c8b7d
GCS_MAVLink: Use ARRAY_SIZE to avoid a magic value
2018-08-09 11:53:05 +10:00
Michael du Breuil
21dfe02c6e
GCS_MAVLink: always send an idea of battery voltage as part of
...
BATTERY_STATUS
2018-08-07 09:52:45 +10:00
Andrew Tridgell
df643d8499
GCS_MAVLink: allow uninstall of alt protocol handler
2018-08-04 19:29:13 +10:00
Peter Barker
dbccd6a399
GCS_MAVLink: use rc() method to get rc singleton
2018-08-01 12:11:30 +09:00
Peter Barker
d698960728
GCS_MAVLink: correct bad fall-through
2018-07-06 10:43:17 +10:00
Peter Barker
3710c50c4e
GCS_MAVLink: handle MAV_CMD_ACCELCAL_VEHICLE_POS in GCS base class
2018-07-06 09:43:09 +10:00
Peter Barker
4775a67ea0
GCS_Common: handle command_long in GCS base class
2018-07-06 09:43:09 +10:00
Peter Barker
4ad065de99
GCS_MAVLink: handle command_int in base class
2018-07-06 09:43:09 +10:00
Peter Barker
e7b409924c
GCS_Common: send 0 rather than 1 in servo zero-rc-outputs
2018-07-03 12:12:25 +10:00
Peter Barker
f7daf1c676
GCS_MAVLink: rearrange code for clarity
2018-07-03 12:12:25 +10:00
Peter Barker
11df6debd0
GCS_MAVLink: move mavlink reboot code up to base class
2018-07-03 12:12:25 +10:00
Peter Barker
73bbe8b84e
GCS_MAVLink: send ack before board reboot
...
Based on https://github.com/ArduPilot/ardupilot/pull/6640
2018-07-03 12:12:25 +10:00
Andrew Tridgell
94d8010a16
GCS_MAVLink: expose HUD throttle accessor
2018-07-03 07:29:43 +10:00
Andrew Tridgell
a3e44b3249
GCS_MAVLink: fix from review comment
...
thanks Pierre
2018-06-28 11:35:13 +10:00
Peter Barker
4a8614fbbd
GCS_MAVLink: handle MAV_CMD_FLASH_BOOTLOADER
2018-06-28 11:35:13 +10:00
Peter Barker
a44c1378f7
GCS_MAVLink: add send_textv functions
2018-06-23 15:33:19 +10:00
Andrew Tridgell
f401dc1a77
GCS_MAVLink: fixed error in SITL for ESC_TELEMETRY
2018-06-21 10:48:02 +10:00
Peter Barker
27cd972331
GCS_MAVLink: add magic number definitions
2018-06-20 11:43:38 +10:00
Andrew Tridgell
5495e98483
GCS_MAVLink: build fixes
...
needed for new mavlink2 extensions in battery monitor message
2018-06-19 09:36:03 +10:00
Andrew Tridgell
4e4e5a2feb
GCS_MAVLink: send ESC telemetry messages
2018-06-19 09:36:03 +10:00
Peter Barker
cad7f9d9c0
GCS_MAVLink: tidy waypoint receiving part of update
...
This is NFC. The early-return here is confusing, and there were
redundant checks going on.
2018-06-18 19:54:21 +01:00
Peter Barker
c333a905df
GCS_MAVLink: use AP_FWVersion singleton
2018-06-18 19:10:37 +01:00
Peter Barker
721feaf40f
GCS_MAVLink: use AP_RTC
...
GCS_MAVLINK: Add SYSTEM_TIME handle (Patrick José Pereira)
2018-06-15 08:01:22 +10:00
chobits
0d2b70e607
GCS_MAVLink: fix ATT_POS_MOCAP timestamp handle
2018-06-13 09:43:42 +09:00
Peter Barker
b0aeec4b6a
GCS_MAVLink: move handling of MAV_CMD_DO_GRIPPER up
2018-06-11 19:07:39 +01:00
Michael du Breuil
b331ddd49b
GCS_MAVLink: Remove some common wrappers, fix excessive FALLTHROUGH
2018-06-05 03:25:42 +01:00
Peter Barker
e50a817150
GCS_MAVLink: make VFR_HUD always return height above MSL
2018-06-05 09:38:20 +10:00
Peter Barker
69db7b040a
GCS_MAVLink: move try_send_message handling of EKF_STATUS_REPORT up
2018-06-01 16:12:45 +01:00
Peter Barker
0baee6f82b
GCS_MAVLINK: avoid pushing partial RC_CHANNEL message into uart
...
In the case we do not send RC_CHANNELS_RAW, we will not check to see if
RC_CHANNELS will fit. RC_CHANNELS is larger than RC_CHANNELS_RAW, so the
check in the caller is insufficient.
2018-05-30 17:05:13 +01:00
Peter Barker
1aaf7e96af
GCS_MAVLink: remove intermediate functions
...
GCS_MAVLink: remove comm_receive_ch
This is a lot of sanity checking in a static function which has been
called from a place where things are guaranteed
GCS_MAVLink: remove unused comm_is_idle
GCS_MAVLink: remove unused comm_send_ch
GCS_MAVLink: remove unused hal reference
GCS_MAVLink: remove unused #includes
2018-05-29 14:42:02 +10:00
Peter Barker
d8871078ff
GCS_MAVLink: create persist_streamrates() callback to indicate persistence
...
Removes the catching of the message in each vehicle separately.
2018-05-29 13:08:29 +10:00
Peter Barker
879f250fac
GCS_Common: return airspeed sensor value in vfr_hud_airspeed
2018-05-29 13:00:40 +10:00
Peter Barker
d1174bcf70
GCS_MAVLINK: move try_send_message handling of vfr_hud up
2018-05-29 13:00:40 +10:00
Pierre Kancir
053f124492
GCS_MAVLink: fix FALLTHROUGH warning
2018-05-26 09:13:29 +09:00
Randy Mackay
938dc2e47d
GCS_MAVLink: resolve compiler warnings correct_offboard_timestamp
...
applies only to SITL
2018-05-25 14:00:00 +09:00
Peter Barker
f668d0dc57
GCS_MAVLink: enhance TIMESYNC handling
...
GCS_MAVLink: use de-jittered timestamp for our timesync responses
GCS_MAVLink: periodically send timesync request packets
Currently no use is made of the result of these requests, however,
having the result present in telemetry logs will be useful data.
2018-05-25 11:36:17 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
8427b569b6
GCS_MAVLink: replace /* fall through */ with FALLTHROUGH;
2018-05-25 08:41:07 +09:00
Peter Barker
e9d2be143a
GCS_MAVLink: moving sending of sim state up
2018-05-23 18:36:50 +10:00
Peter Barker
fe2d8f853b
GCS_MAVLink: add type-correctness for stream entries
2018-05-22 11:21:25 +10:00
Peter Barker
c5520cd995
GCS_MAVLink: eliminate MSG_LIMITS_STATUS
...
Only Sub used this, and it used it to send fence status, which we have a
separate ID for
2018-05-22 09:05:14 +09:00
Eugene Shamaev
b260a6ca7c
GCS_Mavlink: HAL_RCINPUT_WITH_AP_RADIO definition
2018-05-22 08:35:01 +09:00
Peter Barker
92927cd848
GCS_MAVLink: move try_send_message of servo-output-raw up
2018-05-21 19:08:08 +01:00
Peter Barker
0ca888d52a
GCS_MAVLink: move sending of POSITION_TARGET_GLOBAL_INT up
2018-05-18 20:26:37 +10:00
Peter Barker
da40ebaf70
GCS_MAVLink: use relative altitide from ahrs.get_relative_position_D_home()
...
This will return a barometer height if the EKF is not available.
2018-05-17 15:48:06 +01:00
Peter Barker
4440f7ec4a
GCS_MAVLink: move sending of GLOBAL_POSITION_INT up to GCS_MAVLINK
2018-05-17 15:48:06 +01:00
Peter Barker
217fd73100
GCS_MAVLink: remove arguments to send_home and send_ekf_origin
2018-05-17 20:42:36 +10:00
Peter Barker
514bc5c21d
GCS_MAVLink: move send_attitude up to GCS_MAVLINK
2018-05-17 18:28:43 +10:00
Peter Barker
695c52be05
GCS_MAVLink: allow sub to override sending of scaled_pressure3
2018-05-17 15:37:14 +10:00
Peter Barker
c887a5c188
GCS_MAVLink: move try_send_message sending of scaled_pressure up
2018-05-17 15:37:14 +10:00
Peter Barker
8cb2b5809f
GCS_MAVLink: move try_send_message sending of sensor offsets up
2018-05-17 15:37:14 +10:00
Peter Barker
b51ec1d346
GCS_MAVLink: move try_send_message of RAW_IMU up to GCS_MAVLINK
2018-05-17 15:37:14 +10:00
Peter Barker
fc1775df75
GCS_MAVLink: handle setting of ekf origin in GCS_MAVLink
2018-05-17 10:13:42 +10:00
Michael du Breuil
1b05a18b84
GCS_MAVLink: Wrap sending named float values
2018-05-17 00:59:45 +01:00
Michael du Breuil
805e9519d1
GCS_MAVLink: Send rangefinder data
2018-05-16 23:21:41 +01:00
Michael du Breuil
03fc653e62
GCS_MAVLink: Don't rely on instance data from rangefinders
2018-05-16 23:21:41 +01:00
Andrew Tridgell
f4f62ececa
GCS_MAVLink: take account of transport lag in vision timestamps
2018-05-16 18:49:22 +10:00
Andrew Tridgell
ab9ef01889
GCS_MAVLink: added function for correcting offboard timestamps
2018-05-15 10:42:52 +09:00
Randy Mackay
e04de34014
GCS_MAVLink: add local time to VISP message
...
Adding both local and remote time is useful for providing support for this message because misaligned clocks lead to our EKF discarding the message
2018-05-10 08:29:30 +09:00
Peter Barker
347ab96bf0
GCS_MAVLink: move sending of battery data up
...
Also, use singleton to get battery object
2018-05-09 11:40:31 -07:00
Peter Barker
417e9e9aaf
GCS_MAVLink: move data stream send up
2018-05-09 16:15:38 +10:00
Peter Barker
8d7fadfdfc
GCS_MAVLink: set _initialised as last thing
2018-05-09 16:15:38 +10:00
Peter Barker
b76fa57108
GCS_MAVLink: move try_send_message handling of RC_CHANNELS_RAW up
2018-05-08 12:33:32 +01:00
Peter Barker
eecdcacf3e
GCS_MAVLink: move sending of heartbeats up to GCS_MAVLINK
2018-05-07 11:30:13 -06:00
Peter Barker
e4b4a746e6
GCS_MAVLink: move try_send_message handling of VIBRATION up
...
Also, use singleton to get ins
2018-05-07 11:23:28 -06:00
Andrew Tridgell
a5fe798e7f
GCS_MAVLink: we don't need the conversion helpers
2018-05-07 11:43:23 +10:00
Peter Barker
bf124e9333
GCS_MAVLink: make send_parameter_value_all a GCS method rather than static
2018-05-01 09:39:01 +10:00
Randy Mackay
e5c0b1814a
GCS_MAVLink: remove underscore from method names
2018-04-19 13:38:22 +09:00
Vince Kurtz
2f81747112
GCS_MAVLink: fix VISP logging
...
log VISP messages for the ATT_POS_MOCAP mavlink message as well
2018-04-19 13:34:49 +09:00
Peter Barker
682679c68d
GCS_MAVLink: use AP_ServoRelayEvents singleton
2018-04-18 20:31:55 +09:00
Tom Pittenger
63e42e194f
GCS_MAVLink: send correct mission_ack result type
...
has no effect since the two typedef enums equated to same value
2018-04-18 12:02:43 +09:00
Michael du Breuil
6e9e9dcdfa
GCS_MAVlink: Use RC_Channels instead of hal.rcin
2018-04-11 21:47:07 +01:00
Andrew Tridgell
fd3037bbb7
GCS_MAVLink: add support for alternative protocol
...
this allows an alternative to MAVLink to be installed on a GCS
port. This is used for BLHeli passthru support
2018-04-07 09:10:29 +10:00
Randy Mackay
64be134f7b
GCS_MAVLink: add VISP logging
2018-04-06 11:13:28 +09:00
Francisco Ferreira
ac73fa9681
GCS_MAVLink: fix method shadowing
2018-04-03 16:29:33 +01:00
Peter Barker
4fd2ec1cef
GCS_MAVLink: factor vehicle's mavlink send_heartbeat
2018-04-03 13:05:19 +01:00
Peter Barker
1f862e8192
GCS_MAVLink: serial control: avoid nullptr dererences
2018-04-02 23:29:33 +01:00
Peter Barker
d2ab76b2c6
GCS_MAVLink: calibrate airspeed sensor if it is present
2018-04-02 23:25:05 +01:00
Peter Barker
c6d7f5151a
GCS_MAVLink: tidy handling of barometer calibrations
2018-04-02 23:25:05 +01:00
Peter Barker
d878690d00
GCS_MAVLink: move common calibration functions up
2018-04-02 23:25:05 +01:00
Peter Barker
f6b7ca75e9
GCS_MAVLink: allow Plane to override method so it can set calib. flag
2018-04-02 23:25:05 +01:00
Peter Barker
09d4e36970
GCS_MAVLink: handle preflight calibrations
2018-04-02 23:25:05 +01:00
Peter Barker
c3e70e477d
GCS_MAVLink: avoid using global chan to uart mapping
...
This is an instance method, so it has a pointer to its own
uart
2018-04-02 23:04:24 +01:00
Peter Barker
42547d2d6d
GCS_MAVLink: allow extra mavlink port for packing vicon messages
2018-04-02 09:23:27 +09:00
Randy Mackay
428682c8e9
GCS_MAVLink: fix handling of global_vision_position_estimate
2018-03-30 18:21:48 +09:00
Peter Barker
ac1a00739c
GCS_MAVLink: remove msg_snoop functionality
...
inherit from GCS_MAVLink if you want to see mavlink traffic
2018-03-28 09:28:23 +09:00
Peter Barker
484d97597b
GCS_MAVLink: pass mavlink acks into accelcal library if it exists
2018-03-28 09:28:23 +09:00
Michael du Breuil
97fce557f5
GCS_MAVLink: Support AFS changes
2018-03-27 22:12:21 +01:00
Peter Barker
a5a36c04d1
GCS_MAVLink: feed vision position data into AHRS
2018-03-27 20:28:49 +09:00
Peter Barker
ed5140307a
GCS_MAVLink: move handling of visual odometry messages up
2018-03-23 09:28:07 +09:00
Peter Barker
0a08bba437
GCS_MAVLink: eliminate AP_HAL::Print and AP_HAL::Stream
2018-03-23 08:12:38 +11:00
Michael du Breuil
6652dd73e4
GCS_MAVLink: Correct sending SCALED_PRESSURE.press_diff
...
Closes #6642
2018-03-21 13:36:35 +00:00
Peter Barker
bed3f0c344
GCS_MAVLink: move handling of get_home_position up
2018-03-19 10:32:37 +09:00
Peter Barker
e9ecc11b00
GCS_MAVLink: use baro singleton
2018-03-08 21:20:05 -08:00
Peter Barker
9d381c26a7
GCS_MAVLink: use AHRS singleton
2018-03-07 12:34:39 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
03019918cc
GCS_MAVLink: NFC adapt to new AP_Battery method name
2018-03-03 17:19:07 +00:00
Andrew Tridgell
6241ca4527
GCS_MAVLink: send 65535 for 16 bit meminfo
...
when above 65535 send 65535, so users don't get worried about low memory
on ChibiOS where they often have more than 64k available
2018-02-26 22:04:33 +11:00
Jacob Walser
582ef7ca5c
GCS_MAVLink: handle reset params to defaults command
2018-02-20 10:49:09 +11:00
Andrew Tridgell
8f1e8e787a
GCS_MAVLink: added DATA96 hook for AP_Radio
2018-02-08 17:36:33 +11:00
James Stewart
ec5faed133
GCS_MAVLink: send mission item requests to correct destination for partial updates
...
The correct destination is the GCS which last requested to update the mission (full or partial), not just the last GCS to set the mission count (full only).
2018-02-07 07:01:32 -08:00
Holger Steinhaus
36f0b429fb
GCS_MAVLink: send BATTERY_STATUS.energy_consumed if current measurement is available
2018-02-06 20:00:16 -07:00
Andrew Tridgell
e255f07022
GCS_MAVLink: rename ch variable
...
avoid conflict with ch variable from ChibiOS
2018-01-15 11:46:02 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas
596119bca3
GCS_MAVLink: do not use hardcoded array sizes
2018-01-11 09:52:13 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas
24ad9e9dff
GCS_MAVLink: Adapt to upstream mavlink changes in autopilot_version message
2018-01-11 09:52:13 +11:00
Peter Barker
8d7c710e9b
GCS_MAVLink: panic in SITL if unknown message sent
2018-01-10 19:11:15 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
f6ab044161
GCS_MAVLink: add microseconds since boot to the home and origin Mavlink messages
2018-01-09 13:01:05 +11:00
Peter Barker
e39e8359b6
GCS_MAVLink: tighten result of handle_preflight_reboot
2017-12-01 17:01:10 +00:00
Peter Barker
269294754f
GCS_MAVLink: use gps singleton
2017-11-15 13:43:03 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
91b6404b13
GCS_MAVLink: Replace hardcoded duplicated end_mavlink_gps*_rtk() function with a flexible one
2017-10-30 18:28:20 +00:00
Michael du Breuil
9b7c3ce9a7
GCS_Mavlink: Fix out of bounds access, CID 144337
2017-10-28 03:30:46 +01:00
Peter Barker
bb2573f945
GCS_MAVLink: send mission item requests to correct destination
...
The correct destination is the GCS which last set the mission count,
not the last GCS that requested it!
2017-10-19 20:52:24 +11:00