Commit Graph

873 Commits

Author SHA1 Message Date
Jason Short 0bfa67f413 Heavy Accel Filter + mild Gyro Filter. To use, filter_result must be set to true on ADC. Off by default. 2011-10-01 15:44:53 -07:00
Amilcar Lucas c37fabea66 Added a comment to the BOARD type of teh make configure output file 2011-10-02 00:04:21 +02:00
Amilcar Lucas eaaf44e2c8 Fix Arduino version detection on some systems 2011-10-02 00:03:57 +02:00
rmackay9 12e8e27af1 Merge remote-tracking branch 'origin/master' 2011-10-01 21:56:29 +09:00
rmackay9 c80143b96e AP_Optflow - small fix to lat/lon calculation and made example sketch work again 2011-10-01 21:51:14 +09:00
Jason Short 189fc194b6 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-09-30 18:40:40 -07:00
Jason Short f89da12387 Minimized the accel_filtered vector to be faster and more accurate.
Made the Filter include the Accels and moved from 8 to 4 terms in the filter
2011-09-30 18:40:29 -07:00
James Goppert 0c7c508541 Optional recursion added. 2011-09-30 17:17:51 -04:00
James Goppert 48b811f6fa Updated cmake. 2011-09-30 16:55:27 -04:00
Jason Short a7ea200407 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-09-29 23:27:36 -07:00
Jason Short de61e87128 Added ADC gyro Filtering for quads - this fixes a noise issue introduced into the controller
added Position mode
removed
Added back in the accelerometer experiment
Added filter_result boolean to enable filter on the fly
2011-09-29 23:27:23 -07:00
Jason Short 1f8576559a Optimized PI loop 2011-09-29 22:37:56 -07:00
James Goppert 9e6b47184a Arduino version directory updated to lib/version.txt
Also updated cmake files.
2011-09-29 22:10:26 -04:00
James Goppert 5489b84f8e Improvements to cmake. 2011-09-29 21:23:26 -04:00
James Goppert b0a1721199 Added cmake files. 2011-09-29 14:16:36 -04:00
James Goppert d887a28b91 Added ArduBoat/ ArduRover/ and APO library. 2011-09-29 14:12:15 -04:00
Jason Short 0c847a43f3 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-09-26 22:12:52 -07:00
Jason Short 326cfef808 Dead Zone fix - Now the range is full instead of clipped. Should make the Yaw much more smooth. 2011-09-26 22:12:39 -07:00
Amilcar Lucas 03740469fd fix quotes and indentation 2011-09-27 04:40:00 +02:00
James Goppert 9c766d6373 Added override for mega upload protocol. 2011-09-26 20:29:09 -04:00
Amilcar Lucas e5c248e2bf Moved mavlink_check_target() to the libraries/.
This allows it to be reused by the other libraries and by other projects ArduPlane, ArduCopter, ArduRover ... etc.
It also reduces code duplication
2011-09-24 14:40:07 +02:00
James Goppert 6abb8a0796 Modified Arduino.mk to use correct upload protocol if not overrided.
The previous comment of upload protocol not working cannot be verified on
linux. If this problem persists on cygwin, please override with
UPLOAD_PROTOCOL=arduino in the enivornment before calling Arduino.mk
2011-09-22 13:35:26 -04:00
Jason Short ce338071eb RC_Channel tweaks. using Radio_trim rather than 1500 in Raw output. Cleaned up line in calc PWM to be easier to read. 2011-09-21 14:52:20 -07:00
Jason Short 231e7e961c changed PI to float 2011-09-19 14:41:32 -07:00
Jason Short bf94ba551e changed PI Library to take Float for DeltaTime
Changed timing to be more accurate in main loop. Still need to switch to micros(). Left that for Tridge. This gets rid of six floating point calcs *250. Nice!
2011-09-19 14:02:42 -07:00
Andrew Tridgell f375258699 fixed inconsistent linefeeds in ADC code
the linefeeds had bacome inconsistent in this library, making some
editors fail to load the code
2011-09-19 11:04:02 +10:00
Andrew Tridgell edd7e509d9 MAVLink: enable separate MAVLink helpers
this makes the core MAVLink functions into library calls, instead of
being inlined. The resulting code size doesn't change, but it means we
can safely call MAVLink functions from multiple places without causing
undue code bloat
2011-09-18 11:03:27 +10:00
Amilcar Lucas 227ce0a92d Merge some small misc improvements from APM_Camera branch 2011-09-17 20:25:31 +02:00
Andrew Tridgell 8b90ad84f6 fixed ArduCopter HIL build 2011-09-17 14:58:02 +10:00
Andrew Tridgell 3c69404d5b fixed build of OpticalFlow code 2011-09-17 14:58:02 +10:00
Andrew Tridgell a835912d93 ADC: randomise the sampling rate
this is based on suggestions from Kari and Mike, and should reduce the
aliasing effects we get from the simple averaging
2011-09-17 14:58:02 +10:00
Andrew Tridgell ba6c58a33c build: cope with more depths for libraries
this finds the libraries at more levels up from the current directory
2011-09-17 14:58:02 +10:00
Andrew Tridgell 840c256fe3 ADC: show timing information in ADC test 2011-09-17 14:58:02 +10:00
Andrew Tridgell 197b1d140a show noise levels in ADC test 2011-09-17 14:58:02 +10:00
Andrew Tridgell 1d68953416 ADC: the bottom 3 bits of ADC output are always zero
its a 12 bit ADC .... silly of me to think the bottom 3 bits are
valid!
2011-09-17 14:58:02 +10:00
Andrew Tridgell bd30840518 updated ADC test for new API 2011-09-17 14:58:02 +10:00
Andrew Tridgell 9af7021a98 change ADC sample rate to 1kHz
this costs us about 9% of our CPU, but should make aliasing much less
of a problem.
2011-09-17 14:58:02 +10:00
Andrew Tridgell acb4538073 RangeFinder: use new ADC interface
the new interface gives values 8 times as large as previously
2011-09-17 14:58:02 +10:00
Andrew Tridgell 9314dcaa89 DCM: re-work the DCM to use the new IMU/ADC features
this gives us higher resolution DCM calculations, with much more
accurate timing of the update delta time.
2011-09-17 14:58:02 +10:00
Andrew Tridgell 8b3d9400e5 IMU: re-work the IMU library to take advantage of the ADC Ch6() call
This changes the IMU code to read 6 synchronised ADC channels at one
time, giving us matching values, and exposing the exact averaging time
to callers
2011-09-17 14:58:02 +10:00
Andrew Tridgell 70bf945d40 ADC: re-work for ADC code for full resolution and accurate timing
this changes the ADC code to return the full resolution of the
sensors. It also adds a new Ch6() interface that returns 6 channels at
once, so the IMU can read 3 accelerometers and 3 gyros at once, and
get the exact time that the values were accumulated over
2011-09-17 14:58:02 +10:00
Andrew Tridgell 3a9b7d6458 GPS: change example serial rate to 115200
this matches default for AP/AC
2011-09-17 14:58:02 +10:00
Andrew Tridgell a5d2e96dc6 barometer: print a message on barometer init in example code
this helps track down initialisation problems
2011-09-17 14:58:02 +10:00
Jason Short 45778a4e81 added sin and cos yaw from DCM, renamed "get" function because it doesn't return a value. 2011-09-16 19:24:57 -07:00
Jason Short cd72e6bea9 roughed in an expo option idea
made min and max values 1100, 1900
removed hard coded init for camera values
2011-09-16 19:06:53 -07:00
Jason Short 9bcbe70e59 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-09-16 18:35:14 -07:00
Jason Short d29cfbcee3 Integration of optical flow
bug fixes for new Simple mode
increased Baro filter by 2 fields
2011-09-15 23:33:00 -07:00
Janne M d5e5240e19 Issue #415: Modified spotlight search string. Added UPLOAD_PROTOCOL parameter to makefile to use different programmer. 2011-09-15 22:38:22 +03:00
Mike Smith 42abbb41fd Add options to generate assembly listings for all of the compiled
files.  This is a possible starting point for a tool to analyse the
call graph and stack usage of APM.

