Commit Graph

469 Commits

Author SHA1 Message Date
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