Commit Graph

345 Commits

Author SHA1 Message Date
Andrew Tridgell 7d3523b4a7 Plane: use _send_buf() functions to reduce stack usage in MAVLink replies
this re-uses the incoming message buffer in constructing the reply
2014-03-19 12:13:28 +09:00
Andrew Tridgell 537e78f9fa Plane: much faster mission upload
send next WP request immediately if possible. This speeds up mission
upload on USB by about 10x
2014-03-19 12:13:27 +09:00
Randy Mackay 1ad743c4e1 Plane: use common GCS_MAVLink handle_mission methods 2014-03-19 12:13:21 +09:00
Andrew Tridgell 740ecc2c1b Plane: use new handle_mission_request() function 2014-03-19 12:13:12 +09:00
Randy Mackay 96b2e88e36 Plane: add comment to GCS_Mavlink.pde 2014-03-19 12:13:03 +09:00
Andrew Tridgell 4bf140aeac Plane: make next_WP and prev_WP be locations
having a command ID in them doesn't really make sense

Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-03-19 12:12:39 +09:00
Randy Mackay 982ce56d2b Plane: bug fix to set_current_cmd
When set_current_cmd mavlink message is received, resume mission only if
the mission has completed.
Stop mission when vehicle leaves AUTO mode.
2014-03-19 12:12:28 +09:00
Andrew Tridgell 3277416aeb Plane: fixed relative altitudes and resuming mission
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-03-19 12:12:22 +09:00
Randy Mackay 033b7eca9e Plane: integrate variable max num commands 2014-03-19 12:12:02 +09:00
Randy Mackay 601cde2a32 Plane: remove alt_in_cm from mavlink to cmd conversion 2014-03-19 12:11:03 +09:00
Randy Mackay bc86a5043a Plane: bug fix for relative alt 2014-03-19 12:11:00 +09:00
Randy Mackay ddba6f5c19 Plane: mission integration into GCS_Mavlink.pde 2014-03-19 12:10:57 +09:00
Randy Mackay e88f1953d0 Plane: use common location options masks 2014-03-19 12:10:21 +09:00
Andrew Tridgell e784c81f3e Plane: only send GPS2_RAW when we have a 2nd GPS 2014-03-03 07:05:52 +11:00
Andrew Tridgell 07826096a2 Plane: support a 2nd GPS 2014-02-26 09:24:23 +11:00
Andrew Tridgell 95dd252f29 Plane: pass fix type to gps->setHIL() 2014-02-25 21:11:15 +11:00
Andrew Tridgell 492e65acde Plane: fix for HIL API change 2014-02-23 08:18:31 +11:00
Andrew Tridgell 33851030a4 Plane: use ahrs.get_armed() 2014-02-19 10:53:26 +11:00
Andrew Tridgell 4646682a31 Plane: use common send_ahrs2() 2014-02-15 05:48:16 +11:00
Andrew Tridgell 57e0eb4db5 Plane: use a const reference for home 2014-02-15 05:48:15 +11:00
Andrew Tridgell 11337ab2df Plane: updates for AHRS holding home position 2014-02-15 05:29:47 +11:00
Andrew Tridgell 99cfaf6097 Plane: switched to AHRS2 message for reporting 2014-02-15 05:29:45 +11:00
Andrew Tridgell 9ac886f58d Plane: use AP_AHRS_NavEKF when available 2014-02-15 05:28:09 +11:00
Andrew Tridgell 006b9da6be Plane: only include NavEKF on fast CPUs 2014-02-15 05:28:08 +11:00
Andrew Tridgell 1fbae4dd44 Plane: enable NavEKF logging in plane 2014-02-15 05:28:07 +11:00
Andrew Tridgell 7de8be1956 Plane: log power status on Pixhawk 2014-02-15 05:00:09 +11:00
Andrew Tridgell 043c80dbe6 Plane: use new board_voltage() method 2014-02-14 21:50:59 +11:00
Andrew Tridgell 369c130c2d Plane: consider GPS unhealthy if it doesn't have 3D lock 2014-01-27 09:02:22 +11:00
Andrew Tridgell 776b999f43 Plane: fixed disarmed PWM output 2014-01-20 17:34:50 +11:00
Andrew Tridgell cdd36b2c41 Plane: use AP_ServoRelayEvents library 2014-01-20 17:06:29 +11:00
Andrew Tridgell 2045591bed Plane: fixed servo and relay repeat code 2014-01-20 17:06:29 +11:00
Andrew Tridgell e4e5c92453 Plane: fixed relay handling
the parameters were badly out of whack!
2014-01-20 17:06:29 +11:00
Andrew Tridgell 91cc08a3ef Plane: log PX4Firmware and NuttX git revisions in logs 2014-01-14 15:37:03 +11:00
Andrew Tridgell cf09fef1db Plane: prevent log corruption when new log started 2014-01-14 14:29:14 +11:00
Andrew Tridgell a15336079e Plane: start logging when first needed 2014-01-14 13:51:49 +11:00
Andrew Tridgell 3486b933c0 Plane: use common send_meminfo() 2013-12-28 16:02:06 +11:00
Andrew Tridgell 72473e4317 Plane: use AP_HAL available_memory() call 2013-12-28 14:51:37 +11:00
Andrew Tridgell 43a56151d7 Plane: reset mission on disarm
this makes repeated missions easier
2013-12-20 12:04:23 +11:00
Andrew Tridgell 89366a1ee1 Plane: fixed ARMING_REQUIRED=2 on APM2 to disable rc output on throttle 2013-12-20 11:59:45 +11:00
Andrew Tridgell 263f3b116b Plane: added FS_GCS_ENABL==2 option
this allows GCS failsafe when the GCS isn't getting updates from the
aircraft
2013-12-20 11:39:00 +11:00
Andrew Tridgell ca67c24eef Plane: removed common functions 2013-12-17 12:00:46 +11:00
Andrew Tridgell d93b95186d Plane: prevent a build warning 2013-12-17 11:51:36 +11:00
Andrew Tridgell e0b511e367 Plane: enable new log download functions 2013-12-17 11:51:35 +11:00
Andrew Tridgell 4bad2cfb3a Plane: use common GCS.h 2013-12-17 11:51:35 +11:00
Andrew Tridgell 3508a14542 Plane: small arming tidyups 2013-12-11 17:29:26 +11:00
Andrew Tridgell b0236610b2 Plane: fixed arming bit in MAVLink heartbeat message 2013-12-11 17:29:26 +11:00
Andrew Tridgell 103da0c889 Plane: when no GPS lock always send GPS messages 2013-12-11 17:29:26 +11:00
Michael Day b0a0316dd6 Plane: Now using AP_Arming library. 2013-12-11 17:29:23 +11:00
Andrew Tridgell 49f49648ec Plane: changes for compass healthy API 2013-12-09 17:47:38 +11:00
Andrew Tridgell 02af644010 Plane: report both sets of sensors in MAVLink 2013-12-09 17:34:07 +11:00
Andrew Tridgell 65c97a2f5f Plane: updates for compass API change 2013-12-09 17:34:06 +11:00
Andrew Tridgell 6b4a3ef98b Plane: added MAVLink sonar logging 2013-11-28 21:49:27 +11:00
Andrew Tridgell 079d48f6cc Plane: use log system ID if available 2013-11-26 13:00:03 +11:00
Andrew Tridgell 8383abc1fe Plane: added SERIAL2_BAUD and rename SERIAL3_BAUD to SERIAL1_BAUD 2013-11-26 13:00:03 +11:00
Andrew Tridgell 5f32f44366 Plane: fixed mavlink_queue[] size 2013-11-23 19:29:23 +11:00
Andrew Tridgell 2fa5e6310d Plane: added 3rd telemetry stream on platforms that have it
this generalises the gcs object usage
2013-11-23 19:29:22 +11:00
Andrew Tridgell 490a061c6f Plane: added HIL_ERR_LIMIT
this allows DCM to recover if HIL attitude drifts too far from true attitude
2013-11-23 18:50:57 +11:00
Andrew Tridgell 1e36ebc31b Plane: reset HIL attitude if off by more than 5 degrees 2013-11-23 18:50:56 +11:00
Andrew Tridgell 8bfe59cea5 Plane: send SIMSTATE messages in HIL
this allows better tracking of the simulator state, to see if issues
are caused by DCM failure
2013-11-23 18:50:56 +11:00
Andrew Tridgell 7e10811673 Plane: send firmware and git version in tlog 2013-11-09 10:09:20 +11:00
Andrew Tridgell 1aa29df52d Plane: report INS and airspeed health 2013-11-07 12:48:17 +11:00
Andrew Tridgell 78604bd84e Plane: only send GPS_RAW_INT if new data
this reduces link load when asking for high rate telemetry
2013-11-05 14:40:51 +11:00
Andrew Tridgell cfa38df528 Plane: allow parameters to download at full speed 2013-10-28 10:34:32 +11:00
Andrew Tridgell 3289041428 Plane: added MAVLink SYSTEM_TIME message 2013-10-24 14:22:47 +11:00
Andrew Tridgell 4239498b62 Plane: moved fast_loop() into main scheduler table 2013-10-15 09:52:23 +11:00
Andrew Tridgell 0ec322ee47 Plane: support MAV_CMD_DO_SET_CAM_TRIGG_DIST 2013-10-11 21:37:27 +11:00
Randy Mackay 6e2b1093fc Plane: mavlink ext status to use SYS_STATUS_SENSOR enum 2013-10-04 13:21:01 +09:00
Andrew Tridgell 011915eb1c Plane: added error checking to rally load save
sanity check the rally points
2013-10-03 12:21:08 +10:00
Michael Day 497c95de8e Plane: Add support for rally points.
Added parameter RALLY_TOTAL.