It's also interesting by itself.
2011-09-14 22:39:34 -07:00
unknown 7a70cb6169 Merge branch 'master' of https://code.google.com/p/ardupilot-mega/ 2011-09-14 16:02:21 +02:00
unknown a4e001bbcf Adding CMake support 2011-09-14 15:44:55 +02:00
Amilcar Lucas 1f29197771 Revert more of 6dcbc7f44bc0.
Fix an issue with initialization of channels that on-line changed their function.
For the curious people that the code size overhead of having any aux channel do any function (with this code) is 44 bytes.
 To see wich code I'm talking about, do a git diff 05057ac2d455..this_commit (replace this commit with the commit hash of this commit)
2011-09-13 14:01:35 +02:00
Amilcar Lucas f08cea8044 These changes were meant to be inside commit a14c06adc06b. I'm sorry but reverting stuff is not that easy 2011-09-13 01:54:47 +02:00
Amilcar Lucas 5406991831 Added support for routing any function to any of the aux. servos.
This is a manual merge from the APM_Camera branch.
It reverts the stuff that Oliver did not menat to do with his commit 6dcbc7f44bc0
2011-09-13 01:24:06 +02:00
Jason Short fdc56c9ad5 Merge branch 'master' of https://code.google.com/p/ardupilot-mega 2011-09-12 12:57:56 -07:00
Jason Short ecd14f4425 Cleaned up guided mode
Reduced ADC filter to 3 from 6 to increase speed of filter.
2011-09-12 12:57:36 -07:00
DrZiplok c0b4cb661f GNU sed wants -r, Darwin/BSD sed wants -E. 2011-09-12 18:43:31 +00:00
Amilcar Lucas c7b3bfd295 Use the G_RC_AUX macro when possible. Added more comments. Remove unused code 2011-09-12 20:21:12 +02:00
Mike Smith c1460add3b Reinstate a Cygwin workround that was backed out by the previous changes.
Not all platforms support (or require) the -r argument to sed.
2011-09-11 22:20:54 -07:00
Olivier ADLER 1ee65e3ef2 Merge branch 'APM_Camera' of https://code.google.com/p/ardupilot-mega/
Conflicts:
	ArduPlane/ArduPlane.pde
	libraries/AP_Camera/AP_Camera.h
	libraries/AP_Mount/AP_Mount.cpp
	libraries/AP_Mount/AP_Mount.h
