Commit Graph

561 Commits

Author SHA1 Message Date
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
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
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
Peter Barker
4fd2ec1cef GCS_MAVLink: factor vehicle's mavlink send_heartbeat 2018-04-03 13:05:19 +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
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
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
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
Andrew Tridgell
8f1e8e787a GCS_MAVLink: added DATA96 hook for AP_Radio 2018-02-08 17:36:33 +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
Lucas De Marchi
ed2b8d3476 GCS_MAVLink: refactor send_autopilot_verison() to use AP_FWVersion
Make the method use the getter directly to get a reference of
AP_FWVersion and work out everything that needs to be sent. This allows
us to remove ifdefs and replace with runtime if/else.

Note that there's also a bug fix: we were not setting flight_custom_version
to zero in case GIT_VERSION wasn't defined.
2017-09-23 21:37:45 -07:00
Peter Barker
d0c2898ebc GCS_MAVLink: move handling of SET_GPS_GLOBAL_ORIGIN up 2017-09-19 15:44:23 +09:00
Randy Mackay
07c195a865 GCS_MAVLink: add send_ekf_origin 2017-09-19 10:30:15 +09:00
Peter Barker
6bd7089718 GCS_MAVLink: implement handling of MAV_CMD_DO_SET_MODE 2017-09-19 01:24:11 +01:00
Peter Barker
8507763a1c GCS_MAVLink: create _handle_set_mode for common msg and cmd-long code 2017-09-19 01:24:11 +01:00
Lucas De Marchi
58dec08b29 GCS_MAVLink: fix non static perf counter
Commit b9877e0d38
(GCS_MAVLink: make per channel perf counter non-static) made the
perf counters to be available per instance but missed the fact that
the perf infra doesn't copy the string.

