Commit Graph

2519 Commits

Author SHA1 Message Date
Randy Mackay
6d8e760582 Plane: report gyro unhealthy if failed calibration 2014-10-09 10:00:17 +09:00
Andrew Tridgell
71d786187e Plane: make auto takeoff independent of compass
this solves a problem of poor initial yaw due to poor compass offsets
causing a takeoff to not be in the direction the plane is pointing. A
summed gyro is used until the GPS speed is above 5m/s for 2 seconds,
then the GPS heading corrected by the summed gyro error is used for L1
based navigation for the rest of the takeoff
2014-10-07 07:17:46 +11:00
Randy Mackay
b17c6d3368 Plane: only report ahrs unhealthy after initialisation 2014-10-02 14:41:28 +09:00
Andrew Tridgell
c4b17b74e2 Plane: use handle_set_mode() 2014-10-01 14:19:20 +10:00
Randy Mackay
82225de6fa Plane: allow GCS to turn safety switch on/off 2014-10-01 13:11:50 +10:00
Randy Mackay
7a6b55368e Plane: set sys_status motor outputs bit from safety switch 2014-10-01 13:09:58 +10:00
Randy Mackay
6d3acba04c Plane: check target of set-mode request from GCS
Issue discovered and fix contributed by Deadolous
2014-09-30 15:19:25 +10:00
Andrew Tridgell
4b01cee330 Plane: send heartbeat to AFS when calibrating sensors 2014-09-24 12:02:39 +10:00
Andrew Tridgell
1fa03a49c9 Plane: disable the CLI if AFS failsafe enabled on APM2
the flash space is a bit too low for both CLI and AFS
2014-09-24 12:02:38 +10:00
Andrew Tridgell
e555b9a855 Plane: improved WP_RADIUS docs 2014-09-12 11:57:43 +10:00
Andrew Tridgell
7b4181dc14 Plane: prepare for 3.1.1 release 2014-09-12 11:07:26 +10:00
Andrew Tridgell
7aad03df28 Plane: minor doc update for fence auto enable 2014-09-11 18:58:54 +10:00
Andrew Tridgell
f3d1461d7a Plane: improve the short and long failsafe docs
thanks to Mark Jacobsen for the analysis!
2014-09-10 06:56:01 +10:00
Andrew Tridgell
bf80a2485f Plane: support acceptance radius for waypoints 2014-09-03 12:38:30 +10:00
Randy Mackay
c2cdc0468b Plane: individual accel and gyro status to GCS 2014-09-03 11:22:53 +09:00
Andrew Tridgell
21ed86004a Plane: raise the default WP radius
with L1 a large radius doesn't mean it turns too early
2014-08-30 07:43:11 +10:00
Andrew Tridgell
292517b88b Plane: only override takeoff/land flaps if non-zero 2014-08-30 05:16:42 +10:00
Andrew Tridgell
5c96838473 Plane: allow zero throttle in LAND_STAGE_FINAL 2014-08-30 05:15:25 +10:00
Andrew Tridgell
5af4cefff3 Plane: added FLAP_SLEWRATE parameter
makes for smoother transition of flaps
2014-08-29 20:31:03 +10:00
Andrew Tridgell
f66039c9b4 Plane: added TKOFF_FLAP_PCNT and LAND_FLAP_PERCENT
easier control of flaps for takeoff and landing
2014-08-29 20:31:03 +10:00
Andrew Tridgell
b94bc0c243 Plane: don't use ground steering until flare in landing
we need to be able to guide the plane fully in the landing approach
2014-08-29 20:31:03 +10:00
Andrew Tridgell
988662027e Plane: moved LAND_PITCH_CD into TECS 2014-08-27 20:13:19 +10:00
Andrew Tridgell
186806c768 Plane: lowpass the rangefinder correction, not height
this should produce less lag as the rangefinder correction should be
changing much less
2014-08-27 18:25:17 +10:00
Andrew Tridgell
24622030b4 Plane: improved landing glide slope
we project a point 500m past the landing point to prevent
discontinuites close to the landing point
2014-08-27 17:14:19 +10:00
Andrew Tridgell
a6ee46086c Plane: allow continued use of rangefinder data for 5s after loss of contact
this allows short outages to be ridden out
2014-08-27 17:14:19 +10:00
Andrew Tridgell
50f492a69f Plane: added RNGFND_LANDING option
this allows the use of a rangefinder for landing flare and landing
approach
2014-08-27 17:14:19 +10:00
Andrew Tridgell
b6319a9d19 Plane: keep an estimate of the rangefinder altitude
only accept data when we have had 10 samples in a row in range at 50Hz
2014-08-27 17:14:19 +10:00
Andrew Tridgell
d0b6676547 Plane: do landing flare if past landing point
this helps prevent us keeping the throttle on after we've landed if
the baro has drifted enough that we think we are not yet at the flare altitude
2014-08-27 17:14:19 +10:00
Andrew Tridgell
b102c9d19c Plane: use ground steering logic for final stage of auto landing
this should improve runway tracking
2014-08-27 17:14:19 +10:00
Andrew Tridgell
5f3ac159ba Plane: start working towards 3.1.1 2014-08-27 17:14:19 +10:00
Andrew Tridgell
e880de67ed Plane: prepare for 3.1.0 release 2014-08-26 06:20:37 +10:00
Andrew Tridgell
6e5344bc8d Plane: prepare beta4 2014-08-25 22:20:52 +10:00
Andrew Tridgell
cf0741f6fd Plane: don't do failsafe passthru with no RC input
thanks to Klrill-ka for the suggestion

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

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

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

Many thanks to Marco for finding this!
2014-04-23 21:18:11 +10:00
Andrew Tridgell
e15350f756 Plane: use get_current_nav_index() 2014-04-22 11:40:18 +10:00
Andrew Tridgell
12012c9530 Plane: fixed a potential numerical error close to waypoints 2014-04-21 18:49:30 +10:00
Andrew Tridgell
0de41f0ce1 Plane: set AHRS vehicle class 2014-04-21 18:13:12 +10:00
Andrew Tridgell
994ce50714 Plane: setup failsafe values for OBC in failsafe callback 2014-04-21 11:52:54 +10:00
Andrew Tridgell
2ab4ffef45 Plane: use new APM_OBC API 2014-04-21 11:52:53 +10:00
Andrew Tridgell
41100a13c3 Plane: setup failsafe trim values for if FMU firmware dies 2014-04-21 08:37:56 +10:00
Randy Mackay
2a298d0ea4 Plane: remove RALLY_WP_SIZE definition 2014-04-19 15:00:32 +09:00
Michael Day
568fc9e6c9 Plane: Now using AP_Rally library. 2014-04-19 09:16:05 +10:00
Andrew Tridgell
d30c4ffe80 Plane: added AUTOTUNE_LEVEL parameter 2014-04-13 22:12:27 +10:00
Andrew Tridgell
8a20130ca8 Plane: changed for APM_Control API 2014-04-12 18:22:01 +10:00
Andrew Tridgell
1bce4239a3 Plane: added AUTOTUNE flight mode
this is just like FBWA, but with automatic roll/pitch tuning
2014-04-12 14:12:14 +10:00
Andrew Tridgell
d37f1a1376 Plane: updates for OBC API change 2014-04-11 16:47:40 +10:00
Andrew Tridgell
4d990fa6c8 Plane: ensure we log both GPS at the time we receive a msg 2014-04-10 10:29:53 +10:00
Andrew Tridgell
e79f1d0940 Plane: prepare for release of 3.0.1 2014-04-10 07:52:36 +10:00
Andrew Tridgell
aabcc2bb35 Plane: fixed a bug in PWM based throttle failsafe
many thanks to Sam Tabor for finding this bug!
2014-04-10 07:43:48 +10:00
Andrew Tridgell
affcea5342 Plane: fixed typo in VRBrain port 2014-04-08 21:22:05 +10:00
Emile Castelnuovo
a111d174c1 Plane: added VRBRAIN #defines and #includes 2014-04-08 16:19:20 +10:00
Andrew Tridgell
d0331e0f25 Plane: spelling fixes 2014-04-08 09:49:25 +10:00
Andrew Tridgell
d2d9ad5bbd Plane: prepare for 3.0.0 release 2014-04-08 09:46:30 +10:00
Andrew Tridgell
c66008cdfa Plane: fixed displayname for FENCE_AUTOENABLE 2014-04-08 09:13:39 +10:00
Andrew Tridgell
95764f4d78 Plane: fixed allocation and reporting of fence status
prevent a false fence active report on boot, and prevent the fence
from loading when it is not needed. This saves about 200 bytes of ram
on APM2 for most users
2014-04-07 17:28:03 +10:00
Michael Oborne
3fe9486868 Plane: fix auto doc unit on GROUND_STEER_DPS 2014-04-07 13:43:15 +10:00
Andrew Tridgell
de3c04adaf Plane: show next wp when not running a mission
this lets the GCS know what wp would be run if auto mode is selected
2014-04-07 11:40:58 +10:00
Andrew Tridgell
1fe7b2fe18 Plane: update for new APM_OBC API 2014-04-07 07:28:35 +10:00
Andrew Tridgell
f7858bfb0a Plane: added support for SERIAL_CONTROL message 2014-04-05 07:34:33 +11:00
Andrew Tridgell
5a84fb96ed Plane: build fix 2014-04-03 20:54:50 +11:00
Andrew Tridgell
1efadb7a05 Plane: fixed some warnings 2014-04-03 12:48:06 +11:00
Andrew Tridgell
3c33eb3f09 Plane: use new channel output API 2014-04-03 12:19:11 +11:00
Andrew Tridgell
88693796ef Plane: update for GPS.setHIL() API 2014-04-02 07:55:28 +11:00
Andrew Tridgell
e19341ca32 Plane: convert to new GPS driver API 2014-04-01 06:38:24 +11:00
Andrew Tridgell
958e17f4ff Plane: use AP_GPS_Auto for 2nd GPS 2014-04-01 06:38:23 +11:00
Andrew Tridgell
14671d0bcd Plane: fixed previous_mode error in geofence
when we were in MANUAL we would switch back to STABILIZE
2014-03-29 13:53:19 +11:00
Andrew Tridgell
bcbdb15c7d Plane: changed version to 2.79beta1 2014-03-28 09:47:59 +11:00
Andrew Tridgell
61ebf365d9 Plane: fixed reverting modes when FENCE_SET_RALLY is enabled
we need to keep the guided destination we are using
2014-03-27 10:41:24 +11:00
Andrew Tridgell
8639676eb3 Plane: we need 5 points for a valid geofence
the first and last points need to be the same for it to be a closed
polygon
2014-03-27 10:40:00 +11:00
Michael Day
268b1e85a1 Plane: Changes needed prior to merging with master identified by Tridge. 2014-03-27 09:26:20 +11:00
Michael Day
f921d4fbac Plane: FENCE_RET_RALLY param. Plane returns to rally point on breach. 2014-03-27 09:26:20 +11:00
Michael Day
25f23cf16c Plane: Sends MAV_SYS_STATUS_GEOFENCE and also allows GCS to enable/disable fence. 2014-03-27 09:26:20 +11:00
Andrew Tridgell
32a1c717e6 Plane: report up to 18 RC input channels via MAVLink 2014-03-25 14:47:43 +11:00
Andrew Tridgell
ff70c87f0b Plane: support 14 RC channels on PX4 2014-03-25 14:47:05 +11:00
Andrew Tridgell
09ed8d5819 Plane: updates for new RCInput API 2014-03-25 14:47:05 +11:00
Andrew Tridgell
b8781ccea7 Plane: fixed a compiler warning 2014-03-24 12:52:05 +11:00
Andrew Tridgell
e8b9f22b01 Plane: updates for GPS changes 2014-03-24 12:04:31 +11:00
Andrew Tridgell
d124fdb182 Plane: report compass unhealthy if primary compass unhealthy 2014-03-24 07:03:53 +11:00
Andrew Tridgell
f6b56b5d26 Plane: fixed mission resume at arbitrary waypoints
on completion of a mission a user can ask for it to resume at any wp
2014-03-21 10:21:37 +11:00
Andrew Tridgell
861523a00a Plane: use TECS get_target_airspeed() 2014-03-20 17:34:33 +11:00
Michael Day
dd06756abf Plane: Add Log_Write_Radio. MASK_LOG_PM must be set for logging to occur. 2014-03-20 09:56:37 +11:00
Andrew Tridgell
4257d8365c Plane: removed check on target_component in ARM/DISARM
Thanks to DonLakeFlyer for finding this, see
https://github.com/diydrones/ardupilot/pull/909
2014-03-20 09:06:48 +11:00
Andrew Tridgell
ce3f40b095 Plane: use should_log() for more msgs 2014-03-19 14:18:14 +11:00
Andrew Tridgell
abfcee1cef Plane: fixed channel reversal in HIL
makes it possible to reverse channels
2014-03-19 14:17:40 +11:00
Randy Mackay
3ce56f3086 Plane: integrate Mission cmd field changes 2014-03-19 12:14:24 +09:00
Andrew Tridgell
4031f7d368 Plane: use common deferred message handling 2014-03-19 12:14:17 +09:00
Andrew Tridgell
b74fddade3 Plane: use common MISSION_ITEM code 2014-03-19 12:14:11 +09:00
Andrew Tridgell
0d39f354b0 Plane: use new common MAVLink code 2014-03-19 12:13:38 +09:00
Andrew Tridgell
7d3523b4a7 Plane: use _send_buf() functions to reduce stack usage in MAVLink replies
this re-uses the incoming message buffer in constructing the reply
2014-03-19 12:13:28 +09:00
Andrew Tridgell
537e78f9fa Plane: much faster mission upload
send next WP request immediately if possible. This speeds up mission
upload on USB by about 10x
2014-03-19 12:13:27 +09:00
Randy Mackay
1ad743c4e1 Plane: use common GCS_MAVLink handle_mission methods 2014-03-19 12:13:21 +09:00
Andrew Tridgell
740ecc2c1b Plane: use new handle_mission_request() function 2014-03-19 12:13:12 +09:00
Randy Mackay
2184ff1e58 Plane: set_next_WP fn accepts Location 2014-03-19 12:13:06 +09:00
Randy Mackay
96b2e88e36 Plane: add comment to GCS_Mavlink.pde 2014-03-19 12:13:03 +09:00
Randy Mackay
ce9f2ef7f0 Plane: minor command logic comments and reordering 2014-03-19 12:13:01 +09:00
Randy Mackay
ad4f30e790 Plane: use mission command specific structures 2014-03-19 12:12:52 +09:00
Randy Mackay
9ef920b0be Plane: integrate dataflash Log_Write_MavCmd 2014-03-19 12:12:45 +09:00
Andrew Tridgell
4bf140aeac Plane: make next_WP and prev_WP be locations
having a command ID in them doesn't really make sense

Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-03-19 12:12:39 +09:00
Randy Mackay
f1b97fee53 Plane: correct typo re RTL home with no mission 2014-03-19 12:12:33 +09:00
Randy Mackay
7f21e3885e Plane: RTL home when AUTO run with no mission 2014-03-19 12:12:31 +09:00
Randy Mackay
6b789cd711 Plane: rename next_nav_command to auto_rtl_command
This command is only used to get the vehicle home (or to a rally point)
after the mission has completed
2014-03-19 12:12:30 +09:00
Randy Mackay
982ce56d2b Plane: bug fix to set_current_cmd
When set_current_cmd mavlink message is received, resume mission only if
the mission has completed.
Stop mission when vehicle leaves AUTO mode.
2014-03-19 12:12:28 +09:00
Andrew Tridgell
3e05baf95c Plane: fixed build (forward declarations) 2014-03-19 12:12:25 +09:00
Andrew Tridgell
2b5bf45e83 Plane: only activate mission callbacks in AUTO mode 2014-03-19 12:12:24 +09:00
Andrew Tridgell
3277416aeb Plane: fixed relative altitudes and resuming mission
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-03-19 12:12:22 +09:00
Andrew Tridgell
4992e2e2cf Plane: use mission.resume() not mission.start() 2014-03-19 12:12:19 +09:00
Andrew Tridgell
d4510d9b9b Plane: altitude for do_set_home() is in meters 2014-03-19 12:12:18 +09:00
Randy Mackay
27969175d9 Plane: bug fix to Loiter after mission completes 2014-03-19 12:12:16 +09:00
Randy Mackay
790a907811 Plane: use Dataflash lib's Log_Write_Cmd 2014-03-19 12:12:08 +09:00
Randy Mackay
033b7eca9e Plane: integrate variable max num commands 2014-03-19 12:12:02 +09:00
Randy Mackay
fcea127537 Plane: CLI uses HAL eeprom storage size definition 2014-03-19 12:11:59 +09:00
Randy Mackay
693ce27bf6 Plane: pass eeprom start to Mission constructor 2014-03-19 12:11:58 +09:00
Randy Mackay
36a5287de5 Plane: call mission.init during startup 2014-03-19 12:11:49 +09:00
Randy Mackay
6e60730c89 Plane: cli test checks read_cmd success before printing 2014-03-19 12:11:41 +09:00
Randy Mackay
ccb2daaed3 Plane: Log_Write_Startup checks success of cmd read before logging 2014-03-19 12:11:40 +09:00
Randy Mackay
0827506533 Plane: remove unused WAIT_COMMAND 2014-03-19 12:11:24 +09:00
Randy Mackay
53add04d36 Plane: remove some comments in commands_logic.pde 2014-03-19 12:11:22 +09:00
Randy Mackay
802ab79c84 Plane: bug fix for setting flight_stage based on current command 2014-03-19 12:11:19 +09:00
Randy Mackay
c4364a8ff5 Plane: remove unused nonnav_command variables
non_nav_command_ID and next_nonnav_command variables removed
2014-03-19 12:11:18 +09:00
Randy Mackay
52a08a5284 Plane: CMD dataflash logs use uint16 for total and num
Also bug fix for Log_Write_Cmd definition when logging disabled
2014-03-19 12:11:16 +09:00
Andrew Tridgell
f036aa1780 Plane: fixed altitude for takeoff and takeoff heading
fixes for AP_Mission integration

Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-03-19 12:11:09 +09:00
Randy Mackay
601cde2a32 Plane: remove alt_in_cm from mavlink to cmd conversion 2014-03-19 12:11:03 +09:00
Randy Mackay
bc86a5043a Plane: bug fix for relative alt 2014-03-19 12:11:00 +09:00
Randy Mackay
9446e9fd2e Plane: integrate AP_Mission library 2014-03-19 12:10:58 +09:00
Randy Mackay
ddba6f5c19 Plane: mission integration into GCS_Mavlink.pde 2014-03-19 12:10:57 +09:00
Randy Mackay
97f09ab426 Plane: dataflash logging to use Mission command 2014-03-19 12:10:55 +09:00
Randy Mackay
fdaf3fc177 Plane: add AP_Mission object to parameter list 2014-03-19 12:10:54 +09:00
Randy Mackay
e88f1953d0 Plane: use common location options masks 2014-03-19 12:10:21 +09:00
Andrew Tridgell
2b8cc1a1df Plane: use set_mode() in do_RTL()
thanks to Randy for spotting this
2014-03-15 22:15:06 +11:00
Andrew Tridgell
eb7db82210 Plane: altitude for do_set_home() is in meters 2014-03-14 11:26:10 +11:00
Andrew Tridgell
d595f36ca5 Plane: print PX4 compass type 2014-03-13 16:26:25 +11:00
Andrew Tridgell
65ae9663d4 Plane: set 2nd GPS as secondary 2014-03-08 21:48:12 +11:00
Andrew Tridgell
8574303a94 Plane: treat PWM below 900 as invalid for mode switch
the FrSky X8R receiver will briefly give a PWM of 874 on channel 5
when connection is lost to the transmitter. We need to ensure this
doesn't cause a mode switch
2014-03-08 19:27:50 +11:00
Andrew Tridgell
3a3397d926 Plane: fixup throttle trim on failsafe 2014-03-08 19:27:50 +11:00
Andrew Tridgell
c9ebd6a175 Plane: improved RC failsafe handling
this forces all primary control inputs to the trim value on loss of RC
input, and reduces the timeout for loss of RC input to 1 second from 2
2014-03-08 16:20:54 +11:00
Andrew Tridgell
2cf98e476c Plane: added support for a separate steering channel
good for ground steering on larger aircraft
2014-03-05 12:57:50 +11:00
Andrew Tridgell
8d95b953c3 Plane: removed some unused functions 2014-03-05 09:17:50 +11:00
Andrew Tridgell
0d6064034a Plane: use percent_input() for flaps 2014-03-05 09:17:50 +11:00
Andrew Tridgell
e3952112ad Plane: raise default LIM_PITCH_MAX to 20 degrees
15 is often not enough to climb
2014-03-03 15:49:04 +11:00
Andrew Tridgell
e784c81f3e Plane: only send GPS2_RAW when we have a 2nd GPS 2014-03-03 07:05:52 +11:00
Andrew Tridgell
6b9e1edf38 Plane: disable GPS2 in HIL 2014-02-27 08:16:28 +11:00
Andrew Tridgell
07826096a2 Plane: support a 2nd GPS 2014-02-26 09:24:23 +11:00
Andrew Tridgell
95dd252f29 Plane: pass fix type to gps->setHIL() 2014-02-25 21:11:15 +11:00
Andrew Tridgell
8a4289b56f Plane: remove unused variables
thanks to Mike McCauley
2014-02-24 18:49:14 +11:00
Andrew Tridgell
4bcf9b5d98 Plane: fixed logging of relative altitude 2014-02-23 08:18:43 +11:00
Andrew Tridgell
492e65acde Plane: fix for HIL API change 2014-02-23 08:18:31 +11:00
Randy Mackay
a76e2ab02e Plane: reserve NavEKF slot in param list even when not used
Although this wasn't a problem immediatley, if someone had added a
parameter after k_param_NavEKF it's position in eeprom could have moved
as AP_AHRS_NAVEKF_AVAILABLE was enabled/disabled
2014-02-21 13:53:05 +09:00
Andrew Tridgell
2908beb9bd Plane: fixed Log when disarmed value in docs 2014-02-19 19:01:48 +11:00
Andrew Tridgell
33851030a4 Plane: use ahrs.get_armed() 2014-02-19 10:53:26 +11:00
Andrew Tridgell
9282c8d0d9 Plane: allow for a wider range of values on the control switch 2014-02-17 13:58:11 +11:00
Paul Riseborough
98f72a4864 Plane : changed useage of ahrs.set_correct_centrifugal 2014-02-16 22:34:52 +11:00
Andrew Tridgell
99f2c8387c Plane: change to Compass::learn_offsets 2014-02-16 13:22:06 +11:00
Andrew Tridgell
59a56c9b46 Plane: enable Baro logging 2014-02-15 07:29:39 +11:00
Andrew Tridgell
566b0ccc61 Plane: call esimate_wind() 2014-02-15 05:48:24 +11:00
Andrew Tridgell
d7839aa4ab Plane: removed duplicate log description 2014-02-15 05:48:24 +11:00
Andrew Tridgell
1001df0e56 Plane: removed extra log enum 2014-02-15 05:48:23 +11:00
Andrew Tridgell
35a9201c9a Plane: fixed comma 2014-02-15 05:48:23 +11:00
Andrew Tridgell
a7faa58879 Plane: fixed up merge errors 2014-02-15 05:48:23 +11:00
Andrew Tridgell
a551703877 Plane: fixed parameter build for NavEKF 2014-02-15 05:48:22 +11:00
Paul Riseborough
8c4b0b9be9 Plane : NavEKF Mavlink tunable parameter - first attempt 2014-02-15 05:48:22 +11:00
Paul Riseborough
24f8f02942 Plane : disable AHRS centrifugal corrections when disarmed 2014-02-15 05:48:20 +11:00
Andrew Tridgell
bb4789a875 Plane: use common EKF logging 2014-02-15 05:48:16 +11:00
Andrew Tridgell
4646682a31 Plane: use common send_ahrs2() 2014-02-15 05:48:16 +11:00
Andrew Tridgell
57e0eb4db5 Plane: use a const reference for home 2014-02-15 05:48:15 +11:00
Andrew Tridgell
2817a11f23 Plane: added AHR2 and SIM logging 2014-02-15 05:48:14 +11:00
Andrew Tridgell
11337ab2df Plane: updates for AHRS holding home position 2014-02-15 05:29:47 +11:00
Andrew Tridgell
df5195e2c9 Plane: change for new AHRS API 2014-02-15 05:29:47 +11:00
Andrew Tridgell
e39247868c Plane: cleanup HIL defines 2014-02-15 05:29:46 +11:00
Andrew Tridgell
2cd6efa23e Plane: added DF logging of secondary AHRS solution 2014-02-15 05:29:45 +11:00
Andrew Tridgell
99cfaf6097 Plane: switched to AHRS2 message for reporting 2014-02-15 05:29:45 +11:00
Andrew Tridgell
9ac886f58d Plane: use AP_AHRS_NavEKF when available 2014-02-15 05:28:09 +11:00
Paul Riseborough
e0e4b1aefa Plane : Updated NavEKF flash data logging 2014-02-15 05:28:09 +11:00
Paul Riseborough
d6ead64083 Plane : Additional NavEKF flash logging 2014-02-15 05:28:08 +11:00
Andrew Tridgell
006b9da6be Plane: only include NavEKF on fast CPUs 2014-02-15 05:28:08 +11:00
Andrew Tridgell
ce9047cec5 Plane: added dataflash logging of EKF data 2014-02-15 05:28:07 +11:00
Andrew Tridgell
1fbae4dd44 Plane: enable NavEKF logging in plane 2014-02-15 05:28:07 +11:00
Andrew Tridgell
cd9027adfd Plane: added NavEKF object 2014-02-15 05:27:52 +11:00
Paul Riseborough
fb1345dd99 Plane : add suport for NavEKF 2014-02-15 05:27:52 +11:00
Andrew Tridgell
7de8be1956 Plane: log power status on Pixhawk 2014-02-15 05:00:09 +11:00
Andrew Tridgell
dfa95b3464 Plane: moved the always log flag to 1<<16
this prevent problems with transferring the bitmask as a float
2014-02-14 21:51:00 +11:00
Andrew Tridgell
043c80dbe6 Plane: use new board_voltage() method 2014-02-14 21:50:59 +11:00
Andrew Tridgell
ae9201342a Plane: allow FLAP_IN_CHANNEL to control k_flap and k_flap_auto too 2014-02-06 14:09:49 +11:00
Andrew Tridgell
c3b7e76c28 Plane: added flaperon support
this adds FLAPERON_OUTPUT and FLAP_IN_CHANNEL to allow both manual
and auto flap control for both normal flaps and flaperons
2014-02-06 12:38:59 +11:00
Andrew Tridgell
04f2c07b2b Plane: use new RC_Channels API 2014-02-06 10:17:16 +11:00
Andrew Tridgell
e42a10a764 Plane: allow printing of GUIDED mode in logs 2014-02-02 14:04:36 +11:00
Andrew Tridgell
48577ffbc2 Plane: check the parameter table on startup 2014-01-31 13:07:52 +11:00
Andrew Tridgell
f06152530c Plane: prepare for 2.78b release 2014-01-31 12:15:27 +11:00
Andrew Tridgell
6cabca690e Plane: fixed RSSI_RANGE enum
many thanks to Valince for spotting this
2014-01-31 12:14:18 +11:00
Andrew Tridgell
7009c4aead Plane: prepare for 2.78 release 2014-01-30 14:26:46 +11:00
Andrew Tridgell
3a986474e0 Plane: added RSSI_RANGE parameter 2014-01-30 11:29:35 +11:00
Andrew Tridgell
6b12f13d64 Plane: prepare 2.78beta2 2014-01-29 22:05:21 +11:00
Andrew Tridgell
906fc17905 Plane: added baro and airspeed logging
including raw temperature and pressure values
2014-01-28 10:35:59 +11:00
Andrew Tridgell
9f683e6b9b Plane: prepare 2.78beta1 2014-01-27 14:08:43 +11:00
Andrew Tridgell
369c130c2d Plane: consider GPS unhealthy if it doesn't have 3D lock 2014-01-27 09:02:22 +11:00
Andrew Tridgell
11ece65656 Plane: update docs for RSSI_PIN for pixhawk 2014-01-24 11:18:28 +11:00
Andrew Tridgell
e5e04d65ee Plane: improve LOG_BITMASK docs 2014-01-24 10:00:23 +11:00
Andrew Tridgell
c37a7cd9e1 Plane: update AP_Notify flags for arming state 2014-01-23 21:40:34 +11:00
Andrew Tridgell
ab4a5d676e Plane: ready for 2.77 release 2014-01-20 19:41:19 +11:00
Andrew Tridgell
c16e3a035f Plane: fixed disarmed throttle in HIL 2014-01-20 19:41:19 +11:00
Andrew Tridgell
776b999f43 Plane: fixed disarmed PWM output 2014-01-20 17:34:50 +11:00
Andrew Tridgell
cdd36b2c41 Plane: use AP_ServoRelayEvents library 2014-01-20 17:06:29 +11:00
Andrew Tridgell
2045591bed Plane: fixed servo and relay repeat code 2014-01-20 17:06:29 +11:00
Andrew Tridgell
e4e5c92453 Plane: fixed relay handling
the parameters were badly out of whack!
2014-01-20 17:06:29 +11:00
Andrew Tridgell
d3adf4c32c Plane: enable AP_BoardConfig 2014-01-20 17:06:28 +11:00
Andrew Tridgell
ada0dd5504 Plane: check both ground and airspeed in autocal test
when the airspeed ratio is far too low we were not raising it as the
airspeed was never getting above the minimum airspeed

