Andrew Tridgell
9c0d984a4e
Plane: support forced motor class in quadplane
2016-04-28 22:37:24 +10:00
Andrew Tridgell
00c2b4b30f
Plane: reload airspeed after VTOL landing
2016-04-28 08:42:19 +10:00
Andrew Tridgell
1ebe0a2583
Plane: prevent a division by zero in takeoff code
2016-04-26 12:06:57 +10:00
Luis Vale Gonçalves
343b4cb81a
Revising ardupilot.com to .org
...
Revising ardupilot.com to .org
2016-04-23 22:49:41 -07:00
Luis Vale Gonçalves
73ac146b7e
Revising ardupilot.com to .org
...
Revising ardupilot.com to .org
2016-04-23 22:49:37 -07:00
Andrew Tridgell
38a7bfd81f
Plane: added Q_ENABLE=2 for starting AUTO in VTOL
2016-04-23 21:03:46 +10:00
Andrew Tridgell
0aa1ae048d
Plane: fixed is_flying() for VTOL flight
...
otherwise we may disarm mid-flight!
2016-04-23 21:03:46 +10:00
Andrew Tridgell
76400a9959
Plane: support DO_VTOL_TRANSITION as a mission item
2016-04-23 21:03:46 +10:00
Andrew Tridgell
07168c3db4
Plane: fixed places that assumed mission command IDs are 8 bit
2016-04-23 21:03:46 +10:00
James Stoyell
4e7e84fc99
Plane: Modified last_valid_rc_ms AFS failsafe input to work when standard failsafe is on
...
Ran into a bug on our physical plane where failsafe.last_valid_rc_ms was not recognizing that the transmitter had failed. This is likely due to how the standard failsafe works in receiving lower-than-possible throttle values. So in order to account for this, I added a new variable to the failsafe, AFS_last_valid_rc_ms, and I update it only if the ch3_failsafe (the throttle failsafe) is not on. If the throttle failsafe is on, that means that the plane has indeed lost transmitter input, so the AFS needs to recognize that.
2016-04-22 11:48:36 -07:00
Randy Mackay
4291139b6c
Plane: ack DO_MOUNT_CONTROL messages
2016-04-22 21:30:51 +09:00
Tom Pittenger
9aa25cb7a0
Plane: update flight stage on successful restart_landing_sequence()
2016-04-21 22:54:23 -07:00
Tom Pittenger
2ba9a04bf5
Plane: smooth-out the end of takeoff pitch by reducing takeoff pitch min via TKOFF_PLIM_SEC
...
@Description: This parameter reduces the pitch minimum limit of an auto-takeoff just a few seconds before it reaches the target altitude. This reduces overshoot by allowing the flight controller to start leveling off a few seconds before reaching the target height. When set to zero, the mission pitch min is enforced all the way to and through the target altitude, otherwise the pitch min slowly reduces to zero in the final segment. This is the pitch_min, not the demand. The flight controller should still be commanding to gain altitude to finish the takeoff but with this param it is not forcing it higher than it wants to be. (+1 squashed commits)
2016-04-21 22:54:17 -07:00
Tom Pittenger
f12658dd20
Plane: more comments on landing flare
2016-04-21 21:31:01 -07:00
Tom Pittenger
fefcf39335
Plane: must be on land approach before flare alt/sec are used
2016-04-21 21:31:00 -07:00
Tom Pittenger
12663eaa48
Plane: simplify flare logic
2016-04-21 21:30:59 -07:00
Tom Pittenger
183369b92a
Plane: take advantage of L1 stale flag and correctly inhibit flight stage if not lined up on approach
2016-04-21 21:30:58 -07:00
Tom Pittenger
c5a3b1b134
Plane: non-functional change - change labels for approach flight stage criteria
2016-04-21 21:30:56 -07:00
Tom Pittenger
c238645e53
Plane: limit roll before calculating load factor
2016-04-21 21:30:56 -07:00
Tom Pittenger
aadd9a18ce
Plane: log L1 xtrack error integrator and remove extra yaw logging
2016-04-21 21:30:55 -07:00
Tom Pittenger
85913bd237
Plane: rely on flight stage to know if we're doing auto_land in TECS
2016-04-21 21:30:53 -07:00
Tom Pittenger
6a83ad419a
Plane: moved update_flight_stage() inside setup_glide_slope()
...
the glide_slope gets calculated every time there's a major event such as mission item change or wp_proportion change so its good to update the flight stage then too because.
also logging stage when stage changes, might as well get an extra data point in there when it's timely
2016-04-21 21:30:51 -07:00
Tom Pittenger
ec3e9014e4
Plane: move target land_airspeed logic to top layer
...
- this is to allow min groundspeed to be enforced which is otherwise lost when TECS assigns a target airspeed at the lower level
2016-04-21 21:30:50 -07:00
Andrew Tridgell
a549225e60
Plane: support Y6 frame class in quadplane
2016-04-22 10:28:16 +10:00
Rimvydas Naktinis
df922dacfa
Plane: Suppress throttle when parachute release initiated, not after release.
2016-04-21 09:53:22 -07:00
Andrew Tridgell
2a1985d0f9
Plane: fixed loiter radius at end of mission
2016-04-21 22:29:29 +10:00
Andrew Tridgell
de33779382
Plane: added Q_WVANE_MINROLL
...
this allows for some roll trim without weathervaning
2016-04-21 21:52:25 +10:00
Michael du Breuil
ef348473eb
Plane: Remove tecs_hgt_afe from the 50hz tecs update
2016-04-21 17:03:00 +10:00
Michael du Breuil
f5749b44cd
Plane: Move position update to 50hz loop rather then the 10hz
2016-04-21 16:53:20 +10:00
Andrew Tridgell
cf7b6123a9
Plane: log the number of lost log messages
2016-04-21 16:45:02 +10:00
Andrew Tridgell
8683616d8c
Plane: redo scheduler table and improve perf logging
...
The scheduler table was still setup for a worst case CPU of
AVR2560. Adjust times for the stm32 and improve perf logging
2016-04-21 16:45:02 +10:00
Andrew Tridgell
a7006a7784
Plane: refactor perf variables into a structure
2016-04-21 16:45:02 +10:00
Andrew Tridgell
d013878c17
Plane: improved speed limiting on landing approach in VTOL mode
2016-04-20 18:07:04 +10:00
Andrew Tridgell
d8b0d17fe4
Plane: added weathervaning to landing reposition
2016-04-20 17:12:59 +10:00
Andrew Tridgell
f34af03891
Plane: added Q_WVANE_GAIN
...
this controls weathervaning in VTOL modes. Defaults to off
2016-04-20 17:12:59 +10:00
Andrew Tridgell
e9e43dc016
Plane: added Q_VFWD_GAIN for forward motor in VTOL modes
...
this allows for velocity control using the forward motor in VTOL modes
2016-04-20 16:25:19 +10:00
Lucas De Marchi
0095f6168e
ArduPlane: fix handling of SET_HOME_POSITION
...
Location.altitude is stored in cm.
2016-04-18 13:07:45 +10:00
Michael du Breuil
c17ea21a97
Plane: Add support for DO_REPOSITION via COMMAND_INT
...
also allows guided to change loiter directions
2016-04-17 19:00:03 -07:00
Andrew Tridgell
62574b35b5
Plane: fixed negative loiter radius values
2016-04-18 09:33:20 +10:00
Andrew Tridgell
edd15f15c0
Plane: added some fixed wing in-flight transmitter tuning
2016-04-16 20:47:18 +10:00
Andrew Tridgell
27fb35253c
Plane: added in-flight transmitter tuning
2016-04-16 20:26:43 +10:00
Tom Pittenger
436062ef37
Plane: improved crash detection
...
- fixes bug where a bungee launch is configured but the aircraft gets bumped and triggers the prop to spin up. This will now detect that and "crash' and disable the motor
2016-04-14 22:34:46 -07:00
Grant Morphett
2887e48178
Plane: Fixed bug with landing flare for high values of LAND_FLARE_SEC
...
I had an issue in SITL where my plane would round the last WP staring
its landing approach and immediately limit the roll to 5degress even
before the plane had finished turning the corner so it would go WAY
off course. For a high value of LAND_FLARE_SEC (mine was 5) the math
works out the plane has landed if
height <= sink_rate * land_flare_sec
During the banking of the last corner the plane started to decend and
quickly set itself up for a 6.1m/s sink rate which is normal. It was
at 30 meters altitude. As you can see at this point the math thinks
the plane has landed so limits the roll. The solution was to ensure
the plane had covered at least 50% of the distance toward the final
waypoint before allowing a flare to happen. Note that LAND_FLARE_SEC
above 2 is considered very high and this normally wouldn't occur.
2016-04-15 13:02:11 +10:00
Andrew Tridgell
154fe15c67
Plane: fixed build warning
2016-04-15 09:22:41 +10:00
Tom Pittenger
ff57884eca
Plane: renamed variable, non-functional change
2016-04-14 13:18:35 -07:00
Andrew Tridgell
3a242ee4a9
Plane: support up to 16 output channels
...
the extra channels can be used via SBUS output
2016-04-14 08:05:06 +10:00
Michael du Breuil
78442b7e81
Plane: make the initialization of the gcs instances follow the define
2016-04-11 17:54:46 -07:00
Andrew Tridgell
06bcf0df4b
Plane: change default loop rate for quadplanes to 300Hz
2016-04-11 09:32:45 +10:00
Andrew Tridgell
1fe9582ac3
Plane: back to velocity controller for quadplane landing
...
now with much smoother attitude control thanks to some help from
Leonard
2016-04-10 22:01:19 +10:00
Andrew Tridgell
4a5c4a5189
Plane: not in vtol mode when quadplane not enabled
...
prevents logging error in auto if quadplane not enabled and running a
VTOL mission command
2016-04-10 22:01:18 +10:00
Ricardo de Almeida Gonzaga
5bd034a5a8
Global: start using cmath instead of math.h
2016-04-05 21:06:19 -07:00
Andrew Tridgell
97a7192f76
Plane: make it more obvious that AUTO_FBW_STEER is not for normal use
2016-04-06 07:58:23 +10:00
Andrew Tridgell
5f1ad68bd9
Plane: improved velocity controller for quadplane landing
2016-04-04 09:50:35 +10:00
Andrew Tridgell
8b30569ad1
Plane: setup quadplane earlier in startup
...
this ensures the GCS gets the full parameter list as the param count
will be set before mavlink starts
2016-04-03 06:49:38 +10:00
Andrew Tridgell
5cc4b20c73
Plane: smooth out final descent for landing
2016-04-02 22:45:51 +11:00
Andrew Tridgell
197cefaaa7
Plane: prevent large nose-down on start of velocity controller
2016-04-02 21:19:06 +11:00
Andrew Tridgell
ae51e51c6a
Plane: use velocity controller for initial quadplane landing
2016-04-02 20:54:01 +11:00
Andrew Tridgell
b1266603a6
Plane: setup immediate pitch limit on quadplane takeoff
...
this prevents a single loop with large pitch down demand
2016-04-02 19:53:48 +11:00
Andrew Tridgell
913cf9dd37
Plane: set min quad throttle to 10%
...
fixes spin when armed
2016-04-01 22:18:51 +11:00
Andrew Tridgell
7f85c14c96
Plane: fixed landing detector for new AP_Motors code
2016-04-01 21:54:32 +11:00
Andrew Tridgell
70679a06aa
Plane: fixed quadplane throttle control in AUTO
2016-04-01 17:29:51 +11:00
Andrew Tridgell
52cc369f15
Plane: fixed typo in AP_Motors conversion
2016-04-01 16:45:01 +11:00
Andrew Tridgell
e7f7afcc4d
Plane: added correct filter defaults
2016-04-01 16:44:49 +11:00
Andrew Tridgell
9cf909607f
Plane: setup reasonable quadplane defaults
2016-04-01 16:40:06 +11:00
Andrew Tridgell
dd6c4d6225
Plane: fixed up parameters for quadplane
...
this fixes quadplane parameters for the new AP_Motors code
2016-04-01 16:17:07 +11:00
Randy Mackay
b96ea15220
Plane: quadplane uses AC_AttitudeControl_Multi
2016-04-01 11:59:30 +09:00
Randy Mackay
41b584ac9e
Plane: fix quadplane qstabilize throttle input
2016-04-01 11:59:30 +09:00
Randy Mackay
52caed2573
Plane: QTUN df messages angle boost field as float
2016-04-01 11:59:30 +09:00
Randy Mackay
70f81ee338
Plane: remove multicopter PID parameters
...
These have been moved to the AC_AttitudeControl class
2016-04-01 11:59:30 +09:00
Randy Mackay
39f795d9fd
Plane: quadplane sets motors desired spool state
2016-04-01 11:59:30 +09:00
Andrew Tridgell
f73c8ab8ed
Plane: allow testing of all motors in sequence
...
this makes for an easier startup test for a quadplane, allowing a
single MAVLink command to test that all motors are working correctly
in the right sequence
2016-04-01 11:09:51 +11:00
Tom Pittenger
6718241dad
cleanup comments
2016-03-29 05:32:28 -07:00
Gustavo Jose de Sousa
a4c099feaa
waf: create program groups for main products
...
Currently we need to build a different binary for each type of copter frame.
This is a preparation for setting all those binaries to a group called
"copter". We create the groups for the rest of the main products for
consistency.
2016-03-26 15:43:08 -03:00
Andrew Tridgell
dc9d87fde3
Plane: prepare for 3.5.2 release
2016-03-26 14:52:17 +11:00
Andrew Tridgell
8a6e5ffe80
Plane: fixed bug in rangefinder landing
...
introduced with QLAND change
2016-03-26 10:06:07 +11:00
Andrew Tridgell
b47b558246
Plane: change code URL
2016-03-25 20:47:03 +11:00
Andrew Tridgell
4d7beab8cc
Plane: added QTUN logging for quadplane
2016-03-25 12:33:19 +11:00
Andrew Tridgell
0a199945a2
Plane: added copter RATE logging for quadplane
2016-03-25 12:13:59 +11:00
Andrew Tridgell
1fa075e7a8
Plane: change default quadplane gains
...
lower filter frequency, higher I gain for roll/pitch
2016-03-25 10:16:15 +11:00
Lucas De Marchi
f258b66627
ArduPlane: Update path locations for parameters
...
Thanks to Francisco Ferreira for noticing that.
2016-03-23 17:50:38 -03:00
Andrew Tridgell
0442c2c659
Plane: prepare for 3.5.1 release
2016-03-21 09:44:52 +11:00
Andrew Tridgell
f0eddd6366
Plane: ensure we always eventually capture a loiter
2016-03-18 13:47:45 +11:00
Andrew Tridgell
30ca9fbb01
Plane: cope with upgrade to shifted indexes for quadplane
2016-03-18 12:33:58 +11:00
Michael du Breuil
35bb6a634e
Plane: Make base_mode armed status depend upon the arming library, not soft armed
2016-03-17 15:16:17 +11:00
Don Gagne
cae7ea0d13
Add @Volatile, @ReadOnly support
2016-03-17 10:58:05 +11:00
Lucas De Marchi
e01d49ff53
ArduPlane: replace header guard with pragma once
2016-03-16 18:40:45 +11:00
Michael du Breuil
0117522998
Plane: Use arming voltage
2016-03-14 09:06:58 -07:00
Andrew Tridgell
89970e4eaa
Plane: support motor_test for quadplanes
2016-03-13 10:05:10 +11:00
Andrew Tridgell
d644474817
Plane: support octaquad planes
2016-03-13 10:04:25 +11:00
Andrew Tridgell
d7d528560d
Plane: don't start summing for loiter until we reach loiter circle
2016-03-10 15:43:28 +11:00
Tom Pittenger
f3638f421e
Plane: fix short loiters exiting early
2016-03-10 15:42:18 +11:00
Michael du Breuil
f60b3fd6c7
Plane: remove "Command recieved" statustext
2016-03-10 15:36:05 +11:00
Andrew Tridgell
f4ccf94dfc
Plane: added QLAND mode
...
for VTOL landing. Use for failsafe as well
2016-03-09 18:20:41 +11:00
Andrew Tridgell
927efa90f8
Plane: fixed log printing of Q modes
2016-03-09 17:29:13 +11:00
Don Gagne
1df7baa5c5
Plane: update quadplane param description increment
2016-03-08 09:27:56 +09:00
Tom Pittenger
ff249788bf
Plane: add a default Navigation option as explained in the param docs
2016-03-03 09:16:26 -08:00
Randy Mackay
f66d5f7a8c
Plane: use ahrs.get_origin instead of ekf.getOriginLLH
...
This ensures we get the origin from the active EKF
2016-03-03 16:20:59 +09:00
Tom Pittenger
75be40ea59
Plane: add LAND_THR_SLEW
2016-03-02 10:54:19 -08:00
Tom Pittenger
ed6aa4ed17
Plane: added throttle limiting via max power (current*voltage)
2016-03-02 10:20:44 -08:00
Tom Pittenger
bf5005103c
Plane: allow loiter waypoints to have a zero lat/lng or alt to mean use current
2016-03-02 08:49:11 -08:00
Tom Pittenger
be3941efdf
Plane: unify loiter mission items to require heading to next wp
...
- except loiter_unlimited because it never exits
2016-03-02 08:48:25 -08:00
Tom Pittenger
9e452838ab
Plane: loiter missions to default to loiter_radius if mission says 0 or 1.
...
- except loiter_unlim which uses RTL_loiter, although I'm not sure why.
2016-02-29 10:12:20 -08:00
Tom Pittenger
ed98617d42
Plane: utilize radius for loiter commands
2016-02-29 06:43:29 -08:00
Andrew Tridgell
f35d05e374
Plane: improved quadplane default gains
...
0.25 is better for an average quadplane for roll/pitch
0.5 is a bit high for accel-z, 0.3 is better
2016-02-29 21:46:27 +11:00
Andrew Tridgell
93ac82e1f6
Plane: write voltage/current much more frequently
2016-02-29 21:24:54 +11:00
Will Sackfield
fabe235130
ArduPlane: initialize the fail_test variable
...
* Clang complains if variables are not initialized
2016-02-29 14:14:37 +11:00
Will Sackfield
5f5035933f
ArduPlane: static cast to uint8 on initialization of struct
...
* clang requires that the casting be explicit
2016-02-29 14:14:37 +11:00
Andrew Tridgell
968f07f583
Plane: allow live quadplane PID tuning
2016-02-29 14:10:32 +11:00
Tom Pittenger
b8fc524954
Plane: enforce expected flight_stage in TECS
2016-02-25 06:37:24 -08:00
Tom Pittenger
993e5b438c
Plane: add to LAND_NEUTRL behavior
...
offer netrual vs disabled outputs
2016-02-25 05:51:44 -08:00
Tom Pittenger
6399d00950
Plane: convert to using static send_statustext
...
- no more MSG_STATUSTEXT
- TODO: replace calls to gcs_send_text and gcs_send_text_fmt to GCS_MAVLINK::send_statustext()
2016-02-24 09:18:06 +11:00
Andrew Tridgell
ad78a31255
Plane: move set_dataflash(0 for static logging
2016-02-24 09:18:05 +11:00
Tom Pittenger
881dabf048
Plane: add missionLoaded arming check fail for mis.len <= 1
2016-02-22 16:19:40 +11:00
Andrew Tridgell
1acf25b6e2
Plane: use set_dataflash()
...
give GCS_MAVLINK a dataflash object for logging text messages
2016-02-22 12:34:32 +11:00
Andrew Tridgell
b84b480086
Plane: added PID tuning for quadplane modes
2016-02-20 20:20:27 +11:00
Andrew Tridgell
e2abaefc44
Plane: check SCHED_LOOP_RATE for quadplane
2016-02-20 20:02:52 +11:00
Lucas De Marchi
0b22b520b8
ArduPlane: remove unused CMAKE define
...
This is a leftover from previos cmake build system.
2016-02-19 19:15:39 -02:00
Peter Barker
ca4017d093
Plane: defines.h should not use defines from config.h
...
config.h includes defines.h early, so defines in config.h are unavailable
2016-02-19 12:34:23 -02:00
Tom Pittenger
d0edfa5dfa
Plane: compile warning fix
...
/ardupilot/ArduPlane/quadplane.cpp:773:107: warning: implicit conversion from 'float' to 'double' when passing argument to function [-Wdouble-promotion]
2016-02-17 14:54:02 -08:00
Tom Pittenger
0b26a34f22
Plane: new param LAND_THEN_NEUTRL
...
// @Description: When enabled, after an autoland and auto-disarm via LAND_DISARMDELAY happens then set all servos to neutral. This is helpful when an aircraft has a rough landing upside down or a crazy angle causing the servos to strain.
2016-02-16 23:40:44 -08:00
Andrew Tridgell
8ecf54bf75
Plane: use throttle slew when in quadplane assisted flight
...
this prevents a sudden throttle change on a petrol motor when
transitioning
2016-02-13 11:38:33 +11:00
Tom Pittenger
a280396645
Plane: nonfunctional change, comment only. Units were in old in comment
2016-02-12 12:14:38 -08:00
Tom Pittenger
c837fbca2f
Plane: 3/3 new param TECS_LAND_SRC for Land Sink Rate Change
...
// @Description: When zero, the flare sink rate (TECS_LAND_SINK) is a fixed sink demand. With this enabled the flare sinkrate will increase/decrease the flare sink demand as you get further beyond the LAND waypoint. Has no effect before the waypoint. This value is added to TECS_LAND_SINK proportional to distance traveled after wp. With an increasing sink rate you can still land in a given distance if you're traveling too fast and cruise passed the land point. A positive value will force the plane to land sooner proportional to distance passed land point. A negative number will tell the plane to slowly climb allowing for a pitched-up stall landing. Recommend 0.2 as initial value.
2016-02-12 11:39:27 -08:00
Tom Pittenger
8ac6343730
Plane: removing mission_cmd in TECS and making it bool is_landing
...
this is reverse-thrust cleanup suggested by Tridge
2016-02-12 11:22:59 -08:00
Tom Pittenger
d04b5e735f
Plane: add SYS_STATUS reverse_motor
...
- helpful to tell GCS to interpret VFR_HUD as negative when bit is enabled
- throttle is sent as abs()
2016-02-11 18:46:01 +11:00
Tom Pittenger
fa53263ca9
Plane: make throttle_percentage() signed
2016-02-11 18:46:01 +11:00
Tom Pittenger
ebec68c55b
Plane: param desc to increase THR_MIN range to include negative thrust
2016-02-10 22:18:07 -08:00
Tom Pittenger
f369899509
Plane: restrict rudder arming where reverse_thrust is enabled and commanding negative
2016-02-10 22:18:06 -08:00
Tom Pittenger
a920b7322d
Plane: more desc for param USE_REV_THRUST
2016-02-10 22:04:50 -08:00
Tom Pittenger
046741d23b
Plane: abort landing at 90% throttle instead of 95%
2016-02-08 21:13:43 -08:00
Tom Pittenger
b098466e87
Plane: reduce redundant logging of STAT from 6 Hz to 5 Hz
...
- STAT log entry was being done every 5 Hz plus at 1 Hz. This removes the 1Hz.
2016-02-08 21:13:12 -08:00
Tom Pittenger
66fcd8f58a
Plane: run is_crashed at 5hz instead of 1hz
2016-02-08 21:13:04 -08:00
Andrew Tridgell
93185be1ff
Plane: reset land_pre_flare on mode change
2016-02-09 14:18:02 +11:00
Tom Pittenger
2e92089ce6
Plane: Reverse Thrust
...
Reverse thrust for controlled landings, even with much steeper approach slopes. This is achieved by allowing throttle demand to go negative to maintain a target airspeed. A Pre-Flare stage was added, triggered by an altitude, to allow for a slower airspeed just before land. That lower airspeed can be near stall.
new params LAND_PF_ALT, LAND_PF_SEC, LAND_PF_ARSPD, USE_REV_THRUST
2016-02-09 14:18:02 +11:00
Tom Pittenger
1cb094f12e
Plane: make throttle signed (pos and neg)
2016-02-09 14:18:02 +11:00
Tom Pittenger
b8d5369ebd
Plane: add flight stage LAND_PREFLARE
2016-02-09 14:18:02 +11:00
Andrew Tridgell
f8d8616598
Plane: support all types of multicopters in quadplane
...
adds Q_FRAME_CLASS for class of multicopter frame
2016-02-08 11:00:19 +11:00
Andrew Tridgell
eeda1b56de
Plane: don't do throttle nudge while in geofence failsafe
...
user stick inputs should not apply when outside fence
2016-02-08 10:59:37 +11:00
Tom Pittenger
9157f634eb
Plane: Add Tom Pittenger to authors list
2016-02-02 10:50:12 +09:00
Andrew Tridgell
379ca5ac00
Plane: prepare for 3.5.0 release
2016-01-30 13:04:51 +11:00
Andrew Tridgell
99847da297
Plane: release 3.5.0beta2
2016-01-29 12:21:39 +11:00
Andrew Tridgell
125af1b856
Plane: added OVERRIDE_SAFETY parameter
2016-01-29 12:20:14 +11:00
Michael du Breuil
bcc939930c
Plane: Only resend the mixer configuration if its changed
2016-01-29 12:20:14 +11:00
Andrew Tridgell
8dba91658c
ArduPlane: log a picture if AP_Camera::control() returns true
2016-01-29 10:01:51 +11:00
Andrew Tridgell
d82c8dcd6d
ArduPlane: update for changed AP_Camera API
2016-01-29 09:19:44 +11:00
Dario Lindo Andres
9bba55f937
ArduPlane: Added precise camera trigger logging
...
Added update_trigger and check_digital_pin functions
added camera trigger precise time mark
detect camera feedback pin status
added support for simple digital pin
included support for digital pin. Already included in
added support for TRIGGER MSG
2016-01-29 09:19:43 +11:00
Jonathan Challinger
9000756c80
Plane: reflect changes to AP_Mount
2016-01-23 10:35:47 +09:00
Gustavo Jose de Sousa
c2e3f05dbf
waf: ardupilotwaf: prefix build context methods with ap_
...
It helps to distinguish between things from waf and things from ardupilotwaf.
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa
e9d3dc9e72
waf: vehicles and antennatracker: use methods from bld
...
Instead of from ardupilotwaf.
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa
cf432e8b3e
waf: ardupilotwaf: rename vehicle_stlib to ap_stlib
...
That function is not only for vehicles.
2016-01-22 20:10:28 -02:00
Gustavo Jose de Sousa
a35c0d48b0
waf: ardupilotwaf: rename program to ap_program
...
Make the rename so that there is no name clashes when defining it as a taskgen
method.
2016-01-22 20:10:28 -02:00
Andrew Tridgell
115d089904
Plane: continue limiting pitch during last phase of transition
...
this prevents a very high pitch demand causing the plane to slow down
to below assist speed
2016-01-20 18:30:48 +11:00
Andrew Tridgell
0223218c39
Plane: use altitude_error for quadplane climb rate assistance
2016-01-20 17:23:36 +11:00
Andrew Tridgell
69b2421563
Plane: ensure TECS is updated at 10Hz only
2016-01-20 17:23:36 +11:00
Andrew Tridgell
3a3afe42be
Plane: don't force disarm on parachute release
...
in auto-throttle modes throttle is suppressed. In pilot controlled
modes pilot can lower throttle
2016-01-19 17:59:53 +11:00
squilter
c7e8a48a55
Plane: deploy parachute as fs action
2016-01-19 17:55:58 +11:00
Andrew Tridgell
23eef91c59
Plane: added parameter RTL_RADIUS
...
this allows the loiter radius for RTL to be controlled separately from
the radius for loiter (as requested by a user)
2016-01-19 15:04:30 +11:00
Andrew Tridgell
3a9ebe3a8a
Plane: added Q_TRAN_PIT_MAX
2016-01-19 11:05:56 +11:00
Andrew Tridgell
7e29761b99
Plane: try to smooth auto VTOL transitions
2016-01-19 11:05:56 +11:00
Andrew Tridgell
4adda34439
Plane: limit pitch to zero during airspeed wait VTOL mode
2016-01-19 11:05:56 +11:00
Lucas De Marchi
7f04e0106e
waf: change binary names
...
APMrover2 -> ardurover
AntennaTracker -> antennatracker
ArduCopter -> arducopter
ArduPlane -> arduplane
2016-01-18 16:56:08 -02:00
Gustavo Jose de Sousa
17e5d99509
waf: allow partial builds with new mavlink as submodule
...
The task generator for the mavlink headers is given a name 'mavlink' and is
added as a dependency to all local static libraries, because all of them use
sources that include mavlink headers. It would be nice to have a good way to
detect sources that use mavlink headers or to declare list of libraries that
use the headers, so that the dependency could be added automatically.
Additionally, there's a minor change in syntax for the task generator: using
strings directly instead of lists.
2016-01-15 07:28:48 +11:00
Andrew Tridgell
eabceb34e1
Plane: update release notes for Pixracer support
2016-01-10 17:43:01 +11:00
Andrew Tridgell
5a24e93cc5
Plane: removed debug code and add quadplane setup checks
2016-01-09 16:26:13 +11:00
Andrew Tridgell
9e3c1fddef
Plane: updated release notes
2016-01-09 15:17:45 +11:00
Andrew Tridgell
ebe1fe0b17
Plane: raise version to 3.5.0beta1
2016-01-09 13:33:27 +11:00
Tom Pittenger
7978872e32
AP_Plane: set path_propportion in TECS
2016-01-09 13:25:02 +11:00
Andrew Tridgell
ee819959b6
Plane: smoother takeoff and land transition in VTOL auto
2016-01-09 11:33:43 +11:00
Andrew Tridgell
2679cb2c50
Plane: improve yaw and position control in takeoff and landing
...
auto VTOL takeoff is always vertical. Yaw rate is zero on takeoff and
during VTOL descent
2016-01-09 10:47:41 +11:00
Andrew Tridgell
0986474eed
Plane: call set_frame_orientation() before Init for quad motors
2016-01-09 07:44:45 +11:00
Andrew Tridgell
52c4715c94
Plane: fixed init bug on low memory for quadplane
2016-01-09 07:38:55 +11:00
Andrew Tridgell
787a6994a4
Plane: added Q_THR_MID parameter
2016-01-09 07:38:55 +11:00
Andrew Tridgell
4da798129e
Plane: fixed zero throttle in QSTABILISE mode
2016-01-09 07:38:55 +11:00
Andrew Tridgell
cfb74406b6
Plane: fixed call to motors->Init() for quadplane
2016-01-09 07:38:55 +11:00
Andrew Tridgell
0a0e191284
Plane: init rc output after quadplane setup
...
this ensures first PWM pulses are correct
2016-01-09 07:38:55 +11:00
Andrew Tridgell
13a71c5cde
Plane: use default motor mapping for channel setup
2016-01-09 07:38:55 +11:00
Andrew Tridgell
b1177521ef
Plane: show throttle level in vtol modes
2016-01-09 07:38:54 +11:00
Andrew Tridgell
71b0d5fb6d
Plane: disable quad motors in TRAINING and ACRO too
2016-01-09 07:38:54 +11:00
Andrew Tridgell
9c5ec5e74b
Plane: allow yaw control in auto-throttle VTOL modes
2016-01-09 07:38:54 +11:00
Andrew Tridgell
70018ee0cb
Plane: fixed final descent for VTOL auto landing
2016-01-09 07:38:54 +11:00
Andrew Tridgell
f259cf4b3f
Plane: added Q_YAW_RATE_MAX parameter
2016-01-09 07:38:54 +11:00
Andrew Tridgell
f5a15fb7c5
Plane: don't yaw quad when disarming
2016-01-09 07:38:54 +11:00
Andrew Tridgell
ecd7d53cfc
Plane: auto set trim on quad motor channels
...
this prevents a reboot causing a motor start
2016-01-09 07:38:54 +11:00
Andrew Tridgell
7010fd27ff
Plane: fixed Q_THR_MAX_PWM parameter
2016-01-09 07:38:54 +11:00
Andrew Tridgell
780d1459f0
Plane: fixed force descend in VTOL land
2016-01-09 07:38:53 +11:00
Andrew Tridgell
4592085963
Plane: better VTOL land detection
2016-01-09 07:38:53 +11:00
Andrew Tridgell
fdd86c10ba
Plane: smoother transitions to auto from VTOL takeoff
2016-01-09 07:38:53 +11:00
Andrew Tridgell
418464ab8c
Plane: added quadplane version of is_flying()
2016-01-09 07:38:53 +11:00
Andrew Tridgell
f068a8c913
Plane: added support for VTOL_TAKEOFF and VTOL_LAND commands
2016-01-09 07:38:53 +11:00
Andrew Tridgell
5e784ddb5c
Plane: consider flying status for throttle_wait
2016-01-09 07:38:53 +11:00
Andrew Tridgell
7afa2a493d
Plane: implement VTOL flight stage
2016-01-09 07:38:53 +11:00
Andrew Tridgell
aab98ff757
Plane: fixed quad yaw assistance during transition timer
2016-01-09 07:38:52 +11:00
Andrew Tridgell
9ae4c3ec99
Plane: mark Q_ENABLE parameter as an enable parameter
2016-01-09 07:38:52 +11:00
Andrew Tridgell
0d6b353bcb
Plane: added quad assistance and auto support for quadplane
2016-01-09 07:38:52 +11:00
Andrew Tridgell
48e1a0641f
Plane: added throttle wait to quadplane
2016-01-09 07:38:52 +11:00
Andrew Tridgell
2983576067
Plane: added QLOITER mode
...
quadplane loiter
2016-01-09 07:38:52 +11:00
Andrew Tridgell
00ca292160
Plane: improved quadplane transition
2016-01-09 07:38:52 +11:00
Andrew Tridgell
ca85c332d6
Plane: separate QSTABILIZE and QHOVER modes
2016-01-09 07:38:52 +11:00
Andrew Tridgell
6468fc6d93
Plane: Initial implementation of quadplane
...
adds "HOVER" mode
2016-01-09 07:38:52 +11:00
Tom Pittenger
6cb20b679d
Plane: add xtrack_error to DF log
2016-01-08 20:16:25 +11:00
Andrew Tridgell
f201552f6d
Plane: always call load_all
...
this ensures defaults file works on first start after erase
2016-01-07 09:32:57 +11:00
Tom Pittenger
607201a9b1
Plane: zero course error for straight bungee launch
...
This fixes the behavior where it uses the heading when switched to AUTO instead of at launch causing a turn just after a bungee launch
2016-01-05 11:20:14 +11:00
Andrew Tridgell
7b6d862316
Plane: support up to 14 rc inputs for all boards
2016-01-04 08:22:35 +11:00
Andrew Tridgell
72edfcd1f6
Plane: update for changed peak hold API
2016-01-02 09:58:32 +11:00
Tom Pittenger
7cde90553d
Plane: new param CRASH_ACC_THRESH
...
@Description: X-Axis deceleration threshold to notify the crash detector that there was a possible impact which helps disarm the motor quickly after a crash. This value should be much higher than normal negative x-axis forces during normal flight, check flight log files to determine the average IMU.x values for your aircraft and motor type. Higher value means less sensative (triggers on higher impact). For electric planes that don't vibrate much during fight a value of 25 is good (that's about 2.5G). For petrol/nitro planes you'll want a higher value. Set to 0 to disable the collision detector.
2016-01-02 09:58:32 +11:00
Tom Pittenger
21205f8b41
Plane: improved crash detection logic and agility
...
- inhibit crash detection warnings when disabled by param so now it can be completely disabled
- reset is_crashed when disabled by param
- fixed pre-takeoff detection bug by adding in_preLaunch_flight_stage() where we are actually in FLIGHT_NORMAL instead of FLIGHT_TAKEOFF during setup of bungee launches. This now detects if we're in that state
- simplified the use of been_auto_flying to check across all flight stages. before it was excluded to handle hand-launches which can now be detected with in_preLaunch_flight_stage()
- added impact detector timer to clamp is_flying a few seconds after an impact
- logging new impact detector as "STAT.Hit"
2016-01-02 09:58:31 +11:00
Tom Pittenger
3b06260358
Plane: refactored interface
...
- added guided mode handling
- now handles gracefully a manual mode changes during evasion
2015-12-31 15:36:49 +11:00
Tom Pittenger
0bfe235d6b
Plane: use abort landing logic with mavlink GO_AROUND cmd
...
- also enabled use of CMD_DO_GO_AROUND altitude param
2015-12-31 15:34:41 +11:00
Tom Pittenger
d18c25a0f9
Plane: add item_reached_msg to GUIDED
2015-12-31 15:31:39 +11:00
pepevalbe
9743e32f70
Plane: added group parameter for AP_Notify library
2015-12-31 11:33:05 +09:00
Siddharth Bharat Purohit
78566bda36
Plane: wire up accel calibrator for plane
2015-12-29 10:46:35 -08:00
Andrew Tridgell
7a5808276e
Plane: fixed two build warnings with clang
2015-12-29 18:52:00 +11:00
Lucas De Marchi
a096703b06
Global: don't link with AP_Progmem
...
AP_Progmem is not used anymore.
2015-12-27 15:58:12 -02:00
Andrew Tridgell
513d5c17b9
Plane: allow for settable main loop rate
2015-12-27 14:57:19 +09:00
Andrew Tridgell
58d9b030ea
Plane: update for Hz based AP_Scheduler
2015-12-27 14:57:08 +09:00
Don Gagne
eab8a8679d
ArduPlane: fix invalid Range meta data
2015-12-27 16:10:44 +11:00
Andre Kjellstrup
6f5387c48d
ArduPlane: Camera options for better camera control
...
All on one because they would not pass autotest if split up.
2015-12-18 18:16:11 +11:00
Jonathan Challinger
05eb723429
Plane: reflect renamed function in AP_AHRS
2015-12-18 18:08:37 +11:00
Julien BERAUD
8e66ce6f27
Plane: Update optical flow declaration
...
Pass ahrs as param
2015-12-18 17:56:06 +11:00
Gustavo Jose de Sousa
dc81a2410e
waf: use single entry point for make wrappers
2015-12-10 10:40:34 +09:00
Michael du Breuil
4b40a884e9
Plane: Don't disable compass checks for HIL mode unless actually in hil mode
2015-12-08 05:07:46 -07:00
Tom Pittenger
113961b66e
Plane: compiler warning - double promotion
2015-12-07 15:49:55 +09:00
DonLakeFlyer
7479bc5734
Plane: return success or failure of get home position
2015-12-07 12:33:23 +09:00
Lucas De Marchi
1308dd888f
ArduPlane: remove unused AP_ADC_AnalogSource
2015-12-03 13:32:45 +11:00
Peter Barker
84b53e58d5
Plane: DataFlash-over-MAVLink support
2015-12-03 13:21:52 +11:00
Peter Barker
574f95bd76
Plane: support multiple simultaneous backends
2015-12-03 13:21:51 +11:00
Gustavo Jose de Sousa
7837bbfd81
waf: add a make wrappers
2015-12-03 07:54:32 +11:00
Gustavo Jose de Sousa
3100736c9f
waf: add missing AP_ADSB library to ArduPlane
2015-12-03 07:54:32 +11:00
Lucas De Marchi
1cdc233bd2
waf: add missing AP_Parachute library to ArduPlane
2015-12-03 07:54:31 +11:00
Caio Marcelo de Oliveira Filho
6e7b73610d
waf: add waf support
2015-12-03 07:54:30 +11:00
Lucas De Marchi
8eb0b559f2
ArduPlane: avoid comparison between signed and unsigned
2015-12-01 16:28:18 -02:00
Lucas De Marchi
2591261af6
Global: rename min and max macros to uppercase
...
The problem with using min() and max() is that they conflict with some
C++ headers. Name the macros in uppercase instead. We may go case by
case later converting them to be typesafe.
Changes generated with:
git ls-files '*.cpp' '*.h' -z | xargs -0 sed -i 's/\([^_[:alnum:]]\)max(/\1MAX(/g'
git ls-files '*.cpp' '*.h' -z | xargs -0 sed -i 's/\([^_[:alnum:]]\)min(/\1MIN(/g'
2015-12-01 16:28:09 -02:00
Tom Pittenger
4c1a70eb66
Plane: print start of land approach
2015-12-01 07:05:07 +11:00
Luis Vale Gonçalves
4722a388b9
Plane: Text revisions
...
text revisions
2015-11-27 18:54:30 +11:00
Luis Vale Gonçalves
b7f3782e4e
Plane: Text revisions
...
text revisions
2015-11-26 07:56:52 +11:00
Tom Pittenger
eaad72c192
Plane: Add support for handing ADS-B traffic
...
- parse MAVLINK_MSG_ADSB_VEHICLE msg
- new 1Hz adsb_update task to compare list against for threat detection
- perform object avoidance via loiter or loiter_and_descend. More methods are welcome!
2015-11-23 19:45:40 +11:00
Tom Pittenger
d8d1343735
Plane: include AP_ADSB library in build for Plane
2015-11-23 19:45:40 +11:00
Andre Kjellstrup
db16b94e7f
Plane: update RTL altitude param description
2015-11-21 12:44:34 +09:00
Caio Marcelo de Oliveira Filho
c8888329e1
Plane: use millis/micros/panic functions
2015-11-20 12:26:40 +09:00
Andrew Tridgell
9108179322
Plane: fixed build for SITL changes
2015-11-16 17:57:36 +11:00
Andrew Tridgell
8f4ce7f20b
build: removed all nocore.inoflag files
...
these were APM2 specific
2015-11-16 08:05:17 +11:00
lvale
e18181e5c2
Plane: Uniformization of severities
...
Plane uniformization of severities
2015-11-09 09:38:25 +11:00
Tom Pittenger
5c3486d003
Plane: power-off rangefinder at high alt without terrain avail
...
- moved terrain alt rangefinder power-off trigger from trerrain thread to rangefinder thread
- allow rangefinder to power-off using baro if terrain data not available
2015-11-09 08:36:41 +11:00
Tom Pittenger
178bbb080b
Plane: improve crosstrack error while navigating to loiter point
...
There is no crosstrack concept in the loiter navigation so when going from waypoint to loiter you will not converge onto the line between those two points. This commit adds crosstracking by performing normal waypoint navigation until you get near it.
2015-11-09 08:25:26 +11:00
Lucas De Marchi
e5595ff11c
ArduPlane: don't use avr include dir for tags
2015-11-04 12:14:16 +11:00
Lucas De Marchi
0151853c21
ArduPlane: remove check for MAVLINK_COMM_NUM_BUFFERS
2015-11-04 12:14:15 +11:00
Lucas De Marchi
c55c07eaf6
ArduPlane: remove check for AVR CPUs
...
Remove the checks for HAL_CPU_CLASS > HAL_CPU_CLASS_16 and
HAL_CPU_CLASS >= HAL_CPU_CLASS_75. Corresponding dead code will be
removed on separate commits.
2015-11-04 12:14:15 +11:00
Lucas De Marchi
d1be74c87e
ArduPlane: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1
2015-11-04 12:14:13 +11:00
Lucas De Marchi
cfe6e209db
ArduPlane: fix wrong printf format for printf
...
"%S" is used for wide string, but we are passing a char*. Use lowercase
in this case to remove warnings like this:
libraries/AP_InertialSensor/AP_InertialSensor.cpp: In member function
'bool AP_InertialSensor::calibrate_accel(AP_InertialSensor_UserInteract*, float&, float&)':
libraries/AP_InertialSensor/AP_InertialSensor.cpp:620:61: warning:
format '%S' expects argument of type 'wchar_t*', but argument 3 has type 'const char*' [-Wformat=]
"Place vehicle %S and press any key.\n", msg);
^
2015-10-30 14:35:43 +09:00
Lucas De Marchi
d40349d6ae
ArduPlane: fix wrong printf format for 32 bits
...
Heading is a 32 bits value, so use %d.
2015-10-30 14:35:38 +09:00
Lucas De Marchi
a6fd94c6fe
ArduPlane: fix wrong printf format for 32 bits
...
"micros() - before" doesn't return a long value. Use "%u".
2015-10-30 14:35:35 +09:00
Lucas De Marchi
5244559010
Minimize AP_Progmem.h includes
...
Most of AP_Progmem is already gone so we can stop including it in most
of the places. The only places that need it are the ones using
pgm_read_*() APIs.
In some cases the header needed to be added in the .cpp since it was
removed from the .h to reduce scope. In those cases the headers were
also reordered.
2015-10-30 14:35:32 +09:00
Lucas De Marchi
1b07dabeb7
Replace prog_char and prog_char_t with char
...
prog_char and prog_char_t are now the same as char on supported
platforms. So, just change all places that use them and prefer char
instead.
AVR-specific places were not changed.
2015-10-30 14:35:30 +09:00
Lucas De Marchi
4ab9821624
Replace use of Log_Write_Message_P() with Log_Write_Message()
2015-10-30 14:35:28 +09:00
Lucas De Marchi
20c6ffc5e3
Replace use of UARTDriver::printf_P() with UARTDriver::printf()
...
This also starts to show warnings on places that were already using
wrong printf format strings.
2015-10-30 14:35:25 +09:00
Lucas De Marchi
6f4904189b
Replace use of println_P() with println()
2015-10-30 14:35:22 +09:00
Lucas De Marchi
a964ac38ec
Replace use of print_P() with print()
2015-10-30 14:35:21 +09:00
Lucas De Marchi
89fc4f4b62
Replace use of send_text_P() with send_text()
2015-10-30 14:35:17 +09:00
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