2011-09-12 00:31:18 +02:00
Amilcar Lucas 77c798abd5 Use G_RC_AUX macro to simplify accessing the auxiliary servos 2011-09-12 00:02:47 +02:00
Amilcar Lucas 46f9d4cec8 This is ugly, but it fixes compilation on arduino 2011-09-11 23:25:06 +02:00
Amilcar Lucas ce010b4e38 Moved update_aux_servo_function() to the RC_Channel_aux.* files.
This simplifies code sharing between ArduCopter and Arduplane at the expense of 48bytes.
Moved CH_x defines out of the defines.h file and into the library where they belong
2011-09-11 23:07:30 +02:00
Jason Short d50ed35077 Added a state machine intended to run at 250hz to the DCM. Spread load of DCM out to lower CPU. 2011-09-11 11:03:55 -07:00
Amilcar Lucas 213969202a Moved the RC_Channel_aux class to its own file. The includes could be improved, has anyone got any ideas how ? 2011-09-11 19:13:01 +02:00
Amilcar Lucas c5fd792024 Make the switch case complete 2011-09-11 18:32:24 +02:00
Amilcar Lucas 9f14c5f578 Fix RC range reversal 2011-09-11 04:12:46 +02:00
Amilcar Lucas dd19a7302d I do not understand this, but it looks like it needs int8 here 2011-09-11 02:41:48 +02:00
Amilcar Lucas 84f108d598 Fix manual values mapping 2011-09-11 02:36:39 +02:00
Amilcar Lucas d84f80cb0d Moved enum values around to make code simpler to read and use 2011-09-11 02:34:47 +02:00
Amilcar Lucas 386e80eaf6 Added comments and TODO 2011-09-10 23:57:27 +02:00
Andrew Tridgell 0a793a1327 Revert "added support for AP_ADC MAVLink packet"
This reverts commit a65a2dda2c1bfa95437880227a3abddc95b329f5.

