Commit Graph

4158 Commits

Author SHA1 Message Date
Andrew Tridgell
8a5729de0a SITL: added SIM_ACCEL_FAIL option
used to test accelerometer failure in flight
2013-11-23 17:05:21 +09:00
Andrew Tridgell
0c5caac632 AP_Airspeed: added healthy() API 2013-11-23 17:05:20 +09:00
Andrew Tridgell
d87b50c35c AP_Baro: start MS5611 at high speed 2013-11-23 17:05:13 +09:00
Andrew Tridgell
ee2fb33567 AP_InertialSensor: detect bad MPU6000 SPI transactions and lower bus speed
this uses bad data or bad INT_STATUS values from the MPU6000 to detect
the sensor running too fast and lower bus speed
2013-11-23 17:05:12 +09:00
Andrew Tridgell
8e55ab5072 AP_Math: fixed zero function for integer vectors 2013-11-23 17:05:10 +09:00
Andrew Tridgell
23eed03852 AP_InertialSensor: automatically lower bus speed on mpu6k bad reads 2013-11-23 17:05:09 +09:00
Andrew Tridgell
f049d19aa3 AP_InertialSensor: try to lower SPI bus speed on errors 2013-11-23 17:05:07 +09:00
Andrew Tridgell
0bda21a3fc HAL_AVR: changed to 16 byte bulk transfer on SPI0 2013-11-23 17:05:05 +09:00
Andrew Tridgell
08e1ce428a DataFlash: make the SITL dataflash log 4x larger 2013-11-23 17:04:59 +09:00
Andrew Tridgell
0967aec802 AP_Menu: fixed double display of prompt 2013-11-23 17:04:57 +09:00
Andrew Tridgell
83f8dd150e AP_Menu: added check_for_input() API
this allows for async use of the menus, so that a main loop can run
while allowing the user to enter menu commands
2013-11-23 17:04:56 +09:00
Andrew Tridgell
ff5ddde905 AP_Menu: zero buffer contents on allocation 2013-11-23 17:04:54 +09:00
Andrew Tridgell
a24e3b555e AP_Menu: dynamically allocate the menu buffers
this saves memory when the menus are not used, and allows for the
commandline and argument limits to be changed
2013-11-23 17:04:52 +09:00
Andrew Tridgell
01a32d0632 AP_GPS: try harder to get 5Hz updates from a uBlox
check for getting at least one 5Hz update every 15s
2013-11-23 17:04:48 +09:00
Andrew Tridgell
522f248b63 AP_AHRS: lower default roll and yaw drift correction speed
the gyros sustain accuracy over much longer time periods than
previously expected
2013-11-23 17:04:46 +09:00
Andrew Tridgell
97d8007b08 HAL_PX4: don't check USB for data if not connected 2013-11-23 17:04:44 +09:00
Andrew Tridgell
9f36acbb92 HAL_PX4: switch to delay_microseconds_semaphore() for UART timer
this may prevent some timing jitter on the GPS UARTs
2013-11-23 17:04:43 +09:00
Andrew Tridgell
e2991c0f35 DataFlash: added APM time and GPS velz to logged GPS messages 2013-11-23 17:04:36 +09:00
Andrew Tridgell
fea10c3b97 AP_TECS: added time to TECS messages 2013-11-23 17:04:35 +09:00
Andrew Tridgell
c18d1da019 AP_L1_Control: reduced demanded bank angle by cos(pitch)
this prevents attempts to do too tight turns while at a steep pitch

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-11-23 17:04:30 +09:00
Andrew Tridgell
ffde756d7e APM_Control: reduce roll compensation in pitch controller by cos(pitch)
This reduces the use of the pitch compensation when in a steep climb
or dive

Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-11-23 17:04:28 +09:00
Andrew Tridgell
b22ce9843a DataFlash: added timestamp to IMU and VelZ to GPS logging
both are very useful for analysis
2013-11-23 17:04:27 +09:00
Andrew Tridgell
92a52f5e4a AP_AHRS: added accel sum delay buffer to account for GPS lag 2013-11-23 17:04:25 +09:00
Andrew Tridgell
f0d5cde9cf AP_InertialNav: update for AHRS API changes 2013-11-23 17:04:17 +09:00
Andrew Tridgell
fc920df8d4 AP_InertialSensor: use const reference returns
saves some vector copies
2013-11-23 17:04:16 +09:00
Andrew Tridgell
a18582673d AP_TECS: update for AHRS API change 2013-11-23 17:04:14 +09:00
Andrew Tridgell
14d2453216 DataFlash: use const ins reference
save some pointer dereferences
2013-11-23 17:04:13 +09:00
Andrew Tridgell
b258a63b8c AP_YawController: update for AHRS API change 2013-11-23 17:04:11 +09:00
Andrew Tridgell
41d0fda92c AC_Fence: update for AHRS API changes 2013-11-23 17:04:09 +09:00
Andrew Tridgell
3004ed9c41 AP_AHRS: save memory and reduce pointer references
use a refence for ins, and don't save gyro and accel between updates
2013-11-23 17:04:08 +09:00
Andrew Tridgell
a69ecfa06b AP_AHRS: removed limit on normalisation of accel reference vectors
this could lead to a bias in the accel drift correction
2013-11-23 17:04:06 +09:00
Andrew Tridgell
f9c72f9dbf AP_AHRS: removed vertical G limit on GPS velocity correction
this limit could lead to a bias in the accel drift correction, and is
frequenctly exceeded
2013-11-23 17:04:05 +09:00
Andrew Tridgell
820ec465c7 AP_AHRS: fixed wrapping bug in GPS based heading error
this bug could cause the GPS based yaw to use an expensive reset far
too often
2013-11-23 17:04:03 +09:00
Andrew Tridgell
1c9dfb9b8a AP_AHRS: prevent GPS yaw resets on compass errors
when we switch from compass heading to GPS heading we don't want to
trigger a sudden GPS yaw reset
2013-11-23 17:04:01 +09:00
Andrew Tridgell
81ddab4ea8 AP_Notify: make APM2 ToshibaLED driver more efficient
use one I2C transfer, not 3
2013-11-23 17:04:00 +09:00
Robert Lefebvre
05397bc024 TradHeli: Change user description for COLYAW parameter. 2013-11-23 17:03:57 +09:00
Jason Short
b9a4a7e0bf InertialNav: fix for get_velocity_xy
forgot to sq
2013-11-23 17:03:52 +09:00
Jason Short
55b22f8635 InertialNav: added get_velocity_xy 2013-11-23 17:03:39 +09:00
Paul Riseborough
e3a96094ca AP_Airspeed : Fixes bug that caused airspeed calibration to be sent a zero airspeed
This bug resulted in the airspeed ratio going to the maximum value of 4 and staying there. This could lead to a very slow flying model and a stall.
2013-11-23 17:03:33 +09:00
Andrew Tridgell
3e6a17a89f AP_InertialSensor: SITL doesn't use Oilpan code any more 2013-11-23 17:03:29 +09:00
Randy Mackay
b98f11d819 RC_Channel: formatting 2013-11-23 17:03:14 +09:00
Randy Mackay
2240bb80d1 Copter: correct @Range of MOT_TCRV_MAXPCT parameter 2013-11-23 17:03:10 +09:00
Andrew Tridgell
d4af757cbb AP_Airspeed: fixed I2C semaphore handling for I2C airspeed
this affects MS4525DO on APM2
2013-11-23 17:03:04 +09:00
Randy Mackay
c6a6fb29df BattMonitor: add @Increment to CAPACITY description 2013-11-23 17:02:57 +09:00
Randy Mackay
e596bbe147 BoardLEDs: all leds off during init 2013-11-23 17:02:55 +09:00
Andrew Tridgell
3b72741e15 HAL_AVR: switch back to 500kHz SPI for MPU6k until we understand the issues
this is for new plane release. We need for analysis before we can
re-enable high speed SPI
2013-11-23 17:02:48 +09:00
Andrew Tridgell
7c4067e154 HAL_PX4: prevent excessive writes on startup from blocking
this could cause copter on PX4 to hang on startup
2013-11-23 17:02:44 +09:00
Randy Mackay
7157a44fdb AC_Fence: fix example sketch 2013-11-23 17:02:36 +09:00
Andrew Tridgell
d4fdead45a AP_InertialNav: fixed example build 2013-11-23 17:02:35 +09:00
Randy Mackay
e563a236ab AP_InertialNav: remove unused velocity fns
remove get_longitude_velocity and get_latitude_velocity
2013-11-23 17:02:33 +09:00
Randy Mackay
bf062cc4bb AP_InertialNav: add comments, make ahrs const from neurocopter
These fixes are provided by neurocopter but with my name because of
merge conflicts
_position and _velocity vectors added to save some floating point add
operations
unused reference to ins in constructor removed
2013-11-23 17:02:30 +09:00
Tobias
c34de8d9ad AP_Buffer: remove header/source separation to allow arbitrary template
parameters without explicit instantiation in the cpp file.