Fix this by maintaining a the string inside the object.
2017-09-12 17:24:31 -07:00
Peter Barker
b4e536b424 GCS_MAVLink: move gcs_out_of_time into GCS object 2017-09-12 18:28:07 +01:00
Lucas De Marchi
b9877e0d38 GCS_MAVLink: make per channel perf counter non-static
Otherwise the perf counter from one channel may affect the other if
during an update of one channel the update function of the other gets
called.
2017-09-11 10:01:57 -07:00
Peter Barker
ac806b650f GCS_MAVLink: move handling of do_send_banner up 2017-08-30 15:54:47 +01:00
Peter Barker
1544a92f8b GCS_MAVLink: factor out a send_banner 2017-08-30 15:54:47 +01:00
Peter Barker
50242178b3 GCS_MAVLink: handle param_set in GCS_MAVLINK base class 2017-08-30 15:54:47 +01:00
Peter Barker
95ff94bfad GCS_MAVLink: factor out a handle_common_param_message 2017-08-30 15:54:47 +01:00
Peter Barker
add1743c12 GCS_MAVLink: move send_autopilot_request calls up to GCS base class 2017-08-30 15:54:46 +01:00
Jacob Walser
e8f5967682 GCS_MAVLink: Add MSG_NAMED_FLOAT ap_message id 2017-08-23 13:40:52 +01:00
Peter Barker
154b212545 GCS_MAVLink: move serial_control case to base class 2017-08-17 12:42:31 +01:00
Peter Barker
2a07a077d9 GCS_MAVLink: use GCS_MAVLINK subclasses to handle set_mode 2017-08-16 11:05:37 +10:00
Peter Barker
c79cbd71af GCS_MAVLink: use rangefinder backend accessors 2017-08-15 18:31:58 +01:00
Michael du Breuil
067335f68d GCS_MAVLink: Handle termination requests from the GCS 2017-08-15 15:14:56 +01:00
Peter Barker
bff31e8b42 GCS_MAVLink: remove CLI 2017-08-14 10:23:50 +09:00
Peter Barker
7aaabea4ea GCS_MAVLink: send gps messages as separate queued messages 2017-08-09 16:18:22 +01:00
Peter Barker
4e3cc6fd27 GCS_MAVLink: move sending of system_time up 2017-08-09 16:18:22 +01:00
Peter Barker
d1a9128118 GCS_MAVLink: move sending of camera_feedback up 2017-08-09 16:18:22 +01:00
Peter Barker
a841fddb3e GCS_MAVLink: rename MSG_RETRY_DEFERRED to MSG_LAST and clarify comments 2017-08-05 23:13:48 +01:00
Peter Barker
0c5f66dc59 GCS_MAVLink: refactor code into new retry_deferred method 2017-08-05 23:11:09 +01:00
Peter Barker
679bb7f7a5 GCS_MAVLink: move try_send_message send_hwstatus up 2017-08-03 14:33:37 +01:00
Peter Barker
3b472ccc17 GCS_MAVLink: move try_send_message mission handling up 2017-08-03 14:24:47 +01:00
Peter Barker
b8cb758fac GCS_MAVLink: move try_send_message compass message handling up 2017-08-03 14:24:46 +01:00
Peter Barker
b4688bd3d4 GCS_MAVLink: move common mavlink camera handling up 2017-07-28 14:32:58 +01:00
Peter Barker
60ffe00164 GCS_MAVLink: move gps inject handling up
Also, make AP_GPS responsible for decoding inject packets
2017-07-27 12:03:25 +01:00
Peter Barker
85a0da6178 GCS_MAVLink: handle common GPS messages in base GCS_MAVLINK class 2017-07-25 14:00:45 +01:00
khancyr
8abcb7a0e3 GCS_MAVLink: simplify send_proximity 2017-07-24 13:44:43 +01:00
khancyr
ec2ea1c903 GCS_MAVLink: move send_proximity to GCS common code (NFC)
Also clean two comments
2017-07-24 13:44:43 +01:00
Peter Barker
eb1cf0e73a GCS_MAVLink: remove MSG_STATUSTEXT entirely 2017-07-18 16:12:59 +01:00
Peter Barker
06647cde2c GCS_MAVLink: move handling of PREFLIGHT_SET_SENSOR_OFFSETS up 2017-07-17 14:17:19 +01:00
Peter Barker
bd28bdd907 GCS_MAVLink: move handling of MAG_CAL command longs up 2017-07-17 14:17:19 +01:00
Peter Barker
a7e57aa3fc GCS_MAVLink: move MAV_CMD_START_RX_PAIR handling to base class 2017-07-17 14:17:19 +01:00
Peter Barker
318861e824 GCS_MAVLink: move mavlink support for servo/relay up 2017-07-16 23:56:00 +01:00
Peter Barker
cfc8d7feba GCS_MAVLink: add common handling of mavlink command messages 2017-07-16 23:56:00 +01:00
Peter Barker
ebe3dcef6f GCS_MAVLink: move rally-point handling up 2017-07-14 01:28:05 +01:00
Peter Barker
3338de827e GCS_MAVLink: remove unneeded telemetry_delayed parameter
Also make it protected
2017-07-12 17:02:54 +01:00
Peter Barker
129d7220e6 GCS_MAVLink: move handling of incoming statutext messages up 2017-07-12 16:52:24 +01:00
Peter Barker
5c0aa27b2f GCS_MAVLink: remove global static send_statustext_chan 2017-07-11 23:53:53 +01:00
Peter Barker
a599bc9031 GCS_MAVLink: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
731aaed8af GCS_MAVLink: eliminate global static GCS_MAVLINK::send_home_all 2017-07-11 23:48:39 +01:00
Peter Barker
726007efde GCS_MAVLink: move common mission handling up to GCS_MAVLINK 2017-07-11 23:45:17 +01:00
Peter Barker
02532af64b GCS_MAVLink: a send_text method on the GCS singleton 2017-07-09 17:17:29 -04:00
Peter Barker
db27346fd7 GCS_MAVLink: move GCS functions up from GCS_Plane 2017-07-07 16:18:37 +01:00
Peter Barker
4c1aff03a3 GCS_MAVLink: move send-logs-via-mavlink code into DataFlash 2017-06-27 03:10:43 +01:00
Pierre Kancir
d5cc1e64ed GCS_Common: rename send_rangefinder to send_rangefinder_downward 2017-06-08 01:32:04 +01:00
Pierre Kancir
e9685ba13e GCS_MAVLink: add rangefinder msg 2017-06-08 01:22:07 +01:00
Pierre Kancir
0848d96354 GCS_MAVLink: add send_distance_sensor_downward function 2017-06-08 01:22:07 +01:00
Pierre Kancir
f0369bc507 GCS_MAVLink: add distance sensor msg 2017-06-08 01:22:07 +01:00
Michael du Breuil
c62e79b5c0 GCS_MAVLink: Update the accelcal signature to accept uint32_t 2017-06-01 20:20:05 +01:00
Michael du Breuil
16bd7a091e GCS_MAVLink: Add landing reporting 2017-05-24 15:22:27 -07:00
Andrew Tridgell
f465c37c65 GCS_MAVLink: added async parameter sending 2017-05-01 14:37:13 +10:00
Andrew Tridgell
5c4ca3bf0b GCS_MAVLink: added send_queued_parameters() 2017-05-01 14:36:52 +10:00
Andrew Tridgell
4ce0a8e24e GCS_MAVLink: time limit GCS update() calls
and add performance counters
2017-04-28 16:09:12 -07:00
Eugene Shamaev
c9f413da38 GCS_MAVLink: AOA, SSA message 2017-04-19 20:48:42 +10:00
Michael du Breuil
1e816b8be5 GCS_MAVLink: Support sending the BATTERY_STATUS message 2017-04-12 10:21:49 +09:00
Randy Mackay
eddd6e5681 GCS_MAVLink: only respond to timesync messages with empty tc1
This avoids the possibility of a timesync message storm
Also process as a common message because no vehicle information is required
Moved location of new method to bottom of cpp file
2017-03-30 08:50:37 +09:00
fnoop
fdc310fe97 GCS_MAVLink: add TIMESYNC message handler 2017-03-30 08:50:37 +09:00
Peter Barker
d6807d749c GCS_MAVLink: make send_statustext virtual 2017-02-23 23:03:54 -08:00
Peter Barker
cc28ff49e9 GCS_MAVLink: support for a singleton 2017-02-13 09:32:01 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas
285c02b8b6 GCS_MAVLink: rename MSG_RADIO_OUT to MSG_SERVO_OUTPUT_RAW to better describe what it is 2017-02-07 11:41:12 +11:00
Francisco Ferreira
7463d4c8f7 GCS_MAVLink: add function to send command requesting vehicle position during accel cal 2016-11-15 11:42:54 -08:00
Andrew Tridgell
f62851f780 GCS_MAVLink: added remote device operations
this makes debugging devices much easier. You can even write a
primitive SPI or I2C device driver over mavlink.

