Commit Graph

2532 Commits

Author SHA1 Message Date
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 6f0db45b57 Replace use of strcasecmp_P() with strcasecmp() 2015-10-30 14:35:08 +09:00
Lucas De Marchi 84da1f5039 Rename gcs_send_text_P to gcs_send_text 2015-10-30 14:35:07 +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
Lucas De Marchi bd0f0a7536 ArduPlane: convert dos linefeeds to unix 2015-10-30 14:35:02 +09:00
Andrew Tridgell 3c3392aae5 Plane: improve error messages on failed parachute release 2015-10-27 16:06:34 +11:00
Andrew Tridgell 5d1d54a8cb Plane: added CHUTE_CHAN parameter for manual release 2015-10-27 16:06:34 +11:00
Andrew Tridgell d20b86b95e Plane: suppress the throttle in auto-throttle modes after parachute release 2015-10-27 16:06:34 +11:00
Andrew Tridgell 9affddcaa3 Plane: initial support for AP_Parachute library 2015-10-27 16:06:34 +11:00
Andrew Tridgell 3dd47adafe Plane: fixed a condition where takeoff switches to land 2015-10-24 15:15:59 +11:00
Andrew Tridgell 537f22cdd1 Plane: changed thresholds for LAND_APPROACH
use 15% path progress when lined up, and 50% path progress if not
lined up
2015-10-24 15:00:34 +11:00
Tom Pittenger f9fbb8a0f7 Plane: restrict land_approach stage change with tighter criteria
- inhibit switching from FLIGHT_NORMAL to FLIGHT_LAND_APPROACH until we meet stricter criteria other than just that LAND is next waypoint
- requires: nav bearing error < 10deg && have traveled path forward 30% of path && are below top of approach in case we hit waypoint while still descending
- exceptions: traveled path forward > 80% which basically means we're getting close to the flare point and better get into approach mode ASAP
2015-10-24 14:43:43 +11:00
Caio Marcelo de Oliveira Filho 62d4c05a8e ArduPlane: include SITL only for SITL board
Include board-specific files only when the board is used. Since these
should be exceptional cases, let the includer handle the ifdef instead
of putting ifdefs in every platform-specific header.

In the future we should evaluate whether the HAL for the board should
instantiate this.
2015-10-22 13:36:14 -02:00
Caio Marcelo de Oliveira Filho 49a42dc985 SITL: use a SITL namespace 2015-10-22 11:04:42 -02:00
Peter Barker 07842e211d Plane: use simple log entry numbers to download logs 2015-10-21 10:50:32 +11:00
Caio Marcelo de Oliveira Filho db3e501aec ArduPlane: implement HAL::Callbacks
Also removes includes for each board since they are not necessary
anymore.
2015-10-21 09:16:09 +11:00
Caio Marcelo de Oliveira Filho ec52df991c build: compile only the HAL files needed by the board
Instead of requiring every program to specify the HAL related modules,
let the build system do it (in practice everything we compiled depended
on HAL anyway). This allow including only the necessary files in the
compilation.
2015-10-21 09:16:07 +11:00
Caio Marcelo de Oliveira Filho 2e464a53c2 AP_HAL: make code not depend on concrete HAL implementations
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.

A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.

The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.

Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.

The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Randy Mackay 073828a764 Plane: add ahrs health pre-arm check 2015-10-16 13:50:59 +09:00
Gustavo Jose de Sousa 2cc07d2899 ArduPlane: use compass get_{field,offsets}() functions
Both functions are equivalent, so we're going to simply use
get_{field,offsets}() instead of get_{field,offsets}_milligauss().
2015-10-15 19:56:06 +09:00
Randy Mackay 17ed125e41 Plane: add no break comment to suppress compiler warning 2015-10-03 12:56:30 +09:00
Randy Mackay 32c5b0e63c Plane: support set_home_position message 2015-10-03 12:56:28 +09:00
Randy Mackay d54e28e129 Plane: send home position when home is set or get-home msg received 2015-10-03 12:56:27 +09:00
Andrew Tridgell 213bed99e1 Plane: use ahrs.send_ekf_status_report() 2015-09-29 10:59:19 +10:00
Tom Pittenger 617626f9f5 Plane: log flight_stage
logging plane flight stage in STAT.Stage
2015-09-28 18:18:09 +10:00
Andrew Tridgell 017ebc440b Plane: added SENSOR_RC_RECEIVER reporting in SYS_STATUS 2015-09-28 08:55:24 +10:00
Andrew Tridgell 458e967d06 Plane: added RPM logging
useful for seeing if a petrol motor is still running
2015-09-24 20:58:18 +10:00
Andrew Tridgell c14dbcfc44 Plane: set version to 3.4.1dev 2015-09-24 11:12:41 +10:00
Andrew Tridgell 38d51ddb32 Plane: prepare for 3.4.0 release 2015-09-24 10:08:27 +10:00
Andrew Tridgell 91f990af06 Plane: added EKF2 to parameters as EK2_* 2015-09-23 11:56:37 +10:00
Andrew Tridgell 0592bd4e6f Plane: update release notes 2015-09-22 09:46:18 +10:00
Andrew Tridgell b735999848 Plane: prepare for beta3 2015-09-22 09:43:39 +10:00
Randy Mackay 6da53ae3b2 Plane: replace SKIP_GYRO_CAL with INS_GYR_CAL
Also calibrate gyros with accel cal and set trim
2015-09-21 17:06:43 +09:00
Andrew Tridgell 9e7c38b933 Plane: moved logging of mode to Log_Write_Vehicle_Startup_Messages
this fixes a problem where the initial mode isn't logged on arming
2015-09-17 20:15:26 +10:00
Andrew Tridgell d019f83bee Plane: allow for higher roll limits on takeoff
only restrict to LEVEL_ROLL_LIMIT below 5m. Above that start to allow
larger roll limits, reaching the full roll limit at 15m
2015-09-17 15:35:37 +10:00
Stewart Loving-Gibbard 2085156a07 Plane: Adding Logging of RSSI data. 2015-09-16 16:41:45 +09:00
Andrew Tridgell 86e8c7ed2f Plane: add some safety to detect bad lidar readings
we only accept a lidar if it changes by 5% of its full range, and we
reject a lidar again if the correction between barometric and lidar
range changes by more than 30m

This allows us to cope with faulty lidars which may give a constant
reading
2015-09-16 14:24:44 +10:00
squilter 7365701d13 Plane: Support do_digicam_x via command_long 2015-09-16 13:06:51 +09:00
Grant Morphett 9a76f0ecf0 Plane: Fixing FS_SHORT_ACTN parameter doco
This is to resolve wiki issue 146
https://github.com/diydrones/ardupilot-wiki-issue-tracker/issues/146
2015-09-16 09:35:38 +09:00
Grant Morphett 6b22a59eff Plane: Fixing up the ARMING_ parameters autogen doco 2015-09-15 14:11:15 +09:00
Andrew Tridgell d43d070e75 Plane: ensure throttle reverse is obeyed in all states
need to use radio_max for failsafe if reversed
2015-09-14 09:42:20 +10:00
Andrew Tridgell 5c055220f5 Plane: cope with bad values of ARMING_REQUIRE 2015-09-14 09:35:53 +10:00
Andrew Tridgell 73f454133b Plane: log RFND packet for multiple rangefinders 2015-09-13 11:29:53 +10:00
Peter Barker 3c0355e9e2 Plane: ensure 10% free space when initialising logging 2015-09-09 12:22:35 +10:00
Staroselskii Georgii db94c8d53d Plane: make Plane use milligauss 2015-09-09 10:38:16 +10:00
Grant Morphett c5c74eebfc Plane: Using the existing function to check for throttle failsafe
No need to duplicate the code if we have an existing function for this
sort of thing.
2015-09-09 10:28:02 +10:00
Grant Morphett a1b96f659b Plane: Fixing issue 302
Using the configured FS_THR_VALUE to check for failsafe instead of
just checking against 50 below throttle min.
2015-09-09 10:28:02 +10:00
Tom Pittenger fc2c94f78f Plane: utilize NAV_CONTINUE_AND_CHANGE_ALT for land abort
when aborting a landing via mode change, check if NAV_CONTINUE_AND_CHANGE_ALT is after LAND. If so, go ahead and execute it. Else, normal behavior or check do_land_start else decrement mission index
2015-09-09 09:32:31 +10:00
Andrew Tridgell 036e1fff12 Plane: a bit more caution in unsuppressing throttle pre-takeoff
require reasonable pitch and definate gps movement. This errs on the
side of not overriding a takeoff command, which could be dangerous
2015-09-09 09:24:54 +10:00
Tom Pittenger fe083c8ffa Plane: consider extended launch throttle delays
use the greater of takeoff_throttle_delay+2s or 5s
2015-09-09 09:14:59 +10:00
Tom Pittenger 4f46c5331a Plane: added time for flying in any mode
- previously we only kept track of starting flying while in auto which gets reset when switching in and out of auto and on takeoff/land. Now we keep track of a "global" one that will track the is_flying flag regardless of the flight mode.
2015-09-09 09:14:59 +10:00
Tom Pittenger a3c51698cb Plane: fix throttle when restarting mission in-flight with takeoff
fixes https://github.com/diydrones/ardupilot/issues/2778
When executing a takeoff, and the throttle is suppressed, but we're already flying, we should unsuppress the throttle. We can get into this situation if we reset the mission in-flight.
2015-09-09 09:14:59 +10:00
Andrew Tridgell 0cc165308d Plane: use 4 degrees if zero takeoff pitch 2015-09-09 09:13:12 +10:00
Andrew Tridgell 953efa9b6c Plane: fixed parameter docs for LAND_ABORT_THR
it should be a values list
2015-09-09 09:08:59 +10:00
Tom Pittenger d36ee786e4 Plane: init hold_course in do_takeoff 2015-09-09 09:04:24 +10:00
Tom Pittenger 25da4ec0ea Plane: added flight stage FLIGHT_LAND_ABORT and abort mechanism
- enabled via new param LAND_ABORT_THR default is 0 (disabled)
- Triggered via 95% throttle during landing, a landing abort will take place.
- This copies all takeoff params for right now, we can make this better later if needed
- added mission item command to NAV_LAND which is the abort takeoff altitude. If 0 then use last takeoff if available, else use 30m
- hold heading, just like takeoff, until altitude is reached
- pitch is constrained to takeoff pitch, or else 10deg if not available
- After abort altitude is reached, the normal landing restart happens (DO_LAND_START or decrement mission)
- restart landing by jumping to DO_LAND_START or decrement mission on mode change
2015-09-09 09:04:24 +10:00
Grant Morphett e734e9745d Plane: TKOFF_TDRAG_SPD1 is needed if holding nose wheel down.
Just clearing up the documentation as per this wiki issue
https://github.com/diydrones/ardupilot-wiki-issue-tracker/issues/138
2015-09-08 17:31:09 +10:00
Tom Pittenger 6e55b44b63 Plane: change NAV_CONTINUE_AND_CHANGE_ALT behavior
Use waypoint bearing if available, otherwise use gps projected ahead 1km else yaw
Perform update before making decision to finish cmd so it always executes
2015-09-08 17:05:54 +10:00
Andrew Tridgell 0a66fcce20 Plane: fix for changed AP_RangeFinder API 2015-09-08 16:46:52 +10:00
Andrew Tridgell 05192ea9ab Plane: added severities to send_statustext_all 2015-09-08 14:29:55 +10:00
Andrew Tridgell f92f46ee99 Plane: update for changed AP_Arming API 2015-09-08 13:54:45 +10:00
Grant Morphett f953f03916 Plane: Fixing issue 327 - reporting Baro alt instead of GPS 2015-09-08 09:40:39 +10:00
Grant Morphett 3cb0c1bba8 Plane: Move the plane centric arming code into arming_checks.cpp
Needed to move the plane centric arming code out of the AP_Arming
library and into the plane vehcile code.
2015-09-07 11:54:21 +10:00
Andrew Tridgell e12c20bd22 Plane: prepare for 3.4.0-beta2 release 2015-09-07 09:30:34 +10:00
Andrew Tridgell 16d06ef0a9 Plane: set throttle trim to min on startup
this prevents possibly motor startup for bad RC3_TRIM values
2015-09-07 09:17:22 +10:00
Andrew Tridgell 2d60934335 Plane: require 5 channels to run failsafe passthrough 2015-09-07 09:16:14 +10:00
Randy Mackay 8c1212d4a6 Plane: support do-mount-control via command-long 2015-09-06 16:01:31 +09:00
Siddharth Bharat Purohit aea1db7348 ArduPlane: implement on-board compass cal for arduplane 2015-09-03 16:59:14 +10:00
Peter Barker c2d61391ef Plane: DFMessageWriter; ability to trickle messages out to DF 2015-09-03 15:20:20 +10:00
Gustavo Jose de Sousa a6bdee076e ArduPlane: remove comments identifying task
We don't need those comments anymore, now that we log the task name. Also,
keeping the comments means that we need to fix them when tasks are added in the
middle, not to mention the problem with tasks that are added selectively (i.e.,
guarded by preprocessor directives).
2015-09-01 20:22:19 +10:00
Gustavo Jose de Sousa 36b457a536 ArduPlane: use function name for AP_Scheduler task name
That makes it easier to identify tasks when debug is enabled in AP_Scheduler.
2015-09-01 20:22:18 +10:00
Gustavo Jose de Sousa b0258d902c ArduPlane: use designated initializers for tasks structs
Makes code less prone to break build and semantics (e.g., when a new field is
added).
2015-09-01 20:22:18 +10:00
Tom Pittenger 81f8358705 Plane: restart landing by jumping to DO_LAND_START or decrement mission
only takes effect on mode change
2015-08-29 21:17:35 +10:00
Stewart Loving-Gibbard 722dd29370 Plane: Moving to RSSI library for reading various kinds of RSSI, with the possibility of adding more.
* Retains ability to read from Analog Pin
* Adds ability to read RSSI from PWM channel value as is done in OpenLRSng, EazyUHF, and various other LRS.
* Handles any type of RSSI that provides RSSI values inverted - i.e. when the low value is the best signal and the high value is the worst signal.
* Has different key names from all existing RSSI parameters to provide for a clean break and easier distinguishing.
* Existing parameters are marked as obsolete
2015-08-29 08:05:59 +10:00
Randy Mackay 4bf36d787b Plane: use labs for int32 values 2015-08-28 13:14:50 +10:00
Randy Mackay cc68260478 Plane: sanity check do-set-home, do-set-ROI and fence-point locations 2015-08-28 13:14:38 +10:00
squilter 583c087eca Plane: update severities 2015-08-28 10:04:35 +10:00
André Kjellstrup d4ed30a023 Plane: releasenotes update 2015-08-28 10:03:16 +10:00
Randy Mackay e4c62811ea Plane: fix link to BATT parameter descriptions 2015-08-26 11:17:55 +09:00
Tom Pittenger ee9a66bd02 Plane: fix compiler warning re double promotion 2015-08-25 16:45:52 +09:00
Grant Morphett dda229aecd Plane: Added include guards for Plane.h 2015-08-25 13:54:16 +09:00
Tom Pittenger fed50aa5c5 Plane: is_crashed flag gets reset too easily
This behavior is excessively paranoid about clearing the flag so now it's extra sticky. You can only clear the is_crashed flag when:
- changing modes
- starting to execute a takeoff wp (if mission/index gets reset while still in auto)
- while in takeoff and throttle is suppressed it's held false