Added handlers for new MAVLink messages RALLY_POINT and
RALLY_FETCH_POINT.

defines.h modified to make room in EEPROM to store rally points.

rally.pde added and is responsible for ensuring rally points get
stored in the correct spot in EEPROM.

Multiple Rally/RTL point support now done.  If rally points have
been defined, then when RTL mode is entered, the closest Rally
point is chosend and the plane loiters at that point.

Note only 10 rally points can be defined; this is to save space in
the APM's EEPROM.
2013-10-03 12:21:08 +10:00
Randy Mackay 21360aeebf Plane: sent current as -1 to GCS when can't be monitored 2013-10-03 11:16:33 +09:00
Randy Mackay 9722276827 Plane: batt curr and remaining should be int16 2013-10-03 11:16:26 +09:00
Randy Mackay c64d444b5a Plane: integrate BattMonitor 2013-10-03 11:16:08 +09:00
Kevin Hester 996eda0080 Plane: Report MAV_STATE_ACTIVE if flying, MAV_STATE_STANDBY otherwise
(There are also various error states MAV_STATE_CRITICAL that are unchanged
by this check in).

The is_flying() check is similar to the code in suppress_throttle, but
I wanted to make it very optimistic on thinking we are flying - which is
not what you want for set_throttle...

(AC has similar MAV_STATE_ACTIVE vs MAV_STATE_STANDBY behavior now)
2013-09-21 21:57:07 +10:00
Andrew Tridgell bcce2e4fc5 Plane: use new Baro API 2013-09-21 21:31:03 +10:00
Andrew Tridgell 36466e91ed Plane: run SENSOR_OFFSETS message at 1/10 of the requested rate
this message wastes bandwidth, as the values change very slowly
2013-09-21 09:35:45 +10:00
Andrew Tridgell c4dcdcf5a2 Plane: only send RC_CHANNELS_SCALED in HIL
saves a bit of telemetry bandwidth
2013-09-21 09:30:29 +10:00
Andrew Tridgell 21a4da0d29 Plane: removed flash_leds() calls 2013-09-19 18:38:28 +10:00
Andrew Tridgell 4bd6b2f428 Plane: use new usb_connected() function 2013-09-19 16:23:58 +10:00
Andrew Tridgell 4a8c9a7765 Plane: support reboot to bootloader 2013-09-04 11:59:16 +10:00
Andrew Tridgell a93f7c39a9 Plane: updates for new notify API 2013-08-30 13:01:35 +10:00
Andrew Tridgell 8733391315 Plane: call airspeed MAVLink logging function 2013-08-30 13:01:34 +10:00
Andrew Tridgell 364790414c Plane: support new RADIO_STATUS msg 2013-08-24 17:59:13 +10:00
Andrew Tridgell d4ca3ebf65 Plane: check for parameter send at default of 10Hz
50Hz can cause overruns, especially on PX4 which can drain the tx
buffer very rapidly
2013-08-13 13:42:25 +10:00
Andrew Tridgell 62cc84aba3 Plane: use new scheduler load_average() function
this also simplifies the main loop
2013-08-02 18:46:28 +10:00
Andrew Tridgell 51b9cf3e76 Plane: move failsafe variables into a structure
this makes the logic a bit easier to follow
2013-07-22 12:50:00 +10:00
Andrew Tridgell ed20c4cbc8 Plane: fixed initial reporting of battery remaining
we were not showing battery remaining 100% until we used some battery
2013-07-14 21:59:15 +10:00
Andrew Tridgell e79023ceee Plane: fixed problem with slow ground station connects
don't trigger the "scheduler out of time" code when in the delay
callback