Support for this is in the devop MAVProxy module
2016-11-09 17:08:10 +11:00
Andrew Tridgell
da7ed73051 GCS_MAVLlink: added handle_common_message()
this will make it easier to add common functions for mavlink messages
without having to do a commit for each vehicle
2016-11-09 17:08:09 +11:00
floaledm
9f8d2f0506 GCS_MAVLink: send status_text messages to Frsky lib queue 2016-11-08 07:42:39 +11:00
Mathieu OTHACEHE
152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Andrew Tridgell
792f3b8a15 GCS_MAVLink: added handle_rc_bind() 2016-10-15 21:42:38 +11:00
Andrew Tridgell
f01f711ff6 GCS_MAVLink: added accept_packet() hook
this will allow vehicles to control whether packets are accepted by
GCS sysid or not
2016-10-15 17:11:01 +11:00
Andrew Tridgell
1fa137caad GCS_MAVLink: added handle_preflight_reboot() 2016-08-16 12:53:33 +10:00
Peter Barker
aae84b3edc GCS_MAVLink: send_collision_all 2016-07-25 20:24:37 +09:00
Peter Barker
7bc9a1cf83 GCS_MAVLink: break out a packetReceived function
This just moves code, doesn't change it
2016-07-25 20:24:37 +09:00
Andrew Tridgell
306487cad4 GCS_MAVLink: adjust for 16 channels in SERVO_OUTPUT_RAW 2016-07-25 10:06:02 +10:00
Tom Pittenger
4fe94bdea3 GCS_MAVLink: add ADSB_streamrate 2016-06-19 11:24:30 -07:00
Tom Pittenger
b4b0ec404c GCS_MAVLink: flag a link as active if it ever sends a message 2016-06-13 18:25:26 -07:00
Peter Barker
1e146256cc GCS_MAVLink: move telemetry_delayed up into base class 2016-05-31 08:46:09 +10:00
Peter Barker
e828525c94 GCS_MAVLink: adjust_rate_for_stream_trigger is no longer virtual 2016-05-29 21:24:41 +10:00
Peter Barker
43fed65f37 GCS_MAVLink: move adjust_rate_for_stream up 2016-05-29 19:38:49 +10:00
Peter Barker
56114dd37a GCS_MAVLink: use subclasses in vehicle directories
Instead of the vehicles defining functions that are declared in the libraries directory, they will now create subclasses of GCS_MAVLINK
2016-05-29 16:21:20 +10:00
Andrew Tridgell
7ec513668e GCS_MAVLink: reserve some space when param fetch fails
this ensures we give some buffer space for parameter fetch when we are
low on buffer space