Pair-Programmed-With: Jon Challinger
2014-01-17 10:29:28 +11:00
Andrew Tridgell
30a210cfa6 Plane: setup PWM to be used on throttle when safety is safe on PX4 2014-01-15 22:28:00 +11:00
Andrew Tridgell
3a5fb46dc2 Plane: fixed integer size problem on APM2 2014-01-14 21:27:39 +11:00
Andrew Tridgell
91cc08a3ef Plane: log PX4Firmware and NuttX git revisions in logs 2014-01-14 15:37:03 +11:00
Andrew Tridgell
cf09fef1db Plane: prevent log corruption when new log started 2014-01-14 14:29:14 +11:00
Andrew Tridgell
a15336079e Plane: start logging when first needed 2014-01-14 13:51:49 +11:00
Andrew Tridgell
8755747da0 Plane: only log when armed by default
use safety switch if arming not enabled
2014-01-14 13:07:43 +11:00
Andrew Tridgell
874110b29d Plane: make LOG_BITMASK 32 bits 2014-01-14 13:06:52 +11:00
Andrew Tridgell
def782c441 Plane: use uppercase names on microSD card where possible 2014-01-14 12:46:26 +11:00
Don Gagne
e68cf2d1c5 Plane: Fix parameter documentation
Fixes some problems with incorrect docs which would in turn generate
bad amp.pdef.xml files for ground stations.

