Commit Graph

1037 Commits

Author SHA1 Message Date
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
Lucas De Marchi ec935cf0fe GCS_MAVLink: refactor send_banner() to use AP_FWVersion 2017-09-23 21:37:45 -07: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
Randy Mackay 953adc506d GCS_MAVLink: add break in default case
non-functional change but removes some warnings in eclipse editors
2017-09-20 12:14:38 +09: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 2e078f7c5e GCS_MAVLink: send fw_string, px4 git hash and nuttx hash on param request 2017-08-30 15:54:47 +01:00
Peter Barker 8a7a1b77dd GCS_MAVLink: handle param_request_list in GCS_MAVLINK base class 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
Peter Barker e9204a66ee GCS_MAVLink: include version for AP_FWVersion 2017-08-30 15:54:46 +01:00
Michael du Breuil a895d69b42 GCS_MAVLink: Correct a bug in the FOR_EACH_ACTIVE_CHANNEL macro 2017-08-29 13:27:27 -07:00
Peter Barker 921985fe27 GCS_MAVLink: allow statustext logging from any source system
Turns out this is terribly useful for companion computers if
you allow them to log things when they're not your GCS.

The original check was bogus; if someone is talking to you via
mavlink they can do much worse than fill your logs!
2017-08-23 15:58:47 +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 b17c0482fb GCS_MAVLink: move play_tune and led_control handling to base class 2017-08-17 12:27:10 +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 b6076bcb77 GCS_MAVLink: adapt to new rangefinder method name 2017-08-15 19:00:29 +01: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 1fc82442a0 GCS_MAVLink: remove dummy functions; examples are linked with all libs 2017-08-09 16:18:22 +01:00
Peter Barker 7aaabea4ea GCS_MAVLink: send gps messages as separate queued messages 2017-08-09 16:18:22 +01:00
Peter Barker ee5874ab32 GCS_MAVLink: move sending of gps_raw up 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 d03c7389f7 GCS_MAVLink: move sending of meminfo 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 fdac13d3d3 GCS_MAVLink: tidy send_message function 2017-08-05 23:09:37 +01:00
Peter Barker ad2c3d27ec GCS_MAVLink: move try_send_message queued_param_send up 2017-08-03 14:34:33 +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 69eb9cbdd2 GCS_MAVLINK: add missing mavlink mission msgid to case 2017-07-15 17:01:18 +09:00
Peter Barker aa6b339252 GCS_MAVLink: improve rally debug strings 2017-07-14 01:28:05 +01:00
Peter Barker 99cc684d0a GCS_MAVLink: GCS_Rally: increase severity of mavlink statustexts
This matches plane, sending at an increased level
2017-07-14 01:28:05 +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 69c7402c9c GCS_MAVLink: add const chan method to GCS_Dummy 2017-07-11 23:48:50 +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 6cc19fee35 GCS_MAVLink: GCS_Dummy and GCS_routing get get_mission 2017-07-11 23:47:52 +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 ca6e34dfbd GCS_MAVLink: use Notify singleton for sending statustext 2017-07-09 17:17:29 -04:00
Peter Barker 3f43789742 GCS_MAVLINK: provide a GCS singleton for examples and tools to use 2017-07-07 16:18:37 +01: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
Peter Barker cbbee995b6 GCS_MAVLink: move GCS_Logs into DataFlash directory 2017-06-27 03:10:43 +01:00
Peter Barker cf918d233f GCS_MAVLink: move MAVLINK_MSG_ID_REMOTE_LOG_BLOCK_STATUS handling up 2017-06-17 15:07:48 +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
Peter Barker b18c1853f9 GCS_MAVLink: count parameters in param thread
This helps avoid counting parameters on the main thread,
avoiding long-loops
2017-05-11 08:21:17 +10:00
Andrew Tridgell 5c62e4f4c2 GCS_MAVLink: don't use more than 1ms sending parameters
this reduces the scheduling misses when fetching parameters initially
2017-05-01 14:37:15 +10: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 f778954b84 GCS_MAVLink: split parameter functions into a separate file 2017-05-01 14:36:10 +10:00
Andrew Tridgell 4ce0a8e24e GCS_MAVLink: time limit GCS update() calls
and add performance counters
2017-04-28 16:09:12 -07:00
Michael du Breuil 341ac701d1 GCS_MAVLink: report temperature information to the battery status report 2017-04-19 14:17:24 +01:00
Michael du Breuil 9cb0d8f99b GCS_MAVlink: Add battery cell backend 2017-04-19 14:17:24 +01:00
Eugene Shamaev c9f413da38 GCS_MAVLink: AOA, SSA message 2017-04-19 20:48:42 +10:00
Pierre Kancir b2c8bc8074 GCS_MAVLink: example fix travis warning
missing function declaration
implicit cast
some style fix
2017-04-13 19:56:16 +01:00
Michael du Breuil 1e816b8be5 GCS_MAVLink: Support sending the BATTERY_STATUS message 2017-04-12 10:21:49 +09:00
Andrew Tridgell 3080f66d16 GCS_MAVLink: fixes for updated mavlink 2017-04-11 20:03:43 +01:00
Peter Barker 564ff3a468 GCS_MAVLink: always allow HOME to be read by MISSION_REQUEST
Fixes #5980
2017-04-04 15:00:07 +10:00
Randy Mackay eded4f90bb GCS_MAVLink: timesync sends nanoseconds 2017-03-30 08:50:37 +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
Michael du Breuil 50346de963 GCS_MAVLink: Update for AHRS NED changes 2017-02-13 09:23:14 +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
Lucas De Marchi 4e7b65260d GCS_MAVLink: shut up mavlink warnings 2017-02-06 09:27:22 -08:00
murata 4a60850558 GCS_MAVLink: Unify from print or println to printf. 2017-01-27 18:20:22 +11:00
Peter Barker acb5ddd140 GCS_MAVLink: issue MISSION_COUNT packet if seq request too large 2017-01-23 09:07:29 +11:00
Andrew Tridgell 0942291e74 GCS_MAVLink: adapt to new RC_Channel API 2017-01-12 17:39:37 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas 8419045aea Spell in comments 2017-01-06 10:57:39 -08:00
priseborough 809bfc1154 GCS_MAVLink: replace call to EKF1
Return hagl from primary EKF
2016-12-19 08:07:11 +11:00
Andrew Tridgell 8b8837ab72 GCS_MAVLink: fixed build 2016-12-05 16:51:49 -08:00
Andrew Tridgell eaf378cbf0 GCS_MAVLink: updated optical flow send 2016-11-26 12:27:41 +11:00
Andrew Tridgell b3ac4fcb72 GCS_MAVLINK: speed up USB log download
makes it about 2x as fast on Pixhawk
2016-11-20 18:41:25 +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
murata c808ee2f49 Global: To nullptr from NULL.
RC_Channel: To nullptr from NULL.