behavior that was removed:
- clear flag when starting to execute any nav cmd (reached next wp)
- if while crashed, you "start flying again" (non-sticky)
2015-08-24 20:00:12 +10:00
Tom Pittenger e1d566f9e7 Plane: simulator sets is_crashed
due to zero-ish vibration in SITL, the is_flying check thinks you're not flying, and this thinks you crashed. This is a SITL specific problem but it brings to light that *if* someone actually had a very low vibration aircraft we don't want to crash them. So, the vibe test has been removed for now. A better test is a variance on the accel
2015-08-24 00:32:41 -07:00
Andrew Tridgell 019f2af930 Plane: fixed build with HIL disabled 2015-08-23 22:21:51 +10:00
Tom Pittenger f4f111775e Plane: Log height of zero instead of old value 2015-08-23 16:55:08 +10:00
ziltoid2 b9dd6b7aac Plane: prevent delayed compass HIL data from disabling compass at system startup only 2015-08-23 16:48:48 +10:00
Tom Pittenger 37336bbbe1 Plane: moved is_flying related code to its own file 2015-08-23 10:34:19 +10:00
Tom Pittenger 204ff7b158 Plane: move statics into new struct
removed default case statements
2015-08-23 10:34:18 +10:00
Tom Pittenger 6d0ad05192 GCS_Mavlink: added is_crashed to mavlink heartbeat status which shows EMERGENCY 2015-08-23 10:34:18 +10:00
Tom Pittenger da8f4f9e95 Plane: reworked is_flying
add crash detection, allow disengage via param CRASH_DETECT
improved is_flying behavior
take off, landing and hard-landing improvements
add stillness check to is_flying and log it
minimum airspeed is determined ARSPD_FBW_MIN*0.75
2015-08-23 10:34:18 +10:00
squilter d421644f3a Plane: define and send FIRMWARE_VERSION 2015-08-23 09:21:57 +09:00
Michael Day f20beecb0b Plane: Climb/descent "intent" param with CONTINUE_AND_CHANGE_ALT
Param 1 of CONTINUE_AND_CHANGE_ALT now denotes which direction the
user expects the plane to travel when changing altitude:

0 = no expectation, command completes when within 5 m of altitude.
1 = climb expected, command completes at or above altitude.
2 = descent expected, command completes at or below altitude.
2015-08-20 11:37:17 +10:00
Andrew Tridgell f66174a1ce Plane: improved 3.4.0 release notes 2015-08-20 11:30:28 +10:00
Andrew Tridgell 0c833b76b7 Plane: update release notes for 3.4.0beta1 2015-08-20 11:11:28 +10:00
Andrew Tridgell b1f810fbb9 Plane: prepare plane 3.4.0beta1 release 2015-08-20 10:53:48 +10:00
Tom Pittenger 86e3116fb6 Plane: implement try send mission_item_reached
clean up unreachable code
2015-08-19 15:42:07 +10:00
Tom Pittenger f1eb2f88df Plane: post "Distance from LAND point" on every land
- waits until disarm after a land
2015-08-18 17:20:20 +10:00
Stewart Loving-Gibbard eb2ca91f1c Plane: Fixing unambiguous spelling errors in Parameters.cpp file.
These are user-visible in Mission Planner and the like.
2015-08-18 17:16:19 +10:00
Andrew Tridgell 6186b7a453 Plane: disable TRIM_RC_AT_START by default 2015-08-15 19:13:30 +10:00
Andrew Tridgell cc96f80f02 Plane: make TRAINING mode obey stall prevention roll limits
Fixes issue#2014
2015-08-14 13:36:21 +10:00
Andrew Tridgell ac2e1552b2 Plane: don't do battery failsafe when disarmed 2015-08-14 13:17:48 +10:00
Andrew Tridgell 58e829553f Plane: prevent build error with MSG_RPM 2015-08-12 15:03:52 +10:00
Andrew Tridgell f2c1010501 Plane: prevent mode switch changes changing WP tracking
this fixes a bug where a mode switch change during an AUTO mission
which does not change the flight mode would cause cross tracking to be
reset, so the plane will not correctly follow the desired track