merge with below
2014-01-09 14:02:21 +09:00
Andrew Tridgell
9df5887aab Plane: fixed redundent logging 2013-12-31 15:55:33 +11:00
Andrew Tridgell
d9cb101a03 Plane: default LOG_BITMASK to 32767 on non-APM 2013-12-31 10:28:38 +11:00
Michael Day
d4f42d41f7 Plane: removed some compile warnings from rally.pde 2013-12-31 09:48:24 +11:00
Michael Day
c87d72353f Plane: Introducing FENCE_RETALT parameter. 2013-12-31 09:48:20 +11:00
Michael Day
87c60ee293 Plane: Doc. update for ALT_HOLD_RTL with Rally Points. 2013-12-31 09:48:16 +11:00
Andrew Tridgell
f35cf2beba Plane: use file based logs in SITL 2013-12-29 07:14:31 +11:00
Andrew Tridgell
3486b933c0 Plane: use common send_meminfo() 2013-12-28 16:02:06 +11:00
Andrew Tridgell
72473e4317 Plane: use AP_HAL available_memory() call 2013-12-28 14:51:37 +11:00
Andrew Tridgell
6856cc6e4b Plane: break up GPS and logging, allow GPS update at 50Hz
this prevents mismatches in GPS message arrival and accel message
arrival from causing small DCM errors
2013-12-28 14:25:54 +11:00
Randy Mackay
a1d5c0a02a Plane: replace APM with board in cli 2013-12-28 10:42:30 +09:00
Andrew Tridgell
7ffbed24cc Plane: initialise scheduler callback after logging
this could cause log corruption otherwise
2013-12-28 10:24:46 +11:00
Andrew Tridgell
43a56151d7 Plane: reset mission on disarm
this makes repeated missions easier
2013-12-20 12:04:23 +11:00
Andrew Tridgell
89366a1ee1 Plane: fixed ARMING_REQUIRED=2 on APM2 to disable rc output on throttle 2013-12-20 11:59:45 +11:00
Andrew Tridgell
ce773f085a Plane: make the defaut for FS_GCS_ENABL clearer 2013-12-20 11:44:44 +11:00
Andrew Tridgell
263f3b116b Plane: added FS_GCS_ENABL==2 option
this allows GCS failsafe when the GCS isn't getting updates from the
aircraft
2013-12-20 11:39:00 +11:00
Andrew Tridgell
a4af83d454 Plane: only allow right rudder for arming
copter users may try to use left rudder to ensure aircraft is
disarmed. Making left rudder arm could be dangerous
2013-12-20 09:43:04 +11:00
Andrew Tridgell
77c6e51887 Plane: allow throttle failsafe on no RC input
on PX4 we just stop getting input on loss of RC - we need to consider
this to be "throttle failsafe"
2013-12-20 09:43:04 +11:00
Andrew Tridgell
4f242aedec Plane: fixed a bug where mode would not revert on geo-fence disable
the mode would not revert if the switch was in position 0
2013-12-17 14:14:13 +11:00
Michael Day
dcfed13c87 Plane: Fence breach now sends to correct return point in Guided Mode. 2013-12-17 14:14:13 +11:00
Andrew Tridgell
ca67c24eef Plane: removed common functions 2013-12-17 12:00:46 +11:00
Andrew Tridgell
d93b95186d Plane: prevent a build warning 2013-12-17 11:51:36 +11:00
Andrew Tridgell
8b7fe3cf50 Plane: changes for new DataFlash API 2013-12-17 11:51:36 +11:00
Andrew Tridgell
e0b511e367 Plane: enable new log download functions 2013-12-17 11:51:35 +11:00
Andrew Tridgell
508817d617 Plane: moved ap_message into GCS.h 2013-12-17 11:51:35 +11:00
Andrew Tridgell
4bad2cfb3a Plane: use common GCS.h 2013-12-17 11:51:35 +11:00
Andrew Tridgell
622a2053ff Plane: fixed parameters typo 2013-12-11 21:37:01 +11:00
Andrew Tridgell
3508a14542 Plane: small arming tidyups 2013-12-11 17:29:26 +11:00
Andrew Tridgell
b0236610b2 Plane: fixed arming bit in MAVLink heartbeat message 2013-12-11 17:29:26 +11:00
Andrew Tridgell
103da0c889 Plane: when no GPS lock always send GPS messages 2013-12-11 17:29:26 +11:00
Michael Day
b0a0316dd6 Plane: Now using AP_Arming library. 2013-12-11 17:29:23 +11:00
Andrew Tridgell
6ed21c12db Plane: added logging of 2nd compass 2013-12-10 15:32:11 +11:00
Andrew Tridgell
49f49648ec Plane: changes for compass healthy API 2013-12-09 17:47:38 +11:00
Andrew Tridgell
02af644010 Plane: report both sets of sensors in MAVLink 2013-12-09 17:34:07 +11:00
Andrew Tridgell
b637ab35e4 Plane: lower the priority of mount update 2013-12-09 17:34:07 +11:00
Andrew Tridgell
d642254f18 Plane: breakup one second loop into 3 pieces
this prevents it not running when gimbal is active
2013-12-09 17:34:07 +11:00
Andrew Tridgell
65c97a2f5f Plane: updates for compass API change 2013-12-09 17:34:06 +11:00
Randy Mackay
b6462c23af Plane: disable external leds 2013-11-30 22:53:55 +09:00
Andrew Tridgell
1124e84ae0 Plane: fixed APM1 build 2013-11-30 06:56:16 +11:00
Andrew Tridgell
6b4a3ef98b Plane: added MAVLink sonar logging 2013-11-28 21:49:27 +11:00
Andrew Tridgell
5a0cb5dea4 Plane: added sonar logging to dataflash 2013-11-28 21:49:27 +11:00
Randy Mackay
45ab18f131 Plane: rename Log_Write_SERVO to Log_Write_RCOU 2013-11-27 20:18:16 +09:00
Andrew Tridgell
079d48f6cc Plane: use log system ID if available 2013-11-26 13:00:03 +11:00
Andrew Tridgell
8383abc1fe Plane: added SERIAL2_BAUD and rename SERIAL3_BAUD to SERIAL1_BAUD 2013-11-26 13:00:03 +11:00
Andrew Tridgell
a05a32dbda Plane: added RCIN and SRVO logging 2013-11-26 09:04:43 +11:00
Andrew Tridgell
457183b6f5 Plane: cope with uartD being NULL 2013-11-23 21:44:45 +11:00
Andrew Tridgell
5f32f44366 Plane: fixed mavlink_queue[] size 2013-11-23 19:29:23 +11:00
Andrew Tridgell
2fa5e6310d Plane: added 3rd telemetry stream on platforms that have it
this generalises the gcs object usage
2013-11-23 19:29:22 +11:00
Andrew Tridgell
490a061c6f Plane: added HIL_ERR_LIMIT
this allows DCM to recover if HIL attitude drifts too far from true attitude
2013-11-23 18:50:57 +11:00
Andrew Tridgell
17c9cedac1 Plane: send out HIL servo updates as soon as we can
this improves the servo responsiveness of HIL a lot
2013-11-23 18:50:57 +11:00
Andrew Tridgell
1e36ebc31b Plane: reset HIL attitude if off by more than 5 degrees 2013-11-23 18:50:56 +11:00
Andrew Tridgell
8bfe59cea5 Plane: send SIMSTATE messages in HIL
this allows better tracking of the simulator state, to see if issues
are caused by DCM failure
2013-11-23 18:50:56 +11:00
Andrew Tridgell
58b767b8e4 Plane: rename geofence structure
makes using gdb easier as it doesn't mix up the structure and the
pointer
2013-11-23 18:50:55 +11:00
Randy Mackay
c01a3debd6 Plane: log INS errors in PM message 2013-11-18 13:08:40 +09:00
Andrew Tridgell
56f574684d Plane: fixed throttle failsafe with reversed throttle 2013-11-17 15:32:53 +11:00
Andrew Tridgell
2af69b7131 Plane: make batter failsafe docs clearer 2013-11-09 18:14:02 +11:00
Andrew Tridgell
7e10811673 Plane: send firmware and git version in tlog 2013-11-09 10:09:20 +11:00
Andrew Tridgell
eee1364f05 Plane: update comments on ALT_CTRL_ALG and NAV_CONTROLLER 2013-11-08 07:54:16 +11:00
Andrew Tridgell
c1bc093cf5 Plane: removed unused variable 2013-11-07 13:54:25 +11:00
Andrew Tridgell
1aa29df52d Plane: report INS and airspeed health 2013-11-07 12:48:17 +11:00
Andrew Tridgell
53c3dff334 Plane: allow changing of loiter direction while loitering
useful for causing path capture failures in the sim
2013-11-07 11:54:28 +11:00
Andrew Tridgell
1328bbf040 Plane: log the AHRS error terms in dataflash
also log raw IMU at 10Hz with default config
2013-11-07 10:19:13 +11:00
Andrew Tridgell
691eaabe94 Plane: prepare for 2.76 release 2013-11-05 15:55:08 +11:00
Andrew Tridgell
78604bd84e Plane: only send GPS_RAW_INT if new data
this reduces link load when asking for high rate telemetry
2013-11-05 14:40:51 +11:00
Andrew Tridgell
5e4b243c7b Plane: make DataFlash objects static 2013-11-04 21:37:50 +11:00
Andrew Tridgell
ae8ef344bf Plane: added time to most plane log messages 2013-11-04 21:37:30 +11:00
Andrew Tridgell
231b5ab793 Plane: prevent too large combined pitch/roll angles
this reduces the roll limit by cos(pitch) and pitch minimum by
cos(roll). This prevents unreasonable attitudes in all stabilised
modes

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-11-04 21:21:42 +11:00
Andrew Tridgell
ff5f2ceae5 Plane: update for API changes 2013-11-04 21:21:42 +11:00
Andrew Tridgell
b1c9b57c73 Plane: mark 2.76beta1 2013-11-02 21:48:17 +11:00
Andrew Tridgell
26a3860af2 Plane: fixed PM message 2013-11-02 21:41:30 +11:00
Andrew Tridgell
5a92ce4af6 Plane: added altitude and ground speed to NTUN logs 2013-11-02 21:41:11 +11:00
Andrew Tridgell
fe3943e686 Plane: faster startup
make it less likely to send wrong INS_PRODUCT_ID, plus don't waste as
much time
2013-11-02 21:41:11 +11:00
Randy Mackay
328de5fc7b Plane: add @Increment to battery failsafe descriptions 2013-10-29 11:23:54 +09:00
Andrew Tridgell
bcb0deb888 Plane: ready for 2.75 release 2013-10-28 18:22:25 +11:00
Andrew Tridgell
3ff407cb75 Plane: improved perf monitoring with SCHED_DEBUG 2013-10-28 17:10:00 +11:00
Andrew Tridgell
cfa38df528 Plane: allow parameters to download at full speed 2013-10-28 10:34:32 +11:00
Andrew Tridgell
a407609dbe Plane: tag 2.75beta5 2013-10-26 07:57:35 +11:00
Andrew Tridgell
b897285737 Plane: set system time on GPS lock 2013-10-24 14:22:48 +11:00
Andrew Tridgell
3289041428 Plane: added MAVLink SYSTEM_TIME message 2013-10-24 14:22:47 +11:00
Andrew Tridgell
6f3458eb25 Plane: fixed setting of waypoint when not in AUTO
this fixes a bug where the next waypoint is set incorrectly if set via
MAVLink when not in AUTO
2013-10-23 09:40:41 +11:00
Andrew Tridgell
210ca08abd Plane: changed to 2.75beta4 2013-10-18 11:53:51 +11:00
Andrew Tridgell
4239498b62 Plane: moved fast_loop() into main scheduler table 2013-10-15 09:52:23 +11:00
Andrew Tridgell
294b669948 Plane: fixed rally altitude to be in meters
this matches the docs
2013-10-14 16:38:40 +11:00
Andrew Tridgell
5adf4e1706 Plane: improve THROTTLE_NUDGE docs 2013-10-14 15:40:26 +11:00
Andrew Tridgell
5e1f5ffb7f Plane: removed some old defines 2013-10-14 14:40:30 +11:00
Andrew Tridgell
7f6eecd9d5 Plane: cleanup cruft in Makefile 2013-10-13 21:41:01 +11:00
Andrew Tridgell
a3168bcbaa Plane: fixes for AP_Mount API 2013-10-13 11:03:31 +09:00
Andrew Tridgell
035ac3800a Plane: use G_Dt for acro angle integration
also cleanup some other uses of performance timing
2013-10-12 13:30:27 +11:00
Andrew Tridgell
05115684c1 Plane: pass FlightStage to TECS
this will allow for better throttle and pitch control on landing
2013-10-12 13:14:30 +11:00
Andrew Tridgell
0ec322ee47 Plane: support MAV_CMD_DO_SET_CAM_TRIGG_DIST 2013-10-11 21:37:27 +11:00
Andrew Tridgell
72505cf4e5 Plane: release 2.75beta3 2013-10-11 16:29:08 +11:00
Andrew Tridgell
8e5d1430da Plane: use ins.wait_for_sample() 2013-10-08 17:31:15 +11:00
Andrew Tridgell
2bb497703c Plane: avoid delay_microseconds() until fixed on PX4 2013-10-08 14:55:38 +11:00
Andrew Tridgell
48ed480d59 Plane: improved latency of main loop
use a 500usec delay
2013-10-08 11:50:54 +11:00
Andrew Tridgell
e6af7dad3d Plane: switched to L3G4200D driver for Linux 2013-10-08 11:50:54 +11:00
Andrew Tridgell
a4604ab317 Plane: honor zero RALLY_LIMIT_KM 2013-10-06 14:54:50 +11:00
Andrew Tridgell
5bf1463e7a Plane: added RALLY_LIMIT_KM
this will prevent an embarressing use of a rally point from the wrong
airfield
2013-10-06 14:51:13 +11:00
Andrew Tridgell
365e82aecb Plane: use a rally point when out of mission items 2013-10-05 23:07:32 +10:00
Andrew Tridgell
61dd04ccb5 Plane: auto-update home and baro calibration when disarmed
this takes advantage of the PX4 arming state to ensure position and
baro calibration is updated
2013-10-05 18:45:45 +10:00
Andrew Tridgell
536fbb4a30 Plane: if pilot gives aileron input then disable ground steering
otherwise it would be very tricky to do a low pass!
2013-10-05 07:46:27 +10:00
Andrew Tridgell
d32e58db84 Plane: split out the channel stick mixing
makes code a bit clearer
2013-10-05 07:46:27 +10:00
Andrew Tridgell
3be939eb03 Plane: give manual steering when still
useful for servo testing
2013-10-05 07:46:27 +10:00
Andrew Tridgell
d275f50539 Plane: added GROUND_STEER_ALT and GROUND_STEER_DPS
this uses the new AP_SteerController steering controller developed for
the rover code to allow for ground steering of planes
2013-10-05 07:46:27 +10:00
Andrew Tridgell
081510d37a Plane: added ACRO_LOCKING parameter
this enables/disables the attitude locking in acro mode, allowing acro
to be a pure rate controller
2013-10-05 07:45:12 +10:00
Randy Mackay
6e2b1093fc Plane: mavlink ext status to use SYS_STATUS_SENSOR enum 2013-10-04 13:21:01 +09:00
Andrew Tridgell
011915eb1c Plane: added error checking to rally load save
sanity check the rally points
2013-10-03 12:21:08 +10:00
Michael Day
497c95de8e Plane: Add support for rally points.
Added parameter RALLY_TOTAL.

Added handlers for new MAVLink messages RALLY_POINT and
RALLY_FETCH_POINT.

defines.h modified to make room in EEPROM to store rally points.

rally.pde added and is responsible for ensuring rally points get
stored in the correct spot in EEPROM.

Multiple Rally/RTL point support now done.  If rally points have
been defined, then when RTL mode is entered, the closest Rally
point is chosend and the plane loiters at that point.

Note only 10 rally points can be defined; this is to save space in
the APM's EEPROM.
2013-10-03 12:21:08 +10:00
Randy Mackay
21360aeebf Plane: sent current as -1 to GCS when can't be monitored 2013-10-03 11:16:33 +09:00
Randy Mackay
9722276827 Plane: batt curr and remaining should be int16 2013-10-03 11:16:26 +09:00
Randy Mackay
cb91440c63 Plane: remove test_battery from CLI 2013-10-03 11:16:22 +09:00
Randy Mackay
9388ea3848 Plane: integrate BattMonitor exhausted method
BatteryMonitor object made static
Removed unused macros for battery voltage and current monitoring
2013-10-03 11:16:21 +09:00
Andrew Tridgell
74c8c8aafa Plane: auto-upgrade battery variables in EEPROM 2013-10-03 11:16:12 +09:00
Randy Mackay
c64d444b5a Plane: integrate BattMonitor 2013-10-03 11:16:08 +09:00
Andrew Tridgell
65976831e2 Plane: moved Linux logs to logs directory 2013-10-01 13:05:18 +10:00
Andrew Tridgell
eef693f243 Plane: removed some compat code
fixes warnings
2013-09-30 21:06:43 +10:00
Andrew Tridgell
24099a520d Plane: updates for AP_HAL::MemberProc 2013-09-30 21:06:43 +10:00
Andrew Tridgell
444d053dc2 Plane: enable Oilpan and BMP085 on Linux 2013-09-29 01:02:05 +10:00
Andrew Tridgell
f68778d453 Plane: be friendly to multi-tasking OSes 2013-09-28 22:04:15 +10:00
Andrew Tridgell
287db19119 Plane: updates for Stub -> HIL 2013-09-28 22:04:15 +10:00
Andrew Tridgell
88959004d7 Plane: use new scheduler API 2013-09-28 21:24:03 +10:00
Andrew Tridgell
1fd0f73e3f Plane: use DataFlash_File on Linux 2013-09-28 21:24:02 +10:00
Andrew Tridgell
c3d0b315cf Plane: added HAL_LINUX includes 2013-09-28 21:24:02 +10:00
Andrew Tridgell
650ff258db Plane: update for new INS API 2013-09-27 10:49:00 +10:00
Mike McCauley
6a8c1a0c36 Plane: Added flymaple to ArduPlane 2013-09-24 13:51:28 +10:00
Mike McCauley
aa800472be Plane: defines.h added Flymaple INS 2013-09-24 13:51:28 +10:00
Mike McCauley
3ddcdba659 Plane: Parameters BATTERY_MONITORING for Flymaple 2013-09-24 13:51:28 +10:00
Mike McCauley
18c6b00b5b Plane: Added definitions for Flymaple 2013-09-24 13:51:28 +10:00
Andrew Tridgell
4f310aaec8 Plane: fixed build with print() base change 2013-09-23 18:10:22 +10:00
Mike McCauley
767884b7f1 Plane: workaround conflicts between wirish and APM compatibility 2013-09-23 18:10:21 +10:00
Kevin Hester
996eda0080 Plane: Report MAV_STATE_ACTIVE if flying, MAV_STATE_STANDBY otherwise
(There are also various error states MAV_STATE_CRITICAL that are unchanged
by this check in).

The is_flying() check is similar to the code in suppress_throttle, but
I wanted to make it very optimistic on thinking we are flying - which is
not what you want for set_throttle...