AC_Fence: To nullptr from NULL.

AC_Avoidance: To nullptr from NULL.

AC_PrecLand: To nullptr from NULL.

DataFlash: To nullptr from NULL.

SITL: To nullptr from NULL.

GCS_MAVLink: To nullptr from NULL.

DataFlash: To nullptr from NULL.

AP_Compass: To nullptr from NULL.

Global: To nullptr from NULL.

Global: To nullptr from NULL.
2016-11-02 16:04:47 -02: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 a847520da8 GCS_MAVLink: send RC_CHANNELS_RAW if using MAVLink1
this fixes issue #5010
2016-10-18 18:16:16 +11: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 c1bf23e090 GCS_MAVLink: fixed comment 2016-10-14 11:40:36 +11:00
Andrew Tridgell 53260969bb GCS_MAVLink: removed deprecated RC_CHANNELS_RAW and use RC_CHANNELS only 2016-10-13 21:23:39 +11:00
Andrew Tridgell 5e829e7720 GCS_MAVLink: most users don't have signing keys
prevent noise on startup
2016-10-13 19:58:00 +11:00
Lucas De Marchi ae53920e5b build: don't build examples with old build system
We currently check examples are buildable with waf which doesn't need
the libraries to be specified in a make.inc file.  Having the makefiles
there is misleading since people try to build and realize the build is
broken.
2016-10-11 13:03:08 +11:00
Matthew Brener 06388b0417 Global: Fix typos 2016-09-17 00:36:36 -03:00
Andrew Tridgell 66073413a8 GCS_MAVLink: announce MAVLink2 capability 2016-09-16 09:47:55 +10:00
Niti Rohilla cadd95fdd8 GCS_MAVLink: Added sanity check for DO_JUMP command on mission load. 2016-09-06 00:40:47 -07:00
Michael du Breuil 7a18d59099 GCS_MAVLink: On mission_set_current report the requested item if the set was a success
The problem with reporting the mission index, is that the mission index will be walked
forward until its referring to a nav target, which means that if a DO_ command was
requested, the requesting mavlink device had no way to validate the command was
accepted, it would have to make a infrence from it's copy of the mission
2016-09-06 08:55:04 +10:00
Andrew Tridgell cfd7268bd5 GCS_MAVLink: check the signing key magic on load
or we end up with a bad key when MAVLink2 is first enabled
2016-09-04 19:28:48 +10:00
Leandro Pereira bf3f8c05e7 GCS_Mavlink: Correctly check if a channel is streaming
In GCS_MAVLINK::stream_trigger(), chan_is_streaming would be checked
with a bitwise OR, instead of a bitwise AND.  This way, the condition
would always be true if chan_is_streaming were to be non-zero.
2016-08-24 10:47:12 -03: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 fc02908c0d Revert "GCS_MAVLink: coverity scan - variables not initialized in constructor"
This reverts commit bd8debdf8b.
2016-07-11 22:01:50 -07:00
Tom Pittenger a74e86c234 GCS_MAVLink: coverity scan - computed value overwritten without use for SITL
- when building for SITL we should just skip the num_sends work instead of overwriting the value
2016-07-05 13:32:29 -07:00
Tom Pittenger bd8debdf8b GCS_MAVLink: coverity scan - variables not initialized in constructor 2016-07-05 13:32:24 -07:00
Andrew Tridgell a331542958 GCS_MAVLink: fixed typo 2016-07-01 15:35:49 +10:00
Michael du Breuil c2da36d505 GCS_MAVLink: fix race condition when recieving last waypoint
only shows up when the waypoint is about to time out
2016-06-27 10:57:14 +10:00
Tom Pittenger 4fe94bdea3 GCS_MAVLink: add ADSB_streamrate 2016-06-19 11:24:30 -07:00
Tom Pittenger 3a38e29b39 GCS_MAVLink: do not auto-forward ADSB_VEHICLE packets 2016-06-19 11:24:29 -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
Tom Pittenger 8b405e26ea GCS_MAVLink: battery2 current is in 10*mAh over mavlink 2016-06-02 16:59:29 -07:00
Tom Pittenger 4e4bc0bee4 GCS_MAVLink: use voltage(x) instead of voltage2() 2016-06-02 16:59:23 -07:00
Tom Pittenger 608fbee867 GCS_MAVLink: send current2 over mavlink 2016-06-02 16:59:03 -07:00
Andrew Tridgell b855c70139 GCS_MAVLink: don't route RADIO and RADIO_STATUS packets
they don't mean anything off the local link
2016-05-31 22:13:05 +10: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 03ded35d7c GCS_MAVLink: update routing example for mavlink namespacing 2016-05-29 16:21:21 +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 64e105464d GCS_MAVLink: fixed disabling of signing remotely 2016-05-24 07:25:54 +10:00
Andrew Tridgell 0bbddd38cf GCS_MAVLink: fixed some places where packets are sent without space
we always need sufficient space for the packet in the send buffer
2016-05-23 23:41:01 +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 8899455ea3 GCS_MAVLink: use extended MEMINFO message 2016-05-21 15:25:17 +10:00
Andrew Tridgell cd1f43a6ce GCS_MAVLink: use generated target_system and target_component offsets 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 ef4d7e5618 GCS_MAVLink: fixed build with mavlink1 2016-05-21 15:25:15 +10:00
Andrew Tridgell 048fc8d39e GCS_MAVLink: adjust for min_length mavlink2 API change 2016-05-21 15:25:15 +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 006b9728d0 GCS_MAVLink: updates for 24 bit msgid 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 7aae93e3e0 GCS_MAVLink: fixed auto-switching to MAVLink2 2016-05-21 15:25:14 +10:00
Andrew Tridgell 4ba09671a4 GCS_MAVLink: support disabling signing with zero key 2016-05-21 15:25:13 +10:00
Andrew Tridgell c96ed2b4c6 GCS_MAVLink: fixed calculation of GPS timestamp 2016-05-21 15:25:13 +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
Andrew Tridgell 0ead0ab978 GCS_MAVLink: support mavlink2 build 2016-05-21 15:25:12 +10:00
Ricardo de Almeida Gonzaga 3f92a64b99 GCS_MAVLink: Fix typos 2016-05-13 19:20:05 -03:00
proficnc c8b3c527f9 GCS_MAVLink: add route mask for blocking MAVlink forwading 2016-05-12 17:44:06 +10:00
Andrew Tridgell 2a2abb8be6 GCS_MAVLink: log parameter changes to DataFlash
this means param notifies also get logged in the DF log
2016-05-08 19:12:09 +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
Lucas De Marchi fea084a596 Global: use ap_version.h
This header is used by waf to contain the generated version macros,
particularly using the git hash. For waf it's better to be in a separate
header since it then can keep track of changes on it a trigger
recompilation.