Many thanks to Michael Du Breuil for the log that showed this bug
2015-08-12 14:42:49 +10:00
Gustavo Jose de Sousa 93c80b03ae ArduPlane: 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:28:40 +10:00
squilter c24ba83fb1 Plane: init vehicle capabilities 2015-08-05 16:08:49 +09:00
Przemek Lekston ca915d9928 Plane: fix "logging disabled" build. 2015-08-03 10:07:52 +10:00
Grant Morphett c87929e907 Plane: Fix landing to stop divide by zero if params are 0
If someone mistakenly puts all 0's in their LAND command then
total_distance will be calculated as 0 and cause a divide by 0 error
below thus crashing ArduPilot.  Lets avoid that.
2015-08-03 09:53:48 +10:00
Andrew Tridgell 1b13be4ad7 Plane: disable camera logging when camera support disabled 2015-07-30 12:17:48 +10:00
Andrew Tridgell 6e0057778b Plane: remove unused file 2015-07-30 11:14:39 +10:00
Andrew Tridgell 9f9080983b Plane: trim out some log msgs on APM2
save a bit more flash
2015-07-30 11:14:06 +10:00
Andrew Tridgell 49f7adcc80 Plane: re-enable geofencing on APM2
it only just fits ...
2015-07-30 11:04:31 +10:00
Andrew Tridgell 6c07795b63 Plane: added HIL_SUPPORT define
disable HIL support on APM2 to save flash space
2015-07-30 11:04:31 +10:00
Andrew Tridgell 8f0e7e0693 Plane: fixed above_location_current() for non-terrain alt
thanks to Lekston for finding the bug (PR#2610)
2015-07-29 08:20:23 +10:00
Andrew Tridgell 58fa38cc12 Plane: allow rudder disarm based on ARMING_RUDDER parameter 2015-07-23 21:48:50 +10:00
pepevalbe da41d85433 Plane: It is possible to disarm with left rudder.
Using is_flying() avoid accidentally disarming while flying.
2015-07-23 21:48:44 +10:00
Przemek Lekston 4b38d444dd Plane: fix default behaviour of flaps. 2015-07-23 15:28:08 +10:00
Przemek Lekston 6a62b11536 Plane: fix LOITER_TO_ALT to verify headings towards waypoints within the loiter radius.
Whenever next waypoint is within the loiter radius, maintaining loiter would prevent us from ever pointing toward the next waypoint. Hence for very close waypoints loiter_to_alt becomes verified by the altitude only.
2015-07-23 15:24:43 +10:00
Grant Morphett cc6a981b12 Plane: deleted the old command_description.txt file which isn't used. 2015-07-21 16:31:24 +09:00
Andrew Tridgell 51bdbea745 Plane: fixed format for ARM message 2015-07-20 09:46:19 +10:00
Randy Mackay b670988e05 Plane: log IMUDT 2015-07-14 13:31:56 +09:00
Andrew Tridgell 266857c595 Plane: avoid linking optflow on APM2
not used, just taking memory
2015-07-10 16:46:30 +10:00
Lucas De Marchi e97034f8e9 ArduPlane: use ARRAY_SIZE macro 2015-07-07 07:56:30 +10:00
Randy Mackay 76ccf4043e Plane: log ahrs home and ekf origin 2015-07-06 12:11:56 +09:00
Tom Pittenger f1ee129423 Plane: compiler warnings
- float to double in gcs_send_test (x2)
- float to bool
2015-07-06 09:30:19 +10:00
Andre Kjellstrup edc32092ce Plane: Do not run long_failsafe during final or landing. 2015-07-02 14:28:45 +10:00
Andre Kjellstrup 9d525d4382 Plane: Do not run FailSafe if on final approach or landing.
A failsafe (Circle, RTL) would easily become a disaster if trigged
during approach or final.
2015-07-02 14:28:45 +10:00
Andre Kjellstrup baf4989a80 Plane: Ignore low voltage failsafe during landing
Log it, but do not switch to RTL if already in final or landing.
2015-07-02 14:28:44 +10:00
Peter Barker 3fce7eb21a Plane: use common mission logging code 2015-06-30 16:23:35 +10:00
Peter Barker bbfe67fe2a Plane: use common system information logging 2015-06-30 16:23:34 +10:00
Peter Barker 7f0a0cf64f Plane: DataFlash frontend/backend split 2015-06-26 16:02:50 +10:00
Michael du Breuil 54c06cde02 Plane: Log the steering controller PID state 2015-06-22 15:41:44 +10:00
Michael du Breuil 1a121f543b Plane: Use PIDS for steering rather then PIDY 2015-06-22 15:41:44 +10:00
Andrew Tridgell 4aac2c5c96 Plane: trigger OVERRIDE_CHAN in px4io
setup the MODESWITCH channel as our OVERRIDE_CHAN, allowing for
instant manual passthru in px4io when OVERRIDE_CHAN goes above 1750

This makes for faster switching, and avoids bugs where a still enabled
FMU channel disables override
2015-06-21 18:19:16 +10:00
Andrew Tridgell 248bf8c5a3 Plane: disable geofence on APM2 2015-06-20 14:52:42 +10:00
Andrew Tridgell 2dbe372b2f Plane: cleanup some coverity warnings 2015-06-20 13:26:34 +10:00
Andrew Tridgell ae1f2e8bea Plane: fixed missing break statement 2015-06-20 12:35:07 +10:00
Andre Kjellstrup 19aa7caad0 GCS_Failsafe: option to trigger only in AUTO mode. 2015-06-18 07:52:43 +10:00
Andre Kjellstrup 39797529fd GCS_Failsafe: defines for new failsafe option 2015-06-18 07:52:42 +10:00
Andre Kjellstrup 3e84132f6b GCS_Failsafe: new parameter option 2015-06-18 07:52:42 +10:00
Andrew Tridgell 76c0293a85 Plane: added support for DO_AUTOTUNE_ENABLE 2015-06-15 09:20:55 +10:00
Andrew Tridgell d5c5400e76 Plane: added support for ALTITUDE_WAIT mission command 2015-06-15 09:20:55 +10:00
Andrew Tridgell 358a13261c Plane: moved sink_rate calculation to update_alt()
this makes it available to non-landing code
2015-06-15 09:20:55 +10:00
Randy Mackay 814cb5ce18 Plane: add vibration DF logging and send to GCS 2015-06-12 21:36:47 +09:00
Andrew Tridgell 3427224bfc Plane: fixed logging of parameters on arming 2015-06-12 13:11:06 +10:00
Eugene Shamaev 5b34fa4f6a Plane: added DSM bind support 2015-06-10 17:19:10 +10:00
Andrew Tridgell 6b9854457d Plane: added PID tuning logging for ground steering 2015-06-09 12:48:56 +10:00
Andrew Tridgell bc6a52f8db Plane: fixed handling of OVERRIDE_CHAN on arming
When arming we need to ensure that we don't enable any channels
otherwise PX4IO will think that FMU is active and will stop running
the internal RC mixer
2015-06-09 12:48:55 +10:00
Michael Oborne 7dcd24137e Plane: add bitmask documentation 2015-06-05 10:21:21 +09:00
Lucas De Marchi 6bbf0e7770 Plane: stop using alias FUNCTOR_BIND_VOID 2015-06-04 13:37:38 +09:00
Andrew Tridgell bf396d7138 Plane: log to tlog when we set home via MAVLink 2015-06-04 13:26:39 +10:00
Andrew Tridgell 5942bf5cf0 Plane: added plane specific arming checks
added check for roll and pitch limits, after flyaway due to small
LIM_ROLL_CD
2015-06-04 13:26:39 +10:00
Andrew Tridgell 47f4a5db10 Plane: try to load px4 mixer 10 times on boot
this allows for possible temporary failures
2015-06-02 21:59:03 +10:00
Andrew Tridgell 3e74b82bc4 Plane: fixed two bugs in px4io override code
First bug is going via microSD to poulate mixer. We can't rely on the
microSD being writeable or functioning properly. Instead create the
buffer in memory and only write a copy to the filesystem.

Second bug is related to extreme trim values on channels. If trim
values are well out of range then the mixer fails and override fails.
2015-06-02 21:48:18 +10:00
Randy Mackay 9ece826c28 Plane: Log_Write_Startup writes parameters 2015-06-01 20:22:50 +09:00
Grant Morphett 2c3cff7f84 Plane: Moving parameter logging to be after all systems have started 2015-06-01 20:22:40 +09:00
Andrew Tridgell db784c83dc Plane: removed unnecessary pragmas 2015-06-01 17:42:21 +10:00
Andrew Tridgell 9adc879253 Plane: changes for new AHRS API 2015-06-01 16:16:49 +10:00
Andrew Tridgell 1797e2baa8 Plane: simpler initalisation of plane class
take advantage of C++11 in-class initialisation
2015-06-01 08:48:54 +10:00
Andrew Tridgell 57544a3537 Plane: added blank Parameters.pde for MissionPlanner 2015-05-30 15:21:33 +09:00
Andrew Tridgell 1520d8f734 Plane: catch a px4_mixer failure case 2015-05-30 11:17:56 +10:00
Andrew Tridgell 9b77260ebb Plane: disable PID logging on APM2 2015-05-29 16:32:05 +10:00
Andrew Tridgell 2f5ade4810 Plane: use 16 bit mask for GCS_PID_MASK 2015-05-27 15:09:47 +10:00
Andrew Tridgell 09476bf9d3 Plane: added GCS_PID_MASK for realtime pid tuning 2015-05-27 14:28:46 +10:00
Andrew Tridgell c31da93726 Plane: log roll and pitch PIDs 2015-05-27 14:28:45 +10:00
Peter Barker d7ed06816a Plane: use 64-bit timestamps for dataflash logs 2015-05-27 11:54:15 +10:00
Andrew Tridgell 964b8ed2f3 Plane: fix for scheduler API change 2015-05-26 14:33:52 +10:00
Lucas De Marchi 7c4cf41ebc ArduPlane: use functor macros
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:54 +10:00
Andrew Tridgell 97687f04af Plane: enable messages for MAVLink gimbal support 2015-05-26 08:30:30 +10:00
Andrew Tridgell 5511140f95 Plane: fixed fence return point on breach
this was broken by the recent guided mode changes. Thanks to Grant for
noticing!
2015-05-24 15:24:02 +10:00
Andrew Tridgell eee191875e Plane: fixed plane version, removing old pde 2015-05-22 16:07:43 +10:00
Andrew Tridgell 8974c879fe Plane: fixed paths for GCS_MAVLink parameter file 2015-05-21 11:42:45 +10:00
Andrew Tridgell 8359b75201 Plane: removed NOINLINE define 2015-05-21 09:35:55 +10:00
Andrew Tridgell 78f02634d0 Plane: fixed ins reference in plane object 2015-05-21 07:48:54 +10:00
Andrew Tridgell 441d96c946 Plane: fixed APM1 build 2015-05-21 07:48:53 +10:00
Andrew Tridgell 554869033f Plane: disabled rangefinder on APM2
this saves 5k of flash space, enough for support to be kept for
another release
2015-05-21 07:48:53 +10:00
Andrew Tridgell 6fe65cdd9a Plane: removed duplicate rangefinder 2015-05-21 07:48:53 +10:00
Andrew Tridgell b92c2409e4 Plane: added local millis() and micros() to reduce code size a bit 2015-05-21 07:48:53 +10:00
Andrew Tridgell 150af130ee Plane: get closer to making var_info appear in text segment 2015-05-21 07:48:52 +10:00
Andrew Tridgell 18c37935c9 Plane: convert from .pde to .cpp files 2015-05-21 07:48:52 +10:00
Andrew Tridgell f75e9f95d1 Plane: Adjust for new AP_Scheduler syntax 2015-05-21 07:48:48 +10:00
Andrew Tridgell 6be0932d82 Plane: prepare for 3.3.0 release 2015-05-20 18:01:21 +10:00
Andrew Tridgell db871cc581 Plane: prevent trim values out of range for PX4 mixer
thanks to Brian Christal for a good bug report!
2015-05-17 21:24:58 +10:00
Tom Pittenger b4be1b866a Copter: compiler warning stuff
float to double promotion via cos instead of cosf
2015-05-16 08:21:36 +10:00
Andrew Tridgell 9ceee3cea7 Plane: support setting just accel trim with preflight-cal
use param5==2
2015-05-16 07:56:35 +10:00
Randy Mackay 174c55b0af Plane: add support for 4th mavlink channel 2015-05-15 15:07:28 +09:00
Andrew Tridgell 2feee9aa88 Plane: call Log_Write_POS() 2015-05-15 14:28:15 +10:00
Andrew Tridgell e362b4fc04 Plane: fix for new compass API 2015-05-15 14:25:44 +10:00
Andrew Tridgell 7f488c1c9c Plane: removed duplicate rangefinder instance 2015-05-14 08:51:59 +10:00
Tom Pittenger 76f448e512 Plane: Write new mission to log without telling GCS 2015-05-13 20:25:57 +09:00
Randy Mackay 0db25426c0 Plane: use accel_calibrated_ok_all 2015-05-12 16:32:20 +09:00
Randy Mackay a3271e4584 Plane: clarify SYSID_MAV parameter description 2015-05-11 09:23:06 +09:00
Andrew Tridgell ff126db1d3 Plane: make GUIDED behaviour match copter
we now have to be in GUIDED mode to accept a new GUIDED WP. When
entering GUIDED mode start loitering about the current position
2015-05-10 14:28:02 +10:00
Tom Pittenger eb2bfcd2d3 Plane: replace fabs() with labs(), unnecessary int to float conversion 2015-05-09 09:57:25 +10:00
Tom Pittenger ba29967454 Plane: if receiving last mission item then log new mission to dataflash 2015-05-08 21:01:51 +10:00
Andrew Tridgell fd84a6b493 Plane: fixed missing break in fence floor logic 2015-05-08 16:27:16 +10:00
Michael Day ee14678d2a Plane: Allow disabling of only the fence floor. 2015-05-08 16:25:22 +10:00
Andrew Tridgell 1a7d831327 Plane: support raw IMU logging 2015-05-07 12:11:52 +10:00
Andrew Tridgell 8395b92309 Plane: revert AP_Math class change 2015-05-05 13:27:04 +10:00
Tom Pittenger 2301883d5c Plane: compiler warnings: function not declared 2015-05-05 13:27:01 +10:00
Tom Pittenger c4c47cba66 Plane: compile warnings: float to double. print statements require doubles 2015-05-05 13:26:59 +10:00
Tom Pittenger 43006c0eec Plane: compiler warnings: apply is_zero(float) or is_equal(float) 2015-05-05 13:26:58 +10:00
Tom Pittenger c2eeed7d85 Plane: compiler warnings: apply is_zero(float) or is_equal(float) 2015-05-05 13:26:57 +10:00
Tom Pittenger 0cbbb20dcf Plane: compiler warnings: apply is_zero(float) or is_equal(float) 2015-05-05 13:26:54 +10:00
Andrew Tridgell a299fdacdf Plane: fix for HAL_SITL rename 2015-05-05 09:45:57 +10:00
Michael Day 8a6fc0ad77 Plane: If LAND_FLARE_SEC is 0 use LAND_FLARE_ALT for aim_height.
See discussion here:

https://github.com/diydrones/ardupilot/pull/2197
2015-04-30 17:19:55 +10:00
Michael Day 05d065b471 Plane: Make LAND_FLARE_SEC optional. 2015-04-30 14:34:34 +10:00
Andrew Tridgell 93fed6c2ac Plane: update release notes for 3.3.0beta2 2015-04-30 14:07:30 +10:00
Andrew Tridgell c65f5a1bda Plane: disable camera mount support on APM2
this makes the firmware small enough to squeeze onto an APM2 again
2015-04-30 11:57:20 +10:00
Andrew Tridgell 75c9689a64 Plane: added armed and safety state to STAT log message 2015-04-30 11:15:08 +10:00
Andrew Tridgell 5038e1d26d Plane: remove deprecated log types
we no longer depend on the binary format for Replay, so we can change
IDs now
2015-04-30 11:05:17 +10:00
Tom Pittenger f5dfe7c650 ArduPlane: Log isFlying status
Log is_flying() status and its float probability in new STAT msg
and piggyback on MODE bitmask flag.
2015-04-30 10:57:03 +10:00
Randy Mackay e122916815 Plane: fix MNT param description 2015-04-29 09:07:52 +09:00
Tom Pittenger c974134ea4 ArduPlane: RTL Autoland skip HOME
With RTL_AUTOLAND=1 we navigate to HOME then to the DO_LAND_START commands. Now with RTL_AUTOLAND=2 we head directly to the DO_LAND_START commands and thus skip changing altitude to ALT_HOLD_RTL and head directly to the first land waypoint as if it was the next normal waypoint.
2015-04-28 12:09:00 +10:00
Andrew Tridgell 3c9ed9b5a6 Plane: don't limit down pitch during landing
there is no reason for a special case for aircraft without airspeed
sensors
2015-04-28 09:25:49 +10:00
Andrew Tridgell c73945686c Plane: use ahrs.yaw_sensor not direct compass read for yaw
also use 10 degrees of margin, to cope with fast yaw changes (this
function is called at only 10Hz)
2015-04-25 09:12:17 +10:00
Andrew Tridgell 343a682d22 Plane: fixed conditional for 0 lat/lon 2015-04-25 09:12:17 +10:00
Michael Day 607d9ca839 Plane: Implementation of do_ and verify_ for MAV_CMD_NAV_LOITER_TO_ALT 2015-04-25 09:12:16 +10:00
Tom Pittenger 1176146e06 Plane: fix compile warnings for unused functions 2015-04-24 14:09:43 +09:00
Tom Pittenger bd9b573969 Plane: Fix compile warnings
- const values declared as default double
- This is the first pass in fixing the warnings, trying to catch some low hanging fruit. All const double values are changed to float. For example: 1.0 is now 1.0f.
- Only except is in location.pde where some double stuff is happening
- I did not change the exponentials 1e7 type stuff which should be 1e7f. A different commit
2015-04-24 12:20:53 +09:00
Randy Mackay 0acc4af63c Plane: replace range finder health with status 2015-04-24 10:57:28 +09:00
Paul Riseborough 32f87d008a Plane: Allow EKF to pull data from range finder object 2015-04-24 10:56:56 +09:00
Niels Joubert 6b7b3247ed Plane: Handle GPS Injection 2015-04-24 08:01:33 +10:00
Jaime Machuca ab1cf2261d Plane: add call to send digicam configure messages from a mission item
Also add log_picture to separate the taking of a picture
from the dataflash logging and feedback to GCS
2015-04-20 13:50:17 +09:00
Andrew Tridgell 664c92fb81 Plane: fixed RUDDER_ONLY to not combine direct rudder output
this prevents us over-rolling in FBWA
2015-04-20 09:09:23 +10:00
Andrew Tridgell edec706c12 Plane: added RUDDER_ONLY parameter
this gives much easier setup for rudder only aircraft.
2015-04-20 09:09:23 +10:00
Michael du Breuil 78a3ce46b9 Plane: Use tecs to control the throttle during takeoff 2015-04-16 08:56:37 +10:00
Michael du Breuil 867ca05e17 Plane: fix a relative altitude check for glide slope building 2015-04-13 20:15:07 -07:00
Michael du Breuil 4b1d71e390 Plane: rebuild the glide slope if we are above it and already climbing
(controlled by GLIDE_SLOPE_THR)
2015-04-13 20:14:51 -07:00
Michael Day 0279fdb0de Plane: Never trigger fence breach in LAND_FINAL flight stage. 2015-04-14 11:12:39 +10:00
Andrew Tridgell 03a50712db Plane: default LAND_DISARMDELAY to 20 seconds
most people will want to disarm
2015-04-06 15:37:54 -07:00
Andrew Tridgell 36796fb810 Plane: added LOCAL_POSITION_NED message 2015-04-05 09:25:41 -07:00
Randy Mackay 7e4dd9666c Plane: fix serial manager integration 2015-04-01 15:13:20 -07:00
Randy Mackay ab749f884f Plane: integrate Serial Manager instance 2015-04-01 14:59:26 -07:00
Andrew Tridgell 6a33588f67 Plane: make LOG_BITMASK logging when disarmed clearer 2015-03-31 14:38:09 -07:00
Randy Mackay d3663d43c1 Plane: send invalid batt curr if monitor unhealthy 2015-03-20 11:05:35 +09:00
Andrew Tridgell 9468a59204 Plane: require 3 seconds of not flying to declare a crash on land 2015-03-17 10:40:16 +11:00
Tom Pittenger 1b0ed277b3 Plane: Disarm On Land
After a landing has occur using a LAND waypoint, automatically disarm
after this many seconds have passed. Use 0 to not disarm.
2015-03-17 10:30:41 +11:00
Andrew Tridgell 90bb97a144 Plane: added last_flying_ms to auto_state
used to find out how long it is since we were last flying
2015-03-17 10:12:00 +11:00
Andrew Tridgell 18b277a9d2 Plane: use arm_motors() and disarm_motors() 2015-03-17 10:12:00 +11:00
Andrew Tridgell dd1059cecf Plane: added arm_motors() and disarm_motors() helper functions 2015-03-17 10:12:00 +11:00
Andrew Tridgell 86ef4a738c Plane: only pass through throttle in failsafe if armed 2015-03-16 16:45:49 +11:00
Andrew Tridgell e55350a5d6 Plane: added crash detection in autoland
if we are no longer flying then flare, which turns off the motor

This is based on work by Tom Pittenger
2015-03-16 10:59:53 +11:00
Andrew Tridgell fb8b96ba0d Plane: make is_flying() a bit more accurate in landing approach
prevent false negatives using the sink rate
2015-03-16 10:58:36 +11:00
Andrew Tridgell 1c1798fb11 Plane: support much smoother flare transitions
provide the height above the ground to TECS so it can make a smarter
pre-flare transition
2015-03-15 13:53:08 +11:00
Andrew Tridgell cac7714693 Plane: fixed parameter typo 2015-03-14 14:53:02 +11:00
Andrew Tridgell b0cdf8952b Plane: added HIL_MODE parameter
this allows for HIL with any firmware
2015-03-13 22:52:56 +11:00
Víctor Mayoral Vilches 4ae3bf5399 Plane: Update compass to the new interface 2015-03-13 18:46:17 +11:00
Michael Day b02098e19e Plane: Make radio trim optional at ground start. 2015-03-13 13:11:44 +11:00
Tom Pittenger 420e9e0d2e Plane: added INITIAL_MODE which is the mode we boot up into.
This is useful when flying without a RX or if you have a RX that
outputs zeros without a detected Txmtr
2015-03-13 13:04:23 +11:00
Andrew Tridgell a942ebbb70 Plane: removed unnecessary prototype 2015-03-13 11:21:47 +11:00
Andrew Tridgell dc9e2a54f3 Plane: fixed use of HAL soft_armed 2015-03-13 11:20:43 +11:00
Tom Pittenger 659904bf65 Plane: sped up is_flying filter since it is running at only 1Hz 2015-03-13 11:07:19 +11:00
Tom Pittenger 8f7bb61a54 Plane: changed arm check method to use new is_flying code 2015-03-13 11:07:05 +11:00
Tom Pittenger 58b0702793 Plane: isFlying redesign
The is_flying() function is too simplistic to be used as a generic
status. Added a sticky heuristic method that depends on the arm
state. More thought should go into the boolean result of isFlying but
this is at least safer than the original method.
2015-03-13 11:06:54 +11:00
Randy Mackay cb1b4ab486 Plane: send EKF_STATUS_REPORT in extra3 stream 2015-03-12 13:43:58 +09:00
Andrew Tridgell 5175f21225 Plane: removed 1D accel calibration 2015-03-12 12:50:29 +11:00
Andrew Tridgell 16cdf64d63 Plane: added CLI_ENABLED option
this disables using CLI by default, even if compiled in. This is
needed to make standard firmwares work well with companion computers
where the CLI may cause startup issues
2015-03-09 17:58:37 +11:00
Andrew Tridgell fa70c95c8e Plane: set gyros disabled when calibrating 2015-03-09 17:58:36 +11:00
Andrew Tridgell 8ef8a964f1 Plane: use new interactive accelcal 2015-03-07 21:56:40 +11:00
Andrew Tridgell 999710d0e1 Plane: fixed issue where auto is entered before GPS lock
thanks to Tom Pittenger for noticing this!
2015-02-25 22:54:52 +11:00
Andrew Tridgell 98b583bccc Plane: fixed bungee launch
we need to not do the general purpose throttle suppression if in auto
takeoff
2015-02-25 13:11:27 +11:00
Andrew Tridgell 5afe3fb958 Plane: mark 3.3.0beta1 2015-02-23 15:07:06 +11:00
Andrew Tridgell 422d0f05bd Plane: provide terrain height to rangefinder
used for power saving
2015-02-23 14:15:14 +11:00
Andrew Tridgell 64dfc68784 Plane: log mode on arming
this ensures the log is recorded with the right flight mode
2015-02-23 14:15:14 +11:00
Andrew Tridgell 6cf029f82a Plane: fixed to allow TKOFF_THR_DELAY up to 12.7 seconds
thanks to a report by jman841
2015-02-21 20:23:22 +11:00
Andrew Tridgell bee703ab2a Plane: removed incorrect conditional on parameter enum 2015-02-21 20:23:22 +11:00
Andrew Tridgell 76f8b9b07c Plane: support DO_SET_HOME MAVLink command 2015-02-21 10:14:18 +11:00
Joao Fortuna 6ac8629451 Plane: Fixed MAVLINK stream trigger calculation. 2015-02-20 13:12:59 +09:00
Andrew Tridgell d0d5524bce Plane: mark ELEVON_MIXING as deprecated 2015-02-19 15:55:30 +11:00
Andrew Tridgell 3f225b1a73 Plane: lower default FS_LONG_TIMEOUT value from 20 to 5 seconds
20 seconds is too long to be in CIRCLE mode
2015-02-16 10:03:17 +11:00
Andrew Tridgell e9f87a2626 Plane: implement MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES 2015-02-12 09:04:25 +11:00
Jonathan Challinger 4105edaa87 Plane: use hal.util soft_armed state 2015-02-11 20:57:27 +11:00
Andrew Tridgell d0075c0d23 Plane: support AUTOPILOT_VERSION command 2015-02-11 19:52:50 +11:00
Andrew Tridgell 03e110c834 Plane: update release notes 2015-02-10 09:53:30 +11:00
Andrew Tridgell e0db5616a2 Plane: fixed HIL mode in plane 2015-02-10 09:53:30 +11:00
Andrew Tridgell 3edc1ea4db Plane: tell arming if logging is available 2015-02-06 19:05:02 +11:00
Andrew Tridgell 8108ee796e Plane: update release-notes in master 2015-02-05 21:02:22 +11:00
Andrew Tridgell 4d6a7996f7 Plane: the next release will be 3.3.0
quite a few large changes pending
2015-02-05 20:55:00 +11:00
Andrew Tridgell 00758a3e91 Plane: improved landing parameter descriptions
fixes issue #1776
2015-02-03 17:19:45 +11:00
Andrew Tridgell 33225c2955 Plane: mark master as 3.2.2alpha1 2015-02-03 17:11:25 +11:00
Andrew Tridgell 28341a6c7a Plane: handle very steep landings more gracefully
prevent us trying to put the flare point too high or too far back if
the mission requires a steep landing
2015-02-03 16:44:28 +11:00
Andrew Tridgell 2ae412d513 Plane: only reset mission on disarm if not in AUTO mode
disarming while in a mission should leave the plane still flying the
mission, but with motor stopped. The user may do this during a landing
for example, but we want to keep gliding
2015-02-03 16:44:27 +11:00
Andrew Tridgell a172d898c5 Plane: force throttle to zero when disarmed
don't rely on the safety switch
2015-02-03 16:44:27 +11:00
Andrew Tridgell 2b0ccae776 Plane: fixed build warning 2015-02-03 09:49:15 +11:00
Randy Mackay ff2a31e3ae Plane: compile error fix when mount disabled 2015-01-29 14:05:15 +11:00
Randy Mackay 3a1465c9d1 Plane: integrate SerialManager
call SerialManager init_console on startup
use SerialManager's set_block_writes_all
2015-01-29 14:05:15 +11:00
Randy Mackay 37d1079d25 Plane: move MNT param's underscore to mount lib 2015-01-29 13:57:19 +11:00
Randy Mackay 681d28838f Plane: integrate mount frontend-backend restructure
initialise mount on startup
use mount.has_pan_control method
remove calls to unimplemented mount.configure_cmd
remove call to update_mount_type which is now handled by mount lib
2015-01-29 13:57:18 +11:00
Andrew Tridgell 5d8cec23db Plane: update version to 3.2.1beta1 2015-01-27 17:22:13 +11:00
Andrew Tridgell 3123504b38 Plane: start release notes for 3.2.1 2015-01-27 17:22:13 +11:00
Matthias Badaire ee00302b62 Plane: Frsky telemtry change move parameter to init of the class
Parameter needs to be passed and use at the init of the class frsky telem
2015-01-22 16:49:39 +11:00
Dario Lindo Andres 7f5243026d Plane: Cleanup code to remove 1280 ifdefs
Due to the imposibility to fit actual code on Legacies 1280 chips, some
cleanup is needed.
2015-01-22 16:12:26 +11:00
Robert Lefebvre 395c868727 Plane: Change Compass logging to new DataFlash method that handles instances. 2015-01-21 14:37:54 +09:00
Robert Lefebvre 7efb4eef65 Plane: Change Compass logging to use DataFlash library method. 2015-01-21 14:37:38 +09:00
Robert Lefebvre a2d73b42b9 Plane: Change Mode logging to use DataFlash library method. 2015-01-21 14:37:36 +09:00
Robert Lefebvre ac513a84db Plane: Change Attitude logging to use DataFlash library method. 2015-01-21 14:37:34 +09:00
Robert Lefebvre 233083c8e9 Plane: Change current logging to use DataFlash library method. 2015-01-21 14:37:31 +09:00
Robert Lefebvre 747232b197 Plane: Deprecate some Log Message enumerations which are moving to the DataFlash library. 2015-01-21 14:37:29 +09:00
Andrew Tridgell 674a7aa8d4 Plane: use set_skip_gyro_cal() in arming library 2015-01-20 19:47:59 +11:00
Andrew Tridgell 059c3769f3 Plane: cope with the changed semantics if airspeed.use() 2015-01-20 11:28:35 +11:00
Andrew Tridgell 5a01933b7b Plane: use dataflash Log_Write_Airspeed() 2015-01-20 09:10:57 +11:00
Dario Lindo Andres 0ea7a7a0cc Plane: Corrected LOGGING_ENABLED
When we configure LOGGING_ENABLED to DISABLED code does not
compile. Now it works!
2015-01-17 10:42:11 +13:00
Andrew Tridgell b8bfa755a9 Plane: raise alpha version 2015-01-09 15:47:47 +11:00
Andrew Tridgell ca431a47a6 Plane: use all_healthy() for SYS_STATUS health 2015-01-09 11:51:51 +11:00
Andrew Tridgell 035b1302ed Plane: updates for new AP_Baro API 2015-01-09 11:50:54 +11:00
Andrew Tridgell 4cb464db83 Plane: reduce the frame size of setup_failsafe_mixing() 2015-01-09 11:38:15 +11:00
Grant Morphett e122c0961e Plane: Arming updated to use RC channel objects not RC channels directly
The code had g.rc_3.control_in which would bypass the channel mapping and meant
arming could only occur if the throttle was always mapped to channel 3.
Updated to use the channel mapping object.
2015-01-08 11:55:19 +11:00
Staroselskii Georgii dc410a4b42 Plane: added AK8963 support 2015-01-07 08:41:13 +11:00
Andrew Tridgell a2242305c7 Plane: use common send_opticalflow() 2015-01-03 15:53:35 +11:00
Andrew Tridgell 28f58df310 Plane: send HAGL in OPTICAL_FLOW 2015-01-03 15:44:50 +11:00
Andrew Tridgell 8f571f1225 Plane: make optflow available to AHRS 2015-01-03 14:16:34 +11:00
Andrew Tridgell 8708297341 Plane: update for new OptFlow API 2015-01-03 14:16:33 +11:00
Andrew Tridgell 1e3c23e5a3 Plane: on takeoff set prev_WP_loc to current_loc 2015-01-03 14:07:02 +11:00
Andrew Tridgell 80d1bd230e Plane: report bad AHRS health if uncalibrated accels with EKF
fixes issue #1720
2015-01-03 14:06:46 +11:00
Andrew Tridgell ae96a48efc Plane: use location_path_proportion()
this should produce better glide slopes when the aircraft is off
course
2015-01-01 15:17:45 +11:00
Randy Mackay 6bec527aa3 Plane: BATT param's underscore moved to library 2014-12-31 15:22:56 +09:00
Randy Mackay 7d18744094 Plane: use battery.voltage2 method for logging 2014-12-31 15:22:55 +09:00
Randy Mackay 5cdb8a4c2a Plane: use battery.has_current 2014-12-31 15:22:54 +09:00
Randy Mackay 9be53502df Plane: remove logging dependecy on optflow 2014-12-31 15:22:41 +09:00
priseborough 195cdb6fd6 Plane: Don't log EKF optical flow data if not required 2014-12-31 13:16:11 +09:00
Randy Mackay 11def53ca7 Plane: pre_arm_gps_check flag always true 2014-12-26 12:32:38 +09:00
Andrew Tridgell eb13395967 Plane: cleanup mavlink_system setup 2014-12-17 11:30:04 +11:00
Andrew Tridgell 976ae14f1f Plane: improve landing aim point calculation
try to account for wind and current ground speed to dynamically update
glide slope in landing to flare at the right point
2014-12-15 21:51:08 +11:00
Andrew Tridgell 12f0c49915 Plane: remove fwd of unknown msg types 2014-12-11 12:32:52 +09:00
Andrew Tridgell 507117bd8f Plane: removed use of mavlink_check_target() 2014-12-11 12:31:15 +09:00
Randy Mackay f4fc910fea Plane: send OPTICAL_FLOW msg to GCS 2014-12-08 14:58:32 +09:00
Randy Mackay 2b9bf69c9e Plane: send optflow health in extended status 2014-12-08 14:58:29 +09:00
Andrew Tridgell 0599f1dcb1 Plane: changed version number to 3.2.1alpha1 2014-12-06 18:37:39 +11:00
priseborough f23722ecee Plane: Remove statement about flow driver rate in comment 2014-12-06 18:16:48 +11:00
priseborough ca53d5fb62 Plane: Increase rate at which optical flow sensor is checked
The sensor driver runs asynchronously at 10Hz, so needs to be checked frequently for arrival of data.
2014-12-06 18:16:48 +11:00
priseborough 898ad7432b Plane : Only build optical flow with PX4 board
Fixes SITL compile errors
2014-12-06 18:16:48 +11:00
priseborough 2500f7e9c2 Plane : Add data logging for optical flow use with EKF 2014-12-06 18:16:48 +11:00
priseborough 2db9247117 Plane : Add logging and EKF read for updated flow sensor interface 2014-12-06 18:16:47 +11:00
priseborough f047e35167 Plane : Enable optical flow by default if sensor is fitted 2014-12-06 18:16:46 +11:00
priseborough 9707989b9f Plane : Preliminary optical flow integration 2014-12-06 18:16:45 +11:00
Andrew Tridgell 7f383facac Plane: re-enable CLI on non-APM1/APM2 boards 2014-12-03 20:14:26 +11:00
Andrew Tridgell c05a0bc67f Plane: prevent a change altitude command from causing a sudden descent
when a change altitude command comes in while a large glide slope
altitude change is present we could end up using the old glide slope
with the new altitude. This resets the altitude offset, causing a
direct altitude change
2014-12-03 18:31:23 +11:00
Andrew Tridgell a0f69e06a7 Plane: prevent baro reset from OVERRIDE_CHAN
using OVERRIDE_CHAN would cause a baro reset as it would mean we are
temporarily disarmed, and the "reset baro and GPS when disarmed" check
would reset the baro

Now we only do the mixer update if disarmed
2014-11-29 19:55:25 +11:00
Andrew Tridgell c299f721b1 Plane: fixed sense of landing sink rate calculation
thanks to BretC for reporting
2014-11-29 07:48:07 +11:00
Andrew Tridgell d1fb137651 Plane: mark development version 3.2.1alpha 2014-11-29 06:59:47 +11:00
Andrew Tridgell 2f0bc1f202 Plane: setup pwm esc scaling 2014-11-26 11:14:44 +11:00
Andrew Tridgell b88e6b6302 Plane: prepare for 3.2.0 release 2014-11-25 13:58:28 +11:00
Andrew Tridgell 19847d8607 Plane: fixed missing break statement 2014-11-25 13:15:25 +11:00
Michael Day 8662aaa878 Plane: Support MAV_CMD_DO_FENCE_ENABLE as a mission item. 2014-11-25 13:02:47 +11:00
Andrew Tridgell 77958f8fd4 Plane: fixed CONTINUE_AND_CHANGE_ALT command
current_loc should be used, not prev_WP_loc
2014-11-25 10:44:02 +11:00
Michael Day 95d2e79312 Plane: Keep throwing WP in front plane for CONTINUE_AND_CHANGE_ALT 2014-11-25 10:43:15 +11:00
Michael Day 442c188ae0 Plane: Implementation of MAV_CMD_CONTINUE_AND_CHANGE_ALT. 2014-11-25 10:43:15 +11:00
Kirill A. Kornilov 8071d7c1d3 Plane: use set_radio_trimmed() for flaperons
See discussion in issue #1425
2014-11-25 08:20:10 +11:00
Andrew Tridgell b4e01b7936 Plane: if SKIP_GYRO_CAL is set the do a gyro cal on 3D accel cal
otherwise the user has no opportunity to do a gyro calibration
2014-11-21 19:09:19 +11:00
Andrew Tridgell 826ae8ee8b Plane: prepare for 3.1.2beta3 2014-11-21 14:50:04 +11:00
Andrew Tridgell c33f54378f Plane: changed preflight calibration to prevent accel cal from MP
MissionPlanner sends param1=1 and param3=1 for preflight
calibration. This was having the effect of redoing the accel
calibration as 1D cal on every flight!
2014-11-21 14:46:42 +11:00
Andrew Tridgell 2c7290fdc0 Plane: fixed baro test in CLI
fixes issue #1623

thanks to klrill-ka
2014-11-19 21:42:27 +11:00
Andrew Tridgell 2bb7606fba Plane: no need to set flaperons separately from flaperon_update()
fixes issue #1622

thanks to klrill-ka
2014-11-19 21:32:49 +11:00
Andrew Tridgell a519e0abb6 Plane: fix build with new mavlink repo 2014-11-18 11:20:08 +11:00
Randy Mackay c74aff56c1 Plane: move MOUNT_STATUS lower in GCS_MAVLink 2014-11-17 15:59:44 -08:00
Arthur Benemann 9ae443f2a2 Plane: append MOUNT_STATUS message to STREAM_EXTRA3 messages 2014-11-17 15:59:31 -08:00
Andrew Tridgell 0672d1fc3c Plane: mark beta2 2014-11-16 14:41:37 +11:00
Andrew Tridgell 34f7daf0fe Plane: started work on 3.1.2 release notes 2014-11-16 14:41:29 +11:00
Andrew Tridgell 78d85dfafc Plane: fixed handling of trim for flapersons
this allows TRIM_AUTO to work for flaperons

fixes issue #1188
2014-11-16 14:41:03 +11:00
Andrew Tridgell 8bcbce16ed GCS_MAVLink: show rangefinder status in SYS_STATUS 2014-11-14 15:34:36 +11:00
Evan Slatyer c4093b159f ArduPlane failsafes: remove rc_override_active
- rc_override_active is never set anywhere in the ArduPlane code; it's only used for Copter and Rover. Removing it significantly simplifies the failsafe code.
- modified code has been tested in SITL. Heartbeat and RC failures in AUTO, CRUISE, and RTL modes (covering the three cases in the failsafe check functions) have been simulated with FS_LONG_ACTN = 0, 1, and 2, FS_SHORT_ACTN = 0, 1, and 2, and FS_GCS_ENABL = 0, 1, and 2. In all cases the results are identical to those with the original code.
2014-11-14 11:35:27 +11:00
Andrew Tridgell e4ca0e1c5c Plane: fixed comment on negative flaps 2014-11-14 11:29:33 +11:00
Andrew Tridgell ba2e204143 Plane: fixed trim and range handling for flaperons 2014-11-14 11:27:50 +11:00
Andrew Tridgell ed6358730a Plane: fixed failsafe pass-thru for APM2 2014-11-14 11:27:32 +11:00
Andrew Tridgell 7f5cc97769 Plane: changed for new AP_Airspeed API 2014-11-13 21:12:59 +11:00
Andrew Tridgell fa5bab2682 Plane: log raw pressure and offset 2014-11-13 17:49:14 +11:00
Andrew Tridgell 3813bcb7ce Plane: small improvement to takeoff docs 2014-11-13 14:24:37 +11:00
Andrew Tridgell 135f9b2c54 Plane: added STALL_PREVENTION option
this will allow users to disable it if it proves to be a problem with
no airspeed sensor
2014-11-13 14:06:00 +11:00
Andrew Tridgell 58fd72944d Plane: honor TKOFF_THR_MAX in set_servos()
fixes issue #1555
2014-11-13 11:35:28 +11:00
Andrew Tridgell c8060cb9f7 Plane: use load factor to limit nav_roll_cd
this calculates the aerodymanic load factor from smoothed airspeed and
uses it to limit roll to keep it below the level where the load factor
would take us past the aerodymanic limit of the airframe
2014-11-12 13:36:02 +11:00
Andrew Tridgell ba312856ea Plane: provide a temperature to baro from the airspeed sensor 2014-11-12 13:36:02 +11:00
Arthur Benemann 5e2d7b1eaa Plane: Implement MSG_CAMERA_FEEDBACK on planes 2014-11-11 10:31:58 -08:00
Arthur Benemann fe9e68f88c Plane: send feedback to the GCS of pictures taken 2014-11-11 10:31:54 -08:00
Arthur Benemann 92ead67d99 Copter: remove call to camera.configure and control
The do_take_picture() function must be called for logging to occur.
configure_msg is empty at the moment so the call to this is remove
2014-11-11 10:31:52 -08:00
Andrew Tridgell 8ee677cfce Plane: fixed CLI build again
thanks to John Williams for pointing it out
2014-11-11 21:54:25 +11:00
Andrew Tridgell 44ee1fcd3c Plane: prevent large G_Dt_max report on startup 2014-11-10 07:09:31 +11:00
Andrew Tridgell 19c727c6c2 Plane: change default autotune level to 6 2014-11-08 18:42:35 +11:00
Andrew Tridgell 02d45468d6 Plane: update OVERRIDE_CHAN docs 2014-11-08 18:38:56 +11:00
Andrew Tridgell 34659478c2 Plane: fixed potential division by zero in mixing creation
also setup failsafe values if already armed, so while loading new
mixer the throttle output doesn't go to zero
2014-11-08 15:40:35 +11:00
Andrew Tridgell 1e6511b010 Plane: fixed number of channels we pass to PWM limits 2014-11-08 15:40:35 +11:00
Andrew Tridgell 0a318d3a68 Plane: move delay callback setup to after compass and airspeed config
this ensure parameters sent on startup include compass settings and
airspeed offset
2014-11-08 15:40:35 +11:00
Andrew Tridgell 7356503e90 Plane: set the PX4IO OVERRIDE_IMMEDIATE flag 2014-11-07 11:30:30 +11:00
Andrew Tridgell 0d2d63980d Plane: limit RC config to 8 channels
this is a limitation of current px4io.c
2014-11-07 10:39:07 +11:00
Andrew Tridgell 63561e53fb Plane: handle trims and reversals in px4 mixer creation 2014-11-07 10:39:07 +11:00
Andrew Tridgell e30838a4ef Plane: make OVERRIDE_CHAN behaviour exactly match FLTMODE6
this provides a convenient "real manual" flight mode
2014-11-07 10:39:07 +11:00
Andrew Tridgell bfb2a7eb93 Plane: improved FLAPIN_CHANNEL docs 2014-11-07 10:39:07 +11:00
Andrew Tridgell 16fd113020 RC_Channel: added channel_function()
this is used in the plane mixing code
2014-11-07 10:39:07 +11:00
Andrew Tridgell 913004beb0 Plane: added OVERRIDE_CHAN parameter
this allows both for testing PX4IO override on the ground, and for
forced manual override while flying, including re-arming after in-air
reboot
2014-11-07 10:39:07 +11:00
Andrew Tridgell c494057c98 Plane: add support for generating a PX4 mixer for failsafe
this creates APM/MIXER.MIX which will be used if the FMU dies to
provide manual control over RC
2014-11-07 10:39:07 +11:00
Andrew Tridgell 96a87b6990 Plane: added DF logging of 2nd battery voltage 2014-10-30 21:17:17 +11:00
Andrew Tridgell 538cf68005 Plane: removed unused function 2014-10-30 18:23:29 +11:00
Andrew Tridgell ddd27f5acb Plane: increase mav throttle slew rate in generated param docs 2014-10-25 10:06:29 +11:00
Andrew Tridgell e4f7a7f6d2 Plane: removed incomplete DF log of go-around
the right commands should already be logged. This code would have
logged a lot of uninitialised bytes
2014-10-24 22:09:41 +11:00
Andrew Tridgell c046273be2 Plane: fixed verify_land() comment for go-around 2014-10-24 22:04:59 +11:00
Andrew Tridgell 1f3e285ed0 Plane: reset commanded_go_around at start of land
this allows multiple landing attempts
2014-10-24 22:04:30 +11:00
Andrew Tridgell ad58822cb5 Plane: removed impossible boolean check 2014-10-24 22:04:05 +11:00
Andrew Tridgell 959cd11cb1 Plane: save a byte in auto_state
keep single bits together to save space on APM2
2014-10-24 22:03:34 +11:00
Michael Day 01f611daa9 Plane: "Go around" operation. Assumes go around behavior follows land wp. 2014-10-24 21:51:46 +11:00
Andrew Tridgell e434850f1f Plane: move set_mode() after mission.set_current_cmd()
if set_current_cmd() fails, we don't want to change to AUTO with some
unknown mission item
2014-10-24 21:51:27 +11:00
Andrew Tridgell 02b80db67c Plane: minor code style change
use comment and function style consistent with rest of code
2014-10-24 21:50:18 +11:00
Michael Day c1b949a74f Plane: Bugfix. Changing to landing sequence now works at mission end. 2014-10-24 21:42:06 +11:00
Andrew Tridgell 240e87dc2c Plane: update for new AP_InertialSensor API 2014-10-24 12:10:38 +11:00
Andrew Tridgell 05c325a12a Plane: display min as well as max loop delta_t 2014-10-22 18:27:12 +11:00
Andrew Tridgell 2fc69c7c4c Plane: disable CLI by default
it really isn't needed any more, and saves 20k of flash on APM2
2014-10-22 18:27:08 +11:00
Andrew Tridgell f87da51b37 Plane: prevent calling jump_to_landing_sequence() too often 2014-10-20 08:36:20 +11:00
Andrew Tridgell 8d329f6b5a Plane: ignore DO_LAND_START in missions 2014-10-20 08:36:20 +11:00
Andrew Tridgell 1f0840ddf8 Plane: improved RTL_AUTOLAND docs 2014-10-20 08:36:20 +11:00
Andrew Tridgell 9f32bf93d1 Plane: switch to AUTO on a DO_LAND_START MAVLink command 2014-10-20 08:36:20 +11:00
Andrew Tridgell 7ecc87a787 Plane: improved check for reaching RTL point for auto-land 2014-10-20 08:36:20 +11:00
Michael Day be17bfd972 Plane: Added parameter RTL_AUTOLAND and implementation. 2014-10-20 08:36:20 +11:00
Michael Day fe43ae538f Plane: Added support for MAV_CMD_DO_LAND_START 2014-10-20 08:36:19 +11:00
Andrew Tridgell 4c984d9331 Plane: start preparing for 3.1.2 2014-10-13 10:25:53 +11:00
Randy Mackay 6d8e760582 Plane: report gyro unhealthy if failed calibration 2014-10-09 10:00:17 +09:00
Andrew Tridgell 71d786187e Plane: make auto takeoff independent of compass
this solves a problem of poor initial yaw due to poor compass offsets
causing a takeoff to not be in the direction the plane is pointing. A
summed gyro is used until the GPS speed is above 5m/s for 2 seconds,
then the GPS heading corrected by the summed gyro error is used for L1
based navigation for the rest of the takeoff
2014-10-07 07:17:46 +11:00
Randy Mackay b17c6d3368 Plane: only report ahrs unhealthy after initialisation 2014-10-02 14:41:28 +09:00
Andrew Tridgell c4b17b74e2 Plane: use handle_set_mode() 2014-10-01 14:19:20 +10:00
Randy Mackay 82225de6fa Plane: allow GCS to turn safety switch on/off 2014-10-01 13:11:50 +10:00
Randy Mackay 7a6b55368e Plane: set sys_status motor outputs bit from safety switch 2014-10-01 13:09:58 +10:00
Randy Mackay 6d3acba04c Plane: check target of set-mode request from GCS
Issue discovered and fix contributed by Deadolous
2014-09-30 15:19:25 +10:00
Andrew Tridgell 4b01cee330 Plane: send heartbeat to AFS when calibrating sensors 2014-09-24 12:02:39 +10:00
Andrew Tridgell 1fa03a49c9 Plane: disable the CLI if AFS failsafe enabled on APM2
the flash space is a bit too low for both CLI and AFS
2014-09-24 12:02:38 +10:00
Andrew Tridgell e555b9a855 Plane: improved WP_RADIUS docs 2014-09-12 11:57:43 +10:00
Andrew Tridgell 7b4181dc14 Plane: prepare for 3.1.1 release 2014-09-12 11:07:26 +10:00
Andrew Tridgell 7aad03df28 Plane: minor doc update for fence auto enable 2014-09-11 18:58:54 +10:00
Andrew Tridgell f3d1461d7a Plane: improve the short and long failsafe docs
thanks to Mark Jacobsen for the analysis!
2014-09-10 06:56:01 +10:00
Andrew Tridgell bf80a2485f Plane: support acceptance radius for waypoints 2014-09-03 12:38:30 +10:00
Randy Mackay c2cdc0468b Plane: individual accel and gyro status to GCS 2014-09-03 11:22:53 +09:00
Andrew Tridgell 21ed86004a Plane: raise the default WP radius
with L1 a large radius doesn't mean it turns too early
2014-08-30 07:43:11 +10:00
Andrew Tridgell 292517b88b Plane: only override takeoff/land flaps if non-zero 2014-08-30 05:16:42 +10:00
Andrew Tridgell 5c96838473 Plane: allow zero throttle in LAND_STAGE_FINAL 2014-08-30 05:15:25 +10:00
Andrew Tridgell 5af4cefff3 Plane: added FLAP_SLEWRATE parameter
makes for smoother transition of flaps
2014-08-29 20:31:03 +10:00
Andrew Tridgell f66039c9b4 Plane: added TKOFF_FLAP_PCNT and LAND_FLAP_PERCENT
easier control of flaps for takeoff and landing
2014-08-29 20:31:03 +10:00
Andrew Tridgell b94bc0c243 Plane: don't use ground steering until flare in landing
we need to be able to guide the plane fully in the landing approach
2014-08-29 20:31:03 +10:00
Andrew Tridgell 988662027e Plane: moved LAND_PITCH_CD into TECS 2014-08-27 20:13:19 +10:00
Andrew Tridgell 186806c768 Plane: lowpass the rangefinder correction, not height
this should produce less lag as the rangefinder correction should be
changing much less
2014-08-27 18:25:17 +10:00
Andrew Tridgell 24622030b4 Plane: improved landing glide slope
we project a point 500m past the landing point to prevent
discontinuites close to the landing point
2014-08-27 17:14:19 +10:00
Andrew Tridgell a6ee46086c Plane: allow continued use of rangefinder data for 5s after loss of contact
this allows short outages to be ridden out
2014-08-27 17:14:19 +10:00
Andrew Tridgell 50f492a69f Plane: added RNGFND_LANDING option
this allows the use of a rangefinder for landing flare and landing
approach
2014-08-27 17:14:19 +10:00
Andrew Tridgell b6319a9d19 Plane: keep an estimate of the rangefinder altitude
only accept data when we have had 10 samples in a row in range at 50Hz
2014-08-27 17:14:19 +10:00
Andrew Tridgell d0b6676547 Plane: do landing flare if past landing point
this helps prevent us keeping the throttle on after we've landed if
the baro has drifted enough that we think we are not yet at the flare altitude
2014-08-27 17:14:19 +10:00
Andrew Tridgell b102c9d19c Plane: use ground steering logic for final stage of auto landing
this should improve runway tracking
2014-08-27 17:14:19 +10:00
Andrew Tridgell 5f3ac159ba Plane: start working towards 3.1.1 2014-08-27 17:14:19 +10:00
Andrew Tridgell e880de67ed Plane: prepare for 3.1.0 release 2014-08-26 06:20:37 +10:00
Andrew Tridgell 6e5344bc8d Plane: prepare beta4 2014-08-25 22:20:52 +10:00
Andrew Tridgell cf0741f6fd Plane: don't do failsafe passthru with no RC input
thanks to Klrill-ka for the suggestion

fixes issue #1302
2014-08-25 19:45:39 +10:00
Andrew Tridgell 7649907ec2 Plane: run terrain.update() more often
this provides faster checking of mission waypoints
2014-08-25 14:55:40 +10:00
Andrew Tridgell daa32f9b62 Plane: reset steering integrator on mode change and when not moving
this prevents an old integrator from causing problems on takeoff
2014-08-25 08:20:37 +10:00
Andrew Tridgell f2f730ba9b Plane: added FBWA_TDRAG_CHAN parameter
this allows for testing taildragger takeoffs in FBWA mode
2014-08-24 19:39:51 +10:00
Andrew Tridgell 15a7f63d7e Plane: set GPS non-blocking
the new GPS driver only ever needs a non-blocking port
2014-08-19 10:08:17 +10:00
Andrew Tridgell 79fa22e4ad Plane: use gcs_send_text_fmt() for SCHED_DEBUG timing
lets values be saved in mavlink logs
2014-08-19 10:08:17 +10:00
Andrew Tridgell cf410f8d12 Plane: prepare for 3.1.0-beta3 2014-08-17 18:25:46 +10:00
Andrew Tridgell 1ce3d1d4a4 Plane: update for AFS API change 2014-08-17 18:07:50 +10:00
Andrew Tridgell 9fff67ec89 Plane: update for APM_OBC API change 2014-08-17 09:13:29 +10:00
Randy Mackay c107f1da69 Revert "Plane: use rcmap when sending radio_in to GCS"
This reverts commit 441f23eed4.
2014-08-16 20:31:21 +09:00
Randy Mackay 441f23eed4 Plane: use rcmap when sending radio_in to GCS 2014-08-16 15:27:35 +09:00
Randy Mackay 7d7272520e Plane: use baro healthy()
Use baro last update time in place of healthy to determine whether HIL
sensor updates have started
2014-08-14 16:03:28 +09:00
Randy Mackay b619c3956c Plane: report baro health to GCS 2014-08-14 16:02:52 +09:00
Andrew Tridgell da7f871e34 Plane: prevent set_target_altitude_proportion() past dest waypoint
otherwise we could start climbing again on land
2014-08-14 09:49:52 +10:00
Andrew Tridgell c06067c71b Plane: fixed non-terrain landing 2014-08-14 08:04:06 +10:00
Andrew Tridgell dad95648a0 Plane: split landing code into landing.pde
this is in preparation for more complex landing code using the
rangefinder
2014-08-13 21:38:05 +10:00
Andrew Tridgell 7def71d43a Plane: improved landing approach and flare
flare if we are within the specified time of landing either vertically
or horizontally
2014-08-13 21:38:05 +10:00
Andrew Tridgell 165993dbf5 Plane: allow steering right through the landing
this allows a small degree of steering right through the landing,
which makes it possible to have a turn just before landing
2014-08-13 21:35:26 +10:00
Andrew Tridgell ce9b14f0c8 Plane: convert to using StorageManager 2014-08-13 18:46:44 +10:00
Andrew Tridgell 817164914e Plane: added airspeed simulation in HIL 2014-08-10 18:17:12 +10:00
Andrew Tridgell e6f5a31944 Plane: prepare for 3.1.0-beta2 2014-08-10 07:20:29 +10:00
Andrew Tridgell 0d7d6e1d2a Plane: zero loc structure in HIL_STATE handling
this avoids av AVR bug in HIL
2014-08-09 22:50:15 +10:00
Andrew Tridgell 5e997b20f6 Plane: move battery init to after parameter load 2014-08-09 22:50:14 +10:00
Andrew Tridgell 74fc7fbea5 Plane: added 2nd battery monitoring support 2014-08-09 22:50:14 +10:00
Andrew Tridgell e22ab50b16 Plane: fixed build warning 2014-08-08 13:54:21 +10:00
Andrew Tridgell 4f57467aa5 Plane: build AFS (formerly known as OBC) failsafe on Pixhawk
this gives an advanced failsafe system which may be useful for other
than OBC use
2014-08-08 13:48:03 +10:00
Andrew Tridgell 2b89d728f3 Plane: rename to 3.1.0-beta1 2014-08-07 14:14:54 +10:00
Andrew Tridgell d44425449d Plane: started on 3.1.0 release notes 2014-08-07 14:10:49 +10:00
Andrew Tridgell bfe7c47aea Plane: prepare new beta 2014-08-07 13:28:29 +10:00
Andrew Tridgell b414ca930d Plane: fixed servo demo on startup
thanks to Klrill-ka

fixes issue #1204
2014-08-07 13:26:47 +10:00
Michael Day 3b62592b26 ArduPlane: attempt to send GCS a message when the GCS heartbeat is not detected. 2014-08-07 12:54:47 +10:00
Przemek Lekston 75f9b8853d GCS_Mavlink.pde: Fix for a possible segfault after passing ARSPD_FBW_MIN 2014-08-07 12:35:31 +10:00
Andrew Tridgell 9184e47f84 Plane: added TERRAIN_LOOKAHD parameter
distance to look forward for terrain following
2014-08-07 09:31:03 +10:00
Andrew Tridgell 903b149bcd Plane: fixed typo in description 2014-08-06 17:59:19 +10:00
Andrew Tridgell 781abc7593 Plane: fix for changed AP_Terrain API 2014-08-06 17:59:19 +10:00
Andrew Tridgell 448b3f60e0 Plane: use dataflash logging for terrain 2014-08-06 17:59:19 +10:00
Andrew Tridgell 2a288824c0 Plane: make STAB_PITCH_DOWN in degrees
try to avoid new centi-degrees parameters
2014-08-06 17:59:18 +10:00
Andrew Tridgell 781c5bc5dd Plane: use terrain extrapolation
use best effort extrapolation if we run out of terrain data
2014-08-06 17:59:18 +10:00
Andrew Tridgell d54bb68270 Plane: prevent cross-track on some WP types
when finishing a takeoff or when a user forces a WP change don't do
any cross-tracking. This avoids a problem where the plane tries to
line up with a track completely unrelated to the track currently being
flown
2014-08-04 21:02:13 +10:00
Andrew Tridgell 09a679368b Plane: use bitfields in auto_state 2014-08-04 21:02:13 +10:00
Andrew Tridgell 16f1c6867f Plane: remved int cast
not portable
2014-08-04 21:02:13 +10:00
Andrew Tridgell 28facc220d Plane: change threshold for no glide slope to 20m
40m is quite high for most planes
2014-08-04 21:02:13 +10:00
Andrew Tridgell 8610d9a8ea Plane: added GLIDE_SLOPE_MIN parameter
this is used to prevent slow glide slopes being used for small
altitude changes in missions. This allows more accurate tracking of
altitude with terrain changes
2014-08-04 21:02:13 +10:00
Andrew Tridgell 9536124300 Plane: more accurate altitude tracking close to waypoints
don't use a glide slope if the altitude change is less than 15 meters
2014-08-04 21:02:13 +10:00
Andrew Tridgell f983040401 Plane: more fixes for glide slope calculations 2014-08-04 21:02:13 +10:00
Andrew Tridgell b64ab07ca4 Plane: added STAB_PITCH_DN_CD parameter
this adds some down trim when at throttle levels below the trim
throttle in FBWA mode.

defaults to 200 centi-degrees. I may adjust based on flight tests
2014-08-03 17:17:20 +10:00
Andrew Tridgell fcbdcb520a Plane: rename enum for Telem2Protocol 2014-07-30 14:49:20 +10:00
Matthias Badaire 57253fc2ee Rover: Add SERIAL2_PROTOCOL for GCS and FRSky telemtry
This allows selection of protocol type on telem2. The default is MAVLink, but can be selected as FrSky protocol
2014-07-29 17:08:20 -07:00
Andrew Tridgell fe3c51d516 Plane: prevent integer underflow with comm_get_txspace() 2014-07-27 22:12:08 +10:00
Andrew Tridgell c9be610dca Plane: fixed sense of altitude test for glide slope 2014-07-25 15:04:16 +10:00
Andrew Tridgell 8904cd105c Plane: fixed auto-doc prefix for TERRAIN 2014-07-25 13:12:23 +10:00
Andrew Tridgell 63cea04d9e Plane: improved TERRAIN_FOLLOW docs 2014-07-25 11:54:51 +10:00
Andrew Tridgell 077177384d Plane: fixed guided alt without terrain bit 2014-07-25 10:31:45 +10:00
Andrew Tridgell 9d6b745556 Plane: fixed terrain glide slope 2014-07-25 09:07:45 +10:00
Andrew Tridgell 88b73492c2 Plane: fixed APM2 build 2014-07-25 08:02:19 +10:00
Andrew Tridgell b158b7e5a9 Plane: replace HAVE_AP_TERRAIN with AP_TERRAIN_AVAILABLE 2014-07-25 07:59:54 +10:00
Andrew Tridgell 07583a0604 Plane: added terrain status reporting 2014-07-24 21:50:19 +10:00
Andrew Tridgell 49c28b747f Plane: fixed glide slope for terrain following 2014-07-24 21:50:19 +10:00
Andrew Tridgell 3e320d71ab Plane: added TERRAIN_FOLLOW parameter
when enabled RTL, CRUISE and rally points will use terrain altitude
2014-07-24 21:50:19 +10:00
Andrew Tridgell d18c00d6fc Plane: split up altitude handling
this creates altitude.pde for altitude handling, getting ready to add
terrain following
2014-07-24 21:50:19 +10:00
Andrew Tridgell 43b2e34242 Plane: fixed txsize check for airspeed info
prevent underflow
2014-07-24 21:46:06 +10:00
Andrew Tridgell 6f538aa556 Plane: handle TERRAIN_CHECK requests 2014-07-24 21:46:06 +10:00
Andrew Tridgell 32bfeed169 Plane: incorporate terrain mavlink calls 2014-07-24 21:45:47 +10:00
Andrew Tridgell e725b2c77e Plane: added terrain object 2014-07-24 21:45:46 +10:00
akdslr 2373b291f4 ArduPlane Parameters: Changed the SONAR prefix to RNGFND 2014-07-24 14:41:54 +10:00
Andrew Tridgell a83509f6a3 Plane: fixed compass logging for COMPASS_PRIMARY != 0 2014-07-23 18:42:14 +10:00
Andrew Tridgell ae29a24348 Plane: use sensors from board subtypes 2014-07-14 09:44:35 +10:00
Andrew Tridgell f6bba74fb6 Plane: enable MPU9250 for Linux build 2014-07-14 09:44:34 +10:00
Víctor Mayoral Vilches fc57bdedde ArduPlane/config.h: Add the PXF hardware setup 2014-07-14 09:31:41 +10:00
Andrew Tridgell c5a765758c Plane: update for new API 2014-07-13 15:37:50 +10:00
Andrew Tridgell 473865ccc1 Plane: prepare for 3.0.4-beta3 2014-07-11 07:40:59 +10:00
Randy Mackay aef746b3b1 Plane: pass in compass to Arming constructor 2014-07-10 22:51:29 +09:00
Randy Mackay b17125e261 Plane: PREFLIGHT_SET_SENSOR_OFFSETS used to set compass offsets
replaces ardupilot specific SET_MAG_OFFSETS message
2014-07-10 20:25:24 +09:00
Randy Mackay 208a2de777 Plane: rename compass set_and_save_offsets 2014-07-10 20:25:21 +09:00
Randy Mackay 042c65c501 Plane: add support for DO_SET_ROI outside of missions 2014-07-09 21:27:01 +09:00
Randy Mackay 873eb68d79 Plane: add support for DO_SET_ROI within mission 2014-07-09 21:26:02 +09:00
Andrew Tridgell 3390224491 Plane: avoid some float conversion warnings 2014-07-08 20:26:07 +10:00
Andrew Tridgell 28e1449e8d Plane: updates for new AP_RangeFinder API 2014-07-08 15:07:50 +10:00
Andrew Tridgell 5aa58d2ab5 Plane: support 3 magnetometers 2014-07-04 12:49:25 +10:00
Andrew Tridgell 017e4b4c8a Plane: update for AP_Mount change 2014-06-18 12:04:53 +10:00
Randy Mackay d8573d0722 Plane: loiter num turns from low byte of p1
This limits the maximum number of turns to 255 for plane
2014-06-17 20:53:59 +10:00
Randy Mackay ac65119cfe Plane: use common Log_Write_Camera
pair programmed with Craig Elder
2014-06-17 14:11:47 +10:00
Andrew Tridgell 105382bf21 Plane: release 3.0.4beta2 2014-06-07 20:52:08 +10:00
Andrew Tridgell ea086fa79c Plane: added MAV_CMD_DO_INVERTED_FLIGHT support
allows for mission control over inverted flight
2014-06-05 16:12:10 +10:00
Andrew Tridgell 55e7f9b1d6 Plane: calculate next_turn_angle to prevent early WP completion
this should help for ball drop and camera trigger with straight line
runs
2014-06-05 09:35:09 +10:00
Andrew Tridgell a7868dd6b3 Plane: fixed zero throttle in FBWA glide failsafe 2014-06-04 09:39:45 +10:00
Andrew Tridgell 1e2b644b1b Plane: fix for HAL_GPIO_* 2014-06-02 10:42:36 +10:00
Andrew Tridgell 24325a5c62 Plane: fixed takeoff throttle slew rate
when TKOFF_THR_SLEW is zero use the normal slew rate
2014-05-31 16:47:45 +10:00
Andrew Tridgell cea30e1d9f Plane: use new GCS_Common.cpp functions 2014-05-28 09:36:04 +10:00
Andrew Tridgell 055d8fe7aa Plane: added TKOFF_THR_MAX parameter 2014-05-24 22:19:50 +10:00
Andrew Tridgell dfedc377b1 Plane: aim for 5 degrees pitch during accel phase of takeoff
this makes it less likely we will get prop strike
2014-05-23 07:30:59 +10:00
Andrew Tridgell d4c4c71df5 Plane: improve takeoff docs for tricycle undercarriage 2014-05-23 07:30:59 +10:00
Andrew Tridgell 286479ee93 Plane: prevent stalled takeoff with bad TKOFF_TDRAG_SPD1
go to level pitch if pitch rises by 10 degrees
2014-05-23 07:30:59 +10:00
Andrew Tridgell d87619c2f1 Plane: added 4 new parameters to control takeoff
this gives flexible control for taildragger takeoff
2014-05-23 07:30:58 +10:00
Andrew Tridgell c29cc24ad8 Plane: fixed sign of target and nav bearing in logs 2014-05-23 07:30:58 +10:00
Andrew Tridgell f2556535da Plane: moved takeoff code to a new file 2014-05-23 07:30:58 +10:00
Andrew Tridgell 511e8beaed Plane: updates for new GCS_MAVLink API 2014-05-21 12:45:25 +10:00
Andrew Tridgell 2b44d33694 Plane: update baud rate parameter descriptions 2014-05-21 12:45:25 +10:00
Andrew Tridgell 94d528e548 Plane: changed baudrate parameters to 16 bit 2014-05-21 12:45:25 +10:00
Andrew Tridgell 2a230b2703 Plane: set version to 3.0.4beta 2014-05-19 22:03:18 +10:00
Andrew Tridgell 8c5226a17a Plane: prepare for release of 3.0.3 2014-05-19 09:54:15 +10:00
Andrew Tridgell 69b5f352f6 Plane: prevent a bad glide slope when first entering auto
we need to ensure that prev_WP_loc is not used as it could be
completely different from current_loc. As a precuation, this also sets
up next_WP_loc so that when the set_next_WP() is first called that
prev_WP_loc is set to current_loc
2014-05-18 16:14:11 +10:00
Andrew Tridgell bd09d8551d Plane: use setup_uart() 2014-05-16 11:44:53 +10:00
Andrew Tridgell 3a73878ca7 Plane: mark 3.0.3beta 2014-05-15 22:59:02 +10:00
Andrew Tridgell 182d0f9cb0 Plane: added reporting of AHRS health 2014-05-15 21:14:22 +10:00
Randy Mackay 409a593c1a Plane: prepended APM to RSSI_PIN's @Values
This makes it consistent with rover and copter and clarifies where the
pin is on the Pixhawk
2014-05-15 17:13:48 +09:00
Andrew Tridgell 0991af86f3 Plane: removed some usused code
setting up flight modes by CLI is not used any more
2014-05-08 11:10:50 +10:00
Andrew Tridgell c1aa2181dc Plane: update release notes for 3.0.2 2014-05-04 16:31:07 +10:00
Andrew Tridgell f233f95785 Plane: prepare for release of 3.0.2 2014-05-04 16:04:08 +10:00
Andrew Tridgell f51478ee1d Plane: fixed LOITER_TURNS counter for counter-clockwise loiter
thanks to Iskess for finding this bug!
2014-05-01 20:45:34 +10:00
Andrew Tridgell 92714b09d2 Plane: added ATRP log header to plane log headers
too many people can't understand how to download .bin logs
2014-04-30 21:22:28 +10:00
Jonathan Challinger 0bc0abf02d Plane: Supply compass with current measurement for compassmot 2014-04-29 16:20:19 +10:00
Andrew Tridgell 0408c11637 Plane: mark 3.0.2beta 2014-04-29 11:56:52 +10:00
Andrew Tridgell ccc8a6a6ed Plane: use MIS_AUTORESET when entering AUTO mode 2014-04-29 11:46:06 +10:00
Andrew Tridgell 956ff65a25 Plane: RC override input should be considered as valid RC input
this prevents us setting trim values under joystick control
2014-04-29 11:46:06 +10:00
Andrew Tridgell 0306dbf5f1 Plane: moved auto mode variables to auto_state 2014-04-27 15:34:30 +10:00
Andrew Tridgell 08412391f5 Plane: fixed a bug when switching to another mode from auto takeoff
when you exit auto and a takeoff is still in progress the flight stage
was not updated, which led to the throttle staying at maximum

Many thanks to Marco for finding this!
2014-04-23 21:18:11 +10:00
Andrew Tridgell e15350f756 Plane: use get_current_nav_index() 2014-04-22 11:40:18 +10:00
Andrew Tridgell 12012c9530 Plane: fixed a potential numerical error close to waypoints 2014-04-21 18:49:30 +10:00
Andrew Tridgell 0de41f0ce1 Plane: set AHRS vehicle class 2014-04-21 18:13:12 +10:00
Andrew Tridgell 994ce50714 Plane: setup failsafe values for OBC in failsafe callback 2014-04-21 11:52:54 +10:00
Andrew Tridgell 2ab4ffef45 Plane: use new APM_OBC API 2014-04-21 11:52:53 +10:00
Andrew Tridgell 41100a13c3 Plane: setup failsafe trim values for if FMU firmware dies 2014-04-21 08:37:56 +10:00
Randy Mackay 2a298d0ea4 Plane: remove RALLY_WP_SIZE definition 2014-04-19 15:00:32 +09:00
Michael Day 568fc9e6c9 Plane: Now using AP_Rally library. 2014-04-19 09:16:05 +10:00
Andrew Tridgell d30c4ffe80 Plane: added AUTOTUNE_LEVEL parameter 2014-04-13 22:12:27 +10:00
Andrew Tridgell 8a20130ca8 Plane: changed for APM_Control API 2014-04-12 18:22:01 +10:00
Andrew Tridgell 1bce4239a3 Plane: added AUTOTUNE flight mode
this is just like FBWA, but with automatic roll/pitch tuning
2014-04-12 14:12:14 +10:00
Andrew Tridgell d37f1a1376 Plane: updates for OBC API change 2014-04-11 16:47:40 +10:00
Andrew Tridgell 4d990fa6c8 Plane: ensure we log both GPS at the time we receive a msg 2014-04-10 10:29:53 +10:00
Andrew Tridgell e79f1d0940 Plane: prepare for release of 3.0.1 2014-04-10 07:52:36 +10:00
Andrew Tridgell aabcc2bb35 Plane: fixed a bug in PWM based throttle failsafe
many thanks to Sam Tabor for finding this bug!
2014-04-10 07:43:48 +10:00
Andrew Tridgell affcea5342 Plane: fixed typo in VRBrain port 2014-04-08 21:22:05 +10:00
Emile Castelnuovo a111d174c1 Plane: added VRBRAIN #defines and #includes 2014-04-08 16:19:20 +10:00
Andrew Tridgell d0331e0f25 Plane: spelling fixes 2014-04-08 09:49:25 +10:00
Andrew Tridgell d2d9ad5bbd Plane: prepare for 3.0.0 release 2014-04-08 09:46:30 +10:00
Andrew Tridgell c66008cdfa Plane: fixed displayname for FENCE_AUTOENABLE 2014-04-08 09:13:39 +10:00
Andrew Tridgell 95764f4d78 Plane: fixed allocation and reporting of fence status
prevent a false fence active report on boot, and prevent the fence
from loading when it is not needed. This saves about 200 bytes of ram
on APM2 for most users
2014-04-07 17:28:03 +10:00
Michael Oborne 3fe9486868 Plane: fix auto doc unit on GROUND_STEER_DPS 2014-04-07 13:43:15 +10:00
Andrew Tridgell de3c04adaf Plane: show next wp when not running a mission
this lets the GCS know what wp would be run if auto mode is selected
2014-04-07 11:40:58 +10:00
Andrew Tridgell 1fe7b2fe18 Plane: update for new APM_OBC API 2014-04-07 07:28:35 +10:00
Andrew Tridgell f7858bfb0a Plane: added support for SERIAL_CONTROL message 2014-04-05 07:34:33 +11:00
Andrew Tridgell 5a84fb96ed Plane: build fix 2014-04-03 20:54:50 +11:00
Andrew Tridgell 1efadb7a05 Plane: fixed some warnings 2014-04-03 12:48:06 +11:00
Andrew Tridgell 3c33eb3f09 Plane: use new channel output API 2014-04-03 12:19:11 +11:00
Andrew Tridgell 88693796ef Plane: update for GPS.setHIL() API 2014-04-02 07:55:28 +11:00
Andrew Tridgell e19341ca32 Plane: convert to new GPS driver API 2014-04-01 06:38:24 +11:00
Andrew Tridgell 958e17f4ff Plane: use AP_GPS_Auto for 2nd GPS 2014-04-01 06:38:23 +11:00
Andrew Tridgell 14671d0bcd Plane: fixed previous_mode error in geofence
when we were in MANUAL we would switch back to STABILIZE
2014-03-29 13:53:19 +11:00
Andrew Tridgell bcbdb15c7d Plane: changed version to 2.79beta1 2014-03-28 09:47:59 +11:00
Andrew Tridgell 61ebf365d9 Plane: fixed reverting modes when FENCE_SET_RALLY is enabled
we need to keep the guided destination we are using
2014-03-27 10:41:24 +11:00
Andrew Tridgell 8639676eb3 Plane: we need 5 points for a valid geofence
the first and last points need to be the same for it to be a closed
polygon
2014-03-27 10:40:00 +11:00
Michael Day 268b1e85a1 Plane: Changes needed prior to merging with master identified by Tridge. 2014-03-27 09:26:20 +11:00
Michael Day f921d4fbac Plane: FENCE_RET_RALLY param. Plane returns to rally point on breach. 2014-03-27 09:26:20 +11:00
Michael Day 25f23cf16c Plane: Sends MAV_SYS_STATUS_GEOFENCE and also allows GCS to enable/disable fence. 2014-03-27 09:26:20 +11:00
Andrew Tridgell 32a1c717e6 Plane: report up to 18 RC input channels via MAVLink 2014-03-25 14:47:43 +11:00
Andrew Tridgell ff70c87f0b Plane: support 14 RC channels on PX4 2014-03-25 14:47:05 +11:00
Andrew Tridgell 09ed8d5819 Plane: updates for new RCInput API 2014-03-25 14:47:05 +11:00
Andrew Tridgell b8781ccea7 Plane: fixed a compiler warning 2014-03-24 12:52:05 +11:00
Andrew Tridgell e8b9f22b01 Plane: updates for GPS changes 2014-03-24 12:04:31 +11:00
Andrew Tridgell d124fdb182 Plane: report compass unhealthy if primary compass unhealthy 2014-03-24 07:03:53 +11:00
Andrew Tridgell f6b56b5d26 Plane: fixed mission resume at arbitrary waypoints
on completion of a mission a user can ask for it to resume at any wp
2014-03-21 10:21:37 +11:00
Andrew Tridgell 861523a00a Plane: use TECS get_target_airspeed() 2014-03-20 17:34:33 +11:00
Michael Day dd06756abf Plane: Add Log_Write_Radio. MASK_LOG_PM must be set for logging to occur. 2014-03-20 09:56:37 +11:00
Andrew Tridgell 4257d8365c Plane: removed check on target_component in ARM/DISARM
Thanks to DonLakeFlyer for finding this, see
https://github.com/diydrones/ardupilot/pull/909
2014-03-20 09:06:48 +11:00
Andrew Tridgell ce3f40b095 Plane: use should_log() for more msgs 2014-03-19 14:18:14 +11:00
Andrew Tridgell abfcee1cef Plane: fixed channel reversal in HIL
makes it possible to reverse channels
2014-03-19 14:17:40 +11:00
Randy Mackay 3ce56f3086 Plane: integrate Mission cmd field changes 2014-03-19 12:14:24 +09:00
Andrew Tridgell 4031f7d368 Plane: use common deferred message handling 2014-03-19 12:14:17 +09:00
Andrew Tridgell b74fddade3 Plane: use common MISSION_ITEM code 2014-03-19 12:14:11 +09:00
Andrew Tridgell 0d39f354b0 Plane: use new common MAVLink code 2014-03-19 12:13:38 +09:00
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 2184ff1e58 Plane: set_next_WP fn accepts Location 2014-03-19 12:13:06 +09:00
Randy Mackay 96b2e88e36 Plane: add comment to GCS_Mavlink.pde 2014-03-19 12:13:03 +09:00
Randy Mackay ce9f2ef7f0 Plane: minor command logic comments and reordering 2014-03-19 12:13:01 +09:00
Randy Mackay ad4f30e790 Plane: use mission command specific structures 2014-03-19 12:12:52 +09:00
Randy Mackay 9ef920b0be Plane: integrate dataflash Log_Write_MavCmd 2014-03-19 12:12:45 +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 f1b97fee53 Plane: correct typo re RTL home with no mission 2014-03-19 12:12:33 +09:00
Randy Mackay 7f21e3885e Plane: RTL home when AUTO run with no mission 2014-03-19 12:12:31 +09:00
Randy Mackay 6b789cd711 Plane: rename next_nav_command to auto_rtl_command
This command is only used to get the vehicle home (or to a rally point)
after the mission has completed
2014-03-19 12:12:30 +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 3e05baf95c Plane: fixed build (forward declarations) 2014-03-19 12:12:25 +09:00
Andrew Tridgell 2b5bf45e83 Plane: only activate mission callbacks in AUTO mode 2014-03-19 12:12:24 +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
Andrew Tridgell 4992e2e2cf Plane: use mission.resume() not mission.start() 2014-03-19 12:12:19 +09:00
Andrew Tridgell d4510d9b9b Plane: altitude for do_set_home() is in meters 2014-03-19 12:12:18 +09:00
Randy Mackay 27969175d9 Plane: bug fix to Loiter after mission completes 2014-03-19 12:12:16 +09:00
Randy Mackay 790a907811 Plane: use Dataflash lib's Log_Write_Cmd 2014-03-19 12:12:08 +09:00
Randy Mackay 033b7eca9e Plane: integrate variable max num commands 2014-03-19 12:12:02 +09:00
Randy Mackay fcea127537 Plane: CLI uses HAL eeprom storage size definition 2014-03-19 12:11:59 +09:00
Randy Mackay 693ce27bf6 Plane: pass eeprom start to Mission constructor 2014-03-19 12:11:58 +09:00
Randy Mackay 36a5287de5 Plane: call mission.init during startup 2014-03-19 12:11:49 +09:00
Randy Mackay 6e60730c89 Plane: cli test checks read_cmd success before printing 2014-03-19 12:11:41 +09:00
Randy Mackay ccb2daaed3 Plane: Log_Write_Startup checks success of cmd read before logging 2014-03-19 12:11:40 +09:00
Randy Mackay 0827506533 Plane: remove unused WAIT_COMMAND 2014-03-19 12:11:24 +09:00
Randy Mackay 53add04d36 Plane: remove some comments in commands_logic.pde 2014-03-19 12:11:22 +09:00
Randy Mackay 802ab79c84 Plane: bug fix for setting flight_stage based on current command 2014-03-19 12:11:19 +09:00
Randy Mackay c4364a8ff5 Plane: remove unused nonnav_command variables
non_nav_command_ID and next_nonnav_command variables removed
2014-03-19 12:11:18 +09:00
Randy Mackay 52a08a5284 Plane: CMD dataflash logs use uint16 for total and num
Also bug fix for Log_Write_Cmd definition when logging disabled
2014-03-19 12:11:16 +09:00
Andrew Tridgell f036aa1780 Plane: fixed altitude for takeoff and takeoff heading
fixes for AP_Mission integration

Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-03-19 12:11:09 +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 9446e9fd2e Plane: integrate AP_Mission library 2014-03-19 12:10:58 +09:00
Randy Mackay ddba6f5c19 Plane: mission integration into GCS_Mavlink.pde 2014-03-19 12:10:57 +09:00
Randy Mackay 97f09ab426 Plane: dataflash logging to use Mission command 2014-03-19 12:10:55 +09:00
Randy Mackay fdaf3fc177 Plane: add AP_Mission object to parameter list 2014-03-19 12:10:54 +09:00
Randy Mackay e88f1953d0 Plane: use common location options masks 2014-03-19 12:10:21 +09:00
Andrew Tridgell 2b8cc1a1df Plane: use set_mode() in do_RTL()
thanks to Randy for spotting this
2014-03-15 22:15:06 +11:00
Andrew Tridgell eb7db82210 Plane: altitude for do_set_home() is in meters 2014-03-14 11:26:10 +11:00
Andrew Tridgell d595f36ca5 Plane: print PX4 compass type 2014-03-13 16:26:25 +11:00
Andrew Tridgell 65ae9663d4 Plane: set 2nd GPS as secondary 2014-03-08 21:48:12 +11:00
Andrew Tridgell 8574303a94 Plane: treat PWM below 900 as invalid for mode switch
the FrSky X8R receiver will briefly give a PWM of 874 on channel 5
when connection is lost to the transmitter. We need to ensure this
doesn't cause a mode switch
2014-03-08 19:27:50 +11:00
Andrew Tridgell 3a3397d926 Plane: fixup throttle trim on failsafe 2014-03-08 19:27:50 +11:00
Andrew Tridgell c9ebd6a175 Plane: improved RC failsafe handling
this forces all primary control inputs to the trim value on loss of RC
input, and reduces the timeout for loss of RC input to 1 second from 2
2014-03-08 16:20:54 +11:00
Andrew Tridgell 2cf98e476c Plane: added support for a separate steering channel
good for ground steering on larger aircraft
2014-03-05 12:57:50 +11:00
Andrew Tridgell 8d95b953c3 Plane: removed some unused functions 2014-03-05 09:17:50 +11:00
Andrew Tridgell 0d6064034a Plane: use percent_input() for flaps 2014-03-05 09:17:50 +11:00
Andrew Tridgell e3952112ad Plane: raise default LIM_PITCH_MAX to 20 degrees
15 is often not enough to climb
2014-03-03 15:49:04 +11: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 6b9e1edf38 Plane: disable GPS2 in HIL 2014-02-27 08:16:28 +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 8a4289b56f Plane: remove unused variables
thanks to Mike McCauley
2014-02-24 18:49:14 +11:00
Andrew Tridgell 4bcf9b5d98 Plane: fixed logging of relative altitude 2014-02-23 08:18:43 +11:00
Andrew Tridgell 492e65acde Plane: fix for HIL API change 2014-02-23 08:18:31 +11:00
Randy Mackay a76e2ab02e Plane: reserve NavEKF slot in param list even when not used
Although this wasn't a problem immediatley, if someone had added a
parameter after k_param_NavEKF it's position in eeprom could have moved
as AP_AHRS_NAVEKF_AVAILABLE was enabled/disabled
2014-02-21 13:53:05 +09:00
Andrew Tridgell 2908beb9bd Plane: fixed Log when disarmed value in docs 2014-02-19 19:01:48 +11:00
Andrew Tridgell 33851030a4 Plane: use ahrs.get_armed() 2014-02-19 10:53:26 +11:00
Andrew Tridgell 9282c8d0d9 Plane: allow for a wider range of values on the control switch 2014-02-17 13:58:11 +11:00
Paul Riseborough 98f72a4864 Plane : changed useage of ahrs.set_correct_centrifugal 2014-02-16 22:34:52 +11:00
Andrew Tridgell 99f2c8387c Plane: change to Compass::learn_offsets 2014-02-16 13:22:06 +11:00
Andrew Tridgell 59a56c9b46 Plane: enable Baro logging 2014-02-15 07:29:39 +11:00
Andrew Tridgell 566b0ccc61 Plane: call esimate_wind() 2014-02-15 05:48:24 +11:00
Andrew Tridgell d7839aa4ab Plane: removed duplicate log description 2014-02-15 05:48:24 +11:00
Andrew Tridgell 1001df0e56 Plane: removed extra log enum 2014-02-15 05:48:23 +11:00
Andrew Tridgell 35a9201c9a Plane: fixed comma 2014-02-15 05:48:23 +11:00
Andrew Tridgell a7faa58879 Plane: fixed up merge errors 2014-02-15 05:48:23 +11:00
Andrew Tridgell a551703877 Plane: fixed parameter build for NavEKF 2014-02-15 05:48:22 +11:00
Paul Riseborough 8c4b0b9be9 Plane : NavEKF Mavlink tunable parameter - first attempt 2014-02-15 05:48:22 +11:00
Paul Riseborough 24f8f02942 Plane : disable AHRS centrifugal corrections when disarmed 2014-02-15 05:48:20 +11:00
Andrew Tridgell bb4789a875 Plane: use common EKF logging 2014-02-15 05:48:16 +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 2817a11f23 Plane: added AHR2 and SIM logging 2014-02-15 05:48:14 +11:00
Andrew Tridgell 11337ab2df Plane: updates for AHRS holding home position 2014-02-15 05:29:47 +11:00
Andrew Tridgell df5195e2c9 Plane: change for new AHRS API 2014-02-15 05:29:47 +11:00
Andrew Tridgell e39247868c Plane: cleanup HIL defines 2014-02-15 05:29:46 +11:00
Andrew Tridgell 2cd6efa23e Plane: added DF logging of secondary AHRS solution 2014-02-15 05:29:45 +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
Paul Riseborough e0e4b1aefa Plane : Updated NavEKF flash data logging 2014-02-15 05:28:09 +11:00