we reserve 100 bytes for 2 seconds after a param fetch fails due to
low buffer space
2016-05-28 15:08:46 +10:00
Andrew Tridgell
273c80116a GCS_MAVLink: added a wrapper for sending HEARTBEAT
will be used to cope with old radios with MAVLink2
2016-05-21 15:25:17 +10:00
Andrew Tridgell
018b1143d2 GCS_MAVLink: handle difference between SERIALn_PROTOCOL=1 and 2 2016-05-21 15:25:17 +10:00
Andrew Tridgell
b3f94184f2 GCS_MAVLink: always build with MAVLink2 headers 2016-05-21 15:25:16 +10:00
Andrew Tridgell
318ec69465 GCS_MAVLink: added periodic saving of signing key
thanks to Michael for noticing this was missing
2016-05-21 15:25:15 +10:00
Andrew Tridgell
12c1d58511 GCS_MAVLink: cope with different packet overheads with signing
use common macros for determining if there is sufficient space to send
a packet
2016-05-21 15:25:14 +10:00
Andrew Tridgell
a05679fb3b GCS_MAVLink: fixed build after rebase 2016-05-21 15:25:14 +10:00
Andrew Tridgell
970dbf3c8d GCS_MAVLink: fixed build with MAVLink1 2016-05-21 15:25:13 +10:00
Andrew Tridgell
24eb6afbe9 GCS_MAVLink: provide signing streams and accept_unsigned callback 2016-05-21 15:25:13 +10:00
Andrew Tridgell
ed9a43ca46 GCS_MAVLink: support for mavlink2 signing operations 2016-05-21 15:25:12 +10:00
Andrew Tridgell
8ea9e29fee GCS_MAVLink: use a fixed signing key for testing 2016-05-21 15:25:12 +10:00
proficnc
c8b3c527f9 GCS_MAVLink: add route mask for blocking MAVlink forwading 2016-05-12 17:44:06 +10:00
Leandro Pereira
f23bd7e09d GCS_MAVLink: Use a single stream_trigger() implementation
This has no side effects, but since all implementations were basically
the same, move the implementation to GCS_Common and the only part that
adjusts the rate based on which which stream to each individual
GCS_MAVLINK implementation.
2016-05-07 23:49:35 -03:00
Michael du Breuil
a17ea5c121 GCS_MAVLink: Add POSITION_TARGET_GLOBAL_INT to the list of messages 2016-05-01 07:38:23 +10:00
Niti Rohilla
8fcf5cf0c1 Changed the prototype of handle_guided_request() to report error
while setting guided points.
2016-04-29 12:39:28 -03:00
Lucas De Marchi
c2b5ad46b4 GCS_MAVLink: replace header guard with pragma once 2016-03-16 18:40:44 +11:00
Andrew Tridgell
fe3812c51b GCS_MAVLink: re-worked text send in terms of ObjectArray 2016-02-24 09:18:06 +11:00
Tom Pittenger
54d2a263fe GCS_MAVLink: create queue scheme for static statustext msgs 2016-02-24 09:18:05 +11:00
Andrew Tridgell
5080201be6 GCS_MAVLINK: added set_dataflash() method 2016-02-22 12:34:32 +11:00
Andrew Tridgell
5da6082d78 GCS_MAVLink: raise the waypoint receive timeout to 8s
this fixes a timeout in autotest
2016-01-20 17:23:36 +11:00
Andrew Tridgell
68a46bc1ff GCS_MAVLink: use AP_Param::count_parameters() 2016-01-06 14:44:37 +11:00
Peter Barker
368363531f GCS_MAVLink: provide facilities to send param values to all GCS 2015-11-09 09:23:20 +11:00
Lucas De Marchi
1b07dabeb7 Replace prog_char and prog_char_t with char
prog_char and prog_char_t are now the same as char on supported
platforms. So, just change all places that use them and prefer char
instead.