http://stackoverflow.com/questions/495021/why-can-templates-only-be-implemented-in-the-header-file
2013-11-23 17:02:27 +09:00
Randy Mackay
16baa7557c AP_InertialNav: bug fix for gps delay handling 2013-11-23 17:02:25 +09:00
Tobias
01074f9839 AP_InertialNav: rename AP_Buffer functions, fix delay handling bug
The most recent value was used instead of the intended historical value
as indicated by the comment.
2013-11-23 17:02:24 +09:00
Tobias
a809d57e4b AP_Buffer: add comments and rename functions to conform with the
STL-container naming conventions
Comment format changes by Randy
2013-11-23 17:02:22 +09:00
Tobias
a19093b1c4 AP_InertialNav: move variable definitions to elide unused default
construction of objects (saves 106 bytes)
2013-11-23 17:02:21 +09:00
Tobias
ec72095fc2 AC_WPNav: make more member pointers const 2013-11-23 17:02:19 +09:00
Tobias
de9778ae1c AC_WPNav: make member pointer to AP_InertialNav object const since it's
never modified
2013-11-23 17:02:17 +09:00
Tobias
7377d4a5f1 AC_Fence: replace "_ina->geT_position().z" with more efficent
"_inav->get_altitude()"
2013-11-23 17:02:16 +09:00
Tobias
89173656c5 AC_Fence: make member pointer to AP_InertialNav const, remove unused
gps-pointer member
2013-11-23 17:02:14 +09:00
Randy Mackay
3e9e0f82aa AC_Sprayer: add doxygen info 2013-11-23 17:02:11 +09:00
Tobias
43be74c60a AC_WPNav: replace unnecessary objects with const refs 2013-11-23 17:02:09 +09:00
Tobias
a56efe837f AC_Sprayer: replace unnecessary object with const ref 2013-11-23 17:02:08 +09:00
Tobias
176096df4e AC_Sprayer: add consts, update comments
* removed some comments that were left over from the classes this class
was copypasta'ed from
2013-11-23 17:02:05 +09:00
Tobias
07a95b398d Filter: add consts 2013-11-23 17:02:03 +09:00
Tobias
c02c8806cc AP_Baro: add time-unit comment 2013-11-23 17:02:02 +09:00
Tobias
9a743d0444 AP_InertialNav: remove unused AP_InertialSensor pointer 2013-11-23 17:01:59 +09:00
Tobias
9fb8352d32 AP_InertialNav: add comments, rename incorrectly named member,
initialize member, remove redundant assignment
adjustments to original commit by randy
2013-11-23 17:01:58 +09:00
Andrew Tridgell
61d4134ba9 HAL_Linux: fixed scheduler initialisation bug in Linux HAL as well 2013-11-23 17:01:56 +09:00
Andrew Tridgell
13d9103a83 HAL_PX4: prevent threads running before subsystems are initialised
this fixes a bug where the timer thread would hang waiting for the
console on startup. This caused the "hit enter" behaviour with recent
PX4 bugs, as AnalogIn tried to read from fd==0, which was a console
read
2013-11-23 17:01:55 +09:00
Paul Riseborough
8e8f3f87d9 APM_Control : Moved scaler on roll and pitch integrator to be before integrator
This means that the value of aileron and elevator trim offset won't change with airspeed
2013-11-23 17:01:52 +09:00
Randy Mackay
ebd60ebcdc GCS_MAVLink: generate after adding RC reciever to SYS_STATUS enum 2013-11-23 17:01:48 +09:00
Randy Mackay
65f69dcfdb GCS_MAVLink: add RC receiver to SYS_STATUS enum 2013-11-23 17:01:47 +09:00
Andrew Tridgell
191c104748 AP_GPS: fixed date handling in NMEA driver 2013-11-23 17:01:44 +09:00
Andrew Tridgell
e11dbb4803 HAL_SITL: fixed time strings in simulated NMEA GPS 2013-11-23 17:01:43 +09:00
Andrew Tridgell
4eefd2683b DataFlash: show timestamps on flash logs 2013-11-23 17:01:38 +09:00
Andrew Tridgell
304737ade3 HAL_PX4: implement set_system_clock() 2013-11-23 17:01:36 +09:00
Andrew Tridgell
343b520d93 AP_HAL: added set_system_clock() API 2013-11-23 17:01:35 +09:00
Andrew Tridgell
d3dcae1b08 AP_GPS: added fake time to fake GPS lock 2013-11-23 17:01:34 +09:00
Andrew Tridgell
cdede70433 DataFlash: updates for new GPS API 2013-11-23 17:01:28 +09:00
Andrew Tridgell
0ad43b58a3 AP_InertialNav: updates for new GPS API 2013-11-23 17:01:27 +09:00
Andrew Tridgell
8084a71c02 HAL_SITL: properly emulate timestamps on ublox and MTK 2013-11-23 17:01:25 +09:00
Andrew Tridgell
3b2ba78aca AP_GPS: added support for GPS time in week/millisec
also adds time_epoch_usec() for MAVLink SYSTEM_TIME
2013-11-23 17:01:24 +09:00
Andrew Tridgell
3893e2ca92 HAL_SITL: get the ublox GPS timestamps right in SITL 2013-11-23 17:01:23 +09:00
Andrew Tridgell
f34b1c280d AP_BattMonitor: added set_monitoring() API
needed for test sketch
2013-10-23 09:40:42 +11:00
Andrew Tridgell
d305dd5946 AP_AHRS: debounce the GPS/compass consistency test
we will only consider the compass inconsistent with GPS if it is off
for more than 2 seconds
2013-10-23 09:40:42 +11:00
texlan
78acea820f Copter: fix symmetry in stability patch for Tricopters
Removes the "Increase opposing motors by 1/2 the overage of the high
motor" logic and merely moves all 3 motors down by the same amount if
one is over out_max. This eliminates the asymmetric scaling of
the previous logic when more than one motor is over out_max. This
resolves #537
2013-10-21 20:12:53 +09:00
Randy Mackay
8f4665c4c7 ToshibaLED: ignore I2C errors during init 2013-10-21 20:01:34 +09:00
Randy Mackay
443023bbbf AP_HAL: add ignore_errors to I2C driver 2013-10-21 20:01:32 +09:00
Randy Mackay
943d7374f6 Copter: slow start motors from 0 to min throttle 2013-10-20 14:51:35 +09:00
texlan
53553751d1 Copter: Correctly set limit.lower flags for Tricopters
Resolves #536
2013-10-19 23:08:25 +09:00
Andrew Tridgell
1c091cbca5 HAL_PX4: fixed a scheduler bug that affects UART IO
we need to detect if we are in a timer task using a PID, not a
flag. This is the same type of bug I fixed last week, but now fixed
properly.