I am reverting this not for any sane reason, but because my 3 APM
boards now lock up on any I2C operation, and I don't know why. I can't
see how this change could have caused it, but I don't want to take the
chance.
2011-09-10 22:00:29 +02:00
Andrew Tridgell a2c1caacf5 Revert "added support for AP_ADC MAVLink packet"
This reverts commit a65a2dda2c1bfa95437880227a3abddc95b329f5.

I am reverting this not for any sane reason, but because my 3 APM
boards now lock up on any I2C operation, and I don't know why. I can't
see how this change could have caused it, but I don't want to take the
chance.
2011-09-10 23:29:16 +10:00
Andrew Tridgell 95af8dc172 mavlink: import new version with AP_ADC packet
this adds the AP_ADC packet which gives us raw ADC values
2011-09-10 14:17:45 +02:00
Amilcar Lucas f4998c3673 Moved a function from radio.pde to the RC_Channel_aux library. Now its more readable and reusable 2011-09-10 13:26:29 +02:00
Amilcar Lucas b3d4bb1478 Again remove some more files from the APM_Camera branch 2011-09-10 12:51:48 +02:00
Andrew Tridgell 0b9dbf4645 mavlink: import new version with AP_ADC packet
this adds the AP_ADC packet which gives us raw ADC values
2011-09-10 19:06:46 +10:00
Amilcar Lucas a8e68040f5 These files are not meant to be in master, they should only be in the APM_Camera branch for now 2011-09-09 16:37:42 +02:00
Amilcar Lucas b7a0d8836a This is the real HEAD of the APM_Camera branch. Seams that lots of changes got lost in the SVN to GIT port 2011-09-09 16:18:38 +02:00
Amilcar Lucas f40c85a601 This is the real HEAD of the APM_Camera branch. Seams that lots of changes got lost in the SVN to GIT port 2011-09-09 16:02:22 +02:00
jasonshort e05de48e2d Adding reverse to Channel Raw output (unscaled output) to fix camera reversing.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3297 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-08 04:58:42 +00:00
joeholdsworth@gmail.com 6dbfd78197 updated make file for cygwin compatibility
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3277 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-05 17:15:01 +00:00
tridge60@gmail.com 3072b61aeb updated XML MAVLink definitions
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3272 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-05 06:19:39 +00:00
jasonshort 363abab14e Changed bit shifts to division, relying on the compiler.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3265 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-05 04:32:17 +00:00
tridge60@gmail.com 641099d2ed renamed ACM_PI to APM_PI to fix build
the library name needs to match the header name for the arduino build
to work

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3254 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-05 01:15:24 +00:00
jasonshort ab876ebe13 Adding ACM_PI
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3253 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-05 00:56:50 +00:00
tridge60@gmail.com 89f9fafb90 BetterSerial has txspace() now
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3248 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 22:52:22 +00:00
tridge60@gmail.com 2e989fd101 replace space() with txspace()
space() was actually intended to be tx buffer space, it just had a
bug. The name txspace() is clearer however, and should prevent
confusion as to which buffer its for

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3247 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 22:52:11 +00:00
tridge60@gmail.com 7774ac534e added comm_get_txspace() to GCS_MAVLink
this gives us the number of bytes available in the transmit buffer for
a mavlink channel

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3246 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 21:23:24 +00:00
tridge60@gmail.com c822bad359 added txspace() method to FastSerial
this returns the number of bytes available in the transmit buffer

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3245 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 21:23:15 +00:00
tridge60@gmail.com 5980e80333 fixed spelling
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3244 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 21:23:06 +00:00
jasonshort 694bfc5b87 Added two filters to the RawTemp and RawPress values to increase accuracy from noisy temp sensor.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3242 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 17:47:50 +00:00
jasonshort 4ec8805216 Reverted to older PID. Restored the older filter, and removed PI command. I am no longer using PID for the quad and have switched to PIPI loops which perform much better. The D term in this class is not that great.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3241 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 17:47:07 +00:00
tridge60@gmail.com fa1a6d3beb shrink the size of mavlink_message_t using max dialect message size
this makes mavlink_message_t much smaller, but setting
MAVLINK_MAX_PAYLOAD_LEN to the maximum message size in this
dialect. This saves us 320 bytes of memory

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3239 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 08:51:51 +00:00
tridge60@gmail.com 754ab0290b import new mavlink version
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3238 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 08:50:24 +00:00
rmackay9@yahoo.com 0e15cecfb4 AP_RangeFinder - removed LV version because we use XL which covers both types of sonars
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3237 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 06:55:58 +00:00
tridge60@gmail.com dab8c0cca8 AP_Var: added EEPROM wear levelling
This adds a variable length dummy variable at the front of the EEPROM
when we erase it, which has the effect of moving the location of any
hot variables within the EEPROM. This should improve EEPROM
life. Thanks to Mike for the implementation.