For the make build system, a dummy ap_version.h file has been added in
the missing/ folder so both implementations can co-exist.
2016-05-06 13:11:28 -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
Michael Oborne 848fa27d1c GCS_MAVLink: support MAVLINK_MSG_ID_MISSION_ITEM_INT 2016-05-01 07:13:45 +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
Andrew Tridgell 197e72acc0 GCS_MAVLink: fixed null termination bug
found with ASAN
2016-04-26 18:20:49 +10:00
Andrew Tridgell 62986957b4 GCS_MAVLink: raise number of mavlink buffers to 5 2016-04-20 09:39:50 +10:00
Lucas De Marchi 0d9b9433da GCS_MAVLink: fix home position unit
As per documentation the home position is in mm. Since location stores
it in cm, convert to mm before sending.
2016-04-18 13:07:45 +10:00
Lucas De Marchi a502c0924c GCS_MAVLink: simplify sanity check 2016-03-30 01:32:45 -03:00
Francisco Ferreira d3e149e5d7 GCS_MAVLink: ignore Clang out-of-range warning
warning: comparison of constant 4 with expression of type 'mavlink_channel_t' is always false [-Wtautological-constant-out-of-range-compare]
    if (chan >= MAVLINK_COMM_NUM_BUFFERS) {
        ~~~~ ^  ~~~~~~~~~~~~~~~~~~~~~~~~
2016-03-30 01:32:45 -03:00
Lucas De Marchi c2b5ad46b4 GCS_MAVLink: replace header guard with pragma once 2016-03-16 18:40:44 +11:00
Staroselskii Georgii 6172ed078e GCS_Mavlink: send power status from all boards 2016-02-27 03:06:50 -03: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
Jonathan Challinger ac3b5a4400 GCS_MAVLink: add messages to routing switch statement 2016-01-23 10:35:44 +09:00
Gustavo Jose de Sousa c2e3f05dbf waf: ardupilotwaf: prefix build context methods with ap_
It helps to distinguish between things from waf and things from ardupilotwaf.
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa 3d22490397 waf: examples: use methods from bld instead of ardupilotwaf 2016-01-22 20:10:29 -02: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
Don Gagne c13cf70163 GCS_MAVLink: system id output as severity INFO 2016-01-18 09:40:00 +09:00
Gustavo Jose de Sousa d281067bcc waf: make example binaries be placed in 'examples' dir
This commit makes examples' wscripts use ardupilotwaf.example() instead of
ardupilot.program().
2016-01-15 16:46:41 -02:00
bugobliterator d7fcc7cd85 GCS_MAVLink: remove obsolete files from GCS_MAVLink dir 2016-01-15 07:28:47 +11:00
Andrew Tridgell ef151944b8 GCS_MAVLink: regenerate headers 2016-01-09 07:38:54 +11:00
Andrew Tridgell 712a45eb22 GCS_MAVLink: added VTOL_TAKEOFF and VTOL_LAND 2016-01-09 07:38:53 +11:00
Andrew Tridgell 76e3ae190a GCS_MAVLink: partial merge of common.xml from upstream 2016-01-09 07:38:51 +11:00
Andrew Tridgell a3d781bf3f GCS_MAVLink: fixed a valgrind error 2016-01-06 19:54:00 +11:00
Andrew Tridgell 0e8dbe92f0 GCS_MAVLink: fixed string overrun found by asan 2016-01-06 19:53:14 +11:00
Andrew Tridgell 68a46bc1ff GCS_MAVLink: use AP_Param::count_parameters() 2016-01-06 14:44:37 +11:00
Andrew Tridgell b052959c61 GCS_MAVLink: re-generated headers 2016-01-02 08:44:49 +11:00
Jonathan Challinger c2b4235662 GCS_MAVLink: merge mavlink-solo 2016-01-02 08:42:33 +11:00
Jonathan Challinger 41c881cc9e GCS_MAVLink: temporarily remove GIMBAL_ and GOPRO_ messages pending solo sync 2016-01-02 08:42:33 +11:00
Jonathan Challinger 2a3fe35731 GCS_MAVLink: run xmlpretty.py on ardupilotmega.xml 2016-01-02 08:42:33 +11:00
Jonathan Challinger 2c0657f326 GCS_MAVLink: fix example build 2015-12-29 10:46:35 -08:00
Lucas De Marchi a096703b06 Global: don't link with AP_Progmem
AP_Progmem is not used anymore.
2015-12-27 15:58:12 -02:00
Lucas De Marchi 5f26c951d8 GCS_MAVLink: stop using Progmem.h 2015-12-27 15:58:12 -02:00
DonLakeFlyer 74902012fd GCS_MAVLink: better mission errors 2015-12-21 16:02:23 +11:00
Tom Pittenger cf170b2aa7 GCS_MAVLink: generated files 2015-12-19 14:36:16 +09:00
Tom Pittenger 7af717fead GCS_MAVLink: ADSB msg bug: vert_velocity is supposed to be signed
- bug was introduced when changing from floating point to fixed point format
2015-12-19 14:36:13 +09:00
Julien BERAUD 780104dc9c GCS_MAVLink: Fix build
Optical Flow definition is needed
2015-12-18 17:56:06 +11:00
Tom Pittenger 40a84f0589 GCS_MAVLink: recompiled common.xml for adsb 2015-12-09 14:36:29 +11:00
Tom Pittenger 0026b56f0a GCS_MAVLink: updated adsb mavlink msg - remove floats
- convert altitude from float m/s to int32 mm/s
- convert velocities from float m/s to uint16 cm/s
2015-12-09 14:36:29 +11:00
Lucas De Marchi 9f0ff6ec24 GCS_MAVLink: remove unused AP_ADC_AnalogSource 2015-12-03 13:32:44 +11:00
Andrew Tridgell 3fcda53d11 GCS_MAVLink: regenerated headers 2015-12-03 13:21:52 +11:00
Peter Barker 31b8432545 GCS_MAVLink: add remote logging messages 2015-12-03 13:21:51 +11:00
Caio Marcelo de Oliveira Filho 6e7b73610d waf: add waf support 2015-12-03 07:54:30 +11:00
Tom Pittenger c0c3500d06 GCS_MAVLink: regenerate headers 2015-12-01 17:12:20 -08:00
Tom Pittenger 5a9e632ace GCS_MAVLink: added squawk to ADSB_vehicle msg 2015-12-01 17:11:44 -08:00
Andrew Tridgell c34100f6a2 GCS_MAVLink: support FMUv4 2015-11-27 18:54:30 +11:00
Andrew Tridgell 76209de08e GCS_MAVLink: regenerate headers 2015-11-26 10:25:08 +11:00
Andrew Tridgell 2c7bfc7984 GCS_MAVLink: update ADSB_VEHICLE message 2015-11-26 10:24:56 +11:00
Luis Vale Gonçalves 5e290daac5 GCS_MAVLink: libraries_Text_revision
text revision of messages
2015-11-26 08:10:15 +11:00
Tom Pittenger 4b5af2d726 GCS_MAVLink: files generated from new ADSB_VEHICLE msg 2015-11-23 19:45:40 +11:00
Tom Pittenger af93c8da4e GCS_MAVLink: new mavlink msg ADSB_VEHICLE 2015-11-23 19:45:40 +11:00
Caio Marcelo de Oliveira Filho a096c2b72c GCS_MAVLink: use millis/micros/panic functions 2015-11-20 12:35:34 +09:00
Andrew Tridgell cefb32566f GCS_MAVLink: fixed corner case in MAVLink routing
when a GCS sends a command to a system ID that isn't our system ID,
the GCS may use a non-advertised component ID such as
MAV_COMP_ID_SYSTEM_CONTROL. Those packets should be fowarded to the
target system even though the target system has not specifically
advertised that target sysid/compid tuple.
2015-11-13 13:38:53 +11:00
lvale 9d88508cc3 GCS_MAVLink: handle_mission_item text severity to info 2015-11-10 13:11:34 +09:00
Peter Barker 368363531f GCS_MAVLink: provide facilities to send param values to all GCS 2015-11-09 09:23:20 +11:00
Paul Riseborough dfdacf2ddc GCS_MAVLink: Accommodate change to EKF2 interface
Return euler angles for primary instance
2015-11-08 15:37:28 +11:00
Paul Riseborough 243888e923 GCS_MAVLink: accomodate change in EKF2 interface 2015-11-08 15:37:28 +11:00
Andrew Tridgell 49799257ea GCS_MAVLink: handle available memory of over 64k in mavlink 2015-11-05 16:09:00 +11:00
Lucas De Marchi c32d323cd6 GCS_MAVLink: remove check for GPS_RTK_AVAILABLE 2015-11-04 12:14:15 +11:00
Lucas De Marchi c75c1d84d9 AP_GPS: remove check for GPS_MAX_INSTANCES
All supported boards may have more than 1 GPS instance.
2015-11-04 12:14:15 +11:00
Lucas De Marchi 45c472205b GCS_MAVLink: remove check for AVR CPUs
Remove the checks for HAL_CPU_CLASS > HAL_CPU_CLASS_16 and
HAL_CPU_CLASS >= HAL_CPU_CLASS_75. Corresponding dead code will be
removed on separate commits.
2015-11-04 12:14:14 +11:00
Lucas De Marchi 039f42d916 GCS_MAVLink: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1 2015-11-04 12:14:13 +11:00
Lucas De Marchi 5244559010 Minimize AP_Progmem.h includes
Most of AP_Progmem is already gone so we can stop including it in most
of the places. The only places that need it are the ones using
pgm_read_*() APIs.

In some cases the header needed to be added in the .cpp since it was
removed from the .h to reduce scope. In those cases the headers were
also reordered.
2015-10-30 14:35:32 +09: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
Lucas De Marchi 831d8acca5 Remove use of PROGMEM
Now variables don't have to be declared with PROGMEM anymore, so remove
them. This was automated with:

    git grep -l -z PROGMEM | xargs -0 sed -i 's/ PROGMEM / /g'
    git grep -l -z PROGMEM | xargs -0 sed -i 's/PROGMEM//g'

The 2 commands were done so we don't leave behind spurious spaces.

AVR-specific places were not changed.
2015-10-30 14:35:16 +09:00
Lucas De Marchi 84d5fb006f Remove use of Util::{v,}snprintf_P()
These are now the same function as Util::snprintf().
2015-10-30 14:35:05 +09:00
Lucas De Marchi 2c38e31c93 Remove use of PSTR
The PSTR is already define as a NOP for all supported platforms. It's
only needed for AVR so here we remove all the uses throughout the
codebase.

This was automated with a simple python script so it also converts
places which spans to multiple lines, removing the matching parentheses.

AVR-specific places were not changed.
2015-10-30 14:35:04 +09:00
Tom Pittenger 0d36c4c07b GCS_MAVLink: version update after generate 2015-10-30 11:16:30 +09:00