(AC has similar MAV_STATE_ACTIVE vs MAV_STATE_STANDBY behavior now)
2013-09-21 21:57:07 +10:00
Andrew Tridgell
bcce2e4fc5 Plane: use new Baro API 2013-09-21 21:31:03 +10:00
Andrew Tridgell
36466e91ed Plane: run SENSOR_OFFSETS message at 1/10 of the requested rate
this message wastes bandwidth, as the values change very slowly
2013-09-21 09:35:45 +10:00
Andrew Tridgell
c4dcdcf5a2 Plane: only send RC_CHANNELS_SCALED in HIL
saves a bit of telemetry bandwidth
2013-09-21 09:30:29 +10:00
Andrew Tridgell
b28a4f21f2 Plane: fixed uartA baud rates for APM1 2013-09-21 09:30:29 +10:00
Andrew Tridgell
e455ee0a94 Plane: fixed throttle suppression for AUTO_FBW_STEER=1 2013-09-20 17:20:06 +10:00
Andrew Tridgell
1869cd52e1 Plane: fixed AUTO_FBW_STEER stick mixing 2013-09-20 17:20:06 +10:00
Andrew Tridgell
328e900364 Plane: changed TKOFF_THR_DELAY default to 2
this makes it safer for hand launch with pusher props
2013-09-19 21:42:21 +10:00
Paul Riseborough
43cf0736a3 Plane: Auto Takeoff Check updates
Adds additional launch angle protection and protection against early
exit from auto causing unexpected motor start on re-entry
2013-09-19 21:37:31 +10:00
Randy Mackay
ab4274aa8d Plane: disable battery failsafe when usb connected 2013-09-19 17:43:08 +09:00
Andrew Tridgell
21a4da0d29 Plane: removed flash_leds() calls 2013-09-19 18:38:28 +10:00
Andrew Tridgell
4bd6b2f428 Plane: use new usb_connected() function 2013-09-19 16:23:58 +10:00
Andrew Tridgell
8a76d82de4 Plane: set failsafe_radio AP_Notify bits 2013-09-18 11:58:54 +10:00
Andrew Tridgell
150e7a3f16 Plane: prevent arming tone on startup 2013-09-18 10:56:06 +10:00
Andrew Tridgell
95a696ea36 Plane: enable failsafe battery reporting 2013-09-18 10:50:34 +10:00
Andrew Tridgell
ec0c894306 Plane: use the projected position for geofencing and waypoints 2013-09-17 21:05:25 +10:00
Andrew Tridgell
43ffe91546 Plane: added FS_ACTION of 2 for glide
this allows people without specified settings in their receiver for
failsafe to choose FBWA zero throttle glide on throttle failsafe. That
can be a better choice when flying at a R/C club field
2013-09-15 15:05:39 +10:00
Andrew Tridgell
dd6a69f588 Plane: added WP_MAX_RADIUS parameter
useful when using AUTO_FBW_STEER for manual steering in competitions
2013-09-13 17:43:08 +10:00
Andrew Tridgell
cc6acac1dd Plane: added AUTO_FBW_STEER option
this is an unusual option that gives FBWA flight control in AUTO
mode. It is being added to support use of APM in an aerial robotics
competition where students need to pilot the plane, but they still
need waypoint triggering of payloads
2013-09-13 14:38:09 +10:00
Andrew Tridgell
de7b42e323 Plane: changed to AP_Vehicle.h 2013-09-13 11:46:54 +10:00
Andrew Tridgell
8010d7fd78 Plane: update battery pin docs 2013-09-12 13:43:22 +10:00
Andrew Tridgell
fe5a4ab710 Plane: fixed Vcc 2013-09-12 13:26:27 +10:00
Andrew Tridgell
0c8d56632e Plane: fixed SR0 and SR3 autodocs 2013-09-12 09:53:24 +10:00
Andrew Tridgell
f6688582a6 Plane: added FENCE_ACTION=3 behaviour
this makes it safer to enable the geofence as a receiver failsafe
mode. It retains manual throttle control, so if it triggers on the
ground due to the receiver losing signal from the transmitter then the
throttle can be kept low, preventing an unexpected takeoff.
2013-09-08 07:31:10 +10:00
Craig3DRobotics
630095adaa Revert "Copter: Corrected SR0 & SR3 parameter descriptions"
This reverts commit 6568234018.
2013-09-06 09:58:19 -07:00
Craig3DRobotics
2b726abe0e Plane: Correction on SR0 & SR3 parameter description. 2013-09-05 22:29:10 -07:00
Andrew Tridgell
4a8c9a7765 Plane: support reboot to bootloader 2013-09-04 11:59:16 +10:00
Andrew Tridgell
a00e4a1e83 Plane: send GCS message on relay change
makes it easier to debug
2013-08-30 15:05:16 +10:00
Andrew Tridgell
45cf82ba15 Plane: removed CONFIG_RELAY check
relay is always available
2013-08-30 14:40:47 +10:00
Andrew Tridgell
4762b3e7c6 Plane: change to 2.75beta2 2013-08-30 14:02:21 +10:00
Andrew Tridgell
a93f7c39a9 Plane: updates for new notify API 2013-08-30 13:01:35 +10:00
Randy Mackay
ad8bd16725 Plane: integrate AP_Notify 2013-08-30 13:01:35 +10:00
Andrew Tridgell
2ba9ce60e3 Plane: fixed comment 2013-08-30 13:01:34 +10:00
Andrew Tridgell
8733391315 Plane: call airspeed MAVLink logging function 2013-08-30 13:01:34 +10:00
Andrew Tridgell
5cec9b65c9 Plane: constrain calibration to roll/pitch limits 2013-08-30 13:01:34 +10:00
Andrew Tridgell
364790414c Plane: support new RADIO_STATUS msg 2013-08-24 17:59:13 +10:00
Andrew Tridgell
b16e3e4c85 Plane: changed FBW min to 9 m/s
6 m/s is too dangerous for widely used planes
2013-08-18 11:42:23 +10:00
Andrew Tridgell
8dd0aa12ed Plane: prevent GPS speed spikes at startup from breaking airspeed cal
the filter can be affected by a huge GPS velocity spike
2013-08-18 11:42:22 +10:00
Andrew Tridgell
4425b6af7c Plane: update for new TECS API 2013-08-14 14:59:01 +10:00
Andrew Tridgell
accfd46633 Plane: update for new APM_Control API 2013-08-14 14:57:41 +10:00
Andrew Tridgell
8378dc9779 Plane: use reference to AHRS 2013-08-13 13:49:34 +10:00
Andrew Tridgell
5cfdf52381 Plane: change default modes to FBWA not STABILIZE 2013-08-13 13:42:27 +10:00
Andrew Tridgell
d4ca3ebf65 Plane: check for parameter send at default of 10Hz
50Hz can cause overruns, especially on PX4 which can drain the tx
buffer very rapidly
2013-08-13 13:42:25 +10:00
Andrew Tridgell
a33573352e Plane: fixes for updated AP_Math and AHRS APIs
Pair-Programmed-With: Brandon Jones <brnjones@gmail.com>
2013-08-05 10:30:04 +10:00
Andrew Tridgell
e22f58c9fc Plane: fixed build with OBC failsafe 2013-08-03 09:18:01 +10:00
Andrew Tridgell
890b77447a Plane: allow integrator in stabilize mode when no stick input
fixes issue #472
2013-08-02 21:55:34 +10:00
Andrew Tridgell
c083c15240 Plane: use a larger serial buffer
this makes higher rate MAVLink possible again
2013-08-02 18:46:54 +10:00
Andrew Tridgell
c3b5f20a45 Plane: run TECS 50Hz code when throttle suppressed
this fixes auto-launch detection using TECS
2013-08-02 18:46:48 +10:00
Andrew Tridgell
8428779558 Plane: make it easier to find task numbers 2013-08-02 18:46:42 +10:00
Andrew Tridgell
62cc84aba3 Plane: use new scheduler load_average() function
this also simplifies the main loop
2013-08-02 18:46:28 +10:00
Andrew Tridgell
233b033e8c Plane: removed old speed/altitude control algorithms
Use TECS only. This makes the code a lot simpler and easier to
properly document
2013-07-22 13:28:11 +10:00
Andrew Tridgell
c0697d0a2d Plane: mark 2.75beta1 2013-07-22 12:50:30 +10:00
Andrew Tridgell
965dc228c2 Plane: fixed GUIDED mode change of altitude down 2013-07-22 12:50:02 +10:00
Andrew Tridgell
b8fa83ff54 Plane: change default slewrate to 100%/second 2013-07-22 12:50:02 +10:00
Andrew Tridgell
29c854e676 Plane: remove unused function 2013-07-22 12:50:02 +10:00
Andrew Tridgell
6e288551ab Plane: fixed reversion to pre-failsafe mode
if AUTO was entered using GCS, we need to switch back to the old mode,
not control channel
2013-07-22 12:50:02 +10:00
Andrew Tridgell
74dabad1f3 Plane: added SKIP_GYRO_CAL parameter
useful for starting the sim at high altitudes, and for starting planes
without having to hold them still
2013-07-22 12:50:01 +10:00
Andrew Tridgell
c8a83e17d0 Plane: remove old AIR_START code
this was never used or tested
2013-07-22 12:50:01 +10:00
Andrew Tridgell
7673ca0bac Plane: updates for new EAS2TAS scaling 2013-07-22 12:50:01 +10:00
Andrew Tridgell
9bbe6c1967 Plane: update to new license boilerplate for GPLv3
we had LGPLv2 in some places, despite the fw being GPLv3
2013-07-22 12:50:01 +10:00
Andrew Tridgell
882aa68c16 Plane: use new airspeed calibration code
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-22 12:50:01 +10:00
Andrew Tridgell
53b1b9b575 Plane: added note on type of airspeed in docs 2013-07-22 12:50:01 +10:00
Andrew Tridgell
2d5deddd30 Plane: set mode CIRCLE on short failsafe in AUTO
this makes the code match the docs
2013-07-22 12:50:00 +10:00
Andrew Tridgell
9b70675b12 Plane: check the control switch a bit more often
faster response to mode changes
2013-07-22 12:50:00 +10:00
Andrew Tridgell
6ed78c89ac Plane: don't read control switch when ch3 is in failsafe
use ch3_counter not just the final flag
2013-07-22 12:50:00 +10:00
Andrew Tridgell
51b9cf3e76 Plane: move failsafe variables into a structure
this makes the logic a bit easier to follow
2013-07-22 12:50:00 +10:00
Andrew Tridgell
608345415b Plane: pass aircraft parameters to attitude controllers
also cope with rename of airspeed min/max variables

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-18 14:53:37 +10:00
Andrew Tridgell
a4f49a28fb Plane: prepare for 2.74b release 2013-07-16 09:45:32 +10:00
Andrew Tridgell
e27dd14bcc Plane: fixed FBWB aileron control 2013-07-16 09:44:23 +10:00
Andrew Tridgell
e8355905dd Plane: prepare for 2.74 release 2013-07-15 11:19:38 +10:00
Andrew Tridgell
dbd47b2a30 Plane: make TECS the default speed/height controller 2013-07-15 11:12:24 +10:00
Andrew Tridgell
ec21922233 Plane: make wp_distance static
removed hack in AP_Camera library
2013-07-15 09:56:28 +10:00
Andrew Tridgell
3ba713352f Plane: use update_aux() for setting up extra channels 2013-07-15 09:56:12 +10:00
Andrew Tridgell
ed20c4cbc8 Plane: fixed initial reporting of battery remaining
we were not showing battery remaining 100% until we used some battery
2013-07-14 21:59:15 +10:00
Andrew Tridgell
e80d73df93 Plane: expand docs for TRIM_AUTO 2013-07-14 21:23:15 +10:00
Andrew Tridgell
4087fde140 Plane: enable CTUN log message by default 2013-07-14 21:10:12 +10:00
Andrew Tridgell
e79023ceee Plane: fixed problem with slow ground station connects
don't trigger the "scheduler out of time" code when in the delay
callback

Thanks to Marijm Slootweg for noticing this!
2013-07-14 17:28:34 +10:00
Andrew Tridgell
d4db2231d4 Plane: change to 2.73beta4 2013-07-13 21:47:22 +10:00
Andrew Tridgell
dc024d425a Plane: re-do roll hanging in ACRO mode
this avoids the euler angle zeros of the previous method by using a
gyro integrator on the roll axis

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-13 21:45:58 +10:00
Andrew Tridgell
b37f79d307 Plane: update for new APM_Control API 2013-07-13 21:45:58 +10:00
Andrew Tridgell
113bc20f8a Plane: added a new CRUISE flight mode
See
http://diydrones.com/group/apmusergroup/forum/topics/feature-request-hold-heading-mode

this fixes issue #438
2013-07-13 21:45:58 +10:00
Andrew Tridgell
399970e76f Plane: fixed default deadzone for the throttle channel
this is the 2nd half of the fix for issue #303
2013-07-13 13:19:25 +10:00
Andrew Tridgell
826ad6c086 Plane: unlock roll and pitch when we enter ACRO mode 2013-07-13 12:34:34 +10:00
Randy Mackay
1772a62415 Plane: fix to gps present check in mavlink extended status 1 msg 2013-07-13 10:27:39 +09:00
Andrew Tridgell
ea9ae31a7a Plane: fixed a bug with altitude drift in FBWB mode
not taking account of deadzone correctly
2013-07-12 21:17:09 +10:00
Andrew Tridgell
cc57bfcf12 Plane: fixed handling of deadzone in ACRO mode
RC_Channel norm_input() does not take account of the dead zone
2013-07-12 17:54:51 +10:00
Randy Mackay
9df93881fb Plane: set_dead_zone renamed to set_default_dead_zone
Change in use of parameter means value passed in should be 1/2 what it
was previously
2013-07-12 11:44:18 +09:00
Andrew Tridgell
f300df5fd1 Plane: added FS_LONG_TIMEOUT and FS_SHORT_TIMEOUT parameters
this is to address the issue raised here:

http://diydrones.com/forum/topics/ardupilot-circle-mode
2013-07-12 11:56:04 +10:00
Andrew Tridgell
73928b82a6 Plane: fixed FBWB airspeed control
thanks to Gabor for reporting this!
2013-07-11 11:58:54 +10:00
Andrew Tridgell
1d04290eab Plane: change to 2.74beta3 2013-07-11 11:58:54 +10:00
Andrew Tridgell
11a4628409 Plane: added ACRO mode to mode choices 2013-07-11 09:10:41 +10:00
Andrew Tridgell
fc67f51901 Plane: added ACRO_ROLL_RATE and ACRO_PITCH_RATE parameters
default to 180 degrees/second, which seems reasonable
2013-07-11 09:10:41 +10:00
Andrew Tridgell
608007361b Plane: added initial implementation of ACRO mode
rate based control with attitude locking
2013-07-11 09:10:41 +10:00
Andrew Tridgell
2005d5642a Plane: fixed a documentation string
GND_ALT_OFFSET is now for barometric corrections
2013-07-10 14:46:22 +10:00
Andrew Tridgell
3c97fad2ec Plane: changes for GPS field changes 2013-07-10 14:04:22 +10:00
Andrew Tridgell
7aa360b176 Plane: added relative_altitude helper functions
prevents some code duplication
2013-07-10 14:04:22 +10:00
Paul Riseborough
971d36f06b Plane: added height to 10Hz TECS call 2013-07-10 14:04:22 +10:00
Andrew Tridgell
3c177867a4 Plane: allow enable/disable of camera log messages in CLI 2013-07-10 12:23:36 +10:00
Andrew Tridgell
f7c8d1e1ee Plane: use current_loc.alt for altitude to TECS 2013-07-10 11:55:35 +10:00
Craig@3DR
7f4336430a Plane: trigger picture + logging on camera update_location() 2013-07-10 08:40:01 +10:00
Paul Riseborough
a4f3180e2a Plane: added support for throttle nudging with TECS 2013-07-09 20:51:03 +10:00
Paul Riseborough
c34803db13 Plane: pass in adjusted height above field to TECS 2013-07-09 09:25:55 +10:00
Andrew Tridgell
9f612f6f78 Plane: only call TECS when throttle is not suppressed
this helps prevent integrator buildup on the ground
2013-07-08 12:07:50 +10:00
Andrew Tridgell
1355b6d89d Plane: break-up scheduling into smaller pieces
ensure mavlink sends don't push us over a scheduling boundary
2013-07-05 18:05:27 +10:00
Andrew Tridgell
1d6748cf3f Plane: use a glide slope in RTL when descending
when above the target altitude in RTL come down slowly, when below
climb rapidly

This fixes issue #39
2013-07-05 14:56:58 +10:00
Andrew Tridgell
d30dd7c3f1 Plane: only run TECS when in an auto-throttle mode
this prevents integrator buildup in user controlled modes
2013-07-05 14:55:22 +10:00
Andrew Tridgell
dd330885b8 Plane: added compass and baro accumulate functions 2013-07-05 12:59:15 +10:00
Andrew Tridgell
84299c3747 Plane: document ALT_CTRL_ALG=2 2013-07-04 17:00:04 +10:00
Andrew Tridgell
6c7d160ee6 Plane: fixed TECS takeoff detection 2013-07-04 16:56:57 +10:00
Andrew Tridgell
a5bda3ffef Plane: changed to using a "aircraft parameters" structure
this structure can be passed to libraries to give them easy access to
critical user parameters
2013-07-04 16:56:57 +10:00
Paul Riseborough
d62636d309 Plane: added new TECS altitude controller
Includes improvements to takeoff/launch detect logic to support hand
launching for X-8 flight
2013-07-04 16:56:57 +10:00
Andrew Tridgell
f3237b9e5d Plane: update FS_LONG_ACTN and FS_SHORT_ACTN docs
thanks to Craig for noticing this
2013-07-02 14:50:04 +10:00
Andrew Tridgell
75ef7c26e1 Plane: update takeoff course when conditions met
This allows for change of heading before the final takeoff conditions
are met

thanks to Greg Fletcher for suggesting this
2013-07-01 17:05:13 +10:00
Andrew Tridgell
570ecea6c6 Plane: added secondary rudder support 2013-06-29 17:31:03 +10:00
Andrew Tridgell
0d3faeda90 Plane: update_mount assumes 50Hz, for camera trigger 2013-06-25 12:44:26 +10:00
Andrew Tridgell
bb47029564 Plane: enable CAM_TRIGG_DIST parameter 2013-06-25 12:44:26 +10:00
Andrew Tridgell
45f5d05bd2 Plane: enabled RELAY_* parameters 2013-06-25 12:44:26 +10:00
Andrew Tridgell
056e0ca40d Plane: APM2 doesn't have channel 9 PWM output 2013-06-24 13:06:54 +10:00
Paul Riseborough
2204b30e66 Plane: Added APM_Control integrator limits to table used to covert old PID values 2013-06-22 21:59:47 +10:00
Randy Mackay
6ea568d72a Plane: param description change for RC5 ~ RC11
Reversing the order may avoid duplication of param descriptions in the
auto generated parameter web page
2013-06-21 09:58:02 +09:00
Randy Mackay
75bcd7cdab Plane: update THR_FS_VALUE parameter description 2013-06-18 15:57:29 +09:00
Andrew Tridgell
4a0c90246e Plane: make GPS UART blocking again 2013-06-11 18:50:23 +10:00
Andrew Tridgell
641ad6bc63 Plane: increase time allowed for update_alt()
the altitude tracking code can be quite expensive with TECS
2013-06-07 08:41:09 +10:00
Andrew Tridgell
b0c87b8a61 Plane: fix VOLT_DIVIDER docs 2013-06-07 08:40:28 +10:00
Andrew Tridgell
b27ffdd087 Plane: new plane beta 2.74beta2 2013-06-04 15:10:11 +10:00
Andrew Tridgell
c008fa764c Plane: update_commands() can take 7ms if it needs to write a waypoint 2013-06-04 13:42:25 +10:00
Andrew Tridgell
93cd0f9a31 Plane: switch to new AP_Scheduler
this gives us more accurate task scheduling in ArduPlane, plus better
monitoring of task timing (via SCHED_DEBUG)
2013-06-04 13:34:58 +10:00
Andrew Tridgell
6bac13f9e2 Plane: fixed RCMAP_* to fix channel ranges for no-reboot changes 2013-06-03 21:20:39 +10:00
Andrew Tridgell
02d72ffcba Plane: make it possible to change board orientation at runtime 2013-06-03 16:52:44 +10:00
Andrew Tridgell
4c9bc30f58 Plane: make it possible to change control channel ordering without reboot
this makes configuration a bit easier
2013-06-03 16:42:38 +10:00
Andrew Tridgell
27bc0cdc2c Plane: rename old channel_* globals
prevent the old "g." names from being used
2013-06-03 16:37:51 +10:00
Andrew Tridgell
a1f64d606a Plane: fixed remaining places where primary channel ordering was assumed
should now use rcmap for all inputs
2013-06-03 16:23:48 +10:00
Andrew Tridgell
fb9bf21522 Plane: allow channel mapping of first 4 channels
this makes it easier to support DSM and SBUS radios
2013-06-03 16:23:48 +10:00
Andrew Tridgell
515d726ee0 Plane: use RC_Channel::rc_channel() instead of rc_ch[] 2013-06-03 16:23:48 +10:00
Andrew Tridgell
f7697574db Plane: use the new airspeed driver interface
the choice of analog source is now in the airspeed driver
2013-06-03 11:51:09 +10:00
Andrew Tridgell
d9bcfd913a Plane: reset attitude integrators on mode change 2013-06-01 22:29:38 +10:00
Andrew Tridgell
bb3171ab5f Plane: zero attitude integrators on the ground 2013-06-01 22:29:38 +10:00
Andrew Tridgell
cd55ed45e2 Plane: removed the old roll/pitch/yaw PID controllers
use the new controllers, with auto parameter conversion
2013-05-31 14:06:56 +10:00
Andrew Tridgell
91a04ab654 Plane: fixed headers for mode logging 2013-05-31 14:04:03 +10:00
Andrew Tridgell
cae1079747 Plane: auto-convert the old RLL2SRV* parameters to the new CTL_RLL_* parameters 2013-05-31 07:58:29 +10:00
Andrew Tridgell
e48b8c7b4a Plane: improve RTL altitude docs 2013-05-31 07:58:29 +10:00
Andrew Tridgell
6e0f1f56de Plane: update docs on volt/current pin 2013-05-31 07:57:15 +10:00
Andrew Tridgell
fa9eb84542 Plane: added more parameter docs (flaps and GCS control) 2013-05-30 09:44:09 +10:00
Andrew Tridgell
de904468b2 Plane: added BATT_MONITOR and VOLT_DIVIDER docs 2013-05-30 09:06:36 +10:00
Andrew Tridgell
eba7d6da9a Plane: removed the old crash_timer code
This code is less relevent with the new L1 navigation, and could cause
issues with the pilot not having control after a long dive.

Thanks to Soren for pointing out the issues