Pair-Programmed-With: Mike Smith

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3234 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 06:39:57 +00:00
tridge60@gmail.com 06c4f60490 AP_Var: avoid wearing out EEPROM by re-writing the same value
when saving a variable, this avoids EEPROM wear by checking if the
existing value is already the same as the value being written, and
avoiding the write.

Thanks to Mike Smith for the implementation

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3233 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 06:39:49 +00:00
tridge60@gmail.com e099079cc0 AP_Var: fixed a logic bug in APVar::key()
We were using && instead of & for a bit check. Thanks to Mike for
spotting this!

Pair-Programmed-With: Mike Smith

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3232 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 06:39:40 +00:00
tridge60@gmail.com b8b8b7e8ca AP_Var: fill all of EEPROM with 0xFF on erase_all()
This wipes all parameter values, and also clears out any waypoints as
the waypoint format could have changed between firmware revisions.

This also ensures that the AP_Var code can't re-use any key values
from the old EEPROM state, which makes us less dependent on the old
EEPROM being in a good state

Pair-Programmed-With: Mike Smith

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3231 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 06:39:28 +00:00
tridge60@gmail.com 6075b7ce73 dataflash: fixed some compiler warnings
tmp is not needed

Pair-Programmed-With: Mike Smith

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3230 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 06:39:14 +00:00
hazyhxj@gmail.com b110803dcb Fix NMEA GPS error
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3227 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 05:14:42 +00:00
mich146@hotmail.com 5e3e96b236 update "NO_GPS" issue as per Justin Beech
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3225 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-04 04:46:14 +00:00
tridge60@gmail.com b6e2970f6f added memcheck library
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3206 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-01 00:50:31 +00:00
tridge60@gmail.com f7c58a5dd5 mavlink: imported new version with MEMINFO message
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3205 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-09-01 00:50:13 +00:00
tridge60@gmail.com 3ae2186021 imported new MAVLink implementation
this new implementation reduces code size, and also reduces stack
usage, while avoiding the gcc union stack bug