Thanks to Marijm Slootweg for noticing this!
2013-07-14 17:28:34 +10:00
Andrew Tridgell 113bc20f8a Plane: added a new CRUISE flight mode
See
http://diydrones.com/group/apmusergroup/forum/topics/feature-request-hold-heading-mode

this fixes issue #438
2013-07-13 21:45:58 +10:00
Randy Mackay 1772a62415 Plane: fix to gps present check in mavlink extended status 1 msg 2013-07-13 10:27:39 +09:00
Andrew Tridgell 608007361b Plane: added initial implementation of ACRO mode
rate based control with attitude locking
2013-07-11 09:10:41 +10:00
Andrew Tridgell 3c97fad2ec Plane: changes for GPS field changes 2013-07-10 14:04:22 +10:00
Andrew Tridgell 7aa360b176 Plane: added relative_altitude helper functions
prevents some code duplication
2013-07-10 14:04:22 +10:00
Andrew Tridgell 1355b6d89d Plane: break-up scheduling into smaller pieces
ensure mavlink sends don't push us over a scheduling boundary
2013-07-05 18:05:27 +10:00
Andrew Tridgell 93cd0f9a31 Plane: switch to new AP_Scheduler
this gives us more accurate task scheduling in ArduPlane, plus better
monitoring of task timing (via SCHED_DEBUG)
2013-06-04 13:34:58 +10:00
Andrew Tridgell fb9bf21522 Plane: allow channel mapping of first 4 channels
this makes it easier to support DSM and SBUS radios
2013-06-03 16:23:48 +10:00
Andrew Tridgell 515d726ee0 Plane: use RC_Channel::rc_channel() instead of rc_ch[] 2013-06-03 16:23:48 +10:00
Andrew Tridgell f7697574db Plane: use the new airspeed driver interface
the choice of analog source is now in the airspeed driver
2013-06-03 11:51:09 +10:00
Andrew Tridgell dd633fcf3f Plane: make voltage and battery capacity failsafe settable at runtime
this also fixes issue #292
2013-05-22 20:33:57 +10:00
Randy Mackay c7961a72fc Plane: send_text_P bug fix for short messages 2013-05-20 12:51:16 +09:00
Andrew Tridgell 635b3fabda Plane: fixed APM1-1280 build 2013-05-08 21:44:45 +10:00