See issue #305
2013-05-28 11:19:28 +10:00
Andrew Tridgell
f9a1b4f0e3 Plane: improve ALT_MIX docs 2013-05-28 10:10:22 +10:00
Andrew Tridgell
767d9d0eb5 Plane: fixed stick mixing in AUTO modes
the mixing was asymmetric. Many thanks to Soren Kuula for noticing this!
2013-05-27 08:24:35 +10:00
Andrew Tridgell
c481ac8745 Plane: use a default mixing gain of 0.5
this ensures compatibility with existing configs
2013-05-25 19:15:47 +10:00
Andrew Tridgell
c81421e275 Plane: added MIXING_GAIN parameter
this allows for the full range of output on both channels, but can
saturate
2013-05-25 18:28:13 +10:00
Andrew Tridgell
a22f5e3bc4 Plane: enable wind estimation 2013-05-24 11:21:42 +10:00
Andrew Tridgell
dd633fcf3f Plane: make voltage and battery capacity failsafe settable at runtime
this also fixes issue #292
2013-05-22 20:33:57 +10:00
Randy Mackay
4c08e32bf6 Plane: param update for AP_Baro 2013-05-21 14:22:23 +09:00
Randy Mackay
84909ee56a Plane: add parameter description for LOG_BITMASK 2013-05-21 11:22:11 +09:00
Randy Mackay
c7961a72fc Plane: send_text_P bug fix for short messages 2013-05-20 12:51:16 +09:00
Andrew Tridgell
bd4b7d136f Plane: mark ArduPlane 2.74beta 2013-05-13 17:32:33 +10:00
Andrew Tridgell
001d18b51d Plane: removed scaling of pitot source 2013-05-13 15:19:05 +10:00
Andrew Tridgell
97b6aaac77 Plane: use voltage_average() for RSSI
this fixes it on PX4
2013-05-13 15:19:05 +10:00
Andrew Tridgell
b940c4b28e Plane: use library gcs_severity 2013-05-09 09:28:57 +10:00
Andrew Tridgell
635b3fabda Plane: fixed APM1-1280 build 2013-05-08 21:44:45 +10:00
Andrew Tridgell
81c1fd5fc4 Plane: support 3D accel calibration over MAVLink 2013-05-08 16:25:35 +10:00
Andrew Tridgell
c5f1570f32 Plane: fixed flash logging of ATT
fixed types to be int16
2013-05-08 14:21:32 +10:00
priseborough
854c50501d Plane: Added a constraint to demanded bank angle during FBW-A mode to prevent roll limits being exceeded 2013-05-07 11:01:05 +10:00
Andrew Tridgell
fdd509a7c1 Plane: move baro init earlier in startup
this ensures it is initialised when CLI takeover by MP happens

Thanks to Prof Avi Levi for reporting this bug
2013-05-06 10:57:57 +10:00
Andrew Tridgell
0cf49308af Plane: mark a 2.73beta release 2013-05-05 22:36:22 +10:00
Andrew Tridgell
0e6a64fc14 Plane: reset roll/pitch integrators for APM_Control in takeoff
when airspeed is below airspeed minimum. This is consistent with the
previous controllers

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-05-05 22:03:13 +10:00
Andrew Tridgell
9c6f80c42b Plane: moved some default values to Parameters.pde 2013-05-05 21:51:09 +10:00
Andrew Tridgell
6251d0510a Plane: obey pitch trim and throttle pitch feed forward in new controllers
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-05-05 21:51:09 +10:00
Andrew Tridgell
e87a6d5564 Plane: added links to new APM controller docs 2013-05-05 21:51:09 +10:00
Andrew Tridgell
11ad9d5a2d Plane: auto-invert pitch control when upside down
this helps to recover when flying inverted, for example when in manual
and hitting the lower altitude geofence
2013-05-05 21:51:09 +10:00
Andrew Tridgell
4e2b88f6e6 Plane: added ATT_CONTROLLER option to select attitude controller
set to 1 for the new APM_Control library
2013-05-05 21:51:09 +10:00
Andrew Tridgell
55f7d18979 Plane: avoid copying the DCM matrix 2013-05-05 21:51:09 +10:00
priseborough
3663426550 Plane: Fixed bug in groundspeed_undershoot that could cause a fly-away in windy conditions.
Use the component of velocity in the forward direction rather than the magnitude
2013-05-05 21:51:08 +10:00
Paul Riseborough
663951d9a7 Plane: rename APM_Control parameters
this groups the parameters more logically
2013-05-05 21:51:08 +10:00
Paul Riseborough
8c5b603848 Plane: use new APM_Control API 2013-05-05 21:51:08 +10:00
Andrew Tridgell
b43712e4d2 Plane: fixed APM1-1280 build 2013-05-03 12:40:43 +10:00
Andrew Tridgell
9f0a4dd553 Plane: log GCS text messages to flash log
useful for seeing more complex actions
2013-05-03 11:16:50 +10:00
Andrew Tridgell
bb8f9d5443 Plane: simplify setHIL for baro 2013-05-02 15:27:02 +10:00
Andrew Tridgell
3cd52a9689 Plane: fixes for AP_Baro_HIL 2013-05-02 15:09:27 +10:00
Andrew Tridgell
0d97f417ec Plane: enable compass on all boards by default
if not present, then mag init will fail and it will disable
2013-05-02 15:01:33 +10:00
Andrew Tridgell
0aa38a5bd4 Plane: use new HIL compass API 2013-05-02 15:00:59 +10:00
Andrew Tridgell
5ba171af9a Plane: fixed mavlink levelling
this was broken by a recent commit (after 2.72 was released)
2013-05-02 13:38:28 +10:00
Andrew Tridgell
a019e3740e Plane: updates for new compass API 2013-05-02 12:48:14 +10:00
Andrew Tridgell
9584aa89d9 Plane: replaced constrain() with constrain_float() 2013-05-02 10:27:10 +10:00
Randy Mackay
b0f5b9a4cf Plane: use renamed RCInput valid_channels 2013-04-29 15:06:38 +09:00
Andrew Tridgell
de3fcbc413 Plane: removed the MANUAL_LEVEL option
levelling on every startup is far too error prone. This was just
another parameter that everyone changed.
2013-04-29 14:19:53 +10:00
Andrew Tridgell
3d7a4d0e6e Plane: added ELEVON_OUTPUT option
this is like the vtail mixer, but for elevons
2013-04-29 12:13:59 +10:00
Andrew Tridgell
855277fa85 Plane: get ready for 2.72 release 2013-04-28 15:56:30 +10:00
Andrew Tridgell
bdf0a2da69 Plane: log mode number as well as mode string
this makes graphing mode changes easier
2013-04-28 14:58:13 +10:00
Andrew Tridgell
b53e3bb1fc Plane: log GPS messages as they come in
stops us logging duplicate messages
2013-04-28 14:56:31 +10:00
Andrew Tridgell
1956d9c2dc Plane: show modes as strings in log 2013-04-28 14:47:59 +10:00
Randy Mackay
f47a2e951a Plane: add I2C error count to PM message 2013-04-26 22:39:56 +09:00
Andrew Tridgell
0b8c2da4df Plane: support 12 output channels on PX4 2013-04-25 20:10:53 +10:00
Andrew Tridgell
4f225eff57 Plane: if airspeed enabled, require 5m/s to unsuppress throttle 2013-04-25 20:10:53 +10:00
Andrew Tridgell
ac7561c5d5 Plane: mark 2.72beta version 2013-04-24 16:19:18 +10:00
Andrew Tridgell
8ec1eaa8b1 build: removed obsolete cmake rules
these have not been maintained for over a year
2013-04-23 11:07:53 +10:00
Andrew Tridgell
e446f375a7 Plane: set loiter.direction for GUIDED mode 2013-04-21 23:46:35 +10:00
Bill Bonney
3ec891265f Plane: Enable CURRENT logging by default onto Dataflash 2013-04-21 07:24:02 +10:00
Andrew Tridgell
02ed37e750 Plane: fixed APM1-1280 build 2013-04-20 18:21:19 +10:00
Andrew Tridgell
2e5834cc7f Plane: print flight mode as string in logs 2013-04-20 15:18:10 +10:00
Andrew Tridgell
3b90c6c386 Plane: log parameter changes 2013-04-20 13:52:36 +10:00
Andrew Tridgell
991d6598ef Plane: log board voltage 2013-04-20 13:52:36 +10:00
Andrew Tridgell
5c553852ed Plane: when logging is disabled don't include DataFlash at all 2013-04-20 13:52:36 +10:00
Andrew Tridgell
0c5b393919 Plane: added compass logging 2013-04-20 13:52:36 +10:00
Andrew Tridgell
c56f338fe0 Plane: convert to new logging system 2013-04-20 13:52:36 +10:00
Andrew Tridgell
c8af70a18d Plane: make the plane code compatible with the new logging system
not actually converted yet
2013-04-20 13:52:36 +10:00
Andrew Tridgell
a329e32ccb Plane: added gps status to flashlog 2013-04-19 10:24:20 +10:00
Andrew Tridgell
abe4dba871 Plane: added PX4 flash logging 2013-04-17 21:35:27 +10:00
Andrew Tridgell
a12323c9fd Plane: fixed logging for new API 2013-04-17 21:34:56 +10:00
Andrew Tridgell
42344455c9 Plane: fixed structure init for arduino compiler 2013-04-15 21:59:07 +10:00
Andrew Tridgell
9f0f482dd7 Plane: fixed LOITER_TIME to start when loiter starts
thanks to Paul Riseborough for finding this bug!
2013-04-15 21:39:14 +10:00
Andrew Tridgell
75f4a43e2d Plane: fixed LOITER_TURNS command
and cleanup more loiter variables
2013-04-15 21:31:11 +10:00
Andrew Tridgell
82cd391cf8 Plane: use RADIUS_OF_EARTH define 2013-04-15 14:55:58 +10:00
Andrew Tridgell
8f091e70c8 Plane: move elevon variables into a structure 2013-04-15 14:53:56 +10:00
Andrew Tridgell
79c6f32400 Plane: made variables static and remove initial rc overrides
minor code size savings
2013-04-15 14:46:01 +10:00
Andrew Tridgell
e918293e86 Plane: explain verify_*() commands 2013-04-15 14:41:15 +10:00
Andrew Tridgell
19b92b5bd8 Plane: removed "circle waypoint" completion test
this is redundent with the location_passed_point() test
2013-04-15 14:39:18 +10:00
Andrew Tridgell
994d8e354a Plane: allow for negative WP_LOITER_RAD for conter-clockwise loiter
this follows the same convention as missions
2013-04-15 10:52:32 +10:00
Andrew Tridgell
78538d0543 Plane: removed old HDNG2RLL PID control
not used with L1
2013-04-15 10:52:32 +10:00
Andrew Tridgell
b2ad43f625 Plane: removed ahrs.set_barometer() 2013-04-15 10:52:32 +10:00
Andrew Tridgell
8d2cf6f3e5 Plane: update author list 2013-04-12 22:01:41 +10:00
priseborough
70a186464b Plane: added LEVEL_ROLL_LIMIT parameter
this replaces both TKOFF_HEAD_HOLD and RUDDER_STEER, allowing users to
instead select a roll limit for takeoff and landing
2013-04-12 21:59:52 +10:00
Andrew Tridgell
575f346e85 Plane: removed HIL_MODE_ATTITUDE
we really need full sensors for HIL with the L1 controller. The flight
is also _much_ better with sensors HIL.
2013-04-12 17:44:40 +10:00
Andrew Tridgell
11eb0cfce1 Plane: update for new AP_Navigation controller class
this switches ArduPlane over to use the L1 navigation controller, via
a generic nav_controller object pointer.

Note that the nav_controller controls all types of navigation now,
including level flight and heading hold. This provides a cleaner
abstraction than the old method of special case navigation handling

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-04-12 12:48:09 +10:00
Andrew Tridgell
c47bc09a3c Plane: avoid doing radio trim if less than 20% of travel available
this prevents problems with awful trim on bootup due to RC TX being
off
2013-04-12 12:47:59 +10:00
tobias
217b8d7a59 cleanup: use const for struct Location pointers and references
this allows the compiler to generate more efficient code
2013-04-09 12:10:32 +10:00
Andrew Tridgell
71f6287388 Plane: fixed spelling 2013-04-06 17:42:20 +11:00
Andrew Tridgell
dcbe144c7e Plane: prepare for release of 2.71 2013-04-06 17:27:21 +11:00
Andrew Tridgell
e58f49aeaf Plane: copy rudder out in TRAINING mode
we were doing rudder mixing in training mode, which shouldn't be done
2013-04-05 19:38:43 +11:00
Andrew Tridgell
993154ea59 Plane: expand the VTAIL_OUTPUT docs for APM1 2013-04-05 16:38:46 +11:00
Andrew Tridgell
bd2b9fbe9d Plane: simplify the VTail mixer to be more like a hardware mixer
this should make it easier to trim the vtail
2013-04-05 15:47:51 +11:00
Andrew Tridgell
17cbcd1bf6 Plane: fixed failsafe with VTAIL_OUTPUT 2013-04-05 15:35:26 +11:00
Andrew Tridgell
406921faf1 Plane: added VTAIL_OUTPUT option
this allows for software vtail mixing
2013-04-05 15:22:11 +11:00
Randy Mackay
21a51c8333 Plane: update GCS_Mavlink parameter documentation 2013-04-03 22:58:25 +09:00
Andrew Tridgell
a69c9ff674 Plane: added logging of DIGICAM events 2013-04-02 13:08:38 +11:00
Andrew Tridgell
ddfcafe80f Plane: fixed DIGICAM camera trigger 2013-04-02 13:08:38 +11:00
Andrew Tridgell
683a2919d1 Plane: prevent stick mixing when throttle is below failsafe threshold
this fixes issue #40
2013-04-02 10:42:56 +11:00
Andrew Tridgell
c5e2cfcc3e Plane: preparing for 2.71-beta 2013-04-02 09:25:24 +11:00
Andrew Tridgell
2506c216dd Plane: added a second type of stick mixing
this changes STICK_MIXING from a boolean to a tri-state. With
STICK_MIXING=1 it now uses FBW style mixing. With STICK_MIXING=2 it
uses the old style of direct stick mixing.
2013-04-02 08:52:56 +11:00
Andrew Tridgell
5d54215221 Plane: use int16_t() not int() to ensure simulator matches AVR 2013-04-01 22:17:05 +11:00
Andrew Tridgell
e390726bdd Plane: prevent overflow on large PID gains
this uses get_pid_4500() to prevent overflow of servo_out on large PID gains
2013-04-01 22:17:04 +11:00
Andrew Tridgell
624ebced38 Plane: document INVERTEDFLT_CH 2013-04-01 22:17:04 +11:00
Andrew Tridgell
dfb14d760b Plane: added HIL_SERVOS option
this allows for real servo output in HIL
2013-03-30 14:38:43 +11:00
Andrew Tridgell
6cc4aadc06 Plane: report compass health in SYS_STATUS 2013-03-29 13:48:40 +11:00
Andrew Tridgell
a165f0d138 Plane: removed old angle wrap code 2013-03-29 13:13:50 +11:00
Andrew Tridgell
7db7d7db77 Plane: change FBWB altitude control algorithm
this makes FBWB much less sensitive to airframe tuning. When the
elevator stick first goes neutral it locks in the current altitude as
the target altitude. When the elevator stick is off neutral, it moves
the target altitude in proportion to the elevator, at a rate goverened
by the new FBWB_CLIMB_RATE parameter

This prevents the aircraft from slowly drifting in altitude in FBWB,
and gives a more intuitive control mechanism for altitude.

Thanks to Chris Miser from Falcon UAV for help in designing this
change
2013-03-28 10:27:25 +11:00
Andrew Tridgell
fcde3ceb24 Plane: also avoid rudder on takeoff with TOFF_HEAD_HOLD==0 2013-03-27 16:36:39 +11:00
Randy Mackay
a49fe272ad Plane: replace gps fix with status
Required to ensure 3d fix is used for initialising home
2013-03-27 11:42:02 +09:00
Randy Mackay
c2055557f5 Plane: add support for GPS fix type 2D 2013-03-27 11:41:51 +09:00
Andrew Tridgell
f077f54e6a Plane: added TKOFF_HEAD_HOLD option
this allows control over whether ArduPlane tries to hold heading
during auto takeoff. For hand launches it can be better to hold the
wings level and not attempt to hold heading during takeoff to prevent
the possibility of a stall during the climb out.

Thanks to Chris Miser from Falcon UAV for the feedback that led to
this option.
2013-03-27 10:27:14 +11:00
Andrew Tridgell
1d983b3f2e Plane: fixed X accel triggering of auto 2013-03-22 11:53:45 +11:00
Andrew Tridgell
1a36c3684b Plane: fixed GPS test (detection of uBlox needs 10Hz poll) 2013-03-21 22:45:17 +11:00
Andrew Tridgell
6948e0c473 Plane: only enter CLI is link is idle when 3 enters are hit
this will prevent binary contents of RADIO packets being interpreted
as CLI enter line-feeds
2013-03-21 21:57:54 +11:00
Andrew Tridgell
0e37ae4400 Plane: change CLI timeout to 20s 2013-03-21 17:34:34 +11:00
John Stäck
c9576e59f9 Add set command to setup menu (and changed show command), same as for ArduCopter. Not included when building for 1280. 2013-03-19 11:40:25 +09:00
Randy Mackay
36834e77b5 Copter: remove support for CLI Slider 2013-03-18 14:07:04 +09:00
Andrew Tridgell
36ff950b12 Plane: fixed MAVLink target IDs in fence point message
thanks to Kevin Hester for finding this
2013-03-12 15:04:48 +11:00
Andrew Tridgell
0a385cc0ff Plane: added TKOFF_THR_MINACC option
this is used for triggering auto takeoff with a hand launched plane
2013-03-09 14:41:04 +11:00
Michael Warren
9697ff5d6d Plane: Added extra parameter to specify at what speed in auto-takeoff throttle should engage
This adds TKOFF_THR_MINSPD in m/s
2013-03-09 14:19:48 +11:00
Andrew Tridgell
87c6545ac6 Plane: don't trigger GCS failsafe if GCS never connected
The we have never received a heartbeat message from the GCS then don't
use the lack of heartbeat to trigger a failsafe event
2013-03-09 13:48:39 +11:00
Andrew Tridgell
e93888dee9 Plane: make a throttle_cruise of 0 mean always zero throttle
this can be used for parachute landing missions