Note that we will gain even more when we move to the new protocol
version, especially in terms of code size

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3200 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-31 05:23:18 +00:00
james.goppert 5b3079bcd6 Fixed debug command.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3196 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-30 17:33:51 +00:00
joeholdsworth@gmail.com 1e08040002 update to arduino.mk file to allow easier use with cygwin.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3166 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-23 23:02:39 +00:00
joeholdsworth@gmail.com 85bcbef695 nightly check in, version not stable.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3164 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-23 20:36:30 +00:00
joeholdsworth@gmail.com 085ca253be Checkin before beddy byes
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3154 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-22 21:50:11 +00:00
joeholdsworth@gmail.com 659753d7a6 Amilcar Lucas & Ritchie Wilson's camera code mixed in with ap_mount code, this needs to be separated.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3145 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-21 21:14:02 +00:00
joeholdsworth@gmail.com bf4058c6e1 change of mind payloads should be split into their separate folders.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3144 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-21 19:58:15 +00:00
joeholdsworth@gmail.com 10d312ff25 git-svn-id: https://arducopter.googlecode.com/svn/trunk@3143 f9c3cf11-9bcb-44bc-f272-b75c42450872 2011-08-21 19:55:54 +00:00
joeholdsworth@gmail.com 0daa9f9952 git-svn-id: https://arducopter.googlecode.com/svn/trunk@3142 f9c3cf11-9bcb-44bc-f272-b75c42450872 2011-08-21 19:33:32 +00:00
joeholdsworth@gmail.com 037de1d6b7 git-svn-id: https://arducopter.googlecode.com/svn/trunk@3141 f9c3cf11-9bcb-44bc-f272-b75c42450872 2011-08-21 18:49:42 +00:00
joeholdsworth@gmail.com f563930275 git-svn-id: https://arducopter.googlecode.com/svn/trunk@3140 f9c3cf11-9bcb-44bc-f272-b75c42450872 2011-08-21 18:48:28 +00:00
joeholdsworth@gmail.com 8f72948121 Payload libraries, code for things like camera control, mount control antenna control should go here.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3139 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-21 18:33:39 +00:00
jasonshort 69b2d5f411 removed AP_Common ref
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3102 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-14 19:27:40 +00:00
jasonshort d192ceb8f8 upped D filter to 6
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3096 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-14 05:44:29 +00:00
tridge60@gmail.com 0bf026e6ad Compass: added a gain multiplier
this adjusts the calibration based on the change in gain between
calibration and runtime

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3090 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 10:39:11 +00:00
tridge60@gmail.com e95d0eb686 added SET_MAG_OFFSETS magnetometer message
this allows reset of the mag offsets without wiping your EEPROM

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3088 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 09:00:21 +00:00
tridge60@gmail.com ab04055c35 Compass: several fixes to compass calibration code
this changes the calibration code to require at least 5 good reads
from the compass during initialisation. The calibration is taken as
the average of the 5 values.

This also fixes the expected values for the 3 axes for the 5883 to
match reality.

We also save a bit of code space by adding a common rotate_for_5883L()
routine.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3087 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 08:17:25 +00:00
tridge60@gmail.com eefb840a85 MAVLink: added missing files from recent update
thanks to Randy for spotting this

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3086 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 06:30:29 +00:00
tridge60@gmail.com 5836e27813 we don't have a separate 5883L driver any more
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3085 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 06:30:13 +00:00
tridge60@gmail.com c860fd736a Compass: removed the old 5883L driver
we now use a single driver for both mags

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3083 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 05:09:58 +00:00
tridge60@gmail.com 5c68a04c5d PID: fixed an uninitialised variable
we did not initialise derivative to zero

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3082 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 04:46:21 +00:00
tridge60@gmail.com b1df1d1843 ModeFilter: fixed a shadowed variable
mode is a member of the class already, so call the local variable
fmode

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3081 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 04:46:10 +00:00
tridge60@gmail.com 6cf66ee773 MAVLink: pull in latest changes from upstream MAVLink
this gives us the new SENSOR_OFFSETS message for debugging sensor
calibration

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3080 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-13 04:45:48 +00:00
jasonshort 74dfb3ff2a Added a generic Sin and Cos look table. Not sure if it works yet as a library.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3075 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-11 22:31:15 +00:00
tridge60@gmail.com a604e30c7c cope with double initialisation of the compass
if we've already initialised, then the orientation matrix will already
be right

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3072 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-10 14:07:15 +00:00
tridge60@gmail.com 7d58916a9d compass: add a small delay in compass init
this adds a 50ms delay after setting the compass gains before reading
the compass. Added as paranoia after some strange results on a 5843

