Andrew Tridgell
5b4321d367
cleanup: removed unused AP_PID library
2012-11-27 13:39:45 +11:00
Andrew Tridgell
f6fce1e238
PID: don't reset _last_error on reset_I()
...
resetting _last_error when you have a non-zero D term causes the D
contribution to the next call to be massively amplified. This can
cause crazy behaviour on auto takeoff in ArduPlane if you have a
non-zero D term for the roll or picth controllers
Thanks to Chris Miser for providing the tlog that allowed this bug to
be found.
2012-11-27 13:35:09 +11:00
Robert Lefebvre
1d12b781a0
AC_PID: Create Leaky Integrator Function.
2012-11-26 21:01:20 -05:00
Robert Lefebvre
6b1fee767a
ACM: TradHeli
...
Creating Stab_Collective Function to allow for different collective ranges between Stabilize and other modes.
This makes for a smoother collective action in Stabilize mode with manual throttle, while still allowing full collective travel in Acro and other modes.
2012-11-26 19:37:20 -05: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
Michael Oborne
1a3a7d173a
AP remove debug include
2012-11-26 19:02:17 +08:00
Michael Oborne
ed61ef61ed
AP: fix ap hil.
2012-11-26 18:53:51 +08:00
Andrew Tridgell
471d672e54
examples: mark some examples as unable to build
...
some are not worth fixing. Some can't build on 1280/2560
2012-11-24 21:09:55 +11:00
Andrew Tridgell
9c3865b924
RC_Channel: fixed example build
2012-11-24 21:09:00 +11:00
Andrew Tridgell
5a0632340c
Filter: fixed example build
2012-11-24 21:08:48 +11:00
Andrew Tridgell
e7ad044019
DigitalWriteFast: fixed example build
2012-11-24 21:08:36 +11:00
Andrew Tridgell
2f8e467ab2
RangeFinder: fixed example build
2012-11-24 21:08:25 +11:00
Andrew Tridgell
a096a3fda1
AP_PID: fixed example build
2012-11-24 21:08:14 +11:00
Andrew Tridgell
7ea18d5a61
AP_InertialSensor: fixed example build
2012-11-24 21:08:06 +11:00
Andrew Tridgell
57d3609d00
AP_GPS: fixed examples build
2012-11-24 21:07:53 +11:00
Andrew Tridgell
3552f3f9c5
AP_Baro: fixed example build
2012-11-24 21:07:41 +11:00
Andrew Tridgell
eb5ac90e12
AC_PID: fixed example build
2012-11-24 21:07:34 +11:00
rmackay9
74daf73c49
AP_InertialSensor: increase acceptable Z accel offset to be 3.0 G
...
Note: Z offsets do tend to be larger than x and y offsets
2012-11-23 00:34:42 +09:00
Andrew Tridgell
2e63b3ae8e
AP_GPS: added in two more dynamic model enums
2012-11-22 16:23:29 +11:00
Andrew Tridgell
d5e1a75616
APM_RC: fixed APM1 example sketch
2012-11-22 15:42:33 +11:00
Andrew Tridgell
d0a2feb99c
APM_RC: added a test for ISR masking in APM_RC
2012-11-22 15:42:33 +11:00
rmackay9
e32e0b03b4
DigitalWriteFast: added keywords for syntax colouring in Arduino IDE
2012-11-22 12:25:57 +09:00
Andrew Tridgell
0dc8dd5394
SITL: run the timer_scheduler() when there are no SITL packets
...
otherwise we can block in the ADC code
2012-11-21 22:20:14 +11:00
Andrew Tridgell
a71c7b336d
Revert "APM_RC: Modified get_last_update() to be more interrupt friendly"
...
This reverts commit 50ba0ce4fa41c6d4101dff8da17c267a65750522.
It didn't build, and I want to do a release based on tested code
2012-11-21 21:48:02 +11:00
Andrew Tridgell
11141d0af0
INS: make it possible to do accel cal on a different serial port
2012-11-21 21:41:34 +11:00
Andrew Tridgell
d44ceb3fa5
FastSerial: added a vprintf_P() function
...
used by CLI on UART2
2012-11-21 21:41:34 +11:00
Andrew Tridgell
ba4b9b9961
AP_Menu: allow menus to work on ports other than UART0
2012-11-21 21:41:34 +11:00
John Arne Birkeland
e194c6c740
APM_RC: Modified get_last_update() to be more interrupt friendly
2012-11-21 10:34:04 +01:00
Andrew Tridgell
d2170230f4
RC_Channel: added aileron_with_input aux function
2012-11-21 13:34:26 +11:00
Andrew Tridgell
07f5baea9e
SITL: added in recursion check in timer_handler()
2012-11-21 09:10:10 +11:00
Andrew Tridgell
833d433caf
Semaphore: switch to SREG = oldSREG pattern for interrupt mask/restore
2012-11-20 22:31:23 +11:00
Andrew Tridgell
6836a986f3
PeriodicProcess: switch to SREG = oldSREG pattern for interrupt mask/restore
2012-11-20 22:31:23 +11:00
Andrew Tridgell
f843705da3
INS: switch to SREG = oldSREG pattern for interrupt mask/restore
2012-11-20 22:31:23 +11:00
Andrew Tridgell
e331634bc5
AP_Baro: switch to SREG = oldSREG pattern for interrupt mask/restore
2012-11-20 22:31:17 +11:00
Andrew Tridgell
fc63087cb8
AnalogSource: switch to SREG = oldSREG pattern for interrupt mask/restore
2012-11-20 22:31:09 +11:00
Andrew Tridgell
c1a02e49a0
ADC: switch to SREG = oldSREG pattern for interrupt mask/restore
2012-11-20 22:30:03 +11:00
Andrew Tridgell
ccb1f1722e
SITL: fixed a interrupt recursion bug
...
this can be triggered by the timer scheduler re-enabling interrupts
2012-11-20 22:29:26 +11:00
Andrew Tridgell
3c88b0d204
AP_Param: fixed Vector3f elements with 16 character names
2012-11-20 22:27:11 +11:00
Andrew Tridgell
b0713ba412
AP_Param: support up to 16 character parameter names
...
MAVLink allows for 16 chars, with no null termination if all 16 are
used
2012-11-20 21:35:22 +11:00
Andrew Tridgell
a7e537d6c0
INS: set the acceptable calibration error equal on all axes
2012-11-20 19:28:49 +11:00
Andrew Tridgell
40fc0feaf9
INS: show calibration values on failure
...
this will help debug bad calibrations
2012-11-20 19:28:15 +11:00
Andrew Tridgell
85e050f16c
INS: get check for send_msg the right way around!
...
I broke this in my previous commit
2012-11-20 19:10:30 +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
9c811671f1
INS: make calibrate_accel() return a bool
...
this will allow APM to auto set MANUAL_LEVEL to 1
2012-11-20 18:32:27 +11:00
Andrew Tridgell
152c12c283
INS: fixed raw accel offset for APM1
...
we now get reasonable offset values
2012-11-20 18:32:27 +11:00
Andrew Tridgell
3776e6108f
INS: use vector subtraction to make code clearer
2012-11-20 18:32:27 +11:00
rmackay9
8ccac5da3d
AP_InertialSensor: correct typo to datasheet's filename
2012-11-20 00:37:42 +09:00
Andrew Tridgell
5a214acca3
AHRS: changed the docs for AHRS_YAW_P and AHRS_RP_P
...
a user had set AHRS_YAW_P to zero. Make it clear that zero is not a
good value. MichaelO will change MP to give a warning for a value
below 0.1
2012-11-19 22:50:05 +11:00
Andrew Tridgell
17c115d2aa
SITL: don't define __AVR_ATmega2560__ on desktop build
...
this allows us to properly separate the desktop build in the code
2012-11-19 09:03:35 +11:00
Andrew Tridgell
7181780d3a
DigitalWriteFast: added README about license and author
2012-11-19 08:46:47 +11:00
Andrew Tridgell
8311062610
AP_OpticalFlow: fixed some memory cast warnings
2012-11-19 08:42:36 +11:00
Andrew Tridgell
10b8030e62
AP_Limits: fixed some memory cast warnings
2012-11-19 08:42:36 +11:00
Andrew Tridgell
fe23d27904
SITL: added SREG declaration
2012-11-19 08:42:36 +11:00
Andrew Tridgell
9e9c08b6d7
DigitalWriteFast: fixed memory cast to work on SITL build
2012-11-19 08:25:53 +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
rmackay9
67fadd337d
DigitalWriteFast: first addition of lib to speed up read and writes of analog pins
2012-11-19 01:07:10 +09:00
rmackay9
957d366cca
Filter: improved low pass filter allows setting gain using time_step and cutoff freq
2012-11-19 01:06:06 +09:00
rmackay9
01dc9fbe3e
APM_RC: allow ppm sum for as few as 5 channels
2012-11-16 11:07:11 +09:00
rmackay9
47b1bc30d3
APM_RC: fix _last_update definition to resolve build error
2012-11-16 10:00:56 +09:00
John Arne Birkeland
4258490cd8
APM_RC - Interupt safe get_last_update();
2012-11-15 22:42:28 +01:00
rmackay9
73ed6c9dbf
ArduCopter, APM_RC: failsafe if PPM encoder fails to update for 2 seconds
2012-11-15 23:35:36 +09:00
Andrew Tridgell
8561f08b2f
AP_AHRS: prevent a large delta_t from affecting DCM solution
...
this should fix large changes in attitude directly after arming
ArduCopter
2012-11-13 15:33:10 +11:00
Andrew Tridgell
e9e01ae28a
SITL: fixed build with new sonar driver
2012-11-13 15:12:38 +11:00
rmackay9
4bfd3d5a29
AP_RangeFinder_MaxsonarI2CXL: fix compiler error re undefine I2c
2012-11-12 12:23:46 +09:00
rmackay9
f68523b39b
AP_RangeFinder_MaxsonarI2CXL: resolve shadowed variable compiler warning
2012-11-12 10:41:09 +09:00
Andrew Tridgell
daa4712078
AP_Compass: force I2C speed low in a couple more situations
2012-11-12 11:26:20 +11:00
Andrew Tridgell
27ff999319
I2C:: catch some more types of I2C errors for error count
2012-11-12 11:25:07 +11:00
Andrew Tridgell
8c2dadc12f
AP_Compass: print I2C error count in test sketch
2012-11-12 10:28:26 +11:00
rmackay9
321d40f73a
AP_RangeFinder: added support for MaxBotix XL I2C sonar
2012-11-12 00:25:29 +09:00
rmackay9
71a0022f34
AP_IMU: delete now that all functionality is moved to AP_InertialSensor
2012-11-11 22:44:36 +09:00
Jason Short
c848fe18a5
APM1 Dataflash update
...
My data flash would never erase, this fixed it.
2012-11-09 22:15:16 -08:00
John Arne Birkeland
97d85de361
Optimized APM_RC.InputCh() to prevent global interrupt disable each time a value is read.
2012-11-08 01:03:24 +01:00
rmackay9
50a4838879
AP_Motors, AP_RangeFinder, Filter: fixes to example sketches
2012-11-08 00:29:43 +09:00
rmackay9
56f88821e9
AP_AHRS: fix example sketch
...
AP_Airspeed: fix example sketch
AP_Baro: fix example sketch
AP_Declination: fix example sketch
AP_Math: fix example sketch
2012-11-08 00:08:18 +09:00
rmackay9
41489f34f9
AC_PID: fixed example sketch's compile errors
2012-11-07 23:34:10 +09:00
rmackay9
6bbf66697b
AP_Mount: resolve compiler warning about unused mount_open variable
2012-11-07 23:29:25 +09:00
rmackay9
b13264c884
AP_InertialNav: reanme AP_InertialNav and ThirdOrderCompFilter classes to resolve desktop build compiler errors
2012-11-07 22:24:00 +09:00
rmackay9
61dd405910
AP_InertialNav: removed IMU.h to fix compiler error from example sketch
2012-11-07 19:48:13 +09:00
rmackay9
5f34d41b59
ThirdOrderCompFilter3D: fix compiler error
2012-11-07 19:47:48 +09:00
rmackay9
1c7118a2d1
AP_Baro: added get_last_update which returns the time the barometer sensor was last read
2012-11-07 19:21:25 +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
68bdf93a4d
APM_Control: move reliance from IMU to INS
2012-11-07 19:20:54 +09:00
rmackay9
7f190b8494
AP_InertialNav: first implementation of inertial nav library
2012-11-07 19:20:49 +09:00
rmackay9
dc7146c9ce
ThirdOrderCompFilter3D: first implementation of complementary filter for use with inertial navigation
2012-11-07 19:20:43 +09:00
rmackay9
48f1955f8e
AP_Buffer: initial implementation of FIFO buffer for use with inertial nav
2012-11-07 19:20:37 +09:00
rmackay9
83ae8e47be
AP_AHRS: replace IMU with INS and add roll and pitch trim
2012-11-07 19:20:32 +09:00
rmackay9
49de46a548
AP_InertialSensor: merge in calibration features from IMU library
...
add gauss-newton method of accelerometer calibration
2012-11-07 19:20:27 +09:00
Andrew Tridgell
403721f8ca
AP_AnalogSource: allow for the 'NONE' pin in Arduino ADC
...
This allows us to have a configuration parameter for a pin which
defaults to -1, meaning not to read a pin at all. It will always
return 0
2012-11-06 21:45:40 +11:00
Andrew Tridgell
736cb4c34b
AP_Var: move the MetaClass lib into AP_Var
...
AP_Var is the only one that uses it, and it generates warnings in our
build if we leave it in AP_Common
2012-11-06 21:42:54 +11:00
Andrew Tridgell
cd0672ce94
SITL: set a reasonable number of satellites in simulated uBlox
2012-11-06 14:26:49 +11:00
Andrew Tridgell
fe47990dab
AP_AHRS: removed the 6 sats min
...
this would put us into dead-reckoning mode
2012-11-06 14:26:49 +11:00
Andrew Tridgell
f58abb7550
RC_Channel: added pwm_to_angle_dz() function
...
will be used by k_aileron in APM
2012-11-05 23:37:25 +11:00
Andrew Tridgell
ef919c4e36
AP_Param: fixed a bug with setting nested parameters
...
This bug meant that setting a parameter in a parent class for a doubly
nested parameter group, where the parameter index in the parent class
is 4 or greater would actually set the first element in that parent
class.
At the moment only one parameter fits these narrow constraints - the
RCn_DZ element of the RC_Channel_aux class. So if someone set RC5_DZ
to 17 in ArduPlane it would actually set RC5_MIN to 17.
2012-11-05 22:08:43 +11:00
Andrew Tridgell
d57566ad0e
RC_Channel: removed set_filter() and scale_output
...
these unused options were costing 5 bytes per channel, for a total of
50 bytes on ArduCopter
2012-11-05 20:49:42 +11:00
Andrew Tridgell
6a24bdec05
AP_AHRS: require at least 6 satellites to use the GPS for velocity
...
logs of a recent flight show the velocity estimate can be very poor if
the GPS can see 5 satellites or less
2012-11-05 20:07:37 +11:00
Andrew Tridgell
984b1086cb
AP_GPS_UBLOX: ask for nav settings every 20 seconds
...
this ensures we don't run with the wrong nav settings on a uBlox if
we get a bad checksum on the initial nav settings message
2012-11-05 14:58:40 +11:00
Andrew Tridgell
72e97c6dfc
AP_GPS: start detection timer on first bytes
...
this prevents a uBlox plugged in late from being detected as a NMEA
GPS
2012-11-05 14:58:40 +11:00
Andrew Tridgell
6f9fa7d3b3
AP_GPS: removed shadowed class variable _nav_setting
...
this caused a uBlox to incorrectly configure as "portable" instead of
airborne if the detection took more than 2 seconds. That led to
terrible performance.
2012-11-05 14:58:40 +11:00
Andrew Tridgell
ea40432235
AP_AHRS: use GPS vertical velocity when available
2012-11-05 14:58:40 +11:00
Andrew Tridgell
e74e730992
AP_GPS: added velocity_down() call
...
on GPSes with raw velocity support this will be used for DCM
correction
2012-11-05 14:58:40 +11:00
rmackay9
3fd07805a7
AP_Math: added rotation method accuracy test to example sketch
2012-11-04 13:05:37 +09:00
rmackay9
d6324b3964
AP_Math: fix compile errors example sketches
2012-11-04 11:55:59 +09:00
rmackay9
9e3824a09b
AP_AHRS: fix compile error in example sketch
2012-11-01 21:56:34 +09:00
rmackay9
0159d8bd35
AP_Motors: bug fix to reached_limits so by default it returns true if any limits have been breached
2012-10-31 22:00:17 +09:00
Andrew Tridgell
024e5c3cc7
RC_Channel: added set_radio() and set_radio_to_trim() functions
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
rmackay9
09485ddc5f
AP_OpticalFlow: fix example sketch to work with modified AP_Opticalflow library after memory saves
2012-10-22 16:41:45 +09:00
rmackay9
79fc5f072e
AP_Curve: replace Serial.print with Serial.print_P to save 18 bytes of memory
2012-10-22 16:40:57 +09:00
rmackay9
57439b662c
AP_OpticalFlow: change Serial.print to Serial.print_P to save 27 bytes
2012-10-22 16:37:24 +09:00
rmackay9
bff3417d29
AP_Limit_Geofence: reduce maximum number of fence points to 6 from 20 to save memory
2012-10-22 16:34:25 +09:00
Pat Hickey
d728ccb620
AP_Menu unit test fixup
2012-10-18 21:08:37 -07:00
Pat Hickey
1bf21aae20
AP_Menu: create new library with menu from AP_Common
2012-10-18 20:50:16 -07:00
Andrew Tridgell
eb0dd45a11
Desktop: fixed build with recent SPI changes
2012-10-19 11:21:42 +11:00
rmackay9
0bcf581a17
Desktop: fix build error
2012-10-18 19:33:31 +09:00
rmackay9
3f7b2dbda7
Desktop: add AP_Semaphore to list of includes for DataFlash_APM1.cpp
2012-10-18 19:25:53 +09:00
rmackay9
1958169e30
SPI3: add checks that SPI bus has been initialised to reduce possibility of interfering with UART3 on APM1
2012-10-18 19:17:24 +09:00
rmackay9
17afd075c1
DataFlash_APM1: use spi_semaphore to avoid conflicts with optical flow
2012-10-18 17:03:50 +09:00
rmackay9
a1b4531545
AP_OpticalFlow: added ability to pass in semaphores for main spi bus to stop conflicts with dataflash on APM1
2012-10-18 17:02:45 +09:00
rmackay9
785d9ca6a7
DataFlash_APM2: renamed semaphore to spi3_semaphore to make it more obvious which semaphore is required.
2012-10-18 17:00:05 +09:00
Andrew Tridgell
a53cbc08f3
GPS: avoid output delays in the GPS auto detection
...
this sends out the GPS init strings in 16 byte chunks to avoid causing
timing glitches when no GPS is attached
2012-10-18 16:18:32 +11:00
Andrew Tridgell
a979fb6014
AP_AnalogSource: added set_pin() interface
...
this allows pin numbers to be changed at runtime
2012-10-16 17:20:15 +11:00
Andrew Tridgell
5642922ca7
RC_Channel: simplify the example
...
use an array of channels
2012-10-16 15:50:54 +11:00
Andrew Tridgell
86b509a609
RC_Channel: ensure _reverse is not 0
...
this caused the example to fail
2012-10-16 15:50:29 +11:00
Pat Hickey
f48568c9a6
MultiFastSerial example sketch: notes on fatal error in avr-gcc 4.5.x
2012-10-15 20:42:19 -07:00
Pat Hickey
e84a467311
FastSerial example sketch: Depend on AP_Common for PSTR definitions
2012-10-15 20:42:18 -07:00
Pat Hickey
76e93e9fd7
AP_Common: PSTR def has specific version for avr-gcc 4.6 compatibility
...
* Also a small change in FastSerial/vprintf.cpp, which duplicates the
PSTR definition
* Won't effect others using earlier versions of avr-gcc
2012-10-15 20:42:18 -07:00
Pat Hickey
2936dbb9de
RC_Channel unit test: fixed build, functionality still wrong
2012-10-15 10:37:29 -07:00
Pat Hickey
d75ca684cc
MultiFastSerial test: make it easier to observe which serial port causes crash
2012-10-14 21:08:33 -07:00
Pat Hickey
930d387b8d
FastSerial: add extra example sketch MultiFastSerial to test multiple ports
2012-10-14 18:58:12 -07:00
rmackay9
c0cf2d6f38
AP_Motors: added reached_limit method which returns bit mask indicating which control inputs could not be achieved
2012-10-11 17:19:54 +09:00
Andrew Tridgell
00bf548f87
AHRS: limit wind speed estimate changes
...
sudden yaw changes can cause bad wind estimates
2012-10-11 11:51:24 +11:00
Andrew Tridgell
e8c4dedcd7
AP_OBC: fixed resume on GPS loss
2012-10-11 11:51:24 +11:00
Pat Hickey
8a6017ea48
AP_ADC_test: fix build of test regressions.
...
I'm not convinced I was able to make the timing test meaningful.
Someone should please lookinto this.
2012-10-09 15:23:40 -07:00
Pat Hickey
aa210d7e99
AP_DataFlash_test wibble
2012-10-09 11:39:09 -07:00
Pat Hickey
605f89fa69
DataFlash_APM2: private AP_Semaphore* rather than use extern AP_Semaphore_spi3
...
The AP_Semaphore* argument to the constructor can be null (and is by
default for compatibility). Semaphore is only used when non-null.
2012-10-09 11:38:52 -07:00
Pat Hickey
5ac21b71ce
AP_OpticalFlow_test: fix build with NULL semaphore.
2012-10-09 11:36:21 -07:00
Pat Hickey
26ba391cd4
AP_OpticalFlow_ADNS3080: has private AP_Semaphore* _semaphore
...
Semaphore can be null, handled correctly if it is. Rather than check for
which SPI bus the sensor is using, just check whether semaphore is not null
before using it. More general and flexible.
2012-10-09 11:35:59 -07:00
Pat Hickey
6fc0d22671
AP_Semaphore.h: proper h macros
2012-10-09 11:12:11 -07:00
Pat Hickey
b2b0b70d03
AP_Semaphore_test: instantiate AP_Semaphore_spi3 locally.
2012-10-09 11:05:34 -07:00
Pat Hickey
c20a401c6a
AP_Semaphore: do not instantiate or export a global spi3 semaphore.
2012-10-09 11:02:35 -07:00
Pat Hickey
dfcbb6d9e9
AP_Semaphore_test: bugfix to extern semaphore, add Makefile for builds.
2012-10-09 10:55:50 -07:00
Pat Hickey
5796ee91ca
AP_Semaphore: make into separate library rather than part of AP_Common
2012-10-09 10:55:06 -07:00
rmackay9
c320938ff2
AP_MotorsMatrix: modified stability patch to sacrifice yaw first if necessary to ensure stability.
...
Resolves climb-on-yaw problem.
2012-10-09 15:48:15 +09:00
rmackay9
e33d314f1d
AP_AHRS_MPU6000: resolve compiler warning re shadowing
2012-10-06 13:22:43 +09:00
rmackay9
b9963f5b5c
DataFlash: modified to use AP_Semaphore for SPI3 bus when required.
...
Also fixed test sketch which seemed broken.
2012-10-06 12:41:50 +09:00
rmackay9
f9b16a9a50
AP_OpticalFlow: modified to use AP_Semaphore for SPI3 bus when required
2012-10-06 12:41:42 +09:00
rmackay9
23442f9caf
AP_Semaphore: added new library to help remove conflicts over SPI bus
2012-10-06 12:41:35 +09:00
rmackay9
670fcbb634
AP_AHRS_MPU6000: fixed yaw correction and added _secondary_ahrs parameter
...
_secondary_ahrs parameter allows mpu6000 ahrs to runin parallel with DCM.
2012-09-30 00:21:18 +09:00
rmackay9
35cb7ff7e5
AP_PeriodicProcessStub: fixed build due to missing reference to _suspended
2012-09-29 14:41:25 +09: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
c007a19200
AP_PeriodicProcess: added running() method which tells the caller whether the timer is suspended or not
2012-09-29 13:47:55 +09:00
rmackay9
00e79e7915
AP_TimerProcess: added simple example sketch
2012-09-29 13:23:51 +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
rmackay9
921ab3fe12
ArduCopter: bug fix to DMP initialisation (it was freezing due to SPI bus conflicts)
2012-09-28 18:34:23 +09:00
rmackay9
a7c2ea1891
AP_OpticalFlow: save and restore SPI bus speed to remove conflict with dataflash that runs at 8Mhz
2012-09-28 17:29:45 +09:00
rmackay9
6ed59fba91
AP_Motors: enable throttle curve by default
2012-09-25 23:36:35 +09:00
Andrew Tridgell
9f9d570597
MAVLink: comm_get_txspace should return 0 on error
...
it is used in expressions that add constants
2012-09-25 07:20:43 +10:00
Andrew Tridgell
14b1674c3e
PeriodProcess: fixed build warning
2012-09-25 07:10:35 +10:00
Andrew Tridgell
81fd4b3a3c
OpticalFlow: fixed SITL build
2012-09-25 07:10:22 +10:00
Andrew Tridgell
608cc60689
GPS: fixed SIRF auto detect code
2012-09-25 07:10:07 +10:00
Andrew Tridgell
89fa234233
SPI3: fixed the build
2012-09-25 07:03:23 +10:00
rmackay9
a75e93da06
AP_TimerProcess: add one additional slot for optical flow
2012-09-24 18:39:28 +09:00
rmackay9
163a7841f6
AP_OpticalFlow: small fixes to test sketch to make it work with modified lib
2012-09-24 18:39:22 +09:00
rmackay9
cb584f81fb
AP_OpticalFlow: remove APM2 version of library now that AP_OpticalFlow_ADNS3080 class can autodetect which SPI bus the sensor is on
2012-09-24 18:39:17 +09:00
rmackay9
4d3d13582b
AP_OpticalFlow_ADNS3080: detect if optical flow sensor is on standard or secondary SPI bus
2012-09-24 18:39:12 +09:00
rmackay9
ca383b393d
AP_OpticalFlow: use AP_PeriodicProcess to read at 20hz
2012-09-24 18:39:07 +09:00
rmackay9
96bb6e9c70
SPI3: add new library to make use of secondary SPI bus
2012-09-24 18:39:01 +09:00
rmackay9
bc2aa84394
AP_Motors: remove stray debug message re set-up of throttle curve
2012-09-23 12:25:31 +09:00
rmackay9
e4c8eaa181
AP_Airspeed: fixed constructor compile error in example sketch
2012-09-23 11:44:28 +09:00
Andrew Tridgell
e5846bd965
AP_Baro: removed _sync_access check
...
this isn't needed as the common variables are already protected by
cli()/sei()
2012-09-20 17:34:33 +10:00
Andrew Tridgell
7b4dc246f8
RC_Channel: don't force radio_out in enable_aux_servos()
...
this is called regularly, and causes the servo to twitch
2012-09-20 17:34:32 +10:00
Andrew Tridgell
ccf8ba3ce9
DCM: limit the contribution of the baro to vertical acceleration
...
limit to a max of 0.5g
2012-09-20 17:34:32 +10:00
Andrew Tridgell
458a42654b
DCM: disable use of baro for vertical accel by default
...
this has caused problems with too many users
2012-09-20 17:34:32 +10:00
rmackay9
50a97f3092
AP_GPS: added get_lag method to return expected lag from the GPS.
2012-09-20 15:48:22 +09:00
rmackay9
30aa104000
AP_LeadFilter: moved lag to be a parameter passed into the get_position function.
...
This saves 4 bytes of memory and will work better with the way we initialise the gps.
2012-09-20 15:27:27 +09:00
rmackay9
2110231ee3
AP_LeadFilter: bug fix so velocity * _lag is used (otherwise we are assuming a 1sec lag)
2012-09-20 13:17:42 +09:00
rmackay9
2c36693a50
AP_LeadFilter: added set_lag feature to allow us to adjust it for different GPSs
2012-09-20 13:10:24 +09:00
Robert Lefebvre
9e32d45d7b
Change to the "Stability Patch" in Motors_Matrix in order to make it cover both the upper throttle range and lower, and also to cause it to raise/lower all motors when a single motor goes out of ranges.
2012-09-19 20:43:58 -04:00
Andrew Tridgell
e761645e24
AP_Param: added find_by_index()
2012-09-20 07:42:35 +10:00
Andrew Tridgell
728b3a133e
GPS: disable auto detection of NMEA and SiRF on a 1280 board
...
saves a bit more flash space
2012-09-19 19:36:48 +10:00
Andrew Tridgell
0c864fd4dc
AP_Airspeed: a bit more filtering
...
this helps reduce noise at low speed
2012-09-19 16:23:25 +10:00
rmackay9
93ae29a3e9
ArduCopter: added throttle curve (although disabled by default) for all multicopters
2012-09-18 23:05:08 +09:00
Andrew Tridgell
7e544e8ead
MPU6k: save 72 bytes of memory
...
the buffer can be on the stack
2012-09-18 13:58:50 +10:00
Andrew Tridgell
78a95290a3
SITL: prevent a fd leak in GPS code
2012-09-17 14:45:48 +10:00
Andrew Tridgell
59b44816ec
GPS: replaced the GPS auto-detect mechanism
...
the old mechanism wasted most of the input bytes, and chewed a lot of
CPU, making it impractical to do GPS detection for a GPS attached
after startup
The new code is async, and detects a GPS by looking for a fully formed
packet with the right checksum for each GPS type
2012-09-17 14:45:47 +10:00
Andrew Tridgell
8620a036de
RC_Channel_aux: minor cleanups
...
remove unused enable_out_ch() and enable k_manual channels. This
ensures k_manual channels used for bottle drop are initialised
correctly to trim output
2012-09-16 15:50:13 +10:00
Andrew Tridgell
bd31f340a7
RC_Channel: support channel reversal on range channels
...
this makes it possible to have a reverse throttle in ArduPlane
2012-09-16 15:06:26 +10:00
rmackay9
303ca11c4c
HIL: changes to fix HIL for ArduCopter after recent timing changes.
...
Changes include using AP_PeriodicProcess and calling imu.init even in HIL mode
2012-09-15 18:42:56 +09:00
Michael Oborne
94f956a0ca
fix AP attitude hil - with randys help
2012-09-15 16:47:18 +08:00
rmackay9
9e66b555cb
ArduCopter: removed INSTANT_PWM from ArduCopter and AP_Motors library
2012-09-13 21:31:13 +09:00
rmackay9
1c9fe3b1b6
AP_AHRS: fix to allow example sketch to compile
2012-09-13 16:45:52 +09:00
Andrew Tridgell
ba9543ee04
GPS: NMEA bug fix from Alexey Kozin
...
thanks Alexey!
2012-09-12 15:04:24 +10:00
Andrew Tridgell
fba1692d69
AHRS: added AHRS_BARO_USE parameter
...
allow disabling of the use of the barometer for vertical acceleration
compensation
2012-09-12 14:42:04 +10:00
Andrew Tridgell
b787dc8cce
APM: added wdt.h for SITL build of APM
2012-09-10 15:52:53 +10:00
rmackay9
9f1033dc42
AP_InertialSensor_Stub: added num_samples_available method to fix HIL build
2012-09-10 11:38:13 +09:00
rmackay9
130f3b0030
AP_InertialSensor_MPU6000: move _last_sample_time_micros to capture time data_interrupt was called
2012-09-10 11:38:08 +09:00
rmackay9
7a265dbf61
AP_InertialSensor: use AP_TimerProcess's queue_process to run read from MPU6000 after any currently running processes complete
2012-09-10 11:38:03 +09:00
rmackay9
55ef1e0a29
AP_PeriodicProcess: queue_process changes to suspend other processes before running queued process
...
Also restored suspend_timer to void return type
2012-09-10 11:37:58 +09:00
rmackay9
6ea5c21f7c
AP_ADC: added num_samples_available to allow main loop to be synced with arrival of new sensor data for Oilpan.
2012-09-10 11:37:43 +09:00
rmackay9
fc4ff007e6
AP_IMU: added num_samples_available to allow main loop timing to be synced with arrival of new data from IMU.
2012-09-10 11:37:38 +09:00
rmackay9
0a6219695b
AP_InertialSensor: changed read of sensor from MPU6000 to happen immediately
...
This reduces the delay between when data arrives and when it is used
by up to 1ms.
Added num_samples_available method to all InertialSensors to allow
main loop timing to be synced with sensors.
2012-09-10 11:37:33 +09:00
Craig Elder
90b74f5bab
APM_RC: fixed noisy PWM output on startup for APM2
...
This reduces the number of rubbish pulses on the APM2 PWM output pins
on startup, which should help with booting some cheaper ESCs.
Thanks to Randy for the idea!
2012-09-10 08:09:28 +10:00
Andrew Tridgell
4c07add542
AP_Camera: updated for new RC_Channel_aux API
2012-09-08 15:13:06 +10:00
Andrew Tridgell
f41270a3ce
AP_Mount: updated for new RC_Channel_aux API
2012-09-08 15:12:52 +10:00
Andrew Tridgell
3b97339104
RC_Channel: simplified RC_Channel_aux and fixed issue 725
...
it is perfectly valid to configure two RC channels with the same
function, especially when that function is manual output (ie. copy
input to output)
This removes the g_rc_function[] indirection array
2012-09-08 15:12:28 +10:00
Andrew Tridgell
de28cc8b28
AHRS: added AHRS_WIND_MAX option
...
this allows APM to cope better with airspeed sensor failure, but
ensuring airspeed stays within AHRS_WIND_MAX of ground speed
2012-09-08 11:37:07 +10:00
Andrew Tridgell
8458607928
APM_OBC: changed termination servo values, and added loop counter
2012-09-08 11:37:00 +10:00
Andrew Tridgell
fa84ba451a
APM_OBM: Failsafe board sketch
...
this combines with the OBC failsafe module
2012-09-08 10:07:17 +10:00
Andrew Tridgell
cca04d195a
APM_OBC: handle separate terminate pin correctly
2012-09-08 10:07:14 +10:00
Andrew Tridgell
13145e4c01
OBC: added FS_TERM_PIN option
...
this sets a pin for flight termination
2012-09-08 10:07:08 +10:00
Andrew Tridgell
3a1ff7bdd9
Mavlink: enable MAVLINK_SEPARATE_HELPERS
...
this fixes a seq number problem with SIMSTATE packets
2012-09-08 10:06:19 +10:00
Andrew Tridgell
6922dcdea2
Compass: added compass.accumulate() API
...
this allows us to accumulate mag readings using spare CPU cycles
2012-09-08 10:05:54 +10:00
rmackay9
5994117f6f
RC_Channel_aux: bug fix which could cause channel to be assigned to the wrong function and miss others
2012-09-02 12:46:04 +09:00
Andrew Tridgell
d5b218c80b
SITL: use AP_Declination code to get right compass dec for autotest
2012-08-29 13:33:01 +10:00
Pat Hickey
7b3009a238
APM_RC_APM1.cpp: Bugfix on mapping of SetFastOutputChannels to ICR reg
...
* Previously had the ICR register for ch1/2/9 (on timer5) swapped with
ch3/4/10 (on timer1).
* This bug probably didn't make a difference in operation since
SetFastOutputChannels is typically only used for copters, where at
least CH1,2,3,4 would be set to fast all at once.
2012-08-28 17:12:41 -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
71500347ec
APM_OBC: don't use _saved_wp when zero
2012-08-28 20:18:23 +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
dd7c815c5f
SITL: zero wind for first 15s
...
this allows for airspeed calibration on startup
2012-08-28 20:18:23 +10:00
rmackay9
c965963d7b
AP_InertialSensor_MPU6000: bug fix. DMP was being enabled by default so although the results were not being used, this caused a delay in the main loop
2012-08-28 17:02:07 +09:00
Craig Elder
2da75b3c3c
Revert "APM1: Delay serial3 init to not brick Xbee radios"
...
This reverts commit 25d14a9d6a4a1ea60eb78485296298c98c1595d0.
2012-08-27 15:00:23 -07: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
Amilcar Lucas
7a0c47d049
Improve comment aligment
2012-08-27 00:37:10 +02:00
Andrew Tridgell
747a926809
APM_OBC: ensure pins are setup as outputs
...
constructor is run before parameters are loaded
2012-08-25 17:49:26 +10:00
Andrew Tridgell
2be785899b
AHRS: added airspeed_estimate() function
...
this allows the APM code to use an airspeed estimate for navigation
2012-08-25 17:49:26 +10:00
Andrew Tridgell
697b2074a5
SITL: added SIM_WIND_* parameters
...
this allows control of the simulated wind during a flight
2012-08-25 17:49:26 +10:00
Craig Elder
b2c38d7dd4
APM1: Delay serial3 init to not brick Xbee radios
2012-08-24 17:55:20 -07:00
Andrew Tridgell
8b53f1272a
AHRS: new functions to support APM_Control library
2012-08-22 12:42:37 +10:00
Jonathan Challinger
59875f8d53
APM_Control: added new APM controllers library
...
See
http://www.challinger.us/2012/07/16/tuning-arduplane-roll-and-pitch-controllers/
for details
2012-08-22 12:39:07 +10:00
uncrustify
08c8dffd48
uncrustify libraries/DataFlash/DataFlash.h
2012-08-21 19:19:52 -07:00
uncrustify
2e97fd3e9f
uncrustify libraries/DataFlash/DataFlash.cpp
2012-08-21 19:19:52 -07:00
uncrustify
744ad19630
uncrustify libraries/AP_Motors/AP_MotorsHeli.h
2012-08-21 19:19:52 -07:00
uncrustify
b1b1975018
uncrustify libraries/AP_Motors/AP_MotorsHeli.cpp
2012-08-21 19:19:52 -07:00
uncrustify
40a4777d31
uncrustify libraries/AP_Limits/AP_Limit_Geofence.cpp
2012-08-21 19:19:52 -07:00
uncrustify
97035fbead
uncrustify libraries/AP_GPS/GPS.h
2012-08-21 19:19:52 -07:00
uncrustify
20d1a94778
uncrustify libraries/AP_GPS/AP_GPS_IMU.h
2012-08-21 19:19:52 -07:00
uncrustify
4cd477d13d
uncrustify libraries/AP_GPS/AP_GPS_IMU.cpp
2012-08-21 19:19:52 -07:00
uncrustify
6c885df832
uncrustify libraries/AP_GPS/AP_GPS_UBLOX.cpp
2012-08-21 19:19:52 -07:00
uncrustify
a48aa18d6f
uncrustify libraries/AP_GPS/AP_GPS_MTK16.cpp
2012-08-21 19:19:52 -07:00
uncrustify
03b42037a0
uncrustify libraries/AP_GPS/AP_GPS_NMEA.h
2012-08-21 19:19:51 -07:00
uncrustify
da81115079
uncrustify libraries/AP_GPS/AP_GPS_NMEA.cpp
2012-08-21 19:19:51 -07:00
uncrustify
a8ed24da6c
uncrustify libraries/AP_GPS/AP_GPS_SIRF.cpp
2012-08-21 19:19:51 -07:00
uncrustify
074f3ae872
uncrustify libraries/AP_GPS/AP_GPS_406.cpp
2012-08-21 19:19:51 -07:00
uncrustify
9ce7513096
uncrustify libraries/AP_GPS/AP_GPS_MTK.cpp
2012-08-21 19:19:51 -07:00
uncrustify
04e48ef878
uncrustify libraries/AP_Compass/Compass.h
2012-08-21 19:19:51 -07:00
uncrustify
f3945772e9
uncrustify libraries/AP_Common/AP_Vector.h
2012-08-21 19:19:51 -07:00
uncrustify
953cab5c5f
uncrustify libraries/AP_Common/AP_Test.h
2012-08-21 19:19:51 -07:00
uncrustify
4cd6657f70
uncrustify libraries/AP_Baro/AP_Baro_BMP085_hil.h
2012-08-21 19:19:51 -07:00
uncrustify
e17fcbd9cb
uncrustify libraries/AP_AHRS/AP_AHRS_HIL.h
2012-08-21 19:19:51 -07:00
uncrustify
af588679b9
uncrustify libraries/AP_AHRS/AP_AHRS.h
2012-08-21 19:19:51 -07:00
uncrustify
8c0e4f3987
uncrustify libraries/AP_AHRS/AP_AHRS_MPU6000.h
2012-08-21 19:19:51 -07:00
uncrustify
bc80148c75
uncrustify libraries/AP_AHRS/AP_AHRS_DCM.h
2012-08-21 19:19:51 -07:00
uncrustify
31a4442904
uncrustify libraries/AP_AHRS/AP_AHRS_DCM.cpp
2012-08-21 19:19:51 -07:00
uncrustify
b1cf3f7f91
uncrustify libraries/RC_Channel/RC_Channel_aux.h
2012-08-21 19:04:32 -07:00
uncrustify
5564e0c440
uncrustify libraries/RC_Channel/RC_Channel.h
2012-08-21 19:04:31 -07:00
uncrustify
fb2df43984
uncrustify libraries/RC_Channel/RC_Channel_aux.cpp
2012-08-21 19:04:31 -07:00
uncrustify
e9fb7cfd92
uncrustify libraries/RC_Channel/RC_Channel.cpp
2012-08-21 19:04:31 -07:00
uncrustify
02877cfe28
uncrustify libraries/RC_Channel/examples/RC_Channel2/RC_Channel2.pde
2012-08-21 19:04:31 -07:00
uncrustify
b2ade84dbb
uncrustify libraries/RC_Channel/examples/RC_Channel/RC_Channel.pde
2012-08-21 19:04:31 -07:00
uncrustify
13e0dd2c70
uncrustify libraries/PID/PID.h
2012-08-21 19:04:31 -07:00
uncrustify
330c6c07e3
uncrustify libraries/PID/PID.cpp
2012-08-21 19:04:31 -07:00
uncrustify
84816966ec
uncrustify libraries/PID/examples/pid/pid.pde
2012-08-21 19:04:31 -07:00
uncrustify
098bb9c2ea
uncrustify libraries/memcheck/memcheck.h
2012-08-21 19:04:31 -07:00
uncrustify
2bbf7f2768
uncrustify libraries/memcheck/memcheck.cpp
2012-08-21 19:04:31 -07:00
uncrustify
7aa99f0752
uncrustify libraries/I2C/I2C.h
2012-08-21 19:04:30 -07:00
uncrustify
517530ba58
uncrustify libraries/I2C/I2C.cpp
2012-08-21 19:04:30 -07:00
uncrustify
e1a905239e
uncrustify libraries/I2C/examples/HMC5883L/HMC5883L.pde
2012-08-21 19:04:30 -07:00
uncrustify
84847da218
uncrustify libraries/Filter/Filter.h
2012-08-21 19:04:30 -07:00
uncrustify
5948f825ba
uncrustify libraries/Filter/ModeFilter.h
2012-08-21 19:04:30 -07:00
uncrustify
406abb3fa0
uncrustify libraries/Filter/LowPassFilter.h
2012-08-21 19:04:30 -07:00
uncrustify
c284fb144f
uncrustify libraries/Filter/FilterWithBuffer.h
2012-08-21 19:04:30 -07:00
uncrustify
dbba304af8
uncrustify libraries/Filter/AverageFilter.h
2012-08-21 19:04:30 -07:00
uncrustify
10acadef62
uncrustify libraries/Filter/DerivativeFilter.h
2012-08-21 19:04:30 -07:00
uncrustify
0afc8a5958
uncrustify libraries/Filter/DerivativeFilter.cpp
2012-08-21 19:04:29 -07:00
uncrustify
44598c1be7
uncrustify libraries/Filter/examples/Derivative/Derivative.pde
2012-08-21 19:04:29 -07:00
uncrustify
19ad85b27f
uncrustify libraries/Filter/examples/Filter/Filter.pde
2012-08-21 19:04:29 -07:00
uncrustify
d0a2877188
uncrustify libraries/Filter/examples/LowPassFilter/LowPassFilter.pde
2012-08-21 19:04:29 -07:00
uncrustify
9b44f5b741
uncrustify libraries/DataFlash/DataFlash_APM1.h
2012-08-21 19:04:23 -07:00
uncrustify
c68a341633
uncrustify libraries/DataFlash/DataFlash_APM2.h
2012-08-21 19:04:23 -07:00
uncrustify
21337a39d3
uncrustify libraries/DataFlash/DataFlash_APM1.cpp
2012-08-21 19:04:23 -07:00
uncrustify
eb9d6b259b
uncrustify libraries/DataFlash/DataFlash_APM2.cpp
2012-08-21 19:04:23 -07:00
uncrustify
15d8ba45e3
uncrustify libraries/DataFlash/examples/DataFlash_test/DataFlash_test.pde
2012-08-21 19:04:10 -07:00
uncrustify
36a3fad796
uncrustify libraries/Arduino_Mega_ISR_Registry/Arduino_Mega_ISR_Registry.h
2012-08-21 19:04:10 -07:00
uncrustify
dd3201e050
uncrustify libraries/AP_Relay/AP_Relay.h
2012-08-21 19:04:10 -07:00
uncrustify
06021825c8
uncrustify libraries/AP_Relay/AP_Relay.cpp
2012-08-21 19:04:10 -07:00
uncrustify
c60cfb33f2
uncrustify libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.h
2012-08-21 19:04:10 -07:00
uncrustify
9c45c74d97
uncrustify libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.h
2012-08-21 19:04:10 -07:00
uncrustify
c6f99a7b6e
uncrustify libraries/AP_RangeFinder/RangeFinder.h
2012-08-21 19:04:10 -07:00
uncrustify
b57832e19b
uncrustify libraries/AP_RangeFinder/RangeFinder.cpp
2012-08-21 19:04:10 -07:00
uncrustify
f8a27802f1
uncrustify libraries/AP_RangeFinder/AP_RangeFinder_SharpGP2Y.cpp
2012-08-21 19:04:10 -07:00
uncrustify
605b3b6de2
uncrustify libraries/AP_RangeFinder/AP_RangeFinder_MaxsonarXL.cpp
2012-08-21 19:04:10 -07:00
uncrustify
5abb025c9e
uncrustify libraries/AP_RangeFinder/examples/AP_RangeFinder_test/AP_RangeFinder_test.pde
2012-08-21 19:04:10 -07:00
uncrustify
2b32044d6f
uncrustify libraries/AP_PID/AP_PID.h
2012-08-21 19:04:10 -07:00
uncrustify
25eba0c383
uncrustify libraries/AP_PID/AP_PID.cpp
2012-08-21 19:04:10 -07:00
uncrustify
9c865a0d0d
uncrustify libraries/AP_PID/examples/AP_pid/AP_pid.pde
2012-08-21 19:04:10 -07:00
uncrustify
d952af79cc
uncrustify libraries/AP_PeriodicProcess/PeriodicProcess.h
2012-08-21 19:04:10 -07:00
uncrustify
ded021fa11
uncrustify libraries/AP_PeriodicProcess/AP_TimerProcess.h
2012-08-21 19:04:09 -07:00
uncrustify
a24d925f52
uncrustify libraries/AP_PeriodicProcess/AP_PeriodicProcessStub.h
2012-08-21 19:04:09 -07:00
uncrustify
aa2afece16
uncrustify libraries/AP_PeriodicProcess/AP_PeriodicProcessStub.cpp
2012-08-21 19:04:09 -07:00
uncrustify
621fafe370
uncrustify libraries/AP_PeriodicProcess/AP_TimerProcess.cpp
2012-08-21 19:04:09 -07:00
uncrustify
d7d921119c
uncrustify libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080_APM2.h
2012-08-21 19:04:09 -07:00
uncrustify
0db2404709
uncrustify libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.h
2012-08-21 19:04:09 -07:00
uncrustify
ff94bd7696
uncrustify libraries/AP_OpticalFlow/AP_OpticalFlow.h
2012-08-21 19:04:09 -07:00
uncrustify
80f5d0bb51
uncrustify libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080_APM2.cpp
2012-08-21 19:04:09 -07:00
uncrustify
b505b26226
uncrustify libraries/AP_OpticalFlow/AP_OpticalFlow_ADNS3080.cpp
2012-08-21 19:04:09 -07:00
uncrustify
ce14ba0868
uncrustify libraries/AP_OpticalFlow/AP_OpticalFlow.cpp
2012-08-21 19:04:09 -07:00
uncrustify
0fb7e82792
uncrustify libraries/AP_OpticalFlow/examples/AP_OpticalFlow_test/AP_OpticalFlow_test.pde
2012-08-21 19:04:09 -07:00
uncrustify
4e3199a9e9
uncrustify libraries/AP_Navigation/Navigation.h
2012-08-21 19:04:09 -07:00
uncrustify
c2ba76c2d3
uncrustify libraries/AP_Navigation/Navigation.cpp
2012-08-21 19:04:09 -07:00
uncrustify
41cefc68df
uncrustify libraries/AP_Navigation/examples/Navigation_simple/Navigation_simple.pde
2012-08-21 19:04:09 -07:00
uncrustify
fd9c31e39f
uncrustify libraries/AP_Navigation/examples/Navigation/Navigation.pde
2012-08-21 19:04:09 -07:00
uncrustify
763d36ecf0
uncrustify libraries/APM_RC/APM_RC_APM2.h
2012-08-21 19:04:09 -07:00
uncrustify
0234d70511
uncrustify libraries/APM_RC/APM_RC.h
2012-08-21 19:04:08 -07:00
uncrustify
5af2e87786
uncrustify libraries/APM_RC/APM_RC_APM1.h
2012-08-21 19:04:08 -07:00
uncrustify
9365bf7126
uncrustify libraries/APM_RC/APM_RC_APM2.cpp
2012-08-21 19:04:08 -07:00
uncrustify
323bc2fb1b
uncrustify libraries/APM_RC/APM_RC_APM1.cpp
2012-08-21 19:04:08 -07:00
uncrustify
e0dea4c976
uncrustify libraries/APM_RC/examples/APM2_radio/APM2_radio.pde
2012-08-21 19:04:08 -07:00
uncrustify
41108c390e
uncrustify libraries/APM_RC/examples/APM1_radio/APM1_radio.pde
2012-08-21 19:04:08 -07:00
uncrustify
466f76ebc1
uncrustify libraries/APM_PI/APM_PI.h
2012-08-21 19:04:08 -07:00
uncrustify
6c0c5f524b
uncrustify libraries/APM_PI/APM_PI.cpp
2012-08-21 19:04:08 -07:00
uncrustify
7ffa44c324
uncrustify libraries/AP_Mount/AP_Mount.h
2012-08-21 19:04:08 -07:00
uncrustify
ff555dfb7a
uncrustify libraries/AP_Mount/AP_Mount.cpp
2012-08-21 19:04:08 -07:00
uncrustify
40dcf9e7a8
uncrustify libraries/AP_Motors/AP_MotorsOctaQuad.h
2012-08-21 19:04:07 -07:00
uncrustify
3a5b8c5482
uncrustify libraries/AP_Motors/AP_MotorsOcta.h
2012-08-21 19:04:07 -07:00
uncrustify
4a44c6a1ba
uncrustify libraries/AP_Motors/AP_MotorsTri.h
2012-08-21 19:04:07 -07:00
uncrustify
d773a9c43b
uncrustify libraries/AP_Motors/AP_Motors.h
2012-08-21 19:04:07 -07:00
uncrustify
4fe97c1e7b
uncrustify libraries/AP_Motors/AP_MotorsMatrix.h
2012-08-21 19:04:07 -07:00
uncrustify
b8cc5ac4af
uncrustify libraries/AP_Motors/AP_MotorsY6.h
2012-08-21 19:04:07 -07:00
uncrustify
4cb9f57565
uncrustify libraries/AP_Motors/AP_MotorsHexa.h
2012-08-21 19:03:59 -07:00
uncrustify
d3c856e889
uncrustify libraries/AP_Motors/AP_MotorsQuad.h
2012-08-21 19:03:59 -07:00
uncrustify
5ec922104a
uncrustify libraries/AP_Motors/AP_MotorsHexa.cpp
2012-08-21 19:03:59 -07:00
uncrustify
b982cca74e
uncrustify libraries/AP_Motors/AP_Motors.cpp
2012-08-21 19:03:59 -07:00
uncrustify
cc0c424eed
uncrustify libraries/AP_Motors/AP_MotorsY6.cpp
2012-08-21 19:03:59 -07:00
uncrustify
dc21cc1003
uncrustify libraries/AP_Motors/AP_MotorsOctaQuad.cpp
2012-08-21 19:03:59 -07:00
uncrustify
c7f8c4dfa7
uncrustify libraries/AP_Motors/AP_MotorsMatrix.cpp
2012-08-21 19:03:59 -07:00
uncrustify
6c33f81e9d
uncrustify libraries/AP_Motors/AP_MotorsOcta.cpp
2012-08-21 19:03:59 -07:00
uncrustify
41c1205f26
uncrustify libraries/AP_Motors/AP_MotorsQuad.cpp
2012-08-21 19:03:35 -07:00
uncrustify
df5d1a8aef
uncrustify libraries/AP_Motors/AP_MotorsTri.cpp
2012-08-21 19:03:35 -07:00
uncrustify
364b089bd3
uncrustify libraries/AP_Motors/examples/AP_Motors_test/AP_Motors_test.pde
2012-08-21 19:03:35 -07:00
uncrustify
652b490345
uncrustify libraries/AP_Math/vector2.h
2012-08-21 19:03:34 -07:00
uncrustify
97994a4e3a
uncrustify libraries/AP_Math/AP_Math.h
2012-08-21 19:03:34 -07:00
uncrustify
7e19ae5868
uncrustify libraries/AP_Math/matrix3.h
2012-08-21 19:03:34 -07:00
uncrustify
9bb0b42f28
uncrustify libraries/AP_Math/rotations.h
2012-08-21 19:03:34 -07:00
uncrustify
57d4db2be4
uncrustify libraries/AP_Math/vector3.h
2012-08-21 19:03:34 -07:00
uncrustify
d50c606c97
uncrustify libraries/AP_Math/quaternion.h
2012-08-21 19:03:34 -07:00
uncrustify
9ccb38260d
uncrustify libraries/AP_Math/polygon.h
2012-08-21 19:03:34 -07:00
uncrustify
533860dd73
uncrustify libraries/AP_Math/AP_Math.cpp
2012-08-21 19:03:34 -07:00
uncrustify
b5bee9deff
uncrustify libraries/AP_Math/polygon.cpp
2012-08-21 19:03:34 -07:00
uncrustify
a208fbb2d9
uncrustify libraries/AP_Math/vector3.cpp
2012-08-21 19:03:34 -07:00
uncrustify
424baf3f29
uncrustify libraries/AP_Math/quaternion.cpp
2012-08-21 19:03:33 -07:00
uncrustify
d6e803fd3c
uncrustify libraries/AP_Math/matrix3.cpp
2012-08-21 19:03:33 -07:00
uncrustify
64eaadb332
uncrustify libraries/AP_Math/location.cpp
2012-08-21 19:03:33 -07:00
uncrustify
d0d401581f
uncrustify libraries/AP_Math/examples/location/location.pde
2012-08-21 19:03:33 -07:00
uncrustify
52dbb56bf0
uncrustify libraries/AP_Math/examples/rotations/rotations.pde
2012-08-21 19:03:33 -07:00
uncrustify
87c263fbb9
uncrustify libraries/AP_Math/examples/polygon/polygon.pde
2012-08-21 19:03:33 -07:00
uncrustify
86627c9a9d
uncrustify libraries/AP_Math/examples/eulers/eulers.pde
2012-08-21 19:03:33 -07:00
uncrustify
6fc94828b8
uncrustify libraries/AP_Limits/AP_Limit_Geofence.h
2012-08-21 19:03:33 -07:00
uncrustify
4c8a9eb57d
uncrustify libraries/AP_Limits/AP_Limit_Module.h
2012-08-21 19:03:33 -07:00
uncrustify
f5ae336073
uncrustify libraries/AP_Limits/AP_Limit_Altitude.h
2012-08-21 19:03:32 -07:00
uncrustify
65e518faed
uncrustify libraries/AP_Limits/AP_Limit_GPSLock.h
2012-08-21 19:03:32 -07:00
uncrustify
3aad66b909
uncrustify libraries/AP_Limits/AP_Limits.h
2012-08-21 19:03:32 -07:00
uncrustify
0fc400e43e
uncrustify libraries/AP_Limits/AP_Limits.cpp
2012-08-21 19:03:32 -07:00
uncrustify
900ece6ef4
uncrustify libraries/AP_Limits/AP_Limit_Altitude.cpp
2012-08-21 19:03:32 -07:00
uncrustify
406eb1430c
uncrustify libraries/AP_Limits/AP_Limit_GPSLock.cpp
2012-08-21 19:03:32 -07:00
uncrustify
065cdfe7d0
uncrustify libraries/AP_Limits/AP_Limit_Module.cpp
2012-08-21 19:03:32 -07:00
uncrustify
fd41329e80
uncrustify libraries/AP_LeadFilter/AP_LeadFilter.h
2012-08-21 19:03:15 -07:00
uncrustify
cdb6c60799
uncrustify libraries/AP_LeadFilter/AP_LeadFilter.cpp
2012-08-21 19:03:15 -07:00
uncrustify
966c0a0d1c
uncrustify libraries/AP_LeadFilter/examples/AP_LeadFilter/AP_LeadFilter.pde
2012-08-21 19:03:14 -07:00
uncrustify
ad51ac5e11
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.h
2012-08-21 19:03:14 -07:00
uncrustify
323ab9acf4
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Oilpan.h
2012-08-21 19:03:14 -07:00
uncrustify
8e5a031987
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Stub.h
2012-08-21 19:03:14 -07:00
uncrustify
ac3960b3e7
uncrustify libraries/AP_InertialSensor/AP_InertialSensor.h
2012-08-21 19:03:14 -07:00
uncrustify
e6c2616769
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_MPU6000.cpp
2012-08-21 19:03:14 -07:00
uncrustify
77729b847f
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Oilpan.cpp
2012-08-21 19:03:14 -07:00
uncrustify
0c322fb18a
uncrustify libraries/AP_InertialSensor/AP_InertialSensor_Stub.cpp
2012-08-21 19:03:14 -07:00
uncrustify
25eaeff6a8
uncrustify libraries/AP_InertialSensor/examples/MPU6000/MPU6000.pde
2012-08-21 19:03:14 -07:00
uncrustify
c8ff85a598
uncrustify libraries/AP_IMU/AP_IMU_Shim.h
2012-08-21 19:03:13 -07:00
uncrustify
7f57d462d0
uncrustify libraries/AP_IMU/AP_IMU_INS.h
2012-08-21 19:03:13 -07:00
uncrustify
5601c52c46
uncrustify libraries/AP_IMU/IMU.h
2012-08-21 19:03:13 -07:00
uncrustify
5a2ec6843e
uncrustify libraries/AP_IMU/AP_IMU_INS.cpp
2012-08-21 19:03:13 -07:00
uncrustify
a5ed2f9a53
uncrustify libraries/AP_IMU/IMU.cpp
2012-08-21 19:03:13 -07:00
uncrustify
849c492a5d
uncrustify libraries/AP_IMU/examples/IMU_Oilpan_test/IMU_Oilpan_test.pde
2012-08-21 19:03:13 -07:00
uncrustify
8e00b6d0a9
uncrustify libraries/AP_IMU/examples/IMU_MPU6000_test/IMU_MPU6000_test.pde
2012-08-21 19:03:13 -07:00
uncrustify
d8200a6aea
uncrustify libraries/AP_GPS/AP_GPS_HIL.h
2012-08-21 19:03:13 -07:00
uncrustify
8ad83695b8
uncrustify libraries/AP_GPS/AP_GPS_MTK16.h
2012-08-21 19:03:02 -07:00
uncrustify
a91687f1cb
uncrustify libraries/AP_GPS/AP_GPS_None.h
2012-08-21 19:03:02 -07:00
uncrustify
c95fc7b166
uncrustify libraries/AP_GPS/AP_GPS_406.h
2012-08-21 19:02:53 -07:00
uncrustify
65f55328e2
uncrustify libraries/AP_GPS/AP_GPS.h
2012-08-21 19:02:53 -07:00
uncrustify
4950bf3b95
uncrustify libraries/AP_GPS/AP_GPS_UBLOX.h
2012-08-21 19:02:46 -07:00
uncrustify
a8ad5f62a5
uncrustify libraries/AP_GPS/AP_GPS_MTK.h
2012-08-21 19:02:40 -07:00
uncrustify
9b3081345e
uncrustify libraries/AP_GPS/AP_GPS_Auto.h
2012-08-21 19:02:40 -07:00
uncrustify
a133b098a5
uncrustify libraries/AP_GPS/AP_GPS_SIRF.h
2012-08-21 19:02:40 -07:00
uncrustify
5c24c373d0
uncrustify libraries/AP_GPS/AP_GPS_Shim.h
2012-08-21 19:02:40 -07:00
uncrustify
cdaf2f923d
uncrustify libraries/AP_GPS/GPS.cpp
2012-08-21 19:02:32 -07:00
uncrustify
c5451b0e9b
uncrustify libraries/AP_GPS/AP_GPS_HIL.cpp
2012-08-21 19:02:12 -07:00
uncrustify
b9d3f449b9
uncrustify libraries/AP_GPS/AP_GPS_Auto.cpp
2012-08-21 19:02:11 -07:00
uncrustify
9e43a9d090
uncrustify libraries/AP_GPS/examples/GPS_MTK_test/GPS_MTK_test.pde
2012-08-21 19:01:35 -07:00
uncrustify
0f5aff35fc
uncrustify libraries/AP_GPS/examples/GPS_NMEA_test/GPS_NMEA_test.pde
2012-08-21 19:01:35 -07:00
uncrustify
1e8ea08bce
uncrustify libraries/AP_GPS/examples/GPS_AUTO_test/GPS_AUTO_test.pde
2012-08-21 19:01:34 -07:00
uncrustify
9f2d71e544
uncrustify libraries/AP_GPS/examples/GPS_UBLOX_test/GPS_UBLOX_test.pde
2012-08-21 19:01:34 -07:00
uncrustify
12b5e53ce7
uncrustify libraries/AP_GPS/examples/GPS_406_test/GPS_406_test.pde
2012-08-21 19:01:34 -07:00
uncrustify
d6d51e4116
uncrustify libraries/AP_Declination/AP_Declination.h
2012-08-21 19:01:34 -07:00
uncrustify
bcfff533f0
uncrustify libraries/AP_Declination/AP_Declination.cpp
2012-08-21 19:01:34 -07:00
uncrustify
6f4533c8a8
uncrustify libraries/AP_Declination/examples/AP_Declination_test/AP_Declination_test.pde
2012-08-21 19:01:34 -07:00
uncrustify
6bc9c5707f
uncrustify libraries/AP_Compass/AP_Compass_HMC5843.h
2012-08-21 19:01:34 -07:00
uncrustify
f534730fab
uncrustify libraries/AP_Compass/AP_Compass_HIL.h
2012-08-21 19:01:21 -07:00
uncrustify
4f9c6bbb19
uncrustify libraries/AP_Compass/AP_Compass_HMC5843.cpp
2012-08-21 19:01:20 -07:00
uncrustify
7840eebaef
uncrustify libraries/AP_Compass/Compass.cpp
2012-08-21 19:01:20 -07:00
uncrustify
d1190e1ed4
uncrustify libraries/AP_Compass/AP_Compass_HIL.cpp
2012-08-21 19:01:20 -07:00
uncrustify
53ef9e8b9e
uncrustify libraries/AP_Compass/examples/AP_Compass_test/AP_Compass_test.pde
2012-08-21 19:01:20 -07:00
uncrustify
4b60e53736
uncrustify libraries/AP_Common/AP_Loop.h
2012-08-21 19:01:03 -07:00
uncrustify
7d438cd65d
uncrustify libraries/AP_Common/include/menu.h
2012-08-21 19:01:02 -07:00
uncrustify
6bb8e4e8ac
uncrustify libraries/AP_Common/AP_Common.h
2012-08-21 19:01:02 -07:00
uncrustify
0c99546f45
uncrustify libraries/AP_Common/AP_MetaClass.h
2012-08-21 19:01:02 -07:00
uncrustify
e79d9adea0
uncrustify libraries/AP_Common/c++.h
2012-08-21 19:00:52 -07:00
uncrustify
3a26b94af2
uncrustify libraries/AP_Common/tools/eedump.c
2012-08-21 19:00:51 -07:00
uncrustify
4a50e56a48
uncrustify libraries/AP_Common/tools/eedump_apparam.c
2012-08-21 19:00:51 -07:00
uncrustify
3e4507a4a2
uncrustify libraries/AP_Common/menu.cpp
2012-08-21 19:00:51 -07:00
uncrustify
09c4f76b57
uncrustify libraries/AP_Common/AP_Param.cpp
2012-08-21 19:00:51 -07:00
uncrustify
c18e73a54d
uncrustify libraries/AP_Common/c++.cpp
2012-08-21 19:00:51 -07:00
uncrustify
ca476e5851
uncrustify libraries/AP_Common/examples/menu/menu.pde
2012-08-21 19:00:51 -07:00
Pat Hickey
42e24a869f
uncrustify libraries/AP_Common/AP_Param.h with fixups by hand
2012-08-21 19:00:51 -07:00
uncrustify
6f09714618
uncrustify libraries/AP_Camera/AP_Camera.h
2012-08-21 19:00:51 -07:00
uncrustify
30107b9665
uncrustify libraries/AP_Camera/AP_Camera.cpp
2012-08-21 19:00:51 -07:00
uncrustify
fa90f0b80f
uncrustify libraries/AP_Baro/AP_Baro.h
2012-08-21 19:00:51 -07:00
uncrustify
1196285266
uncrustify libraries/AP_Baro/AP_Baro_MS5611.h
2012-08-21 19:00:50 -07:00
uncrustify
cfcef93e16
uncrustify libraries/AP_Baro/AP_Baro_BMP085.h
2012-08-21 19:00:50 -07:00
uncrustify
5a99d6b697
uncrustify libraries/AP_Baro/AP_Baro_BMP085.cpp
2012-08-21 19:00:18 -07:00
uncrustify
b0003c020f
uncrustify libraries/AP_Baro/AP_Baro_MS5611.cpp
2012-08-21 19:00:18 -07:00
uncrustify
b39411e8d4
uncrustify libraries/AP_Baro/AP_Baro_BMP085_hil.cpp
2012-08-21 19:00:18 -07:00
uncrustify
6f02a645c3
uncrustify libraries/AP_Baro/AP_Baro.cpp
2012-08-21 19:00:18 -07:00
uncrustify
12497c51b5
uncrustify libraries/AP_Baro/examples/AP_Baro_MS5611_test/AP_Baro_MS5611_test.pde
2012-08-21 19:00:18 -07:00
uncrustify
fce9044fb4
uncrustify libraries/AP_Baro/examples/AP_Baro_BMP085_test/AP_Baro_BMP085_test.pde
2012-08-21 19:00:17 -07:00
uncrustify
4a7e79b3ac
uncrustify libraries/AP_AnalogSource/AnalogSource.h
2012-08-21 19:00:17 -07:00
uncrustify
46eeaffdf1
uncrustify libraries/AP_AnalogSource/AP_AnalogSource_Arduino.h
2012-08-21 19:00:17 -07:00
uncrustify
d7fe646829
uncrustify libraries/AP_AnalogSource/AP_AnalogSource_ADC.h
2012-08-21 19:00:17 -07:00
uncrustify
3c1a4b249a
uncrustify libraries/AP_AnalogSource/AP_AnalogSource_Arduino.cpp
2012-08-21 19:00:17 -07:00
uncrustify
e9b5e28b40
uncrustify libraries/AP_AnalogSource/examples/AnalogSource_Arduino/AnalogSource_Arduino.pde
2012-08-21 19:00:17 -07:00
uncrustify
90419ad834
uncrustify libraries/AP_Airspeed/AP_Airspeed.h
2012-08-21 19:00:17 -07:00
uncrustify
37c79f5501
uncrustify libraries/AP_Airspeed/AP_Airspeed.cpp
2012-08-21 19:00:17 -07:00
uncrustify
3c2873b4f5
uncrustify libraries/AP_Airspeed/examples/Airspeed/Airspeed.pde
2012-08-21 19:00:17 -07:00
uncrustify
d6d7606c84
uncrustify libraries/AP_AHRS/AP_AHRS_HIL.cpp
2012-08-21 18:59:34 -07:00
uncrustify
9e4e08699d
uncrustify libraries/AP_AHRS/AP_AHRS_MPU6000.cpp
2012-08-21 18:59:34 -07:00
uncrustify
6327305116
uncrustify libraries/AP_AHRS/examples/AHRS_Test/AHRS_Test.pde
2012-08-21 18:59:13 -07:00
uncrustify
fc11f7e3f0
uncrustify libraries/AP_ADC/AP_ADC_HIL.h
2012-08-21 18:59:13 -07:00
uncrustify
f302ee3d7f
uncrustify libraries/AP_ADC/AP_ADC.h
2012-08-21 18:59:13 -07:00
uncrustify
44941072dc
uncrustify libraries/AP_ADC/AP_ADC_ADS7844.h
2012-08-21 18:59:13 -07:00
uncrustify
149e222e6a
uncrustify libraries/AP_ADC/AP_ADC_HIL.cpp
2012-08-21 18:59:13 -07:00
uncrustify
7b41104d7e
uncrustify libraries/AP_ADC/AP_ADC.cpp
2012-08-21 18:59:13 -07:00
uncrustify
79b370cf1d
uncrustify libraries/AP_ADC/AP_ADC_ADS7844.cpp
2012-08-21 18:59:13 -07:00
uncrustify
796d23277c
uncrustify libraries/AP_ADC/examples/AP_ADC_test/AP_ADC_test.pde
2012-08-21 18:59:13 -07:00
uncrustify
6c5757e775
uncrustify libraries/AC_PID/AC_PID.h
2012-08-21 18:59:13 -07:00
uncrustify
fc9f1a8216
uncrustify libraries/AC_PID/AC_PID.cpp
2012-08-21 18:59:13 -07:00
uncrustify
7c4f980638
uncrustify libraries/AC_PID/examples/AC_PID_test/AC_PID_test.pde
2012-08-21 18:59:13 -07:00
Andrew Tridgell
6d28b3519f
AHRS: removed AP_AHRS_Quaternion
...
this AHRS backend is causing compiler errors with the Arduino build
environment on windows. The quaternion AHRS backend is currently not
being developed/supported anyway. We can resurrect it if someone wants
to start developing it again.
2012-08-22 10:41:31 +10:00
Andrew Tridgell
ddf9541c0a
AP_GPS: fixed build of new MTK code
2012-08-22 10:02:21 +10:00
Craig Elder
2493ffaad1
GPS: Corrections to Media Tek GPS Driver. Change to 5Hz and SBAS
2012-08-22 09:56:25 +10:00
Robert Lefebvre
575b99b4be
TradHeli: Creating Flybar Acro mode.
2012-08-21 16:54:01 -04:00
Andrew Tridgell
2985de279f
AHRS: fixed duplicate gps_use variable in DCM
2012-08-21 20:17:03 +10:00
Andrew Tridgell
134cd51d17
AHRS: moved var_info[] into top level AP_AHRS class
2012-08-21 15:58:09 +10:00
Andrew Tridgell
ac72db8f00
AHRS: added set_fast_gains() method
...
this will be used by arducopter on the ground
2012-08-21 15:38:06 +10:00
Robert Lefebvre
bf6c934c32
Changing TradHeli param motors.acro_mode to motors.flybar_mode to better reflect it's intent.
2012-08-20 23:13:50 -04:00
Robert Lefebvre
e6b5af7143
Adding new Trad Heli parameters.
2012-08-20 16:45:19 -04:00
rmackay9
9b3ced93ee
AP_Compass: fix for mismatching set_initial_location parameters (forgot to change long to int32_t in .cpp file)
2012-08-18 20:41:38 +09:00
rmackay9
c10d01f24b
AP_GPS: revert delay callback to be "unsigned long"
2012-08-18 20:33:45 +09:00
rmackay9
2b24e422de
DataFlash: revert delay callbacks to use "unsigned long"
2012-08-18 20:28:31 +09:00
rmackay9
20cb2e56a0
DataFlash: change "unsigned long" to "uint32_t" in callback functions
2012-08-18 19:22:14 +09:00
rmackay9
94552b57a7
DataFlash: replaced "int" with "int16_t"
2012-08-18 18:31:20 +09:00
rmackay9
976679208c
AP_Common: change a few more "int" to "int16_t"
2012-08-18 18:05:18 +09:00
rmackay9
71f12fbc9b
AP_Compass: replace "long" with "int32_t"
2012-08-18 16:58:16 +09:00
rmackay9
8a29f47ce0
AP_GPS: replaced "int" with "int16_t" and "long" with "int32_t"
2012-08-18 16:35:38 +09:00
Andrew Tridgell
c9ba693e1f
AP_Baro: the HIL baro needs to inherit calibrate() from the parent class
...
this was what caused the renorm errors
2012-08-18 16:32:23 +10:00
Andrew Tridgell
14cdbd36cb
AHRS: check for bad values in the error before they can affect DCM
...
this should fix the DCM renorm errors in autotest, probably caused by
bad climb rates
2012-08-18 13:54:11 +10:00
Andrew Tridgell
81cd4b6c13
Filter: ensure the derivative filter never returns an invalid number
2012-08-18 13:54:11 +10:00
rmackay9
2e77691ca1
AP_Limits: change order of initialisation of class variables to remove compiler warnings.
2012-08-18 12:51:32 +09:00
Michael Oborne
bcceedffab
Fix Airspeed use use
2012-08-18 08:30:15 +08:00
Andrew Tridgell
d9cc967508
AHRS: force an extra read of the compass on startup
...
the first read from the compass can be bad. This ensures we have a
good value when getting the initial AHRS yaw.
Thanks to Randy and Jason for the bug report!
2012-08-17 17:57:39 +10:00
Andrew Tridgell
e171720608
DataFlash: fixed SITL build
2012-08-17 16:27:19 +10:00
Andrew Tridgell
34a1297842
SITL: added SIM_ENGINE_MUL
...
this allows for simulated engine failures
2012-08-17 14:22:08 +10:00
Jason Short
bd91215770
Dataflash fix for missing card error
2012-08-16 15:37:28 -07:00
Andrew Tridgell
82954f823b
SITL: make abs() 16 bit in SITL
...
this will help us find abs() bugs in autotest
2012-08-16 15:18:17 +10:00
Andrew Tridgell
6300fa7399
math: more abs() fixes
...
abs() is 16 bit
2012-08-16 15:17:42 +10:00
Jason Short
a66e43aff1
Location Lib : Abs was overflowing causing bad comparison
2012-08-15 22:01:51 -07:00
Jason Short
ff38dadd00
Location Lib. Potential fix for bad angle and distance calcs.
...
last_lat changed to int32_t since it can be negative.
2012-08-15 21:36:55 -07:00
Jason Short
3ca57ac105
DataFlash : Removed Chip Erase - relying on Block erase only
2012-08-15 21:04:24 -07:00
Jason Short
ce2a608706
Dataflash Logs : Fixed block erase on APM2
...
Byte order for 512 vs 528 was reversed.
2012-08-15 21:04:24 -07:00
Andrew Tridgell
034fb5b194
APM: fixed hil build
2012-08-16 12:53:37 +10:00
Andrew Tridgell
73dcbc24c3
Quaternion: we no longer support acceleration in the GPS driver
...
remove the linear acceleration compensation code
2012-08-15 20:07:53 +10:00
Andrew Tridgell
2d47bd0386
GPS: support getting raw velocity values from a UBlox
...
this may give better velocity numbers than the value from COG
2012-08-15 20:06: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
a4b1b9f0a4
AP_AnalogSource: make read_average() return a float
...
this allows it to take advantage of better than 1 bit resolution by
averaging
2012-08-15 12:39:35 +10:00
Andrew Tridgell
299711f4a9
MAVLink: added FENCE_ACTION_REPORT
2012-08-15 12:39:35 +10:00
Andrew Tridgell
9b4b7997b6
AHRS: added ahrs.yaw_initialised()
...
this allows the high level code to know if the AHRS driver has a
reliable yaw estimate
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
Pat Hickey
99e96031f2
APM_RC_APM2: updated comments for clarity
2012-08-13 15:34:17 -07:00
rmackay9
cf943255a5
AP_RC_Channel: deleted this library as nobody seems to be using it.
...
Everyone is using RC_Channel instead which includes parameters.
2012-08-13 16:36:10 +09:00
rmackay9
35e7a6e018
GPS_IMU: deleted this empty library as nobody seems to be using it.
2012-08-13 16:35:29 +09:00
rmackay9
59cb6e5dba
Waypoints: deleted this library as nobody seems to be using it.
2012-08-13 16:35:08 +09:00
rmackay9
62c3ea9ea1
Trig_LUT: deleted this library as nobody seems to be using it
2012-08-13 16:34:50 +09:00
rmackay9
004c8bd5ed
AP_EEPROMB: deleted this library as nobody seems to be using it.
2012-08-13 16:34:33 +09:00
rmackay9
3482f05b48
APM_RC: rename example sketch directories for APM2 so they can be opened easily from arduino ide
2012-08-13 11:50:53 +09:00
Andrew Tridgell
48e275e22d
AHRS: avoid a compiler bug in quaternion code
...
Having _wind in the AP_AHRS class causes a register allocation error
when building the Quaternion code with some versions of avr-gcc. Quite
bizarre.
2012-08-13 11:08:10 +10:00
Andrew Tridgell
19a5d11669
AHRS: use airspeed for wind in forward flight
...
when not turning we can use the airspeed sensor directly to calculate
the wind speed.
2012-08-12 10:54:25 +10:00
Andrew Tridgell
f5b7ae213c
AHRS: added AHRS_GPS_USE parameter
...
this allows for the GPS to be disables for position updates, which
allows for testing dead-reckoning
2012-08-11 22:06:03 +10:00
Andrew Tridgell
4951d686f6
Mavlink: re-generate with WIND message
2012-08-11 22:06:03 +10:00
Andrew Tridgell
8d914b14e4
Mavlink: added WIND message
...
this allows us to log the wind estimation result
2012-08-11 22:06:03 +10:00
Andrew Tridgell
779dacfd24
AHRS: added wind estimation code
...
this allows us to estimate the wind while we have GPS lock, then use
that estimate in the long term dead reckoning
2012-08-11 22:06:03 +10:00
Andrew Tridgell
0ba57d05eb
AP_Math: added matrix column extraction functions
2012-08-11 22:06:02 +10:00
Amilcar Lucas
c7d1974741
RC_Channel_aux: cycle thru all functions except k_none and k_nr_aux_servo_functions
...
Probably makes no difference because g_rc_function[k_none] == NULL
2012-08-11 13:43:21 +02:00
Andrew Tridgell
af4071894e
AHRS: added long-term dead-reckoning
...
this uses airspeed (if available) or last GPS ground speed to update
our position estimate in AHRS
2012-08-11 12:00:31 +10:00
Andrew Tridgell
618f43bef6
AP_GPS: added last_ground_speed() method
...
used for dead-reckoning in AHRS
2012-08-11 11:59:47 +10:00
Andrew Tridgell
8a6fcf998b
AP_GPS: fixed types to be stdint types
2012-08-11 11:59:03 +10:00
Andrew Tridgell
3419d8e006
SITL: fill in SIMSTATE.lat and SIMSTATE.lng
2012-08-11 11:58:25 +10:00
Andrew Tridgell
d46b7a67b7
MAVLink: re-generate MAVLink C code
2012-08-11 11:58:06 +10:00
Andrew Tridgell
d9ad1c8616
MAVLink: added SIMSTATE.lat and SIMSTATE.lng
...
this allows us to display both true and estimated position on the
groundstation
2012-08-11 11:57:45 +10:00
Andrew Tridgell
87fca1985f
AP_Math: added location_update() and location_offset() functions
...
these will be used by AHRS dead reckoning
2012-08-11 11:56:54 +10:00
Andrew Tridgell
f95b06a880
AHRS: make airspeed sensor available to AHRS
...
this will be used for long term dead-reckoning
2012-08-11 08:57:32 +10:00
Andrew Tridgell
b01907cf23
ACM: fixed HIL build
2012-08-11 08:34:16 +10:00
Jason Short
e12ce1d5a7
MOTORS Mixer: temp removal of Yaw Contrib code
2012-08-09 17:00:11 -07:00
Jason Short
52b2aacf28
AHRS DCM: FOrmatting
2012-08-09 16:59:43 -07:00
Amilcar Lucas
32e354be4e
AP_Mount: Reduce parameter name length, to allow MNT2_* strings to be smaller than the limit of 15 characters
2012-08-10 00:16:52 +02:00
Andrew Tridgell
f812fc921f
build: fixed more build warnings
2012-08-09 16:19:39 +10:00
Andrew Tridgell
0763bbd1af
MPU6000: fixed some build warnings
2012-08-09 16:19:21 +10:00
Andrew Tridgell
c70bae9617
AP_MetaClass: fixed a warning
2012-08-09 16:19:04 +10:00
Andrew Tridgell
7f4b7703c1
AP_Param: fixed some build warnings
2012-08-09 16:18:53 +10:00
Andrew Tridgell
6213032957
MAVLink: removed obsolete files
2012-08-09 15:25:49 +10:00
Andrew Tridgell
5d1d9e9042
MAVLink: added generator.sh script
...
this is used to re-generate our MAVLink C code
2012-08-09 15:25:06 +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
Amilcar Lucas
0b0b9c29a2
Allow fully independent operation of two AP_Mount instances
2012-08-08 23:11:23 +02:00
Amilcar Lucas
530ea0bebd
AP_Mount: Enable Joystick speed code, now that the framework supports more than 16 parameters per group.
...
Save some bytes by skiping the redundant *_rc_in initialization in the AP_Mount() constructor
2012-08-08 22:45:36 +02:00
Andrew Tridgell
a8c99f3887
SITL: fixed deletion of eeprom.bin
...
with the new AP_Param constructor order, we need to erase rather than
unlink the eeprom
2012-08-08 18:01:06 +10:00
Andrew Tridgell
dcc50b5705
AP_Airspeed: removed values passed to constructor
2012-08-08 16:38:39 +10:00
Andrew Tridgell
e6e25525bc
AP_Param: avoid saving values within 0.01% of the default value
...
this saves some more space due to rounding errors
2012-08-08 13:13:30 +10:00
Andrew Tridgell
45c27317ef
AP_Mount: fixed defaults for angles
...
this saves some eeprom space by not saving the 4500 values
2012-08-08 13:04:49 +10:00
Andrew Tridgell
8ae35cae1c
AP_Math: rename get_bearing() to get_bearing_cd() to make units obvious
2012-08-08 12:12:30 +10:00
Andrew Tridgell
7ff7514a88
SITL: added pgm_read_dword() and pgm_read_float()
2012-08-08 12:11:57 +10:00
Andrew Tridgell
518d6365ff
AP_Param: update remaining libraries for new constructor syntax
2012-08-08 12:11:57 +10:00
Andrew Tridgell
898a5af692
AP_Param: update AHRS for new constructor syntax
2012-08-08 12:11:57 +10:00
Andrew Tridgell
5e8fe8d93e
AP_Param: update PID libraries for new constructor syntax
2012-08-08 12:11:57 +10:00
Andrew Tridgell
c298d5130f
AP_Param: major update to use default values in var_info table
...
this stores the default value for all scalar variables in the var_info
table, which makes it possible to avoid storing default values in
eeprom. That allows us to oversubscribe the eeprom space with a much
lower risk of overrun.
2012-08-08 12:11:57 +10:00
Andrew Tridgell
a7b9aff79f
AP_Baro: the DerivativeFilter now handles duplicate data
...
this saves a few bytes of memory
2012-08-08 12:07:36 +10:00
Andrew Tridgell
77f3b60b6f
Filter: make the DerivativeFilter test GNUPlot friendly
...
makes testing easier
2012-08-08 12:07:36 +10:00
Andrew Tridgell
899eeb608b
Filter: automatically cope with duplicate timestamps
...
this makes it easier for callers to avoid excessive slope calculations
Thanks to Jon Challinger for the idea
2012-08-08 12:07:35 +10:00
Andrew Tridgell
d7d33c64b7
Filter: fixed a off-by-one DerivativeFilter bug
...
many thanks to Jon Challinger for noticing this!
2012-08-08 12:07:35 +10:00
Amilcar Lucas
2c4a0636f3
AP_Mount: move mount to a "retracted position" into the fuselage with a fourth servo
2012-08-06 01:27:29 +02:00
Amilcar Lucas
107155fa1a
AP_Mount: Allow using any RC channel to control any of the mount axes.
...
This has the added benefit of saving 60 bytes and simplifying Mission Planner gui.
Moved some code from RC_Channel_aux to AP_Mount class
The servos get written by the update_mount_position() function, this simplifies main()
PS: The beauty of using libraries: I did not have to touch a single line of ArduPlane's code!
2012-08-05 23:48:57 +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
bbc4bdb729
More flexible RC support
2012-08-04 18:39:20 +02:00
Andreas M. Antonopoulos
7262b0429a
AP_Limits: experimental "bounce" mode.
2012-07-31 18:39:58 -07:00
Robert Lefebvre
4ffc5e211a
Fixing Trad Heli Ext ESC Controller
...
-Added ramp-down rate instead of instantly setting ramp to zero when throttle is dropped to bottom. This is to allow "warm-restart" if shutdown was unintentional.
-Actual ESC still goes to zero while throttle is dropped to the bottom, only the ramp counter winds down slowly behind the scenes.
2012-07-31 17:47:25 -04:00
rmackay9
5077674043
AP_InertialSensor_MPU6000: another attempt at fixing the SITL build
2012-07-28 17:19:19 +09:00
rmackay9
7683e9d870
AP_InertialSensor_MPU6000: changed DMP memory definition (dmpMem) to const uint8_t to remove SITL compile errors (hopefully)
...
Removed unused 'dump' variable from dmp_load_mem to reduce compiler warnings
2012-07-28 16:33:04 +09:00
rmackay9
0eaf427062
AP_AHRS_MPU6000: cleaning up compiler warning due to unused yaw_deltat variable
2012-07-28 16:23:25 +09:00
rmackay9
48074f4766
AP_InertialSensor_Oilpan: changed initialisation order of parameters to remove compiler warning
2012-07-28 15:22:37 +09:00
rmackay9
1b521a9f73
AP_AHRS: updated test sketch to allow use of MPU6000's DMP
2012-07-28 14:27:26 +09:00
rmackay9
dbe7c8ed1a
AP_AHRS_MPU6000: first draft implementation of class that uses MPU6000's DMP to calculate attitude
2012-07-28 14:17:38 +09:00
rmackay9
b844bb7919
AP_AHRS: removed var_info from AP_AHRS class (moved to AP_AHRS_DCM)
2012-07-28 14:16:56 +09:00
rmackay9
468170b589
AP_AHRS_DCM: moved var_info to belong to AP_AHRS_DCM instead of AP_AHRS
2012-07-28 14:16:15 +09:00
rmackay9
7b9782c5ac
AP_IMU_INS: added gx(), gy() and gz() methods to return gyro offsets
2012-07-28 14:15:23 +09:00
rmackay9
6cd0918134
AP_InertialSensor: methods added to access DMP functionality
2012-07-28 14:14:43 +09:00
Andrew Tridgell
4b4b67496b
MAVLink: rename the message_definitions directory
2012-07-26 10:03:36 +10:00
Andrew Tridgell
8dd62829f9
MAVLink: removed MAVLink 0.9 message definitions
...
we are now 1.0 only
2012-07-26 10:03:36 +10:00
rmackay9
bb05dab924
AP_Mount: addition of Amilcar's mount_type
...
set_roi_cmd modified to take a Location. I know the intention was for set_roi_cmd to interpret the MAVLink command directly but unfortunately in arduCopter missions are only made up of waypoints (which are Locations).
2012-07-25 11:00:38 +09:00
Jonathan Challinger
9cd98e79dd
AHRS: normalise GA_b before computing error vector only if too large
...
When GA_b is small the direction of the vector is unreliable, so
normalising can exacerbate the error in the direction
2012-07-23 17:16:50 +10:00
Andrew Tridgell
175b6d2606
AP_AnalogSource: fixed reporting of VCC
...
the VCC pin number should not be converted
2012-07-21 19:49:24 +10:00
Andrew Tridgell
5f5ab9c07c
AHRS: if we don't have gps correction enabled, zero the yaw correction
2012-07-20 17:21:04 +10:00
Andrew Tridgell
c937738732
AHRS: allow the gps/accelerometers to control yaw when rolled
...
this solves a problem with yaw estimation when at high roll angles,
when the compass code becomes ineffective
2012-07-20 11:50:04 +10:00
Andrew Tridgell
151a50b6af
MAVLink: imported updated generated mavlink C code
...
no functionality changes
2012-07-20 11:50:03 +10:00
Jason Short
c9d3ab5413
Oilpan ADC parameters added
...
including a function that configures each Accel Axis
Defaults matching old behavior
Added param group
2012-07-18 22:57:11 -07:00
Jason Short
148da2e4a0
Lead Filter: simplified calculation
2012-07-18 22:57:10 -07:00
Andrew Tridgell
819b6459b2
GPS-UBlox: removed duplicate config messages
...
these were left over from debugging
2012-07-19 15:23:15 +10:00
Amilcar Lucas
3de23220ed
RC_Channel parameters: Fix a typo
2012-07-18 22:39:49 +02:00
Amilcar Lucas
22d2f9ea15
Support up to 7 aux servo outputs
2012-07-18 21:58:22 +02:00
rmackay9
e61cf0e1f9
AP_Mount: added set_manual_rc_channel and set_manual_rc_channel_function to allow input of pitch, roll and yaw controls from a regular RC_Channel (i.e. not RC_Channel_aux)
...
For now, angles red in are always of the range -45 deg ~ 45 deg which is consistent with the existing arducopter implementation but should be improved to scale the pilot's input to the mount's actual range.
2012-07-18 23:20:05 +09:00
Amilcar Lucas
461098b289
Replace long with int32_t
2012-07-18 02:12:31 +02:00
Amilcar Lucas
724c5f6490
Use ascending order in the values
2012-07-18 02:11:49 +02:00
Amilcar Lucas
1da0ce20ce
Improve parameter documentation, it still does not work, but is an improvement.
...
I just do not understand why these parameters do not appear in Mission planner :(
2012-07-17 23:32:30 +02:00
Michael Oborne
9e4d118fdb
Airspeed Library - fix param names.
...
The Group definition give the start of the param name.
This way we can maintain multiple instances if required of the same library as options.
2012-07-16 21:48:47 +08:00
Andrew Tridgell
feb456de56
Airspeed: Added AP_Airspeed sensor library
...
this will allow an airspeed sensor object to be passed to AHRS for
dead reckoning
2012-07-16 11:21:20 +10:00
rmackay9
acef75319c
AP_MotorsMatrix: small bug fix to limit checking on remove_motor call. Fix thanks to Michael Peschel!
2012-07-16 00:38:58 +09:00
rmackay9
669ffb5ef8
RC_Channel_aux: added enable_out method to help stop servos from moving before the mount has initialised.
...
changed parameter names of "update_aux_servo_function" to make it more clear that any 4 servos can be passed in (not just servos 5~8).
Also allowed NULL servos to be passed in as parameters because we only need 3 in ArduCopter.
2012-07-15 16:28:53 +09:00
rmackay9
5616b1769b
AP_Camera: changed "int" to "int16_t" and "long" to "int32_t" here and there.
2012-07-15 16:26:12 +09:00
Andreas M. Antonopoulos
c73f7ef3ab
AP_Limits library, provides modular "limits" such as altitude and geo-fencing.
2012-07-14 19:26:17 -07:00
Michael Oborne
a469682b7b
fix param config names
2012-07-14 15:34:15 +08:00
Robert Lefebvre
ed235a3924
Change to prevent Tricopter servos from going hard-over during Disarmed state.
...
Believe this was an oversight when the change to AP_Motors went in.
2012-07-13 23:12:26 -04:00
Robert Lefebvre
8ce9aae2f7
Instituting Yaw Differential on Multirotors. Intent is to stop "rise on yaw input".
...
Since motors with increasing speed due to yaw input seem to generate more thrust that motors that slow lose thrust, thus net thrust goes up, causing copter to climb.
Values are a guesstimate, proven out by test flying. This could probably become a parameter.
2012-07-13 22:59:28 -04:00
Andreas M. Antonopoulos
d4a0cb5db1
Added Michael Pursifull's Maxsonar HRLV model support
2012-07-11 18:46:47 -07:00
rmackay9
6f8d0a02a4
AP_Camera: moved seme constructor initialisers around to remove compile warnings
2012-07-12 09:33:22 +09:00
rmackay9
4dd4c95d5c
AP_AnalogSource_Arduino: fix to allow analog port to be read to be specified as a "channel" (i.e. A0)
...
Also fixed example range finder sketch to work with interrupt enabled AP_AnalogSource_Arduino class
2012-07-11 21:19:17 +09:00
Amilcar Lucas
cc02d85cdf
AP_Mount: add support for non-spring-loaded joysticks
2012-07-11 00:07:33 +02:00
Amilcar Lucas
9a41cbffdf
RC_Channel: improve parameter documentation
2012-07-11 00:07:10 +02:00
Amilcar Lucas
46d20c2d6b
Remove unused function, remove unnecessary angle wrapping.
2012-07-11 00:06:45 +02:00
Amilcar Lucas
bccb07cbd0
Allow mount control when no AHRS exists
...
Allow mount control on non stabilized axes
2012-07-11 00:06:26 +02:00
Andrew Tridgell
a72f6acef6
AP_Math: added get_distance_cm() to return in centimeters
2012-07-11 07:49:05 +10:00
Andrew Tridgell
165604a55c
AHRS: fixed HIL build
2012-07-10 18:02:05 +10:00
Andrew Tridgell
0f9fb2c64b
AHRS: added AHRS_GPS_GAIN parameter
...
this allows control of how much GPS velocity information is used in
doing centripetal correction in DCM
2012-07-10 16:22:48 +10:00
Andrew Tridgell
e1725e9ea5
AP_Param: added some docs on the eeprom header format
2012-07-10 14:03:49 +10:00
Craig Elder
6d3fdfc03a
DataFlash: The current method for checking if chip erase worked is producing false positives. We are forcing the block erase until we have a deterministic test method.
2012-07-09 15:23:35 -07:00
Amilcar Lucas
af338939be
RC_Channel: Improve documentation
2012-07-07 21:57:30 +02:00
Amilcar Lucas
46552b4222
AP_Mount: Fix radians/degrees scaling regressions
...
Rename calculate() into stabilize()
Implement MAV_MOUNT_MODE_RC_TARGETING initialization
Document to make sure this radians/degrees mess up does not happen again
2012-07-07 21:56:56 +02:00
Andrew Tridgell
d755fedc26
AnalogSource: prevent a division by zero on zero ADC data
2012-07-06 19:59:18 +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
f501503eb0
AP_Baro: improved barometer averaging
...
this changes the barometer calculations to floating point. On a MS5611
this is actually about twice as fast as the previous 64 bit
calculations, but gains us more accuracy as we are able to take
advantage of sub-bit precision when we average over 8 samples.
2012-07-06 15:11:30 +10:00
Andrew Tridgell
520d762382
Filter: split the DerivativeFilter steps into update() and slope()
...
this allows us to apply new data at a different rate than we calculate
the slope.
2012-07-06 15:11:30 +10:00
Andrew Tridgell
3c7e521f70
AP_Baro: update MS5611 test to use baro library altitude
2012-07-06 15:11:30 +10:00
Andrew Tridgell
302696951a
AHRS: make the yaw independent drift correction optional and disable
...
the new correction algorithm copes poorly with gyro drift, leading to
signification attitude errors in the face of drift
2012-07-06 15:11:30 +10:00
Andrew Tridgell
8c5ef3e60f
AHRS: only enable barometer for AHRS if it is smooth enough
...
if we used less than 5 samples to compute the pressure then don't use
it for climb rate
2012-07-05 16:29:21 +10:00
Andrew Tridgell
ec0995eea1
SITL: lower baro noise a bit
2012-07-05 16:29:21 +10:00
Andrew Tridgell
6534dab719
Filter: fixed DerivativeFilter example build
2012-07-05 16:29:21 +10:00
Andrew Tridgell
d29b6ce0a8
SITL: run the HIL barometer at 80Hz to match APM2
2012-07-05 16:29:21 +10:00
Andrew Tridgell
209136386b
AP_Baro: added get_pressure_samples() interface
...
this returns how many samples were used to calculate the last pressure
2012-07-05 16:29:21 +10:00
Andrew Tridgell
1a42b10255
Filter: fixed typo in 9 point DerivativeFilter
2012-07-05 16:29:20 +10:00
Andrew Tridgell
185c6e5b32
AP_Baro: change to a 7 point DerivativeFilter for climb rate
2012-07-05 13:00:47 +10:00
Andrew Tridgell
75470dc912
Filter: cope with non-uniform time steps in the DerivativeFilter
...
this helps with the barometer a lot, as the timing is quite variable
2012-07-05 13:00:47 +10:00
Andrew Tridgell
f03ba86d9d
SITL: add some minimal noise when motors are off
...
this actually improves the gyro calibration
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
2cd6da2539
AHRS: only use GPS for yaw when compass is not being used
...
this avoids having two competing controllers
2012-07-05 13:00:46 +10:00
Andrew Tridgell
adfa97b6f8
AHRS: enable barometer for vertical velocity
...
this re-enables the barometer for vertical velocity information
for drift correction, now that we have a better filter
on the climb rate
2012-07-05 13:00:46 +10:00
Andrew Tridgell
f9fc7aafe7
AP_Baro: use DerivativeFilter in barometer climb rate
2012-07-05 13:00:46 +10:00
Andrew Tridgell
f19e5a6273
Filter: added DerivativeFilter implementation
...
this adds a DerivativeFilter implementation of up to 10 points
2012-07-05 13:00:46 +10:00
Andrew Tridgell
9f8703274c
AP_Baro: show climb rate in baro test sketch
2012-07-05 13:00:45 +10:00
rmackay9
b5f47f5e63
AP_Motors: clarified some doxygen descriptions for TradHeli
2012-07-05 08:46:50 +09:00
Amilcar Lucas
0febf76d9d
Document++
2012-07-05 00:33:46 +02:00
Amilcar Lucas
e9c72822dc
Remove unused function
2012-07-05 00:33:10 +02:00
Andrew Tridgell
c35a2e999b
SITL: added SIM_GPS_DELAY parameter
...
this allows a delay to be added to the gps data to test the impact on
AHRS/DCM
2012-07-04 21:05:22 +10:00
rmackay9
faeda3713e
AP_AHRS: removed DCM_test example sketch
...
No longer required because it doesn't compile and is redundant anyway because the AP_AHRS_DCM class is tested in the AHRS_Test example sketch.
2012-07-04 18:22:51 +09:00
Andrew Tridgell
3849ca8b5c
AHRS: make DCM drift correction not rely on accurate yaw
...
this uses a new formulation of the GPS based drift correction from
Bill Premerlani that rotates the error vector to avoid relying on
accurate yaw. This means we should get accurate roll/pitch correction
even with lots of magnetometer interference
It also makes it possible to fly a multicopter with no compass. It can
even navigate and correct yaw (slowly!)
2012-07-04 17:00:40 +10:00
Andrew Tridgell
1cd8c54f21
AP_Math: cope with co-located waypoints in location_passed_point()
2012-07-04 14:24:04 +10:00
Andrew Tridgell
468dfe3faa
AP_Math: the windows arduino build is missing acosf()
2012-07-04 14:14:58 +10:00
Andrew Tridgell
0bdce404a5
AP_Math: add include of math.h
...
this is needed for location.cpp
2012-07-04 13:59:23 +10:00
Andrew Tridgell
be9b9f3e67
DataFlash: fixed SITL build
2012-07-04 13:44:01 +10:00
Andrew Tridgell
dd24330645
DataFlash: fallback to BlockErase if ChipErase fails
...
The errata on the APM2 dataflash chip says that ChipErase may not work
on some chips
2012-07-04 12:42:46 +10:00
Andrew Tridgell
dd200cba31
Math: added location functions to math library
...
these do common calculations on struct Location
2012-07-04 12:42:46 +10:00
Andrew Tridgell
1314e4f872
AHRS: make P gain on PI roll/pitch controller tunable
...
this is to make it easier for Craig and Alan to tune
2012-07-04 12:42:46 +10:00
Andrew Tridgell
060cbe2030
AP_Mount: removed unused enum
2012-07-03 10:39:34 +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
Andrew Tridgell
057eb5e6f6
Baro: average over all pressure/temperature samples on MS5611
...
this allows us to use the MS5611 barometer at its full 100Hz sample
rate (80Hz for pressure, 20Hz for temperature). The pressure and
temperature values are averaged between reads without adding any
latency. Previously the driver would throw away values between
readings
This also fixes a race condition in reading from the SPI bus that
could lead to bad values from the barometer
2012-07-02 13:44:53 +10:00
Andrew Tridgell
f70cd71791
Baro: fixed build of MS5611 test code
2012-07-02 13:44:53 +10:00
Andrew Tridgell
769011e947
AnalogSource: added some example code
2012-07-01 15:01:05 +10:00
Andrew Tridgell
1fdcc3e8f0
SITL: added support for new analog source
...
removed analogRead() to prevent people using it
2012-07-01 15:01:05 +10:00
Andrew Tridgell
c8befe4536
AnalogSource: make the Arduino AnalogSource interrupt driven
...
this fixes several problems with reading analog sources:
- we were getting poor values because we didn't wait long enough for
an analog source to settle
- we wasted a lot of CPU cycles waiting for conversions
- we were not taking averages over many samples, which we did with
the old AP_ADC driver on the APM1
2012-07-01 15:01:05 +10:00
Andrew Tridgell
136c03c3c0
AHRS: include the P terms in get_gyro()
...
this makes it more useful for navigation controllers
2012-06-29 21:54:09 +10:00
Andrew Tridgell
acc6adf6e9
MPU6k: removed an unused variable
2012-06-29 21:54:09 +10:00
Andrew Tridgell
ed691fc465
SITL: added SITL class for controlling simulation
...
this holds mavlink settable parameters for controlling sensor noise
levels
2012-06-29 15:10:51 +10:00
Andrew Tridgell
16c55c64d4
AHRS: don't add the P terms in _omega
...
this can lead feedback via the _P_gain()
2012-06-29 15:10:51 +10:00
Andrew Tridgell
37fc6c46b9
AHRS: disable barometer for vertical acceleration
...
this seems to have been the cause of the 'flips' seen by Marco and
others. Testing by Craig and Alan shows that the flips are gone when
the barometric acceleration is removed.
It looks like a 5 point average filter is not enough to keep the
vertical acceleteration noise low. With high noise in the z axes, the
x and y axes are scaled back when the ge vector is normalised.
2012-06-28 11:12:49 +10:00
Andrew Tridgell
58c4d458dc
AHRS: re-instate new DCM drift correction code
...
This reverts commit 078489638d47fbaffde7c51249e36b5a8fc4ef9d.
2012-06-28 11:09:22 +10:00
Andrew Tridgell
fd241692d0
AHRS: revert to the old drift correction algorithm
...
we need to work out why Craigs quad flipped today before we enable
this new drift correction
2012-06-27 18:16:41 +10:00
Andrew Tridgell
a6543f1e84
SITL: removed an unused variable
2012-06-27 16:01:50 +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
8e044a560b
AHRS: include P term in omega
...
thanks to Jon for suggesting this
2012-06-27 16:01:50 +10:00
Andrew Tridgell
37e2f2ee2c
AHRS: implement spin rate limits
...
this follows the method that Bill developed in his fastRotations
paper. We've demonstrated that this is indeed needed in APM, as we
were able to produce the 'dizzy' effects in both the ArduPlane and
ArduCopter simulator
2012-06-27 16:01:50 +10:00
Andrew Tridgell
e4a245179c
AHRS: cope with copters with no compass
...
if a copter doesn't have a compass, we can't use the GPS for gyro
drift correction
2012-06-27 16:01:50 +10:00
Andrew Tridgell
f4faf941e2
GPS: test the more modern MTK16
2012-06-27 16:01:50 +10:00
Andrew Tridgell
27761737ce
SITL: fixed GPS heading in simulated UBlox
...
longitude scale does not apply to velocity->heading conversions
2012-06-27 16:01:50 +10:00
Andrew Tridgell
b811653800
SITL: changes UBlox simulation to 5Hz
...
this matches the real UBlox driver
2012-06-27 16:01:50 +10:00
Andrew Tridgell
e4d28b12e5
Compass: remove the need to call calculate() on the compass object
...
the new AHRS code doesn't use calculate() and the compass.heading
attribute. Instead it works on the raw magnetometer vector. This
change removes the internal calculate state from the compass object
and instead adds calculate_heading() for use by older code that
doesn't go via AHRS.
This significantly reduces the calculation involved in compass updates
The null offsets enable/disable code is also removed, as it is not
needed now that compass offsets are not linked to the AHRS state.
2012-06-27 16:01:50 +10:00
Andrew Tridgell
3a41ad8e7c
AHRS: normalize the ge vector in drift correction, and use barometer
...
The normalisation ensures the error term scales uniformly with
different accelerations.
The barometer is used for vertical acceleration estimation
2012-06-27 16:01:50 +10:00
Andrew Tridgell
c387edd74c
Baro: added get_altitude() and get_climb_rate() interfaces
...
this allows the barometer driver to calibrate and return altitude and
climb rate values. This will be used by the AHRS drift correction code
for vertical velocity
The climb rate uses a 5 point average filter
2012-06-27 16:01:50 +10:00
Andrew Tridgell
06c8763881
Filter: added 5 point average float filter
2012-06-27 16:01:50 +10:00
Jonathan Challinger
d230690b7b
AHRS: brought DCM more inline with Bill's implementation
...
omega_I applied continuously. _ki larger. Stop integrating when _omega.length()>20
The key change was the scaling of ge to ensure the error is not
quadratic
2012-06-27 16:01:49 +10:00
Andrew Tridgell
d4c8041c51
AHRS: first successful version of Bills new drift correction system
...
This makes 3 major changes:
1) fixes the scaling of the yaw drift correction term to fix the time
constant
2) don't integrate the mag vector over multiple readings
3) accumulate omega_I changes over 15 seconds before applying, to try
to prevent omega_I picking up short term responses
2012-06-27 16:01:49 +10:00
Andrew Tridgell
4d08f75292
AHRS: update for new _fly_forward flag
2012-06-27 16:01:49 +10:00
Andrew Tridgell
0f5c22bd8e
AHRS: implement Bills new drift correction algorithm
...
this is an initial implementation of this paper:
http://gentlenav.googlecode.com/files/RollPitchDriftCompensation.pdf
2012-06-27 16:01:49 +10:00
Andrew Tridgell
52d77407d4
AHRS: added GPS support to AHRS test
2012-06-27 16:01:49 +10:00
Andrew Tridgell
37db5247cd
GPS: added velocity and acceleration components
...
used by AHRS for acceleration correction
2012-06-27 16:01:49 +10:00
Andrew Tridgell
fe865bc1dc
Math: added comment
2012-06-27 16:01:49 +10:00
Andrew Tridgell
c30b0d85a3
Math: moved more template functions to the .cpp files
...
save a bit more code space for larger functions
2012-06-27 16:01:49 +10:00
rmackay9
068fe64b9b
ArduCopter HIL: changed calls to setHIL to send in time as a uint32_t (it was a float)
2012-06-26 22:50:17 +09:00
Jason Short
7b9583453b
Added a crude Lead Filter. Needs some fine tuning, lag specification, scaling. Works great on 4hz GPS such as Mtek.
2012-06-21 11:14:20 -07:00
Amilcar Lucas
78ccb9d37f
Add linebreaks to increase readability.
2012-06-21 00:36:10 +02:00
Amilcar Lucas
b072a59843
Improve parameters descriptive text
2012-06-21 00:20:37 +02:00
Amilcar Lucas
594cedd324
Documentation improvements, no functional changes (only comments)
2012-06-17 22:53:54 +02:00
Amilcar Lucas
f4e9587aca
Move local temp variables to the stack it saves 1952 bytes
...
Add function comments
Only use _ on class member variables
Only point to a 3D GPS point if GPS has a fix
Implement MAV_MOUNT_MODE_MAVLINK_TARGETING
2012-06-17 22:25:51 +02:00
Wingspinner
d09ac5899b
Added support for channel curves (and expo) to AP_RC_Channel class. Also updated AP_RC_Channel example/test to demonstrate and test new functionality
2012-06-15 08:40:14 +00:00
Wingspinner
b699c77323
Added support for channel curves (and expo) to AP_RC_Channel class. Also updated AP_RC_Channel example/test to demonstrate and test new functionality
2012-06-15 08:38:52 +00:00
Andrew Tridgell
a851c53de4
GPS: need pgmspace.h for _write_progstr_block()
2012-06-15 16:27:11 +10:00
Andrew Tridgell
70f18289c5
GPS: fixed auto-config of UBlox setup with no UBX messages
...
if a UBlox is configured for NMEA only, with no UBX messages at all
then it would never trigger the GPS_AUTO detection. This adds a UBX
config message to the init strings that enables the NAV_SOL message
2012-06-15 15:53:27 +10:00
Andrew Tridgell
1fe297ab63
FastSerial: added tx_pending() method
...
this allows the caller to wait for the tx buffer to drain
2012-06-15 15:53:27 +10:00
Amilcar Lucas
1906e06b69
Added camera trigger functionality
2012-06-13 21:00:20 +02:00
Amilcar Lucas
a32b7c200b
Add "3 axis camera stabilization" and "point camera to 3D point" functionality
...
Patch by Gregory Fletcher and reviewed by me
2012-06-13 20:55:19 +02:00
Amilcar Lucas
5ffd489d87
Spellcheck
2012-06-13 20:44:35 +02:00
rmackay9
1e38b0d535
AP_GPS_NMEA: fix from Roberto Navoni to improve NMEA accuracy
2012-06-12 20:27:50 +09:00
Andrew Tridgell
f9560ef093
GPS: use the new nav_setting in a couple of the sample sketches
2012-06-10 16:35:13 +10:00
Andrew Tridgell
33a2ad7e07
GPS: add stub settings for nav_setting in the other GPS drivers
...
only Ublox supports nav_setting so far
2012-06-10 16:34:53 +10:00
Andrew Tridgell
514be604a5
GPS: added auto-configuration of UBlox GPS
...
the Ublox will now auto-configure for 5Hz with just the messages we
want. It also supports setting the navigation engine type
2012-06-10 16:34:13 +10:00
Andrew Tridgell
9c1ce9e1c5
FastSerial: avoid buffer re-allocation on re-open if possible
...
we commonly re-open serial ports a lot in the AUTO GPS driver
2012-06-09 07:43:22 +10:00
Andrew Tridgell
cf4e56457b
SITL: map() is a C++ function, so needs to be in C++ part of the header
...
this fixes the ACM build
2012-06-08 17:09:23 +10:00
Andrew Tridgell
cbf477addd
GPS: added debug code to the main GPS class
2012-06-08 16:42:03 +10:00
Andrew Tridgell
a8bfc5d8e9
GPS: re-open the serial port with a 256 byte serial receive buffer
...
this ensures all GPS parsers have a 256 byte buffer available
2012-06-08 16:42:03 +10:00
Andrew Tridgell
296e651b30
GPS: fixed the UBLOX parser to handle unknown messages
...
the parser was broken in several ways:
1) when it received an unknown message it didn't update the ck_a and ck_b fields, so it
thought the message had a bad checksum, which meant it got out of protocol sync
2) the read() method would return false if the last message from the GPS was of an unknown type.
So we relied on the last msg always being one that we understand and want
3) the parser considered any valid UBLOX message to be 'new data', whereas we only actually get
a new fix when we get box a new position and velned message
4) the total message size per update is more than 128 bytes, but the serial port was opened
with only a 128 byte buffer, so we got corruption regularly
2012-06-08 16:42:02 +10:00
Andrew Tridgell
9c2ba2e814
GPS: tidy up the auto gps test
2012-06-08 16:42:02 +10:00
Robert Lefebvre
238a1ced2c
TradHeli adding ramp up time to Ch8 Throttle Pass-through.
2012-06-07 22:55:47 -04:00
Robert Lefebvre
df17ff3bc1
AP_MotorsHeli Syntax correction.
2012-06-04 15:53:07 -04:00
Andrew Tridgell
25c17a5425
re-enable the AP_Mount build
2012-06-04 19:32:11 +10:00
Andrew Tridgell
0f0cbce22f
GPS: fixed a race condition in the ublox driver
...
the status update comes as a separate message from the lat/lon
2012-06-04 14:47:58 +10:00
Andrew Tridgell
012fc35314
mavlink: fixed build with uart resend
2012-06-04 13:45:55 +10:00
Andrew Tridgell
b6467cb1fa
MAVLink: updates to mavlink headers to fix mavlink 1.0 issues
2012-06-04 13:34:07 +10:00
Andrew Tridgell
d8919731ee
Mavlink: fixed library build for MAVLink 1.0
2012-06-04 13:14:52 +10:00
Andrew Tridgell
ec1abbf987
SITL: fixed SITL build with mavlink10
2012-06-04 13:14:52 +10:00
Andrew Tridgell
60f8d09506
mavlink10: fixed MAV_VAR -> MAVLINK_TYPE
2012-06-04 13:14:51 +10:00
Andrew Tridgell
bccfb08c55
MAVLink: updated to latest upstream mavlink
...
this includes no significant changes
2012-06-04 13:14:51 +10:00
Jason Short
73e23aab2a
GPS time set to unsigned int32
2012-06-03 11:13:50 -07:00
rmackay9
5c9dc00ae2
AP_Baro: fixed comment to clarify that every-other call updates temperature or pressure
2012-06-03 17:31:17 +09:00
rmackay9
dcdeae412e
ArduCopter: Another attempt at fixing the lat/lon printing bug in which small negative lattitudes or longitudes were appearing as positives.
...
Fixed in both ArduCopter Log.pde and the GPS Auto test sketch
2012-06-03 16:58:19 +09:00
rmackay9
173ae33627
ArduCopter Desktop Build: added definition of "map" to wiring.h and included WMath.cpp to fix SITL build failures.
...
All real work on this issue done by Michael Oborne.
2012-06-02 17:46:00 +09:00
rmackay9
c82a403b88
AP_MotorsHeli: Added reference to "Arduino.h" to allow autotest builder to work.
...
Moved around initialisation of parmeters in AP_MotorHeli object to remove compiler warnings.
2012-06-02 16:13:23 +09:00
rmackay9
c3b1a79f6a
RC_Channel library: change all "int" types to "int16_t".
...
Fixes SITL compile error due to type mismatch of set_pwm between .h and .cpp file (this only occurs because on the SITL, "int" is actually "int32_t"
2012-06-02 14:20:58 +09:00
rmackay9
d9f124afbb
RC_Channel.pde: fixed compile errors so that it actually works!
2012-06-02 14:00:44 +09:00
rmackay9
2a216ce900
ArduCopter: fixed print_latlon bug in which it would print negative lat/lon numbers incorrectly (i.e. -1234567890 would be printed as -124.xxx).
2012-06-02 12:51:12 +09:00
Jason Short
c2d14a5cad
RC_Channel fix for throttle output.
...
throttle was outputting incorrectly and allowing the user to max out the throttle leaving nothing for attitude control
2012-05-31 14:59:03 -07:00
Jason Short
0adb5cb396
Issue 416: RC_Channel – Fix to make dead_zones still output 0
2012-05-31 12:05:47 -07:00
Jason Short
1c690b44de
removed never used filter, and fixed a constrain that could make range calcs go bad
2012-05-31 11:45:07 -07:00
Jason Short
862b374d19
Channel rage fix - low output was always 0 vs _low
2012-05-31 11:31:48 -07:00
Robert Lefebvre
5f058fb9b2
TradHeli: Incorporating Ext ESC Control
2012-05-30 21:50:25 -04:00
Robert Lefebvre
56335e81e4
Fix TradHeli Collective Yaw Effect bug.
2012-05-25 15:25:21 -04:00
Andrew Tridgell
ddfa06e857
SITL: fixed ChipErase()
...
the loop never completed
2012-05-23 21:15:45 +10:00
Andrew Tridgell
6e444f6b64
SITL: fixed build with new ChipErase() call
2012-05-23 17:33:33 +10:00
Andrew Tridgell
fc73fd6531
DataFlash: use ChipErase() instead of PageErase() on all pages
...
This makes the DataFlash erase much faster (about 6 seconds instead of
about 60 seconds).
We need to test and ensure the behaviour is equivalent apart from the
speed
2012-05-22 19:29:02 -07:00
Andrew Tridgell
f274df454a
DCM: fixed a bug when using GPS for yaw correction
...
When using GPS for yaw correction we need to apply the x and y omegaI
corrections from the _omega_I_sum in the period before we get to the
minimum ground speed for GPS yaw correction. Otherwise we get a large
sudden omega_I change on takeoff.
2012-05-21 12:15:06 +10:00
Andrew Tridgell
9d221b3625
AP_Common: fixed some duplicate product ID warnings
2012-05-17 23:37:32 +10:00
rmackay9
357d6c2d9b
ArduCopter: bug fix for reversing tri servo
...
Extended AP_MotorsTri class to take in pointer to rc_tail servo (rc_7) and we use this servo's REV parameter to determine whether to reverse the output to the tail servo or not
2012-05-13 12:36:46 +09:00
Craig Elder
69bf5700cd
IMU: expose IMU_PRODUCT_ID as EEPROM Variable
...
this will allow us to log the Product ID in tlogs
2012-05-09 18:30:36 -07:00
Craig Elder
4a1d8b0875
AP_InertialSensor: Return product ID from sensor initialization
...
this exposes the product ID to the IMU Layer
2012-05-09 18:30:36 -07:00
Craig Elder
4c46955612
PRODUCT: Define product IDs for all supported products
2012-05-09 18:30:36 -07:00
Craig Elder
ed99940bee
MPU6000: Fixed Scaling on Accelerometers Rev C vs Rev D
...
Rev C have non standard scaling factor that is 1/2 of the data sheet
Rev D chips conform to the specification
2012-05-09 18:30:35 -07:00
Chris Anderson
34f5923ef3
fixed typo ("minimum" should have been "maximum")
2012-05-06 15:50:19 -07:00
Andrew Tridgell
2dd655d87d
MPU6k: added suspend/resume on init
2012-05-01 12:06:54 +10:00
Andrew Tridgell
88b2139d91
Baro: added suspend/resume on init
2012-05-01 12:06:54 +10:00
Andrew Tridgell
d692a932ca
ADC: added suspend/resume on init
2012-05-01 12:06:54 +10:00
Andrew Tridgell
534aee17e9
TimerProcess: added suspend_timer()/resume_timer()
...
this will be used to avoid races in driver initialisation
2012-05-01 12:06:54 +10:00
rmackay9
6e1798b104
AP_AHRS: updated default AHRS_YAW_P to 0.2 (was 0.4)
...
This reduces the compass's default authority over the yaw direction by half
2012-04-30 17:29:45 +09:00
Andrew Tridgell
ca8bc34c98
MAVLink: re-generated with new pygen
...
this moves the enums to make them less order sensitive
2012-04-30 12:27:30 +10:00
Adam M Rivera
56d3fa1601
Parameters.pde/AP_MotorsHeli: Updated comments to leverage the new value aliases
2012-04-28 20:50:41 -05:00
Andrew Tridgell
4f90e6e844
build: cope with Arduino 1.0 in command line build
...
this should autodetect 1.0 versus older builds
2012-04-27 15:38:42 +10:00
Adam M Rivera
239323eaa4
Parameters.pde/AP_MotorsHeli.cpp: Added comments from Roberts clone.
2012-04-26 18:26:14 -05:00
Adam M Rivera
3309dec205
AP_AHRS_DCM.cpp: Added comments that follow the new parse structure
2012-04-25 12:00:42 -05:00
Andrew Tridgell
89041c6996
sitl: support MAVLink 1.0 builds
2012-04-24 22:24:58 +10:00
Andrew Tridgell
d11957718f
MAVLink: removed the cpp part of the library
...
this was preventing building MAVLink 1.0 with the arduino GUI as we
can't set cpp defines
2012-04-24 22:24:58 +10:00
Andrew Tridgell
eb5bc964d8
MAVLink: one more define for MAVLink 1.0 compat
2012-04-24 19:54:20 +10:00
Andrew Tridgell
0753782c49
MAVLink: re-add the XML message definitions
...
these are a very useful reference for the current headers in the code
2012-04-24 10:57:43 +10:00
Andrew Tridgell
5c067d5a03
MAVLink: imported new mavlink header updates
...
this fixes the camera control code which was broken by a previous
import
2012-04-24 10:57:43 +10:00
Andrew Tridgell
e8f8115a8f
APM_RC: added OutputCh_current() method
...
this allows logging of the actual servo output values. The radio_out
method previously used doesn't take account of the various override
mechanisms available via waypoints
2012-04-24 10:57:43 +10:00
Andrew Tridgell
2a3af369b6
DCM: buffer omega_I changes over 10 seconds
...
this buffers up _omega_I changes in _omega_I_sum over a period of 10
seconds, applying the slope limit only when _omega_I_sum is
transferred to _omega_I.
The result is a huge improvement in the ability of _omega_I to track
gyro drift over the long term.
2012-04-23 12:13:25 +10:00
Andrew Tridgell
f27d85cb8d
DCM: drop the 'drop z' method
...
the 'drop z' method reduced the impact of noise on omegaI, but it also
made us more sensitive to errors in accelerometer calibration and
scaling, as demonstated by the logs from Gabor here:
http://diydrones.com/xn/detail/705844:Comment:834373
Simulation testing shows that the other noise suppression methods
applied in the DCM code, in particular the slope limiting on omegaI
the removal of the weighting and the upcoming use of a _omega_I_sum
buffer have reduced the impact of noise enough that we can now safely
include z in the acceleration calculation.
2012-04-23 12:13:24 +10:00
rmackay9
11a384a7ff
AP_Motors - allow tail servo to be reversed. Closes ArduCopter issue #228
2012-04-21 23:07:57 +09:00
rmackay9
c45b124cbe
DataFlash_APM2 - moved CS_inactive call (which disables the dataflash) from the beginning to the end of all methods. This means the dataflash does not monopolize the SPI bus.
...
Also formatting changes to use tab instead of space. Sorry, should have done this as a separate check-in to the above changes.
2012-04-21 20:14:45 +09:00
rmackay9
f18ee75b5c
AP_OpticalFlow - updated test sketch to allow testing of APM2 version
2012-04-21 20:11:18 +09:00
rmackay9
3075a0c5bd
AP_OpticalFlow - added support for optical flow for APM2
2012-04-21 20:10:35 +09:00
rmackay9
7bda35dc28
AP_OpticalFlow - moved most pin definitions into .cpp file
2012-04-21 20:09:15 +09:00
James Goppert
20cdc3a0ac
MAVLink update to 1.0.7
2012-04-20 12:31:50 -04:00
Andrew Tridgell
7f8fe97889
GPS: u-center config file for 3DR Ublox
2012-04-20 22:05:30 +10:00
Andrew Tridgell
f170790fd8
GPS: fixed auto GPS test
2012-04-20 22:05:30 +10:00
Andrew Tridgell
711814085b
GPS: detect new style 3DR UBlox
2012-04-20 22:05:30 +10:00
Andrew Tridgell
08bc7f1a41
GPS: fixed the UBlox test code
2012-04-20 20:57:08 +10:00
James Goppert
ba89f39781
Updated MAVLink to 1.0.6 release.
2012-04-19 15:46:29 -04:00
Adam M Rivera
b500d9430f
AP_AHRS_HIL.h: Fixed HIL build by adding missing public property.
2012-04-16 10:26:14 -05:00
Andrew Tridgell
8e90aeea4e
AHRS: added AHRS_YAW_P parameter
...
this allows users to change the yaw gain in DCM
2012-04-16 20:55:13 +10:00
analoguedevices
28833ed1d6
added missing #include
2012-04-09 14:32:54 +00:00
rmackay9
c96dfb2108
AP_AHRS - changed parameter order to remove compiler warning
2012-04-09 17:37:11 +09:00
rmackay9
ef43da9b92
AP_Compass - changed parameter initialisation order to remove compiler warning
2012-04-09 17:37:02 +09:00
Andrew Tridgell
985c967bb9
MAVLink: imported new mavlink headers
...
this adds local and remote radio noise levels
2012-04-08 12:22:17 +10:00
rmackay9
53827f2e92
AP_MotorsMatrix - fixed stability patch issue in which it would not limit a motor's output unless an opposite motor had been defined. This would only have affected Y6 frames.
2012-04-07 12:16:12 +09:00
rmackay9
127a990509
AP_MotorsOcta - V Frame - test order fix spotted by David Wiens
2012-04-07 08:11:28 +09:00
rmackay9
f6e1509d05
AP_Motors - fixed last "shadowing" compiler warning caused by badly named parameter in auto_armed method.
2012-04-05 00:28:04 +09:00
rmackay9
1e20d7de88
AP_MotorsMatrix - fixed another compiler error regarding shadowing a variable. Fixed by removing those the angle and direction arrays which weren't even used
2012-04-05 00:24:56 +09:00
rmackay9
7a8973eaf0
AP_MotorsHeli - fixed compiler warning re move_swash function declared with int parameters in .h file but actually using int16_t in .cpp file. They're the same in arduino but perhaps the build checker is a little more strict that Arduino.
2012-04-05 00:06:33 +09:00
rmackay9
926211f0f0
AP_Motors - fix compiler warning re shadowing a variable caused by badly named parameter in armed function.
...
Another compiler warning fixed in AP_MotorsMatrix.cpp caused by declaring "i" twice.
2012-04-04 23:59:51 +09:00
rmackay9
b71877366e
ArduCopter - AP_Motors library - added new library which has few advantages over current code:
...
1. it's step towards rearchitecting the current code base ahead of a move to RTOS.
2. internally it uses a MatrixTable for the Quad, Octa, OctaQuad, Y6 frames.
3. it implements the missing stability patch for Octa and OctaQuads (still missing for Y6)
Later check-ins will incorporate into the main ArduCopter code.
2012-04-02 17:26:37 +09:00
Andrew Tridgell
1fd1a55fa6
MAVLink: import change to txbuf as a percentage
2012-04-02 11:18:53 +10:00
Andrew Tridgell
4ddeb82b26
MAVLink: imported new headers, with RADIO packet
2012-04-01 21:44:44 +10:00
Andrew Tridgell
0c445101ff
FastSerial: added set_blocking_writes() interface
...
this allows us to put a serial port into non-blocking mode, so that
writes that don't fit in the transmit buffer are dropped. This will be
used in flight to prevent stray printf() calls from causing large time
delays in the code
2012-03-30 17:46:20 +11:00
Andrew Tridgell
22ff8cb197
examples: fixed build of some examples with new AP_Declination code
2012-03-30 14:25:27 +11:00
Andrew Tridgell
504c53f746
Compass: added COMPASS_AUTODEC option
...
when this is 1 (which is the default), we will get the declination
automatically via the AP_Declination library
when it is 0 we will use the value configured by the user
2012-03-30 14:25:27 +11:00
Andrew Tridgell
927834106d
AP_Declination: save some more memory by putting the declination keys in progmem
...
there was a comment saying this was too slow, but it actually costs
about 30 usec extra, which is trivial given the full auto declination
call costs 680 usec and its only called once per boot
2012-03-30 14:25:27 +11:00
Andrew Tridgell
70d4280935
AP_Declination: added timing information to declination test
2012-03-30 14:25:27 +11:00
Andrew Tridgell
175352845c
AP_Declination: fixed build under SITL
2012-03-30 14:25:27 +11:00
Adam M Rivera
ca82350f17
AP_Declination_test: Updated test with better print messages.
2012-03-30 14:25:26 +11:00
Adam M Rivera
01b1e58f7d
AP_Declination: Update LUT based on the changes that I made in the LUT generation code. This LUT is the final version that has no truncation.
2012-03-30 14:25:26 +11:00
Adam M Rivera
23f6093f05
AP_Declination: Updated comments to reflect new LUT size.
2012-03-30 14:25:06 +11:00
Adam M Rivera
50791a8b0f
AP_Declination: Removed trailing zero deltas as they have no impact on the final value and only take up extra bytes.
2012-03-30 14:21:58 +11:00
Adam M Rivera
f35e447927
AP_Declination: Updated compressed lookup value table. Located 9 more failure points due to truncation on the packed LUT.
2012-03-30 14:21:58 +11:00
Adam M Rivera
72b70c394c
AP_Declination: Found 7 of the 22 failure points and fixed them. The issue with those 7 was the way I originally packed the value array. The last delta values on some rows were getting truncated. The new number of failures is down to 15 - WIP.
2012-03-30 14:21:58 +11:00
Adam M Rivera
076192db51
AP_Declination: Updated test to run in 5 degree increments. Changed to only print failures and also print total pass vs total fail.
2012-03-30 14:21:58 +11:00
Adam M Rivera
230ca1ddca
AP_Declination: Moved check for y index of zero to after the y index is properly transformed.
2012-03-30 14:21:58 +11:00
Adam M Rivera
e0fa053c79
AP_Declination: The exception signs unpacking logic was incorrect. I was shifting a 1 value left y%8 which would have needed a the signs to be packed right to left. My packed signs byte was packed left to right (left most being the 0 position) so I needed to reverse the shifting.
2012-03-30 14:21:58 +11:00
Adam M Rivera
f66c6e16e4
AP_Declination: In order for the bitwise & operation to work, negative signs need to be represented by 1s instead of 0s. Changed so that negative signs are represented by a 1 in the packed signs array. Updated lookup logic to reflect this change.
2012-03-30 14:21:58 +11:00
Adam M Rivera
d88b9e8ffc
AP_Declination: Updated packed exception signs array. I had the signs packed incorrectly.
2012-03-30 14:21:57 +11:00
Adam M Rivera
036da88174
AP_Declination: Changed test to run in increments of 10 degrees. 1 was too granular.
2012-03-30 14:21:57 +11:00
Adam M Rivera
580b274bde
AP_Declination: Added original array to test sketch. Added loop to validate new compressed array against original in 1 degree steps.
2012-03-30 14:21:57 +11:00
Adam M Rivera
efefc3e4f4
AP_Declination: Moved rows with large spikes in delta to their own unsigned exception rows. The signs are in a separate packed array.
2012-03-30 14:21:57 +11:00
Adam M Rivera
0dcc4e8307
AP_Declination: Implemented Delta Encoding and Run-Length Encoding. Added method to traverse the compressed array and return the lookup value based on the same lat_index/lon_index that was used before.
2012-03-30 14:21:57 +11:00
Adam M Rivera
3a849771bc
AP_Declination: Changed PROGMEM read function to pgm_read_word_far to support the int16_t datatype.
2012-03-30 14:21:57 +11:00
Adam M Rivera
370e56c00a
AP_Declination: Changed datatype to int16_t to support the -90 <-> 90 latitude range.
2012-03-30 14:21:57 +11:00
Adam M Rivera
ae257ad42b
AP_Declination: Reduced the size of the lookup table to support -75 <-> 70 latitude range. This allows the datatype to remain int8_t.
2012-03-30 14:21:57 +11:00
Andrew Tridgell
b549b88e5e
AHRS: fixed error_yaw reporting with 2 MAVLink connections
...
when a user first connects with USB, and later switches to the
telemetry port without restarting we were getting zero for error_yaw
in the logs, as AHRS.get_error_yaw() was being called twice.
This ensures we give the last value after the counter is reset
2012-03-29 12:39:53 +11:00
Andrew Tridgell
16deefce31
Compass: fixed a comment
2012-03-29 12:39:53 +11:00