Thanks to Chris Miser for the suggestion
2013-03-09 13:48:39 +11:00
Andrew Tridgell
e0e22b63a7 Plane: removed INPUT_VOLTS parameter
no longer needed
2013-03-08 10:01:33 +11:00
Andrew Tridgell
2331c84423 Plane: use voltage_average() to not depend on INPUT_VOLTS 2013-03-03 16:16:01 +11:00
Andrew Tridgell
de55e19eec Plane: updates for new dataflash API 2013-03-01 07:18:26 +11:00
Andrew Tridgell
b3213b7113 Plane: fixes for new DataFlash API 2013-03-01 07:18:25 +11:00
Andrew Tridgell
5f4c5f8201 Plane: update SERIAL0_BAUD parameter description 2013-02-22 08:39:02 +11:00
Andrew Tridgell
139acc0530 Plane: ignore control mode changes when in throttle failsafe
this prevents the receiver causing a temporary mode change
2013-02-21 11:21:39 +11:00
Andrew Tridgell
1ebaa14a99 Plane: prepare for 2.70 release 2013-02-21 09:49:15 +11:00
Andrew Tridgell
0a0b51cc63 Plane: reset AHRS trim after a level operation 2013-02-20 11:56:02 +11:00
Andrew Tridgell
24826c0c74 Plane: default the stream rates to 1Hz 2013-02-20 10:08:49 +11:00
Andrew Tridgell
1007f2ef07 Plane: fixed a bug with setting stream rates
this is what caused the "no sensors" problem in the 2.69 release
2013-02-20 09:32:01 +11:00
Randy Mackay
9c984b18db Plane: integrate automatic roll and pitch trims 2013-02-19 13:30:51 +09:00
Andrew Tridgell
c989099665 Plane: enable PX4IO dual telemetry devices 2013-02-18 13:56:21 +11:00
Andrew Tridgell
e8806b14ec Plane: enable MAV_CMD_DO_DIGICAM_CONTROL 2013-02-14 09:35:56 +11:00
Andrew Tridgell
8c0f065ee4 Plane: fixed an integer multiply error that caused poor altitude on landing
the control of altitude between waypoints was broken due to an integer
overflow
2013-02-13 19:32:44 +11:00
Andrew Tridgell
2f677acf3b Plane: update firmware version to 2.69 2013-02-11 15:02:08 +11:00
Andrew Tridgell
9f70c6c70d Plane: make CIRCLE mode hold altitude
this will prevent us losing a lot of altitude during the initial
failsafe phase
2013-02-11 13:52:25 +11:00
Andrew Tridgell
9d3224ef34 Plane: fixed target speed reload on landing
thanks to Doug for this fix!
2013-02-11 11:40:36 +11:00
Michael Oborne
88840eb759 Send FS state to gcs for AP 2013-02-09 10:11:26 +08:00
Andrew Tridgell
c41b927a15 Plane: added shell command for px4
used to launch nsh for PX4IO firmware upgrades
2013-02-07 15:04:33 +11:00
Andrew Tridgell
3913c42183 Plane: fixed bit combination
bitwise, not arithmetic
2013-02-05 10:33:10 +11:00
Jochen Tuchbreiter
c5f19f5df8 Plane: Implement issue 80: counterclockwise loiter
- libraries/AP_Common/AP_Common.h: Use bit 2 of Location.options to store
  loiter direction
- ArduPlane/defines.h: New bitmask MASK_OPTIONS_LOITER_DIRECTION for struct
  Location bit 2
- ArduPlane/ArduPlane.pde: New variable loiter_direction
- ArduPlane/GCS_Mavlink.pde: For mavlink loiter-commands use sign of param3 to
  detemine direction. Set Location.option flag accordingly
- ArduPlane/commands.pde: Make sure loiter-directions get saved into EEPROM
  correctly
- ArduPlane/commands_logic.pde: Set loiter_direction on all loiter-actions
  as well as RTL/instant loiter
- ArduPlane/navigation.pde: Yield loiter_direction in update_loiter
2013-02-05 10:29:31 +11:00
Brandon Jones
fa7839941f After Plane: cleanup driver declaration 4d9a74d, HIL_MODE_ATTITUDE with MAG_ENABLE=1 set results in continuous reboot/APM crash. Added define for AP_COMPASS_HIL when HIL_MODE_ATTITUDE is enabled. 2013-02-05 09:04:34 +11:00
Michael
b9a5be6c8b Plane: added secondary elevator support 2013-02-05 08:57:58 +11:00
Andrew Tridgell
e762c43312 Plane: switch to an array for stream rates
this saves a couple of hundred bytes of flash.
2013-02-05 08:20:41 +11:00
Pat Hickey
85d783d5a9 ArduPlane: fixed memory unsafe member access in GCS_MAVLINK 2013-02-02 22:43:59 -08:00
Andrew Tridgell
ebb7f27962 Plane: minor signed/type fixups 2013-01-27 13:16:26 +11:00
Andrew Tridgell
3caaa27526 Plane: fixed build errors in logging 2013-01-27 12:58:50 +11:00
Randy Mackay
7297a1ff83 Plane: renamed RAW dataflash message to IMU 2013-01-26 17:29:29 +09:00
Randy Mackay
e674626fd6 Plane: rename CUR and CURR to CURRENT for logging
Based on user complaint that log was enabled/disabled using CUR while
message that appeared in log was CURR.
2013-01-26 17:19:42 +09:00
Randy Mackay
6f46f4a7d0 Plane: logging changes to use new faster packet method
also RAW message renamed to IMU
2013-01-26 17:07:21 +09:00
Randy Mackay
d2767b911c AP_Math: switch get_distance_cm to return uint32_t
Includes changes required on ArduCopter and ArduPlane side as well
2013-01-26 17:04:12 +09:00
Andrew Tridgell
9178022a73 Plane: don't change trims if radio_in is zero 2013-01-25 20:44:36 +11:00
Andrew Tridgell
7ab3d93ed4 Plane: fixed typo 2013-01-23 10:06:22 +11:00
Andrew Tridgell
49356b790b Plane: limit number of bytes read per GCS check 2013-01-23 09:35:06 +11:00
Andrew Tridgell
9813468640 Plane: fixed mavlink fetch of 16 character parameter 2013-01-21 16:52:08 +11:00
Andrew Tridgell
4d9a74d742 Plane: cleanup driver declaration
remove a lot of the #if nesting
2013-01-21 16:08:55 +11:00
Andrew Tridgell
4deee014d6 Plane: setup PX4 airspeed analog port 2013-01-21 13:56:28 +11:00
Andrew Tridgell
96b87e3b44 Plane: fixed test baro printout 2013-01-20 22:13:21 +11:00
Andrew Tridgell
2e04d4827a Plane: run PX4 console at 57600 2013-01-20 22:13:21 +11:00
Andrew Tridgell
f9cb9e08ae Plane: fixed orientation of PX4 compass 2013-01-17 17:23:34 +11:00
Andrew Tridgell
9058949558 Plane: fixed some warnings 2013-01-16 14:19:25 +11:00
James Bielman
5631f865b2 Update floating point calculations to use floats instead of doubles.
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Andrew Tridgell
fa3a4c68b6 Plane: use common log reading function 2013-01-15 14:03:51 +11:00
Andrew Tridgell
28352b3548 Plane: ensure ahrs.init() is called 2013-01-13 17:32:48 +11:00
Andrew Tridgell
92c9a4c1ce Plane: start update logging for new API 2013-01-13 17:31:42 +11:00
Andrew Tridgell
bfaf91affe Plane: use an enum for flash log message types 2013-01-13 17:31:42 +11:00
Andrew Tridgell
86f667f6cc Plane: added new SERIAL0_BAUD parameter
this is useful on PX4
2013-01-13 07:39:40 +11:00
Andrew Tridgell
bea9a9d558 Plane: move memcheck_init() earlier in setup() 2013-01-11 10:25:09 +11:00
James Bielman
ab37f833db MS5611: Fix CONFIG_MS5611_SERIAL definitions.
- Make sure the values are defined as integers.  We were always using
  SPI rather than using I2C when desired.
2013-01-09 11:19:51 -08:00
Andrew Tridgell
e0f052dd9a Plane: update for new AP_Param API 2013-01-09 13:30:55 +11:00
Andrew Tridgell
38f56be2c4 Plane: enable hardware sensors on PX4 2013-01-04 21:07:56 +11:00
Andrew Tridgell
2e2f96d721 Plane: cope with a HIL_STATE packet before GPS init 2013-01-04 12:47:08 +11:00
Andrew Tridgell
9e0096ddb5 Plane: fix handling of sensors HIL startup 2013-01-04 12:34:35 +11:00
James Bielman
264db3670e AP_Baro: Add CONFIG_MS5611_SERIAL option to choose between SPI and I2C.
- Update ArduCopter and ArduPlane modules to pass the correct serial
  driver to the MS5611 driver.
- Update barometer examples, assuming SPI.
2013-01-03 13:48:06 -08:00
Andrew Tridgell
868269e037 Plane: switch PX4 to attitude HIL for now
a bit easier to debug
2013-01-03 13:38:54 +11:00
Andrew Tridgell
e8075b1657 Plane: for HIL_SENSORS for PX4 for now
until we have sensor drivers
2013-01-03 11:03:24 +11:00
Andrew Tridgell
07eed60ae4 Plane: use new apm.mk 2013-01-02 17:28:21 +11:00
Andrew Tridgell
2fe77fa6fa Plane: check for APPDIR to pull in px4 build logic 2013-01-02 17:06:44 +11:00
Andrew Tridgell
4cdb3cd390 Plane: use GRAVITY_MSS 2013-01-02 14:45:08 +11:00
Andrew Tridgell
1a49549e3e Plane: start port of main ArduPlane code to AP_HAL_PX4 2013-01-02 14:45:08 +11:00
Andrew Tridgell
b6295c12e1 Plane: fixes for new AP_Relay interface 2013-01-02 10:18:45 +11:00
Craig@3DR
0ed25cf719 Global change all references from
GPS_PROTOCOL_MTK16
to
GPS_PROTOCOL_MTK19
2013-01-02 09:24:31 +11:00
Andrew Tridgell
edad43611d Plane: reset last heartbeat time on startup completion
this gives more time for the GCS to send its first heartbeat
2012-12-26 08:46:36 +11:00
Andrew Tridgell
85e4f67e68 Plane: added a note about the dangers of the FS_GCS_ENABL option 2012-12-25 21:18:39 +11:00
Andrew Tridgell
cf8e648558 CLI: fixed accel setup
disable mavlink callback in CLI
2012-12-24 08:51:33 +11:00
Andrew Tridgell
d54c6989ab Plane: fixed the last build warnings
we now build with no warnings for APM1, APM2 and SITL. Yay!
2012-12-20 22:46:48 +11:00
Andrew Tridgell
dc2b11704f Plane: fixed a build warning 2012-12-20 22:42:44 +11:00
Andrew Tridgell
feca411943 Plane: added new TRAINING mode
this mode gives manual control when the roll or pitch is within the
set limits (the same limits as FBW mode), and prevents the pilot from
flying beyond those limits, essentially a "attitude limited manual"
mode
2012-12-20 22:41:58 +11:00
Andrew Tridgell
1cb4724b7f Plane: fixes for 1280 build 2012-12-20 14:53:24 +11:00
Andrew Tridgell
9a2e77b797 Plane: fully disable relay and mount code on APM1-1280
this saves some more flash space
2012-12-20 14:53:23 +11:00
Andrew Tridgell
772f93ea10 Plane: fixed config for 1280 2012-12-20 14:53:23 +11:00
Pat Hickey
5231e5a959 ArduPlane: fixes for AP_InertialSensor_UserInteract 2012-12-20 14:53:23 +11:00
Andrew Tridgell
3c0440b0b4 Math: use common degrees() and radians() functions 2012-12-20 14:53:22 +11:00
Andrew Tridgell
c63c4f22e2 Plane: fixed formatting 2012-12-20 14:53:22 +11:00
Andrew Tridgell
cf18534163 Plane: use new functions 2012-12-20 14:53:22 +11:00
Pat Hickey
2ad4fed8cd Rover/Copter/Plane: change from vsnprintf to vsnprintf_P 2012-12-20 14:52:38 +11:00
Pat Hickey
edb076a6c5 ArduPlane: use hal's vsnprintf 2012-12-20 14:52:38 +11:00
Andrew Tridgell
62d7fd1a26 Plane: fixed HIL builds 2012-12-20 14:52:37 +11:00
Andrew Tridgell
940cbc900f Plane: use targets.mk 2012-12-20 14:52:35 +11:00
Andrew Tridgell
4913aff8cd Plane: remove unused send_text() function 2012-12-20 14:52:35 +11:00
Pat Hickey
eb530b86e8 move Arduino.mk to /mk/Arduino.mk 2012-12-20 14:52:35 +11:00
Andrew Tridgell
c20481dc94 Plane: SITL has a I2C driver now 2012-12-20 14:52:34 +11:00
Andrew Tridgell
761ab5c3e8 Plane: use AP_HAL_BOARD_DRIVER 2012-12-20 14:52:33 +11:00
Andrew Tridgell
a3e20324ac Plane: added CONFIG_INS_STUB 2012-12-20 14:52:32 +11:00
Andrew Tridgell
41272614ce Plane: simplify board config defines 2012-12-20 14:52:32 +11:00
Andrew Tridgell
73f70cc596 Plane: moved to new GPS init syntax 2012-12-20 14:52:32 +11:00
Andrew Tridgell
18db7b2efd GPS: move _port setting to init()
this is needed to avoid constructor ordering dependencies
2012-12-20 14:52:32 +11:00
Pat Hickey
a70a299c49 ArduPlane: refactor Makefile targets in terms of Arduino.mk targets 2012-12-20 14:52:31 +11:00
Andrew Tridgell
7d27e420ae AP_HAL: remove unnecessary Arduino.h includes 2012-12-20 14:52:30 +11:00
Andrew Tridgell
d473203737 Build: added global board targets 2012-12-20 14:52:30 +11:00
Andrew Tridgell
678947c65d Plane: more fixes for SITL and new AP_Param startup 2012-12-20 14:52:29 +11:00
Pat Hickey
1e48d0fc69 Makefile Targets rewritten to use per-target extension style 2012-12-20 14:52:29 +11:00
Andrew Tridgell
e82deca305 Plane: updates to support AP_HAL SITL 2012-12-20 14:51:40 +11:00
Andrew Tridgell
a78699113d Plane: fixed Makefile for new AP_HAL build approach 2012-12-20 14:51:39 +11:00
Andrew Tridgell
7046fc05e2 Plane: change to send_text_P() for progmem strings 2012-12-20 14:51:39 +11:00
Andrew Tridgell
7c6dd0736e Plane: use hal.storage for eeprom access 2012-12-20 14:51:39 +11:00
Andrew Tridgell
81d77d2bf4 Plane: fixed Makefile targets for AP_HAL 2012-12-20 14:51:38 +11:00
Pat Hickey
f8dec9ae4a ArduPlane: fixes to use CONFIG_HAL_BOARD instead of CONFIG_APM_HARDWARE 2012-12-20 14:51:37 +11:00
Pat Hickey
c441f02426 ArduPlane: init DataFlash obj 2012-12-20 14:51:37 +11:00
Pat Hickey
a14621534c ArduPlane: port from hal.dataflash to old DataFlash api 2012-12-20 14:51:36 +11:00
Pat Hickey
92b0c302f2 ArduPlane: Ported to AP_HAL 2012-12-20 14:51:36 +11:00
Pat Hickey
a4f1f6a5db AP_Progmem: fix dependencies for all sketches touched by AP_HAL_AVR 2012-12-20 14:51:28 +11:00
Pat Hickey
3f1d9d7f69 AP_Param: #include <AP_Param.h> fixups for libraries & sketches
* I mostly went through with grep and added an #include <AP_Param.h> below
  every #include <AP_Common.h>. Not all of these example sketches might
  strictly need AP_Param.