git-svn-id: https://arducopter.googlecode.com/svn/trunk@3070 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-10 12:47:25 +00:00
rmackay9@yahoo.com d02d4b895c AP_OpticalFlow - small but important fixes for position calcs
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3040 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-07 13:19:18 +00:00
mich146@hotmail.com 88d59ccc2d perl version of eedump
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3037 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-07 10:36:31 +00:00
james.goppert c7d2a71fea Updated GCS_MAVLink to match mavlink master.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@3017 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-08-05 08:18:08 +00:00
tridge60@gmail.com 9ead82f137 IMU: fixed HIL init with callback
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2988 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-31 23:35:37 +00:00
tridge60@gmail.com 91e101f47e GPS: added delay hook for GPS detection
this allows for MAVLink to be up during GPS detection

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2987 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-31 22:34:37 +00:00
tridge60@gmail.com b6397c089d IMU: added delay callback hooks to IMU initialisation
this allows the imu init() call to use a custom replacement for
delay(), which will allow for the processing of MAVLink packets during
IMU initialisation

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2986 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-31 22:34:25 +00:00
rmackay9@yahoo.com e81aa43f1c OpticalFlow - add check to see if sensor has initialised correctly.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2974 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-31 04:31:36 +00:00
jasonshort 150f58a4bd removed scaling on control in because it might cause rounding issues.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2969 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-30 23:48:38 +00:00
jasonshort 4339ebb310 Reworked the filtering algorithm based on Maxbotics recommendations to use a Mode filter
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2968 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-30 23:34:25 +00:00
jasonshort e1b677a25d Reworked the filtering algorithm based on Maxbotics recommendations to use a Mode filter
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2965 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-30 20:35:36 +00:00
jasonshort 61dc79f65b Added some missing functions needed to get HIL to compile
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2964 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-30 20:34:23 +00:00
jasonshort eb39d2d53a Added ability to grab an unfiltered value from the ADC
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2963 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-30 20:33:45 +00:00
tridge60@gmail.com da2a1d72e2 GPS: fixed the GPS specific test programs
This fixes the build

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2962 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-30 08:48:17 +00:00
jasonshort 915a564b8f Changed the PID derivative filter to a moving average with 4 samples. Having great luck with it and High kD when using noisy sensors.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2957 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-29 21:52:37 +00:00
tridge60@gmail.com 6061ee4b81 HIL: fixed radio_status in setHIL() for APM_RC
thanks to Michael Oborne for noticing this!

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2952 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-28 12:11:25 +00:00
rmackay9@yahoo.com 09256e12da DataFlash library - changed to use standard arduino SPI library
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2928 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-19 23:00:18 +00:00
rmackay9@yahoo.com 3d641a3b45 AP_OpticalFlow - fixes to position calculations (lat was reversed and would calculate position even with surface quality was very low)
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2913 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-18 21:51:27 +00:00
jasonshort c79ff4f583 doubled Slew rate limiter to 2 m/s max @ 10 hz.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2912 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-18 18:18:47 +00:00
tridge60@gmail.com 60bf2182e4 GPS-HIL: set new_data on setHIL()
this fixes navigation for ACM in HIL

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2909 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-18 12:42:36 +00:00