Andrew Tridgell
8e656a60f2
APM: only copy manual channels in failsafe
...
this prevents non-manual channels changing value away from the trim
value on startup
2012-09-16 15:51:01 +10:00
Andrew Tridgell
cf9dd9281c
APM: ensure DO_SET_SERVO channels are enabled
2012-09-16 15:08:14 +10:00
Andrew Tridgell
1e51988ecc
APM: allow update of last waypoint
...
fixed off by one error
2012-09-16 15:06:26 +10:00
Michael Oborne
f9c11627a5
fix AP attitude hil - with randys help
2012-09-15 16:47:18 +08:00
Andrew Tridgell
0d780baa00
APM: prepare for 2.62 release
2012-09-13 12:02:18 +10:00
Andrew Tridgell
9603236de4
APM: fixed elevon mixing
...
this was broken in 2.61
2012-09-13 12:01:40 +10:00
Andrew Tridgell
4f504b0729
APM: show real raw RC input, not mixed input
...
this makes it easier to diagnose elevon mixing issues
2012-09-13 12:00:49 +10:00
Andrew Tridgell
4a942bc45d
APM: report throttle and ground speed mission changes
2012-09-12 13:09:32 +10:00
Andrew Tridgell
972b8df052
APM: allow for landing pitch control until final stage
2012-09-12 13:09:16 +10:00
Andrew Tridgell
7a49515ee3
APM: fixed roll in landing approach
2012-09-12 11:53:17 +10:00
Andrew Tridgell
77926a6965
APM: switch to Randys new IMU rate control method
...
this drives the speed of the 50Hz loop by the number of samples
accumulated in the IMU. This should give much more consistent timing
in DCM.
Thanks to Randy for introducing this scheme in ArduCopter!
2012-09-11 16:39:36 +10:00
Andrew Tridgell
0a9070e4fe
APM: removed the GPS_enabled flag
...
this fixes using GPS_PROTOCOL to specify a specific GPS with a GPS
that takes a few updates before it works (eg. needing baud rate
changes).
This makes it easier to use an APM1-1280 with more features enabled
2012-09-11 13:37:34 +10:00
Andrew Tridgell
72e9c31c17
APM: added speed scaling to wheeled steering
...
this allows for a larger amount of steering control at low speeds
without causing osciallation after takeoff
2012-09-11 13:37:34 +10:00
Andrew Tridgell
29344e688d
APM: reboot only works on the APM2
2012-09-10 11:50:48 +10:00
Andrew Tridgell
d08bd4214b
APM: added support for MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN
...
this allows for remote reboot of APM
2012-09-10 11:42:30 +10:00
Andrew Tridgell
57ac3f59f2
APM: fixed fetch of relative altitude waypoints
...
when we fetch relative altitude waypoints from APM to a file, we need
to preserve the altitude
2012-09-10 09:40:29 +10:00
Andrew Tridgell
b374f604d6
APM: simplify radio_trim code
...
this removes the duplicate code. Throttle trim is not changed.
2012-09-09 19:39:09 +10:00
Andrew Tridgell
a90182b9d8
APM: fixed throttle nudging
...
The nudge value depended on RC3_TRIM, which is not a reliable
value. It tried to only take effect when the throttle stick was above
50%, but if RC3_TRIM was high for some reason (say 1500) then it would
actually depress the throttle by a large amount, which could cause the
plane to stall.
This also adds a boolean option THROTTLE_NUDGE to allow disabling of
throttle nudging
2012-09-09 19:39:04 +10:00
Andrew Tridgell
966c1988c3
APM: preparing for 2.61 release
2012-09-08 18:36:17 +10:00
Andrew Tridgell
95e4316c72
APM: updated for new RC_Channel_aux API
2012-09-08 15:14:41 +10:00
Andrew Tridgell
c50103ac35
APM: added mtk and mtk16 build targets
...
useful for testing non-auto gps detection
2012-09-08 12:43:36 +10:00
Andrew Tridgell
39346eac32
APM: prevent crosstrack from takeoff point after takeoff completion
2012-09-08 11:37:14 +10:00
Andrew Tridgell
4219cb55ce
APM: use ahrs.airspeed_estimate() in two more places
...
this applies the wind constraint
2012-09-08 11:37:11 +10:00
Andrew Tridgell
9ffeecdf2f
APM: fixed some compiler warnings
2012-09-08 10:14:32 +10:00
Andrew Tridgell
63ca982f21
APM: tidy up an if() statement
2012-09-08 10:14:20 +10:00
Andrew Tridgell
b2a74951d1
APM: added RUDDER_STEER option
...
when enabled, this uses only the rudder to steer during takeoff and
landing, using aileron only for levelling
2012-09-08 10:07:03 +10:00
Andrew Tridgell
9b2a2b2c2e
APM: support DO_SET_SERVO command
2012-09-08 10:06:53 +10:00
Andrew Tridgell
12c5e00db9
APM: added XTRK_MIN_DIST option
...
this allows you to disable crosstrack correction on short legs
2012-09-08 10:06:44 +10:00
Andrew Tridgell
88f4a3bc4a
APM: allow serial buffer size to be configured
...
very useful for packet forwarding setups
2012-09-08 10:06:35 +10:00
Andrew Tridgell
880404d062
APM: added forwarding of unknown MAVLink types
2012-09-08 10:06:15 +10:00
Andrew Tridgell
a71cee4579
APM: accumulate mag readings during spare cycles in ArduPlane
...
With this change we average over 100 mag readings per compass.read()
call, which means we are reading the compass at over 1kHz instead of
10Hz. The noise reduction is huge.
2012-09-08 10:05:58 +10:00
Michael Oborne
35a8bf961c
AP fix takeoff alt issue
...
issue 733
2012-09-06 20:19:12 +08:00
Pat Hickey
b52738662a
APM_Config.h for ArduCopter/ArduPlane: better descr of APM2_BETA_HARDWARE
2012-09-05 15:36:57 -07:00
Andrew Tridgell
0be8349678
APM: obey pitch limits in FBWA as well
...
this means pitch limits are constrained by LIM_PITCH_MIN and
LIM_PITCH_MAX
2012-08-30 20:15:42 +10:00
Andrew Tridgell
ae74db15e1
APM: fixed docs for LIM_PITCH_MIN
2012-08-30 14:55:08 +10:00
Michael Oborne
188cc69008
AP fix attitude hil.
...
we where waiting on new_data that had no way of getting there.
2012-08-30 07:54:20 +08:00
Andrew Tridgell
332ad921cc
APM: added new TELEM_DELAY parameter
...
number of seconds to delay telemetry
2012-08-30 08:59:39 +10:00
Craig Elder
3403e1b78d
Arducopter: increased MAVLINK delay to 6s to reduce the chance of xBee bricking
...
Arduplane: increased MAVLINK delay to 6s to reduce the chance of xBee bricking
Ardurover: increased MAVLINK delay to 6s to reduce the chance of xBee bricking
2012-08-28 20:09:10 -07:00
Andrew Tridgell
7ab7770c3d
APM: added the ability to forcibly crash the plane on OBC failsafe breach
...
this allows a user to setup the OBC failsafe system to forcibly crash
the plane (surfaces at limits, zero throttle) when the failsafe system
triggers. This is to allow APM to be used in the Outback Challenge. In
the OBC an external failsafe board also does this using the heartbeat
control pin, so this is an extra safety mechanism.
To prevent users accidentially triggering a crash, this code only
activates if FS_TERM_ACTION is set to to the magic value 42.
2012-08-28 20:18:24 +10:00
Andrew Tridgell
3f54b83238
APM: added ALT_CTRL_ALG parameter
...
this allows you to select different altitude control algorithms. The
current choices are for the default (automatic based on if airspeed is
available), or to force a non-airspeed algorithm
The idea is to make it possible to use airspeed for some things (like
wind speed, speed scaling) but not for alt control
2012-08-28 20:18:24 +10:00
Andrew Tridgell
16dd911547
APM: fixed another problem with DO_JUMP
...
off by one error!
2012-08-28 20:18:24 +10:00
Andrew Tridgell
4945d66c80
APM: check for geofence fence total of 0
2012-08-28 20:18:24 +10:00
Andrew Tridgell
fc942b2ff9
APM: removed reset_I() and instead auto-reset integrator in PID library
...
this prevents us resetting key integrators on waypoint change, while
still preventing old integrators being used when a PID starts to be
used again
2012-08-28 20:18:23 +10:00
Andrew Tridgell
ac2ad44c3c
APM: cleanup throttle suppression code and don't use airspeed to unsupress
...
this removes the throttle suppression when any of the conditions are
met once, as otherwise flying slow below 10m could zero the throttle.
It also removes the use of airspeed for disabling throttle
supression. Otherwise a strong gust of wind can cause ArduPlane to
try to takeoff!
2012-08-28 20:18:23 +10:00
Amilcar Lucas
90aa5f2004
ArduPlane: Fix 1280 builds
...
Added fine-granular features in the AP_Mount class to reduce code size on 1280 chips
Remove camera trigger support on 1280 chips
2012-08-27 01:33:45 +02:00
Amilcar Lucas
25916e9a92
Improve comments, no functional changes
2012-08-27 01:32:27 +02:00
Andrew Tridgell
a6a583650c
APM: report estimated airspeed if airspeed not available
2012-08-25 17:49:26 +10:00
Andrew Tridgell
2b30561171
APM: use airspeed estimate for speed scaling if available
2012-08-25 17:49:26 +10:00
Andrew Tridgell
9cf8cc590f
APM: added XTRK_USE_WIND parameter
...
when enabled this will use the wind estimation code to adjust the
navigation bearing, allowing the navigation code to cope with much
higher levels of wind while using a compass
2012-08-25 17:49:26 +10:00
Andrew Tridgell
f1ba9c08e5
APM: support forcing MANUAL of FBWA mode over MAVLink
2012-08-24 15:18:22 +10:00
Andrew Tridgell
1e6ce649ad
APM: ensure fence_total is positive
...
thanks to David Buzz for the suggestion
2012-08-24 14:56:46 +10:00
Andrew Tridgell
fbbd94118f
APM: fixed wheeled takeoff with Jons new controllers
2012-08-22 17:34:01 +10:00
Andrew Tridgell
517e6b2b9d
APM: prepare for ArduPlane 2.60
2012-08-22 16:28:38 +10:00
Andrew Tridgell
d091311196
APM: removed factor of 0.5 in non-airspeed takeoff pitch
...
this limited the pitch far below the specified target pitch
2012-08-22 16:28:38 +10:00
Andrew Tridgell
487b909189
APM: ensure takeoff_complete is reset
2012-08-22 16:17:55 +10:00
Andrew Tridgell
cf432c0ae0
APM: fixed bug in do_jump() navigation
...
this avoids a problem where the jump can cause the next command to be
reset to 0
2012-08-22 15:29:46 +10:00
Andrew Tridgell
56ada1a69c
APM: added RSSI to RC_CHANNELS_RAW as well
...
and prevent double read
2012-08-22 13:58:25 +10:00
Andrew Tridgell
279e942581
APM: added RSSI in raw message too
2012-08-22 13:48:09 +10:00
Andrew Tridgell
e74dab122a
APM: added RECEIVER_RSSI_PIN option
...
this allows for the receiver RSSI to be sent over MAVLink
Thanks to Burt Green for the suggestion
2012-08-22 13:33:12 +10:00
Andrew Tridgell
703ca469fe
APM: added optional use of new APM_Control library
...
thanks to Jon Challinger for the new controllers!
2012-08-22 12:45:14 +10:00
Andrew Tridgell
2bc2460c07
APM: optional build with new controller libs
2012-08-22 12:39:07 +10:00
uncrustify
56b7f1b031
uncrustify ArduPlane/Parameters.h
2012-08-21 19:19:51 -07:00
uncrustify
e4badcccab
uncrustify ArduPlane/config.h
2012-08-21 19:19:51 -07:00
uncrustify
a165644d1a
uncrustify ArduPlane/planner.pde
2012-08-21 19:19:51 -07:00
uncrustify
09d5af6920
uncrustify ArduPlane/system.pde
2012-08-21 19:19:51 -07:00
uncrustify
e73834d6eb
uncrustify ArduPlane/test.pde
2012-08-21 19:19:51 -07:00
uncrustify
fb727f65ac
uncrustify ArduPlane/setup.pde
2012-08-21 19:19:51 -07:00
uncrustify
5e8e33f0d7
uncrustify ArduPlane/GCS_Mavlink.pde
2012-08-21 19:19:51 -07:00
uncrustify
5e913c72c4
uncrustify ArduPlane/ArduPlane.pde
2012-08-21 19:19:51 -07:00
uncrustify
57f1bd123f
uncrustify ArduPlane/commands.pde
2012-08-21 19:19:51 -07:00
uncrustify
f2c523b6f0
uncrustify ArduPlane/radio.pde
2012-08-21 19:19:50 -07:00
uncrustify
e5ac3bdc65
uncrustify ArduPlane/Attitude.pde
2012-08-21 19:19:50 -07:00
uncrustify
ce04d62815
uncrustify ArduPlane/Parameters.pde
2012-08-21 19:19:50 -07:00
uncrustify
4a44a67180
uncrustify ArduPlane/Log.pde
2012-08-21 19:19:50 -07:00
uncrustify
8ecd6c4dc1
uncrustify ArduPlane/defines.h
2012-08-21 18:59:05 -07:00
uncrustify
321e7c96c4
uncrustify ArduPlane/APM_Config.h
2012-08-21 18:59:05 -07:00
uncrustify
11ad3c3d58
uncrustify ArduPlane/GCS.h
2012-08-21 18:58:53 -07:00
uncrustify
944dffc50a
uncrustify ArduPlane/sensors.pde
2012-08-21 18:58:40 -07:00
uncrustify
956b101189
uncrustify ArduPlane/geofence.pde
2012-08-21 18:58:31 -07:00
uncrustify
4517ca8124
uncrustify ArduPlane/failsafe.pde
2012-08-21 18:58:24 -07:00
uncrustify
a7ffcfd037
uncrustify ArduPlane/commands_process.pde
2012-08-21 18:58:17 -07:00
uncrustify
6fd4a68c5c
uncrustify ArduPlane/navigation.pde
2012-08-21 18:58:17 -07:00
uncrustify
8e3fe50338
uncrustify ArduPlane/commands_logic.pde
2012-08-21 18:58:11 -07:00
uncrustify
58381e0d8e
uncrustify ArduPlane/events.pde
2012-08-21 18:57:59 -07:00
uncrustify
3f54fb67d1
uncrustify ArduPlane/climb_rate.pde
2012-08-21 18:57:21 -07:00
uncrustify
3938011f39
uncrustify ArduPlane/control_modes.pde
2012-08-21 18:57:21 -07:00
Andrew Tridgell
5d29d5e5a1
APM: removed DMP support from ArduPlane
...
Without centripetal correction the DMP code will almost certainly
crash a plane
2012-08-22 11:46:35 +10:00
Andrew Tridgell
bd6581c523
AHRS: removed Quaternion build support from APM/ACM/rover
2012-08-22 10:42:21 +10:00
Andrew Tridgell
1ec772f69c
AHRS: fixed reference to AHRS var_info for APM and ACM
2012-08-21 15:58:32 +10:00
Andrew Tridgell
9fbdcdcf84
APM: reset steering PID integrator in reset_I()
2012-08-21 15:01:01 +10:00
rmackay9
b80a3943aa
ArduCopter, ArduPilot: revert mavlink delay callback to be "unsigned long"
2012-08-18 20:34:41 +09:00
rmackay9
ac240dffd3
ArduPlane: more "int" to "int16_t" and added cast to (int) in printf statements.
...
Also modified dump_log function's last_log_num to be int16_t which matches return type from DataFlash's find_last_log method.
2012-08-18 18:55:14 +09:00
rmackay9
e5d8efdb7e
ArduPlane: replaced many "int" with "int16_t", "long" with "int32_t"
2012-08-18 18:26:13 +09:00
rmackay9
e52e22bcab
ArduPlane: commented out two unused variables to remove compiler warning
2012-08-18 13:20:34 +09:00
Andrew Tridgell
8853a104f0
APM: fixed SITL build
2012-08-17 16:28:45 +10:00
Andrew Tridgell
2fb8a13ac6
APM: added parameter FBWB_ELEV_REV
...
this fixes issue 343
2012-08-17 15:04:53 +10:00
Andrew Tridgell
50e2458df0
math: more abs() fixes
...
abs() is 16 bit
2012-08-16 15:17:42 +10:00
Andrew Tridgell
9c3c1c4f54
APM: fixed hil build
2012-08-16 12:53:37 +10:00
Andrew Tridgell
5ebcf425cf
APM: allow telemetry send during parameter and waypoint fetch
...
this slows down telemetry by a factor of 4 during parameter or
waypoint transmit. That ensures that mode changes and gps position are
still updated during a long parameter fetch
2012-08-16 10:50:12 +10:00
Andrew Tridgell
0a7d8a4933
MAVLink: enable fetching of single parameters
...
this makes it possible for the GCS to fetch a single parameter by
name, which is useful for parameters that change in flight
2012-08-16 10:14:46 +10:00