AVR-specific places were not changed.
2015-10-30 14:35:30 +09:00
Lucas De Marchi
af88ebf477 GCS_MAVLink: remove send_text_P() in favor of send_text() 2015-10-30 14:35:18 +09:00
Randy Mackay
9b96a2c385 GCS_MAVLink: send_home and send_home_all methods 2015-10-03 12:50:42 +09:00
Andrew Tridgell
bc4d37c91e GCS_MAVLink: added severity to send_statustext_all() 2015-09-08 14:29:22 +10:00
Andrew Tridgell
f3e8819d1e GCS_MAVLink: make send_statustext_all() take a format string
this allows for formatted messages to all groundstations in libraries
2015-09-08 13:53:58 +10:00
Jonathan Challinger
53fe649016 GCS_MAVLink: add MSG_MAG_CAL_PROGRESS and _REPORT 2015-09-03 16:59:11 +10:00
squilter
426dab5078 GCS_MAVLink: update severities and remove old enum 2015-08-28 10:04:35 +10:00
squilter
9d3a906602 GCS_Common: accept any type of severity, not just the old enum 2015-08-25 14:04:37 +09:00
squilter
fb1bb3f571 GCS_MAVLink: make arguments mandatory for send_autopilot_version 2015-08-23 09:21:59 +09:00
squilter
c4c63da163 GCS_MAVLink: send_autopilot_version accepts version 2015-08-21 22:40:51 +09:00
Tom Pittenger
1dd8b9d363 GCS_MAVLink: add support for try send mission_item_reached
also moved most of send_item_reached into common library
2015-08-19 15:26:32 +10:00
Lucas De Marchi
42fadb1845 GCS_MAVLink: standardize inclusion of libaries headers
Do the missing header changes due to changing the code before the pr
getting accepted.
2015-08-18 17:12:52 +10:00
Andrew Tridgell
8f1e1a1b4a GCS_MAVLink: added RPM MAVLink message 2015-08-12 15:03:49 +10:00
Gustavo Jose de Sousa
d7a2ef3e35 GCS_MAVLink: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:38:25 +10:00
Randy Mackay
d0aa1a89cd GCS_MAVLink: retrieve capabilities from HAL 2015-07-31 14:50:22 +09:00
squilter
c946ce72e8 GCS_MAVLink: add optional param to support capability bitmask 2015-07-31 14:50:10 +09:00
Randy Mackay
e7df54ca75 GCS_MAVLink: static find_by_mavtype method 2015-07-25 10:53:03 +09:00
Randy Mackay
a61129f7f8 GCS_MAVLink: add support for send_mission_item_reached 2015-07-19 12:14:09 +09:00
Randy Mackay
642aa74530 GCS_MAVLink: add send_vibration 2015-06-12 21:36:42 +09:00
Andrew Tridgell
f50ee4c44c GCS_MAVLink: all vehicles now use functors 2015-06-01 15:18:33 +10:00
Andrew Tridgell
cc80fdf593 GCS_MAVLink: added PID_TUNING message 2015-05-27 14:28:45 +10:00
Andrew Tridgell
4fdfa47ca3 GCS_MAVLink: removed BUILD_DELEGATES code
no longer needed
2015-05-26 14:35:12 +10:00
Lucas De Marchi
58847bffd6 GCS_MAVLink: allow to use functor 2015-05-26 13:46:50 +10:00
Andrew Tridgell
84726e4a3a GCS_MAVLink: use APM_BUILD_DELEGATES 2015-05-21 07:48:52 +10:00
Andrew Tridgell
71b550d7b5 GCS_MAVLink: support member functions for rover 2015-05-21 07:48:47 +10:00
Tom Pittenger
d94c95a6ef GCS_MAVLink: return true if mission recieve is complete
when handing a mission item, and that is the last item, return true so that whoever is handling this knows we have a new mission list. From here we can log a new mission
2015-05-08 21:01:51 +10:00
Niels Joubert
2a5b25ddbf GCS_MAVLink: Re-enable GPS Injection Packets 2015-04-24 08:01:32 +10:00
Randy Mackay
1f705eb6a3 GCS_MAVLink: add send_to_components method 2015-04-20 13:50:04 +09:00
Andrew Tridgell
6e52ef2a74 GCS_MAVLink: added send_local_position() 2015-04-05 09:16:41 -07:00
Randy Mackay
d738eda59d GCS_MAVLink: integrate Serial Manager instance 2015-04-01 14:59:23 -07:00
Randy Mackay
5ee67e63ec GCS_MAVLink: add EKF_STATUS_REPORT to enum 2015-03-12 12:19:58 +09:00
Andrew Tridgell
8cfe8c5823 GCS_MAVLink: moved send_autopilot_version() to common code 2015-02-11 19:50:40 +11:00
Grant Morphett
3a5eb33d86 GCS_MAVLink: Bug - CLI_ENABLED check should be in vehicle code only.
Changes to fix the warnings in rover sitl build.
We are starting the process of resolving all the warnings in the
ardupilot builds of all vehicles and platforms.
2015-02-11 18:16:46 +11:00
Andrew Tridgell
dd0e45db41 GCS_MAVLink: fixed build of example sketches 2015-02-09 11:49:25 +11:00
Andrew Tridgell
35c14c787e GCS_MAVLink: added handle_gimbal_report() function
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2015-02-03 09:49:15 +11:00
Randy Mackay
0c3a8f585a GCS_MAVLink: add get_uart accessor
use by flight code to print messages during startup
2015-01-29 14:05:12 +11:00
Randy Mackay
febda988af GCS_MAVLink: mavlink_channel from SerialManager 2015-01-29 14:05:11 +11:00
Randy Mackay
c6326fc9b7 GCS_MAVLink: use SerialManager for setup_uart 2015-01-29 14:05:11 +11:00
Andrew Tridgell
d25bd8955d GCS_MAVLINK: move send_opticalflow() into common library 2015-01-03 15:53:22 +11:00
Andrew Tridgell
079158d4b8 GCS_MAVLink: strip out the old GCS_Class class
this is not longer needed as we don't support multiple protocol
classes
2014-12-11 12:32:45 +09:00
Andrew Tridgell
f198cdcf20 GCS_MAVLink: added support for a MAVLink snoop function
this can be used to watch messages for different targets
2014-12-11 12:32:32 +09:00
Andrew Tridgell
11f88f0f5d GCS_MAVLink: added routing object to GCS_MAVLink 2014-12-11 12:30:55 +09:00
Randy Mackay
da247bacf8 GCS_MAVLink: add OPTICAL_FLOW to ap_message enum 2014-12-08 14:58:30 +09:00
Arthur Benemann
9b5684d007 GCS_MAVLink: add MOUNT_STATUS to message enum 2014-11-17 15:59:28 -08:00
Arthur Benemann
b48edf479b GCS_MAVLink: add CAMERA_FEEDBACK to enum 2014-10-31 14:46:40 +09:00
Andrew Tridgell
60aa017e11 GCS_MAVLink: added handle_set_mode() function 2014-10-01 14:19:04 +10:00
Randy Mackay
0322a876eb GCS_MAVLink: check target before erasing log 2014-09-30 15:18:31 +10:00
Randy Mackay
de747d215a Revert "GCS_MAVLink: send radio_in using rcmap"
This reverts commit 0881ccbee0.
2014-08-16 20:31:14 +09:00
Randy Mackay
0881ccbee0 GCS_MAVLink: send radio_in using rcmap 2014-08-16 15:27:03 +09:00
Andrew Tridgell
bc95e746ce GCS_MAVLink: fixed example sketch builds 2014-08-11 11:06:17 +10:00
Andrew Tridgell
9a1bac06d4 GCS_MAVLink: added send_battery2() 2014-08-09 22:50:14 +10:00
Andrew Tridgell
f49258eb31 GCS_MAVLink: added send_statustext_all() method
used for sending text messages from libraries
2014-08-08 13:54:21 +10:00
Andrew Tridgell
e23ee34d95 GCS_MAVLink: added MSG_TERRAIN 2014-07-24 21:45:46 +10:00
Andrew Tridgell
3020d91dcd GCS_MAVLink: keep a bitmap of what mavlink channels are active
- this will allow for looping over active channels in libraries
- expose active channel mask
2014-07-24 21:45:46 +10:00
Andrew Tridgell
ddb030088d GCS_Mavlink: moved some more mavlink functions to GCS_Common.cpp 2014-07-13 15:37:49 +10:00
Niels Joubert
baf0697f48 GCS_MAVLink: Add support for GPS_RTK messages 2014-06-30 10:30:16 +10:00
Andrew Tridgell
0b6407256c GCS_MAVLink: moved 3 more send_*() functions to GCS_Common.cpp 2014-05-28 09:35:30 +10:00
Andrew Tridgell
63da53c842 GCS_MAVLink: moved main update() routine into GCS_Common.cpp
this fixes a common timeout error with loading large missions, and
means less per-vehicle code
2014-05-21 12:45:25 +10:00
Andrew Tridgell
49e7ee9ba7 GCS_MAVLink: added setup_uart() method
this provides a common way of dealing with UART setup for a GCS
instance. It includes code to cope with SiK radios stuck in bootloader
mode.
2014-05-16 11:44:33 +10:00
Andrew Tridgell
b8675b9abc GCS_MAVLink: implement SERIAL_CONTROL MAVLink message 2014-04-05 07:34:33 +11:00
Andrew Tridgell
8af9573806 GCS_MAVLink: allow logging of RADIO_STATUS, very useful for link analysis 2014-03-20 09:56:37 +11:00
Andrew Tridgell
0832aba6bc GCS_MAVLINK: moved deferred message handling into common code 2014-03-19 12:14:15 +09:00
Andrew Tridgell
8d89a64312 GCS_MAVLink: moved handling of MISSION_ITEM into common code 2014-03-19 12:14:09 +09:00
Andrew Tridgell
965f6bd3bd GCS_MAVLink: make DataFlash a pointer
handle sketches where DataFlash is not available
2014-03-19 12:13:37 +09:00
Andrew Tridgell
b85c5123b2 GCS_MAVLink: added save parameter to handle_request_data_stream()
this allows copter to not save stream rate changes
2014-03-19 12:13:35 +09:00
Andrew Tridgell
79bb14b8c1 GCS_MAVLink: moved RADIO_STATUS handling into common code 2014-03-19 12:13:34 +09:00
Andrew Tridgell
144217ac74 GCS_MAVLink: moved parameter and stream handling into common code
this keeps it in common between vehicles, and saves stack space
2014-03-19 12:13:32 +09:00
Andrew Tridgell
0b811ba6a9 GCS_MAVLink: added have_flow_control() method
can be used to change speed of handling some protocol methods, as we
know communication will be reliable
2014-03-19 12:13:25 +09:00