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