Commit Graph

295 Commits

Author SHA1 Message Date
Andrew Tridgell
667ad98057 Rover: added ESC_TELEMETRY to mavlink streams 2018-06-21 10:48:02 +10:00
Peter Barker
87a3fcdd02 Rover: remove usb-mux checking
Nobody ever uses the result from this
2018-06-20 02:12:56 +01:00
Peter Barker
ab6cf171da Rover: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Michael du Breuil
c85f8c7bf5 Rover: Simplify radio trimming, improve MAVLink report 2018-06-11 16:29:36 -07:00
Randy Mackay
a08a955cbc Rover: accept DO_CHANGE_SPEED commands 2018-06-11 09:10:35 +09:00
Peter Barker
36705af8ff Rover: create an enumeration to hold vehicle mode constants
This gives us type-safety on the mode numbers.  This is advantageous as
some of these symbols exist with different values elsewhere in the code.
2018-06-08 08:41:16 +09:00
Michael du Breuil
cc772710ec Rover: Rework to support override changes 2018-06-05 09:51:09 +10:00
Peter Barker
424d243c7f Rover: move try_send_message handling of EKF_STATUS_REPORT up 2018-06-01 16:12:45 +01:00
Randy Mackay
1e058045f7 Rover: guided mode more forgiving of set-position-targets type_mask field
accept position targets regardless of any other bit settings in type mask field.  This makes rover more forgiving of errors in the type_mask field.
2018-06-01 15:05:48 +09:00
Peter Barker
829d18874e Rover: create persist_streamrates() callback to indicate persistence 2018-05-29 13:08:29 +10:00
Peter Barker
9d83ee8cc7 Rover: move sending of vfr_hud up 2018-05-29 13:00:40 +10:00
Peter Barker
8101f2b573 Rover: move sending of simstate up 2018-05-23 18:36:50 +10:00
Peter Barker
e377debf25 Rover: add type-correctness for stream messages 2018-05-22 11:21:25 +10:00
Peter Barker
3f4783fa5d Rover: move try_send_message of servo-output-raw up 2018-05-21 19:08:08 +01:00
Peter Barker
90124c20cb Rover: shorten time remaining in try_send_message
The scheduler table entry for retrying defered messages doesn't allow
enough time for try_send_messages to run.