2012-12-20 14:51:19 +11:00
Andrew Tridgell
898aa0b260 Plane: fixed spelling error 2012-12-04 11:38:29 +11:00
Andrew Tridgell
e4949291e5 Plane: preparing for 2.68 release 2012-12-04 11:24:24 +11:00
Andrew Tridgell
805a340350 Plane: enable attitude and raw logging in HIL modes 2012-12-04 11:13:33 +11:00
Andrew Tridgell
cbb97f7294 Plane: added apm2 hilsensors target 2012-12-04 09:05:02 +11:00
Andrew Tridgell
24e1af1c82 Plane: fixed sensors and attitude HIL
we now use the Stub version of the InertialSensor driver. In sensors
HIL we can now correctly drive the AHRS code.
2012-12-03 23:26:39 +11:00
Andrew Tridgell
53951f995a Plane: fixed GPS course in HIL 2012-12-03 17:38:55 +11:00
Andrew Tridgell
567cb47d35 Plane: fixed SERVO_OUTPUT_RAW for HIL 2012-12-03 17:38:31 +11:00
Andrew Tridgell
1104287aa2 Plane: use enum FlightMode in more places 2012-12-01 08:15:48 +11:00
Andrew Tridgell
f5abc2c25e Plane: switch to an enum for flight modes 2012-12-01 08:08:54 +11:00
Andrew Tridgell
a6d8dbeac2 Plane: update ArduPlane for new ins interface 2012-11-30 07:15:18 +11:00
Andrew Tridgell
0260559147 Plane: fixed throttle slew limit code
starting at 1000 is a very bad idea - a petrol engine could cut out
2012-11-28 12:13:09 +11:00
Andrew Tridgell
697c386075 Plane: use correct throttle range in slewrate 2012-11-28 11:42:05 +11:00
Andrew Tridgell
845dd88091 Plane: make THR_SLEWRATE docs clearer 2012-11-28 11:41:39 +11:00
Andrew Tridgell
92cd631ce5 Plane: added THR_PASS_STAB parameter
this allows direct passthru of throttle in STABILIZE and FBWA, which
is useful for nitro planes wher you have a throttle cut switch that
drops the throttle below normal minimum.
2012-11-26 23:33:05 +11:00
Andrew Tridgell
1059ef2a54 Plane: fixed secondary aileron and manual aux servos in failsafe
the servo value wasn't being written to APM_RC while in failsafe for
these aux channels
2012-11-26 23:32:57 +11:00
Andrew Tridgell
a87394fff2 Plane: don't do accel calibration in HIL mode
this should fix the hang on startup
2012-11-25 21:53:37 +11:00
Andrew Tridgell
56e4cbfb1d Plane: allow reboot on APM1, and add reboot to main CLI menu 2012-11-24 18:20:37 +11:00
Andrew Tridgell
f8a95e4084 APM: preparing for 2.67 release 2012-11-21 22:28:30 +11:00
Andrew Tridgell
84300c85d6 APM: make it possible to run the CLI on any serial port 2012-11-21 21:41:34 +11:00
Andrew Tridgell
704da2a5d9 MAVLink: make it possible to enter the CLI over the radio
this only works on the APM2, where UART0 is also the radio port
2012-11-21 14:11:05 +11:00
Andrew Tridgell
8f108e2eb3 APM: added AMP_OFFSET option
thanks to Alexey Kozin!
2012-11-21 13:34:27 +11:00
Andrew Tridgell
61f2e18e2e APM: allow ailerons to move fully during servo demo 2012-11-21 13:34:27 +11:00
Andrew Tridgell
fcbd3a823b APM: added a new type of auxilary aileron, with rc input
a AileronWithInput assumes you have setup your RC transmitter to give
the right trim and input on the secondary aileron
2012-11-21 13:34:26 +11:00
Michael Oborne
a5e3ce4655 remove cli planner mode - no longer used 2012-11-21 07:45:45 +08:00
Andrew Tridgell
a600ccece5 APM: support 16 character parameter names 2012-11-20 21:36:13 +11:00
Andrew Tridgell
a5ed0de2cf APM: set MANUAL_LEVEL to 1 on successful accel calibration 2012-11-20 19:27:52 +11:00
Andrew Tridgell
fd3993287d INS: disable accel calibration on the 1280
this would put us well over 128k in sketch size
2012-11-20 18:41:04 +11:00
Andrew Tridgell
2f287846b5 APM: don't use mavlink msgs for accel cal in cli 2012-11-20 18:32:27 +11:00
Andrew Tridgell
3aeaf2ece6 APM: k_param_imu is now unused 2012-11-20 18:32:27 +11:00
Andrew Tridgell
69fbcc8683 MAVLink: fixed accel and gyro sensor offsets in MAVLink 2012-11-20 18:32:26 +11:00
Andrew Tridgell
f80783665f APM: fixed throttle display to always be between 0 and 100
when rc3 is below RC3_MIN, don't give an invalid value
2012-11-20 13:50:19 +11:00
Andrew Tridgell
7b733cd12b APM: fixed altitude_filter for new LowPassFilter syntax 2012-11-19 08:09:44 +11:00
Andrew Tridgell
8d1905a40b APM: change WIND direction to match convention
Thanks to Leo Hogg for pointing this out
2012-11-19 07:16:47 +11:00
Andrew Tridgell
531e62d3b5 MAVLink: improve usefulness of logged GPS velocities
we need them to align with time to use them for accelerations
2012-11-17 17:45:30 +11:00
rmackay9
cdfd3f9ccc ArduCopter, ArduPlane: rename ap variable in GCS_Mavlink.pde to resolve compiler warning re shadowing of variable 'ap'
Changed ArduPlane to keep function consistent with ArduCopter
2012-11-12 13:30:04 +09:00
Andrew Tridgell
fddfb0b1a3 MAVLink: update compass health in SYS_STATUS
this will make it easier to tell if a I2C error occurred in flight
2012-11-12 11:26:54 +11:00
rmackay9
2df7a407da ArduPlane: fix HIL build 2012-11-07 21:23:07 +09:00
rmackay9
d9b4407e64 AP_InertialSensor: changes after review with Tridge.
sanity checking added to accelerometer calibration routine.
user feedback is sent using gcs_send_text_fmt instead of Serial.printf.
moved ins parameters to new eeprom number to avoid conflicts with older parameters.
other small changes including renaming of functions and parameters.
2012-11-07 19:21:15 +09:00
rmackay9
ef727bbb3c ArduPlane: move to use new INS library instead of IMU library 2012-11-07 19:21:03 +09:00
Andrew Tridgell
8652bfee8d APM: added RSSI_PIN option for receiver RSSI
this allows you to configure the pin for receiver RSSI without
recompiling
2012-11-06 22:04:41 +11:00
Andrew Tridgell
c7b47a0e47 APM: allow for arbitrary ranges and reversal on 2nd aileron
this ensures you can setup a 2nd aileron with different reversal from
main aileron
2012-11-05 23:37:58 +11:00
Andrew Tridgell
9c140356f5 APM: remove unused variable 2012-11-05 15:22:56 +11:00
Andrew Tridgell
2793e432ff APM: use raw GPS velocity in GLOBAL_POSITION_INT
a much more useful value to log
2012-11-05 14:58:40 +11:00
Andrew Tridgell
aa236c43f8 APM: prepare for 2.66 2012-10-31 13:25:19 +11:00
Andrew Tridgell
81d507d39e APM: fixed differential spoilers in manual mode
make them follow the elevons
2012-10-31 12:43:53 +11:00
Andrew Tridgell
8c0296b27a APM: fixed additional aileron channels in manual mode 2012-10-31 12:43:53 +11:00
Xichen Shi
8c46fced16 APM: Added functionality to use differential spoilers in elevon mode
spoiler 1 and 2 are connected to 2 auxiliary channels, functions are
set to 16 on left wing and 17 om right wing respectively. Worked in
FBW + mode (auto etc.). No manual mode supported yet (need more
channels in my case).
2012-10-31 12:43:42 +11:00
Andrew Tridgell
e479af67ff APM: fixed loiter radius docs to reflect new limit 2012-10-30 16:19:24 +11:00
Pat Hickey
d4bb8a10d7 Update ArduCopter and ArduPlane dependencies on AP_Menu 2012-10-18 20:53:39 -07:00
Andrew Tridgell
07c291bb73 APM: fixed a comment typo 2012-10-16 17:21:04 +11:00
Andrew Tridgell
f828956cb8 battery: use set_pin() to allow pins to be changed at runtime 2012-10-16 17:20:49 +11:00
rmackay9
775489d658 ArduPlane: added BATT_VOLT_PIN and BATT_CURR_PIN parameters to allow support for new 3DR IV battery monitor 2012-10-13 20:51:41 +09:00
Andrew Tridgell
0bc1f89f27 APM: fixed typo 2012-10-11 15:03:52 +11:00
Andrew Tridgell
c9f10f0e00 APM: fixed auto-takeoff with zero lat/lng
consider a non-zero altitude to mean that we should use the relative
altitude specified
2012-10-11 15:03:00 +11:00
Andrew Tridgell
0495a0debc APM: make error msg clearer 2012-10-11 11:51:24 +11:00
rmackay9
f695db61ea ArduPlane: added AP_Semaphore.h to list of includes 2012-10-06 13:14:28 +09:00
Michael Oborne
a38fef65c7 AP,AC Add ability to override an altitude in any auto mode, on the current active target 2012-09-30 07:29:33 +08:00
rmackay9
8c6fd340d7 AP_AHRS: added scheduler parameter to init
Required by the AP_AHRS_MPU6000 class which needs to disable timed processes that could interfere with it's communication with the mpu6000
2012-09-29 13:51:21 +09:00
rmackay9
41fbb19cf5 AP_InertialSensor_MPU6000: replaced _cs_pin parameter with #define and saved 1 byte of memory
Updated ArduCopter, ArduPlane and example sketches in AP_InertialSensor, AP_IMU and AP_AHRS libraries because they no longer need to pass in cs_pin to the constructor
2012-09-28 19:21:59 +09:00
Andrew Tridgell
bbec662483 APM: fixed build warning 2012-09-25 07:21:03 +10:00
Andrew Tridgell
fbc053e6e4 APM: change to one low priority status buffer per GCS instance
this allows us to operate the low priority messages on each link
independently.

Thanks to David Buzz for the suggestion!
2012-09-24 17:39:19 +10:00
Andrew Tridgell
51aeb2dd4c APM: prepare for 2.65 2012-09-24 07:14:30 +10:00
Andrew Tridgell
d5c35fcc8b APM: fixed stick mixing for STABILISE mode
this is embarrassing
2012-09-24 07:14:30 +10:00
Andrew Tridgell
a4c3c5973d APM: prepare for 2.64 release 2012-09-23 19:32:56 +10:00
Andrew Tridgell
56c354eb4f APM: fixed stick mixing in CIRCLE mode on throttle failsafe
Many thanks to Andke for finding this bug!
2012-09-23 19:27:42 +10:00
Andrew Tridgell
41017442f8 APM: removed unnecessary waypoint_sending flag 2012-09-22 20:17:19 +10:00
Andrew Tridgell
f0f47f929a APM: send right parameter index when possible 2012-09-22 20:17:17 +10:00
Andrew Tridgell
764d86216e APM: fixed mission reset by setting waypoint to zero
this does a full mission reset (equivalent to rebooting)
2012-09-22 20:17:13 +10:00
Andrew Tridgell
6bae5ecd51 APM: added THR_SUPP_MAN option
this allows for manual throttle control during auto throttle
suppression. This is useful for keeping a petrol engine idling before
takeoff
2012-09-22 20:17:06 +10:00
Andrew Tridgell
5c402fa398 APM: allow RawSensors stream rate to be saved if <= 5
this makes it possible to configure all stream rates via a parameter
file
2012-09-22 20:17:02 +10:00
Andrew Tridgell
63940d3ab6 APM: don't send GPS_STATUS MAVLink message
it now provides no useful information as satellites_visible is in
GPS_RAW_INT in MAVLink 1.0
2012-09-22 20:12:43 +10:00
Andrew Tridgell
cbc4a57abb APM: send airspeed sensor value, not estimate, when enabled
this solves the problem of people reporting that airspeed is not shown
when ARSPD_USE is zero.
2012-09-20 08:00:54 +10:00
Andrew Tridgell
832c5e996e APM: make it possible to fetch parameters by index 2012-09-20 07:42:46 +10:00
Andrew Tridgell
3077de0d33 APM: much faster parameter fetching
allow up to 30% of bandwidth to be used for parameter send
2012-09-20 07:29:23 +10:00
Andrew Tridgell
68f1b6336f APM: tweak the default options for an APM1 1280 board
this allows a few more things to fit in
2012-09-19 19:36:19 +10:00
Andrew Tridgell
cebb67e1df APM: removed the unused sonar code
when we start supporting a sonar we'll add a AP_Sonar library, like
AP_Airspeed
2012-09-19 19:35:22 +10:00
Andrew Tridgell
2324997e16 APM: added ALT_OFFSET parameter
useful to adjust for barometric pressure changes during a long flight
2012-09-19 16:23:25 +10:00
Andrew Tridgell
37cb56f3e1 APM: save another few bytes 2012-09-18 13:58:50 +10:00
Andrew Tridgell
df962d25a8 APM: fixed a comment 2012-09-18 13:58:49 +10:00
Andrew Tridgell
12dc2e79cf APM: save 100 bytes of memory
remove flight_mode_strings array
2012-09-18 13:58:49 +10:00
Andrew Tridgell
86face0a03 APM: preparing for 2.63 release 2012-09-17 17:32:13 +10:00
Andrew Tridgell
4d4a95501f APM: updates for new GPS detection 2012-09-17 14:45:47 +10:00
Andrew Tridgell
7e8ef0ae95 APM: fixed handling of DO_REPEAT_SERVO and DO_REPEAT_RELAY 2012-09-17 14:45:47 +10:00
Andrew Tridgell
c8e84d18a4 APM: tidy up a comment 2012-09-16 15:51:13 +10:00
Andrew Tridgell
c0798730a8 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
127117b640 APM: ensure DO_SET_SERVO channels are enabled 2012-09-16 15:08:14 +10:00
Andrew Tridgell
208b878988 APM: allow update of last waypoint
fixed off by one error
2012-09-16 15:06:26 +10:00
Michael Oborne
94f956a0ca fix AP attitude hil - with randys help 2012-09-15 16:47:18 +08:00
Andrew Tridgell
b55e7903aa APM: prepare for 2.62 release 2012-09-13 12:02:18 +10:00
Andrew Tridgell
bad73b0686 APM: fixed elevon mixing
this was broken in 2.61
2012-09-13 12:01:40 +10:00
Andrew Tridgell
6e9abb616a 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
589c8fcc12 APM: report throttle and ground speed mission changes 2012-09-12 13:09:32 +10:00
Andrew Tridgell
b1408008c9 APM: allow for landing pitch control until final stage 2012-09-12 13:09:16 +10:00
Andrew Tridgell
05e72c6e68 APM: fixed roll in landing approach 2012-09-12 11:53:17 +10:00
Andrew Tridgell
5f3ffe4839 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
7e672628ea 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
c9a299665c 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
0812fc4890 APM: reboot only works on the APM2 2012-09-10 11:50:48 +10:00
Andrew Tridgell
cb88681914 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
e2779523ea 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
feb3fe77ce 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
5c3595e0dc 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
657dd5969f APM: preparing for 2.61 release 2012-09-08 18:36:17 +10:00
Andrew Tridgell
49468953a3 APM: updated for new RC_Channel_aux API 2012-09-08 15:14:41 +10:00
Andrew Tridgell
a6422be8fb APM: added mtk and mtk16 build targets
useful for testing non-auto gps detection
2012-09-08 12:43:36 +10:00
Andrew Tridgell
f26b9ab286 APM: prevent crosstrack from takeoff point after takeoff completion 2012-09-08 11:37:14 +10:00
Andrew Tridgell
dec12c7370 APM: use ahrs.airspeed_estimate() in two more places
this applies the wind constraint
2012-09-08 11:37:11 +10:00
Andrew Tridgell
cde7d8c5e7 APM: fixed some compiler warnings 2012-09-08 10:14:32 +10:00
Andrew Tridgell
d07d42403e APM: tidy up an if() statement 2012-09-08 10:14:20 +10:00
Andrew Tridgell
164c60d25f 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
130b26e1f9 APM: support DO_SET_SERVO command 2012-09-08 10:06:53 +10:00
Andrew Tridgell
96ea350143 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
a446a7a9ed APM: allow serial buffer size to be configured
very useful for packet forwarding setups
2012-09-08 10:06:35 +10:00
Andrew Tridgell
9b2ad55773 APM: added forwarding of unknown MAVLink types 2012-09-08 10:06:15 +10:00
Andrew Tridgell
68705fe7e6 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
cd08420c3e AP fix takeoff alt issue
issue 733
2012-09-06 20:19:12 +08:00
Pat Hickey
b02340fe10 APM_Config.h for ArduCopter/ArduPlane: better descr of APM2_BETA_HARDWARE 2012-09-05 15:36:57 -07:00
Andrew Tridgell
83153eebd4 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
9a987ce116 APM: fixed docs for LIM_PITCH_MIN 2012-08-30 14:55:08 +10:00
Michael Oborne
1e7adac365 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
f6c3197cd2 APM: added new TELEM_DELAY parameter
number of seconds to delay telemetry
2012-08-30 08:59:39 +10:00
Craig Elder
4ad516c445 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
e2b8817a89 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
fce01464b1 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
85e9fa8c3b APM: fixed another problem with DO_JUMP
off by one error!
2012-08-28 20:18:24 +10:00
Andrew Tridgell
ded64fd9ea APM: check for geofence fence total of 0 2012-08-28 20:18:24 +10:00
Andrew Tridgell
d13d117e61 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
dcbd0fbd44 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
b48a1f1fc4 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
769f04b7d6 Improve comments, no functional changes 2012-08-27 01:32:27 +02:00
Andrew Tridgell
ecc6a52904 APM: report estimated airspeed if airspeed not available 2012-08-25 17:49:26 +10:00
Andrew Tridgell
3c7d7ba228 APM: use airspeed estimate for speed scaling if available 2012-08-25 17:49:26 +10:00
Andrew Tridgell
c9cf483822 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
abe5bbfa4d APM: support forcing MANUAL of FBWA mode over MAVLink 2012-08-24 15:18:22 +10:00
Andrew Tridgell
b4134de550 APM: ensure fence_total is positive
thanks to David Buzz for the suggestion
2012-08-24 14:56:46 +10:00
Andrew Tridgell
c35530c362 APM: fixed wheeled takeoff with Jons new controllers 2012-08-22 17:34:01 +10:00
Andrew Tridgell
c730d9072e APM: prepare for ArduPlane 2.60 2012-08-22 16:28:38 +10:00
Andrew Tridgell
2d8f99433c 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
4668f8b7db APM: ensure takeoff_complete is reset 2012-08-22 16:17:55 +10:00
Andrew Tridgell
95c941664f 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
6ab2a861f7 APM: added RSSI to RC_CHANNELS_RAW as well
and prevent double read
2012-08-22 13:58:25 +10:00
Andrew Tridgell
2d5bb7c51b APM: added RSSI in raw message too 2012-08-22 13:48:09 +10:00
Andrew Tridgell
c0c0b8c976 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
d445482ace 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
9e926eae51 APM: optional build with new controller libs 2012-08-22 12:39:07 +10:00
uncrustify
70048f3d6f uncrustify ArduPlane/Parameters.h 2012-08-21 19:19:51 -07:00
uncrustify
3bee769405 uncrustify ArduPlane/config.h 2012-08-21 19:19:51 -07:00
uncrustify
d0ed723c1e uncrustify ArduPlane/planner.pde 2012-08-21 19:19:51 -07:00
uncrustify
a8e5900624 uncrustify ArduPlane/system.pde 2012-08-21 19:19:51 -07:00
uncrustify
8c2d604971 uncrustify ArduPlane/test.pde 2012-08-21 19:19:51 -07:00
uncrustify
d504ae680a uncrustify ArduPlane/setup.pde 2012-08-21 19:19:51 -07:00
uncrustify
f7b8fecad9 uncrustify ArduPlane/GCS_Mavlink.pde 2012-08-21 19:19:51 -07:00
uncrustify
0e8a76ccdd uncrustify ArduPlane/ArduPlane.pde 2012-08-21 19:19:51 -07:00
uncrustify
ff4afa767b uncrustify ArduPlane/commands.pde 2012-08-21 19:19:51 -07:00
uncrustify
43991712be uncrustify ArduPlane/radio.pde 2012-08-21 19:19:50 -07:00
uncrustify
d5767ef817 uncrustify ArduPlane/Attitude.pde 2012-08-21 19:19:50 -07:00
uncrustify
0f415bbc6a uncrustify ArduPlane/Parameters.pde 2012-08-21 19:19:50 -07:00
uncrustify
39ab309b87 uncrustify ArduPlane/Log.pde 2012-08-21 19:19:50 -07:00
uncrustify
b960619195 uncrustify ArduPlane/defines.h 2012-08-21 18:59:05 -07:00
uncrustify
2c56e5c690 uncrustify ArduPlane/APM_Config.h 2012-08-21 18:59:05 -07:00
uncrustify
bd0146f776 uncrustify ArduPlane/GCS.h 2012-08-21 18:58:53 -07:00
uncrustify
5267ea6aad uncrustify ArduPlane/sensors.pde 2012-08-21 18:58:40 -07:00
uncrustify
e212c152f7 uncrustify ArduPlane/geofence.pde 2012-08-21 18:58:31 -07:00
uncrustify
326ca1b7cd uncrustify ArduPlane/failsafe.pde 2012-08-21 18:58:24 -07:00
uncrustify
4e795d4f1e uncrustify ArduPlane/commands_process.pde 2012-08-21 18:58:17 -07:00
uncrustify
909e39d667 uncrustify ArduPlane/navigation.pde 2012-08-21 18:58:17 -07:00
uncrustify
4793162a9d uncrustify ArduPlane/commands_logic.pde 2012-08-21 18:58:11 -07:00
uncrustify
9b133019b3 uncrustify ArduPlane/events.pde 2012-08-21 18:57:59 -07:00
uncrustify
0683be294b uncrustify ArduPlane/climb_rate.pde 2012-08-21 18:57:21 -07:00
uncrustify
c69772388b uncrustify ArduPlane/control_modes.pde 2012-08-21 18:57:21 -07:00
Andrew Tridgell
343f7d2de0 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
6d11940ada AHRS: removed Quaternion build support from APM/ACM/rover 2012-08-22 10:42:21 +10:00
Andrew Tridgell
bf2319a0fc AHRS: fixed reference to AHRS var_info for APM and ACM 2012-08-21 15:58:32 +10:00
Andrew Tridgell
c5b77f3909 APM: reset steering PID integrator in reset_I() 2012-08-21 15:01:01 +10:00
rmackay9
11e946eb54 ArduCopter, ArduPilot: revert mavlink delay callback to be "unsigned long" 2012-08-18 20:34:41 +09:00
rmackay9
360c1198a6 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
6d489947cf ArduPlane: replaced many "int" with "int16_t", "long" with "int32_t" 2012-08-18 18:26:13 +09:00
rmackay9
9773c8ce93 ArduPlane: commented out two unused variables to remove compiler warning 2012-08-18 13:20:34 +09:00
Andrew Tridgell
0868bb76e5 APM: fixed SITL build 2012-08-17 16:28:45 +10:00
Andrew Tridgell
5e690d5680 APM: added parameter FBWB_ELEV_REV
this fixes issue 343
2012-08-17 15:04:53 +10:00
Andrew Tridgell
6300fa7399 math: more abs() fixes
abs() is 16 bit
2012-08-16 15:17:42 +10:00
Andrew Tridgell
034fb5b194 APM: fixed hil build 2012-08-16 12:53:37 +10:00
Andrew Tridgell
d27e51f20a 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
ed064b2506 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
Andrew Tridgell
c960db7af5 APM: allow for separate calibration of airspeed/barometer
this is useful just before takeoff, to account for temperature changes
2012-08-15 19:49:09 +10:00
Andrew Tridgell
ad73c229ab APM: added LAND_FLARE_ALT and LAND_FLARE_SEC
these allow you to configure the altitude and time before touchdown to
flare the plane and lock the heading. Useful on larger planes.
2012-08-15 18:11:16 +10:00
Andrew Tridgell
1252ddfe0c APM: rename RDRSTEER to WHEELSTEER
thanks to Jon for the suggestion
2012-08-15 16:28:59 +10:00
Andrew Tridgell
ffbd229841 APM: use AHRS position for geo-fence
this allows it to take account of dead-reckoning
2012-08-15 14:31:10 +10:00
Andrew Tridgell
df3c8a5bc0 APM: when land_complete is true, use land_pitch
this gives a flare on final landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell
2d7fcbd14b APM: reload airspeed and throttle after landing
this allows for restarting a mission after landing with reasonable
airspeed values
2012-08-15 12:39:35 +10:00
Andrew Tridgell
47be6d8ad1 AP_Airspeed: remove airspeed filter and run at 10Hz
this saves on the filter memory, and gives just as good a result
2012-08-15 12:39:35 +10:00
Andrew Tridgell
e26e8b3b67 APM: added RDRSTEER_ PID for steering on ground
this allows for rolling takeoff with steering, and use of rudder in
landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell
52064772ee APM: report speed changes via MAVLink 2012-08-15 12:39:35 +10:00
Andrew Tridgell
817017658d APM: implement FENCE_ACTION_REPORT
when FENCE_ACTION is set to FENCE_ACTION_REPORT a fence breach is
reported, but the flight mode is not changed
2012-08-15 12:39:35 +10:00
Andrew Tridgell
8cb55eb75a APM: keep the time of the last heartbeat message
this will be used for failsafe processing
2012-08-15 12:39:34 +10:00
Andrew Tridgell
0584017aff APM: expose change_command() and geofence_breached() to libraries
this makes a failsafe library easier
2012-08-15 12:39:34 +10:00
Andrew Tridgell
ff6301fb46 APM: show waypoint number in jump message 2012-08-15 12:39:34 +10:00
Andrew Tridgell
92bdc23ab6 APM: minor formatting fix 2012-08-15 12:39:34 +10:00
Andrew Tridgell
2865434d02 APM: added 'OBC' failsafe module for ArduPlane
this adds FS_* parameters for setting up APM to follow the outback
challenge failsafe rules.

