Peter Barker
2f60b230cd
GCS_MAVLink: use singleton to get AP_AdvancedFailsafe pointer
2019-09-17 09:13:43 +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
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
4f9d1ada33
GCS_MAVLink: deny setting MIS_TOTAL parameter
...
Closes #11413
GCS_MAVLink: conform to parameter protocol requirements while ignoring sets
GCS_MAVLink: use internal-use-only param bit
2019-08-22 09:23:56 +10:00
Peter Barker
03c439f9ab
GCS_MAVLink: make update_sensor_status_flags private
2019-08-17 17:45:03 +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
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
Peter Barker
5e55aedd20
GCS_MAVLink: add printf-format attribute to send_text methods
2019-07-26 10:54:41 +10: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
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
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
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
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
Michael du Breuil
8c00102259
GCS_MAVLink: Reduce scoping on AP_BattMonitor include
2019-06-18 10:02:05 +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
75ae6b59b0
GCS_MAVLink: allow Copter to disallow mavlink 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
Peter Barker
a0c80a0b3b
GCS_MAVLink: make send_text and send_textv const
2019-05-01 10:18:46 +10:00
Peter Barker
c143ec47da
GCS_MAVLink: Bitmask is now a template
2019-04-16 15:12:07 +10:00
Randy Mackay
bbd051b246
GCS_MAVLink: send OPTICAL_FLOW messages to optical flow driver
2019-04-08 11:26:59 +09: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
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
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
Michael du Breuil
75caad52c0
GCS_MAVLink: Always check the return value on get_velocity_NED
2019-03-19 11:42:54 +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
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
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
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
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
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
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
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
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
Pavlo Kolomiiets
094505a76a
GCS_MAVLink: add WHEEL_DISTANCE to ap_message enum
2019-01-28 19:35:18 +09: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
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
f68f83505c
GCS_MAVLink: add preflight CAN command
2019-01-18 00:57:33 +00:00
Peter Barker
8fd8ae660b
GCS_MAVLink: send multiple async replies per call to send_queued_param
2019-01-15 10:11:21 +11:00
Michael du Breuil
27d461348e
GCS_MAVLink: Use rally singleton
2019-01-08 10:39:50 +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
039ade421e
GCS_MAVLink: split SYS_STATUS and POWER_STATUS onto separate ap_messages
2018-12-18 14:05:20 +11:00
Peter Barker
759a8e5553
GCS_MAVLink: move accept_packet to base class
2018-12-14 12:44:31 +11:00
Peter Barker
dfd0ecd2bd
GCS_MAVLink: use mission singleton
2018-12-13 10:52:52 +09: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
160c29e01f
GCS_MAVLink: change number of buckets to 10
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
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
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
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
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
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
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
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
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
Andrew Tridgell
94d8010a16
GCS_MAVLink: expose HUD throttle accessor
2018-07-03 07:29:43 +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
Peter Barker
27cd972331
GCS_MAVLink: add magic number definitions
2018-06-20 11:43:38 +10:00
Andrew Tridgell
4e4e5a2feb
GCS_MAVLink: send ESC telemetry messages
2018-06-19 09:36:03 +10: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
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
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
d1174bcf70
GCS_MAVLINK: move try_send_message handling of vfr_hud up
2018-05-29 13:00:40 +10: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
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
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
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
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
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
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