This change makes the time-remaining requirement the same as Plane.
2018-05-21 18:16:56 +09:00
Peter Barker
1ecd371cd0 Rover: move sending of GLOBAL_POSITION_INT up to GCS_MAVLINK 2018-05-17 15:48:06 +01:00
Peter Barker
3799a13bc3 Rover: move send_attitude up to GCS_MAVLINK 2018-05-17 18:28:43 +10:00
Peter Barker
c9d47c4ed5 Rover: move try_send_message sending of scaled_pressure up 2018-05-17 15:37:14 +10:00
Peter Barker
ace48d72b0 Rover: move try_send_message sending of sensor offsets up 2018-05-17 15:37:14 +10:00
Peter Barker
a37c8eae1f Rover: move try_send_message of RAW_IMU up to GCS_MAVLINK 2018-05-17 15:37:14 +10:00
Peter Barker
0d3051e46a Rover: handle setting of ekf origin in GCS_MAVLink 2018-05-17 10:13:42 +10:00
Michael du Breuil
dc5fae9ea6 Rover: Support rangefinder MAVLink changes 2018-05-16 23:21:41 +01:00
Peter Barker
b38d23d542 Rover: move sending of battery data up 2018-05-09 11:40:31 -07:00
Peter Barker
a692acad81 Rover: move data stream send up 2018-05-09 16:15:38 +10:00
Peter Barker
a78fe0896f Rover: make scheduler track whether it has called the delay callback 2018-05-09 16:15:38 +10:00
Peter Barker
9e1811027d APMrover2: move try_send_message handling of RC_CHANNELS_RAW up 2018-05-08 12:33:32 +01:00
Peter Barker
1bc208584f Rover: move try_send_message of heartbeats up to GCS_MAVLINK 2018-05-07 11:30:13 -06:00
Peter Barker
25c2efb3ae Rover: move try_send_message handling of VIBRATION up 2018-05-07 11:23:28 -06:00
Peter Barker
d66cb1dda0 Rover: use AP_ServoRelayEvents singleton 2018-04-18 20:31:55 +09:00
Michael du Breuil
05173f24c6 Rover: Use RC_Channels instead of hal.rcin 2018-04-11 21:47:07 +01:00
Michael du Breuil
3bad3b2e68 Rover: Check MANUAL_CONTROL target 2018-04-10 16:54:34 +01:00
Francisco Ferreira
b2af1f1e05
Rover: fix method shadowing 2018-04-03 16:29:33 +01:00
Peter Barker
a45e3cba15 Rover: factor vehicle's mavlink send_heartbeat 2018-04-03 13:05:19 +01:00
Peter Barker
b407a4eed8 Rover: move common calibration functions up 2018-04-02 23:25:05 +01:00
Peter Barker
762b31b147 Rover: create a preflight calibration function
Some functionality has moved up.
2018-04-02 23:25:05 +01:00
Peter Barker
57ed822db0 Rover: allow DataFlash to handle log sending 2018-03-26 09:22:47 +09:00
Peter Barker
3c58eca0ab Rover: move handling of visual odometry messages up 2018-03-23 09:28:07 +09:00
Randy Mackay
96ae9cef14 Rover: send correct mav-type for boats 2018-03-22 09:11:52 +09:00
Peter Barker
bb7bed0614 Rover: move handling of get_home_position up 2018-03-19 10:32:37 +09:00
Peter Barker
9d0da4a71f Rover: move home state into AP_AHRS 2018-03-19 10:32:37 +09:00
Peter Barker
81ba037582 Rover: use baro singleton 2018-03-08 21:20:05 -08:00
Peter Barker
78ecf55fec Rover: use AP::ahrs() for GCS_MAVLink 2018-03-07 12:34:39 +00:00
Randy Mackay
24b8ed48b6 Rover: global-pos-int uses vel from EKF instead of GPS 2018-02-13 08:52:48 +09:00
Randy Mackay
f47e65822f Rover: fix global-pos-int velocity direction to NED 2018-02-13 08:52:48 +09:00
khancyr
5503a0069d Rover: add proximity library 2018-01-22 17:18:41 +09:00
khancyr
c3fb985ec5 Rover: add fence support 2018-01-22 17:18:41 +09:00
Dylan Herman
c14af79975 Rover: now sends SCALED_PRESSURE msg 2018-01-22 10:04:57 +09:00
Randy Mackay
5167ec7708 Rover: send PID to GCS regardless of mode
Also add some comments
2018-01-12 08:15:34 +09:00
Randy Mackay
f6f40afcda Rover: rename control_mode_from_num to mode_from_mode_num 2017-12-12 10:39:26 +09:00
Randy Mackay
8e80490098 Rover: reporting gets lat accel from attitude control 2017-12-09 12:18:49 +09:00
Randy Mackay
57067fb8bc Rover: add WP_SPEED and RTL_SPEED
This separates the default/maximum speed used in Auto, Guided, RTL and SmartRTL from the CRUISE_SPEED which is used as the base for the speed-to-throttle controller (along with CRUISE_THROTTLE)
2017-12-07 07:29:10 +09:00
Randy Mackay
988e4290dd Rover: formatting and comments for set-position-target handling 2017-12-05 12:15:33 +09:00
khancyr
9299943347 Rover: adjust setpoint_velocity handling 2017-12-05 12:14:46 +09:00
Peter Barker
1d2ec9054b Rover: tighten return types of mavlink functions and variables 2017-12-01 17:01:10 +00:00
Randy Mackay
5b7cd31221 Rover: send steering PID tuning to GCS in most modes
Using manual_steering and auto_throttle is not perfectly correct because we will send steering rate PID info in HOLD mode but will not send throttle PID info in Steering mode
2017-11-29 09:38:53 +09:00
khancyr
279a57dc10 APMrover2: fix servo_out to GCS message 2017-11-21 20:23:55 +09:00
Peter Barker
baf82cec22 Rover: use gps singleton for GCS functions 2017-11-15 13:43:03 +00:00
Pierre Kancir
4d38eb85a1 APMRover2: Add support of MANUAL_CONTROL msg 2017-10-31 09:31:05 +09:00
Randy Mackay
2ef1e8e4c2 Rover: fix PID desired and achieved reporting 2017-10-26 19:44:18 +09:00
Andrew Tridgell
f25e8631ef Rover: support simple accelcal 2017-10-10 10:57:38 +11:00
Lucas De Marchi
27be369be7 APMrover2: do not include version.h/ap_version.h
The interface provided by each vehicle should be used to get the
version.
2017-09-23 21:37:45 -07:00
Randy Mackay
3af5893f9e Rover: command-long DO_SET_HOME check first param is zero 2017-09-20 12:14:38 +09:00
Randy Mackay
f7cb006d40 Rover: accept DO_SET_HOME within COMMAND_INT 2017-09-20 12:14:38 +09:00
Randy Mackay
b1684b5377 Rover: accept more mav-frame types
accept mav frames whether or not they have _INT appended
2017-09-20 12:14:38 +09:00
Peter Barker
b84e40a804 Rover: move handling of SET_GPS_GLOBAL_ORIGIN up 2017-09-19 15:44:23 +09:00
Randy Mackay
4899401679 Rover: minor comment fix 2017-09-19 10:30:15 +09:00
Randy Mackay
894bf2a23f Rover: support SET_GPS_GLOBAL_ORIGIN message 2017-09-19 10:30:15 +09:00
Peter Barker
add5eb6907 Rover: remove old DO_SET_MODE support
We no longer support setting modes except via custom-modes
2017-09-19 01:24:11 +01:00
Peter Barker
25a32c93f2 Rover: move gcs_out_of_time into GCS object 2017-09-12 18:28:07 +01:00
Peter Barker
b5d234aa64 Rover: handle param_request_list in GCS_MAVLINK base class 2017-08-30 15:54:47 +01:00
Peter Barker
640b2b7a13 Rover: handle param_set in GCS_MAVLINK base class 2017-08-30 15:54:47 +01:00
Peter Barker
85ac69f701 Rover: move send_autopilot_request calls up to GCS base class 2017-08-30 15:54:46 +01:00
Peter Barker
d98c427514 Rover: add constant structure holding firmware version 2017-08-30 15:54:46 +01:00
Randy Mackay
14c74a5967 Rover: remove learning mode
saving waypoints can be done in manual or steering mode
2017-08-25 14:05:23 +09:00
Peter Barker
ee39ec3751 Rover: move serial_control case to base class 2017-08-17 12:42:31 +01:00
Peter Barker
92becb2875 Rover: move play_tune and led_control handling to base class 2017-08-17 12:27:10 +01:00
Peter Barker
f3a0d2b02b Rover: use GCS_MAVLINK subclasses to handle set_mode 2017-08-16 11:58:10 +10:00
Peter Barker
4c2747bfe8 Rover: use rangefinder backend accessors 2017-08-15 18:30:45 +01:00
Michael du Breuil
a98c8427dd Rover: Expose the AFS instance to MAVLink 2017-08-15 15:14:56 +01:00
Randy Mackay
d99108f3bc Rover: use AR_AttitudeControl for throttle control
also direct throttle nudge replaced with speed nudge
calc_speed_max estimates vehicle's top speed based on cruise-speed and
cruise-throttle
steering mode now provides total target speed instead of using speed plug
throttle nudge
motor limits provided to attitude control to stop i-term buildup
uses negative desired speed instead of reversed flag
reporting to GCS uses new throttle controller
braking is simply enabled and allows a reverse motor output regardless of vehicle
speed
2017-08-15 20:47:19 +09:00
Randy Mackay
9097269d6d Rover: use AR_AttitudeControl for steering control 2017-08-15 20:47:19 +09:00
Peter Barker
edab526b01 Rover: send gps messages as separate queued messages 2017-08-09 16:18:22 +01:00
Peter Barker
f7fd663f45 Rover: move sending of gps_raw up 2017-08-09 16:18:22 +01:00
Peter Barker
89a5272ab5 Rover: move sending of system_time up 2017-08-09 16:18:22 +01:00
Peter Barker
341a9ae032 Rover: move sending of camera_feedback up 2017-08-09 16:18:22 +01:00
Peter Barker
ece800ba90 Rover: move sending of meminfo up 2017-08-09 16:18:22 +01:00
Peter Barker
c642dc616a Rover: use new retry_deferred method 2017-08-05 23:14:18 +01:00
Randy Mackay
3863542194 Rover: adjust set-position-target-local-ned handling
add support for just yaw or yaw-rate
remove support for simultaneous position and velocity
2017-08-05 11:20:58 +09:00
Randy Mackay
46faece76b Rover: set-attitude-target accepts quaternions for target heading 2017-08-05 11:20:58 +09:00
Randy Mackay
d56d222971 Rover: set-attitude-target consumes thrust in -1 to +1 range
This makes the processing consistent with the mavlink spec
2017-08-05 11:20:58 +09:00
Randy Mackay
b9db9229d9 Rover: replace vehicle code guided methods with calls to guided mode class
set_guided_WP replaced by mode_guided.set_desired_location
nav_set_yaw_speed replaced with mode_guided.set_desired_heading_and_speed
set_guided_velocity replaced with mode_guided.set_desired_turn_rate_and_speed
guided_control structure replaced with mode_guided members
use_pivot_steering accepts yaw-error argument instead of calculating it itself internally
2017-08-05 11:20:58 +09:00
Randy Mackay
783f8243df Rover: use mode class's get_distance_to_destination and speed_error
used for reporting to GCS and logging
2017-08-05 11:20:58 +09:00
Peter Barker
137d513fdc Rover: move try_send_message queued_param_send up 2017-08-03 14:34:33 +01:00
Peter Barker
dbac7447d6 Rover: move try_send_message send_hwstatus up 2017-08-03 14:34:33 +01:00
Peter Barker
4da89a948a Rover: move try_send_message mission handling up 2017-08-03 14:33:37 +01:00
Peter Barker
dbdfce570a Rover: move try_send_message compass message handling up 2017-08-03 14:24:47 +01:00
Peter Barker
d44c7f0886 Rover: base SYS_STATUS load average on variable loop rate 2017-08-01 19:39:27 +01:00
khancyr
23532bf45c Rover: add reason to set_mode 2017-07-31 18:01:17 +09:00
Peter Barker
2014eb0def Rover: move common mavlink camera handling up 2017-07-28 14:32:58 +01:00
Peter Barker
81d52c282c Rover: camera is responsible for taking distance-based-images and logging 2017-07-28 14:27:53 +01:00