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