The bug could well be the "USB bug" that Craig has been chasing
2013-10-19 16:50:38 +11:00
Randy Mackay
e0c4785b2a Copter: OctaQuad H-frame support 2013-10-18 10:41:07 +09:00
Andrew Tridgell
3393a5c99e AP_Baro: prevent a race condition in the SITL baro driver 2013-10-17 17:22:19 +11:00
Andrew Tridgell
86afc26609 HAL_SITL: decrease wind with altitude
this prevents JSBSim crash on the runway
2013-10-17 17:22:19 +11:00
Andrew Tridgell
98d391efa0 AP_Camera: added note on DO_SET_CAM_TRIGG_DIST in docs 2013-10-15 10:09:39 +11:00
Andrew Tridgell
ede927f68a HAL_SITL: added airspeed noise control 2013-10-14 15:40:45 +11:00
Mike McCauley
c524a7c717 AP_HAL_FLYMAPLE: remove obsolete debugging code from RCInput 2013-10-14 11:34:47 +10:00
Mike McCauley
6f04e5f2e7 AP_HAL_FLYMAPLE: RCInput now more robust in the face of connect/disconnect of
a PPM-SUM source

Also remove some left over debug code.
2013-10-14 11:34:47 +10:00
Mike McCauley
ce1a8fb831 AP_HAL_FLYMAPLE: Added new example test sketch RCInput.pde 2013-10-14 11:34:47 +10:00