This includes:

 - manual pin
 - heartbeat pin
 - waypoint for heartbeat failure
 - waypoint for GPS failure
2012-08-15 12:39:34 +10:00
Andrew Tridgell
5631b90222 APM: interpret zero lat/lng as being current location
this makes it easy to have a "loiter in current position" mission
element
2012-08-15 12:39:34 +10:00
Andrew Tridgell
93f1d5645b APM: fixed LOITER_TIME and LOITER_TURNS
These now follow the mavlink spec. Loiter time is in seconds, and
loiter turns is now 32 bit angle, so can handle larger numbers of
turns.
2012-08-15 12:39:34 +10:00
Andrew Tridgell
3bdc7d41be INS: disable INS AP_Param table when not on APM1 hardware
this could cause overwriting of memory with default values
2012-08-11 22:06:03 +10:00
Andrew Tridgell
c31eef59ae Mavlink: log wind estimation result 2012-08-11 22:06:03 +10:00
Andrew Tridgell
d9b09d2c93 APM: allow for navigation by dead-reckoning
we now ask AHRS if we have a position estimate, and use that if
available
2012-08-11 12:01:08 +10:00
Andrew Tridgell
9fea3e3ac1 APM: pass airspeed sensor to AHRS 2012-08-11 08:57:44 +10:00
Andrew Tridgell
0ffc89d512 APM: support the MISSION_WRITE_PARTIAL_LIST command
this allows missions to be partially updated in flight
2012-08-09 17:13:36 +10:00
Andrew Tridgell
dc47074dbd MAVLink: removed the need for Mavlink_compat.h
we have now fully transitioned to MAVLink 1.0, so we no longer need
the compatibility layer and the old names in the code
2012-08-09 12:22:46 +10:00
Andrew Tridgell
2a7b298bbc MAVLink: moved mavlink variables back to library
these were moved to the main sketches to allow for compile time
selection of MAVLink 0.9 vs 1.0. We no longer support 0.9, so we can
move it back, which simplifies some test sketches
2012-08-09 12:06:21 +10:00
Andrew Tridgell
5498d347f3 APM: Added RST_MISSION_CH option
this allows a pilot to reset the mission using a transmitter
switch. Very useful for repeating a mission during testing
2012-08-09 10:33:16 +10:00
Andrew Tridgell
e2c8ec2c9e APM: removed THROTTLE_REVERSE option
Better to use RC3_REV
2012-08-09 10:04:44 +10:00
Andrew Tridgell
e133900c68 APM: Added STICK_MIXING option
this replaces the compile time option. Disabling during long distance
flights when the transmitter may be out of range is useful.
2012-08-09 08:53:29 +10:00
Amilcar Lucas
d34549f386 Add an optional second mount to ArduPlane and ArduCopter 2012-08-08 23:22:24 +02:00
Andrew Tridgell
dc99586981 APM: removed pointless load() call 2012-08-08 16:51:23 +10:00
Andrew Tridgell
dcc50b5705 AP_Airspeed: removed values passed to constructor 2012-08-08 16:38:39 +10:00
Andrew Tridgell
2114acddf1 APM: fixed default flap speed
the default of 255 translates to -1 as a AP_Int8, so use zero to mean
no flaps
2012-08-08 13:04:21 +10:00
Andrew Tridgell
5bfd1200d6 APM: change variables to use _cm, _cd and _ms suffix for units
this makes it less likely that we mix up units
2012-08-08 12:12:30 +10:00
Andrew Tridgell
a823c9ceae APM: removed cli slider and dipswitch options
use mavlink/eeprom for all config
2012-08-08 12:12:29 +10:00
Andrew Tridgell
12cd6b68ff AP_Param: update ArduPlane core for new AP_Param interface 2012-08-08 12:11:57 +10:00
Jonathan Challinger
7815e3d810 APM: fixed rounding of altitude
the cast was rounding to the nearest meter
2012-08-08 12:07:35 +10:00
Amilcar Lucas
f14237126a Add me :) 2012-08-06 00:40:12 +02:00
Amilcar Lucas
b8c7b8a786 RC_Channel: Allow each channel to know who they are, this simplifies the enabling and output function calls. 2012-08-05 23:08:31 +02:00
Amilcar Lucas
9c1ac2d9e6 More work on ch9, 10 and 11 2012-08-04 19:44:41 +02:00
Amilcar Lucas
95f2af6d2d Implement set ROI 2012-08-04 18:44:29 +02:00
Amilcar Lucas
4ba847c449 The mount type must be updated periodically 2012-08-04 18:44:08 +02:00
Amilcar Lucas
bbc4bdb729 More flexible RC support 2012-08-04 18:39:20 +02:00
Amilcar Lucas
50b5d33745 Enable camera triggering by default 2012-08-04 16:32:47 +02:00
Amilcar Lucas
82b82283be ATmega1280 does not have enough memory for mount support so disable AUTO GPS support, to allow mount support to fit.
This should almost have no side effects, because the most users use MTK anyways.
If the user defined a GPS protocol, than we will NOT overwrite it
2012-08-04 16:32:20 +02:00
Andrew Tridgell
301ab00c5b APM: added control switch debouncer
this adds a switch debouncer, similar to the one used in
ArduCopter. I'm adding this after a flight on the weekend where noise
on the control mode channel caused a mode change away from auto.

To prevent this change adding excessive mode switch latency, it also
moves the reading of the control switch to the 10Hz loop, away from
the 3.3Hz loop. That gives us 0.2s delay in mode switch changes and
allows for spikes in the control mode for 0.1 seconds without changing
mode.
2012-08-01 13:59:37 +10:00
rmackay9
176e6fdd68 ArduPlane: bug fix to global var_info parameter list for ahrs object. 2012-08-01 10:52:34 +09:00
Andrew Tridgell
0b49ac0ed0 APM: fixed overflow in geofence code for altitudes above 327 meters 2012-07-31 15:46:47 +10:00
Andrew Tridgell
cb61c3be96 APM: fixed case of 'LAND_PITCH_CD'
mavlink parameters are uppercase by convention
2012-07-29 17:07:38 +10:00
rmackay9
06e35820e5 ArduPlane: allow MPU6000's DMP to be used for attitude estimation.
Enable by adding this line to APM_Config.h:
#define DMP_ENABLED ENABLED
2012-07-28 19:50:40 +09:00
rmackay9
842ce47219 ArduPlane: change to Parameters.pde to support moving var_info from AP_AHRS to AP_AHRS_DCM 2012-07-28 14:31:01 +09:00
Michael Oborne
cb0eacca37 AP Fix Hil Airspeed calc in m/s 2012-07-26 20:21:17 +08:00
Andrew Tridgell
9eb05a2e1a APM: update version for 2.50 release 2012-07-26 11:36:17 +10:00
Andrew Tridgell
6bcfe913f7 APM: added a SCALING_SPEED parameter
this allows users to adjust the base speed used for scaling roll/pitch
PIDs. This can be used to make PIDs work for both airspeed and
non-airspeed control
2012-07-26 11:30:23 +10:00
Andrew Tridgell
3c2fc72654 APM: fixed HIL build 2012-07-26 10:09:07 +10:00
Andrew Tridgell
07992bc943 APM: fixed build
the SET_ROI commands are not supported yet
2012-07-26 10:03:36 +10:00
Andrew Tridgell
7e697e4abd APM: switch back to old nav_roll calculation
the old nav_roll will be used for the 2.50 release to prevent the need
for re-tuning. For the release after that we will use the new
calculation
2012-07-26 10:03:36 +10:00
Michael Oborne
39ad8b5eec AP fix sitl hil attitude mode. 2012-07-24 07:18:25 +08:00
Andrew Tridgell
9e72d4c3f4 APM: fixed a problem with wayoints completing early
when a user forces a waypoint jump, we may need to reset prev_WP to
prevent us thinking the waypoint is complete before we have started
2012-07-21 20:32:07 +10:00
Andrew Tridgell
85465c9126 MAVLink: fixed another two places where micros() was used for a millisecond time 2012-07-20 11:57:15 +10:00
Jason Short
98237a0e00 Added Oilpan INS group object param 2012-07-18 23:07:50 -07:00
Jason Short
e574f3c8cf Arduplane: Fixed unsigned int comparison warning 2012-07-18 23:07:34 -07:00
Jeff Taylor
d02655ac56 APM: Fixed bug where landing_pitch wasnt initialized properly
this adds a new LAND_PITCH_CD parameter to control the landing pitch
when an airspeed sensor is not being used
2012-07-19 13:59:30 +10:00
Andrew Tridgell
d6e370886f APM: rename airspeed_cruise to airspeed_cruise_cm to make the units clearer
it is in cm/s, not m/s
2012-07-19 11:50:41 +10:00
Andrew Tridgell
1cf5057c61 APM: Use g.airspeed_cruise for turn rate calculation if the airspeed sensor is disabled.
This gives our best approximation for auto flight
2012-07-19 11:50:41 +10:00
Jonathan Challinger
c7da63509b APM: Removed unused YAW_DAMPENER code.
YAW_DAMPENER was defined as zero
2012-07-19 11:50:21 +10:00
Jonathan Challinger
d9d055ef78 APM: Removed incorrect nav_gain_scaler from nav_roll calculation.
nav_gain_scaler was originally added due to a perceived improvement in
loiter performance, but is incorrect for navigation. Turn rate is a
function of airspeed and bank angle, ground speed has no effect on
that.
2012-07-19 11:50:06 +10:00
Amilcar Lucas
3d385c0fb4 ArduPlane parameters: re-order the files, looks like the second file gets ignored :( 2012-07-18 22:52:17 +02:00
Amilcar Lucas
8a8e11fa7f ArduPlane parameters: Add base class info as well 2012-07-18 22:39:49 +02:00
Amilcar Lucas
610fdeacc1 Support up to 11 servos in APM2
Conflicts:

	ArduPlane/ArduPlane.pde
2012-07-18 22:01:19 +02:00
Michael Oborne
636fcadde4 fix rc libray param gen 2012-07-18 07:03:39 +08:00
Jonathan Challinger
fc4f111d15 Changed mavlink GLOBAL_POSITION_INT.relative_alt message to correctly return altitude above ground. 2012-07-17 16:15:11 +10:00
Andrew Tridgell
de3c9ce56d Airspeed: change APM to use new AP_Airspeed library
the next step is AHRS dead reckoning
2012-07-16 11:21:50 +10:00
Michael Oborne
67ecaa9252 AP fix duplicate keys in param config 2012-07-13 07:06:01 +08:00
Amilcar Lucas
dfe0983e1e Merge the changes from APM_Camera branch into ArduCopter
Conflicts:

	ArduCopter/Camera.pde
	ArduCopter/Parameters.pde
2012-07-11 00:39:13 +02:00
Andrew Tridgell
c80a88766f APM: added credit for FBW altitude limit code
thanks Yuri!
2012-07-10 08:36:50 +10:00
Andreas M. Antonopoulos
de64c05f8e param_parser: cosmetic
Arduplane: doc fixes
2012-07-08 21:45:26 -07:00
Andrew Tridgell
78c51b945f APM: fixed DisplayName/Description mixups in parameter docs 2012-07-07 17:40:43 +10:00
Andrew Tridgell
f6d7d1bc59 APM: changed PID library to do automatic deltat calculation
this fixes a problem with the HDNG2RLL PID, which was using the wrong
time base and prevents similar bugs from happening in the future
2012-07-06 19:59:18 +10:00
Andrew Tridgell
58fd91165f APM: fixed some build warnings and type errors 2012-07-06 19:59:18 +10:00
Andrew Tridgell
5abd26a142 APM: more parameter documentation 2012-07-05 15:06:45 +10:00
Andrew Tridgell
21f06f8a39 GeoFence: fixed default return altitude units
off by 100x!
2012-07-05 15:06:44 +10:00
Andrew Tridgell
0385932afb MAVLink: added climb rate reporting 2012-07-05 13:00:46 +10:00
Andrew Tridgell
95d9569b35 Docs: fixed some units in APM parameter docs 2012-07-05 13:00:46 +10:00
Andrew Tridgell
60caaa4b04 MAVLink: remove MAVLink 0.9 protocol support
this simplifies the code a lot. We're not going back to 1.0
2012-07-05 13:00:46 +10:00
Andrew Tridgell
fb66899414 APM: changed test for having completed a waypoint
the new test is that we have passed a "finish line" perpendicular to
the track between the last waypoint and the current waypoint.

The previous tests are also still used, so if we circle a waypoint or
get within the waypoint radius we also consider it completed
2012-07-04 12:42:46 +10:00
Andrew Tridgell
6ee9f1ae97 APM: use new location functions 2012-07-04 12:42:46 +10:00
Andrew Tridgell
99b11e4f19 Mount: enable mount control via eeprom parameters
this enables MNT_* parameter control of the camera mount code. It also
fixes the conversion of calculated angles between degrees and
integers, and fixes stabilised mount control when yaw control is not
available.
2012-07-03 10:21:01 +10:00
Michael Oborne
b2d73d8f68 fixup sitl attribute group for planner. - causing invalid advanced/standard views 2012-07-01 21:43:32 +08:00
Andrew Tridgell
82ede937e7 AnalogSource: convert analogRead() calls to the new API
this should give us much better analog values, plus save a bunch of
CPU time
2012-07-01 15:01:05 +10:00
Andrew Tridgell
55092c25a6 SITL: enable the SIM_* parameters in ArduCopter and ArduPlane 2012-06-29 15:10:52 +10:00
Andrew Tridgell
5bccfbd94c Barometer: fixed airstart for APM
we need to re-load the ground pressure and temperature from eeprom on
and airstart
2012-06-27 16:01:50 +10:00
Andrew Tridgell
3a2594fa1a APM: ArduPlane updates for new compass interface 2012-06-27 16:01:50 +10:00
Andrew Tridgell
6639294c72 APM: update for new barometer interface
the barometer can now calibrate and return altitude values.

A 0.3 low pass filter is used on altitude to match the previous code
2012-06-27 16:01:50 +10:00
Andrew Tridgell
2934b4173b APM: set_centripetal() is now set_fly_forward()
this controls more than just centripetal correction
2012-06-27 16:01:49 +10:00
rmackay9
621e020dac ArduPlane HIL: fixed bug so g_gps->setHil calls send time as a uint32_t (was sending a float but was cast back to an uint32_t resulting in a meaningless time that never changed). 2012-06-26 22:59:24 +09:00
Amilcar Lucas
b072a59843 Improve parameters descriptive text 2012-06-21 00:20:37 +02:00
Andrew Tridgell
4a50686c3e APM: prepare for 2.40 release 2012-06-16 10:11:26 +10:00