Commit Graph

273 Commits

Author SHA1 Message Date
Andrew Tridgell
c042ef1298 APM: fixed some build warnings 2012-02-14 08:58:56 +11:00
Andrew Tridgell
8d1729b3ba Mavlink: report the corrected pitch via MAVLink
this subtracts the TRIM_PITCH_CD from the pitch reported via
MAVLink. That gives a better indication of the true pitch in the tlog
2012-02-14 08:58:56 +11:00
Andrew Tridgell
cdf296d8f6 fixed some printf casts 2012-02-14 08:34:10 +11:00
Andrew Tridgell
35badbb97d APM: the CLI fits nicely on the 1280 again now
I find the CLI very useful for testing, so enable it by default on the
1280. Logging is still off by default.
2012-02-14 08:33:49 +11:00
Andrew Tridgell
ecdbfd257a token is 16 bits now 2012-02-13 16:22:53 +11:00
Andrew Tridgell
d55a0c3a71 added AP_Param::show_all()
this moves the logic into common code
2012-02-13 16:22:52 +11:00
Andrew Tridgell
0f9adbdae0 token size for first()/next() is now 16 bits 2012-02-13 16:22:52 +11:00
Andrew Tridgell
617082769a go back to 1024 bytes for variables in EEPROM 2012-02-13 16:22:52 +11:00
Andrew Tridgell
0b3e3ec5c8 added group indexes to GCS_MAVLINK class 2012-02-13 16:22:52 +11:00
Andrew Tridgell
e85da68fe6 expand parameter area for ArduPlane
this ensures all parameters can be saved without overflow
2012-02-13 16:22:52 +11:00
Andrew Tridgell
983192c5d5 tidy up a comment 2012-02-13 16:22:52 +11:00
Andrew Tridgell
2c3ec5de99 fixed two parameter names 2012-02-13 16:22:51 +11:00
Andrew Tridgell
676ca03977 expose mavlink stream rates as parameters 2012-02-13 16:22:51 +11:00
Andrew Tridgell
f22988163e imported new Parameters code to APM 2012-02-13 16:22:51 +11:00
Andrew Tridgell
e7174bc649 import new Parameters.h for AP_Param to APM 2012-02-13 16:22:51 +11:00
Andrew Tridgell
3d598c8caa implement dump of all vars in CLI using AP_Param 2012-02-13 16:22:51 +11:00
Andrew Tridgell
bc0ed62aa9 adapt mainline APM code to AP_Param 2012-02-13 16:22:51 +11:00
Sandro Benigno
3200781f56 Battery monitor type 3 cannot calculate battery remaining properly, due it uses only voltage reading. This path set battery_remaining to a value out-of-band for that type of monitoring. It informs to external devices to not show that info. 2012-02-11 21:01:13 -02:00
Andrew Tridgell
1a861b3de5 allow for lower serial baud rates
not many people will use less than 9600 baud, except for those wanting
to test extreme range radios, which is what I'm trying to do :-)
2012-02-04 19:07:18 +11:00
Pat Hickey
dfece8e3ff ArduPlane: Call APM_RC.enable_out for all channels in init_rc_out. 2012-01-22 12:03:11 -08:00
Michael Oborne
6b949511ca change rc norm_output to scale evenly across the entire range 2012-01-20 16:24:55 +08:00
Michael Oborne
9ca6668c1b fix SITL attitude hil 2012-01-20 16:04:49 +08:00
analoguedevices
418f5ea31e Increment version number in anticipation of a firmware hex push. 2012-01-16 22:48:46 +00:00
Doug Weibel
797e0e27a9 Additional commenting on global variables
First pass done.
2012-01-16 10:28:03 -07:00
Doug Weibel
b4e58b50ee Additional commenting on global variables 2012-01-16 09:45:42 -07:00
Doug Weibel
ed9f7cb1b6 Update battery monitoring code for ArduCopter
Fixes compatibility for APM2.  Also a significant update to the battery monitoring code:  We previously had monitoring modes for individual cell voltages for 3 and 4 cell lipos.  These have been removed as they were never really supported (the cell voltages were computed but were not reported or recorded anywhere).  Also, some clean-up/prep work was done for supporting monitoring 2 separate battery packs.  The CLI battery and current monitoring tests were consolidated into 1 test.
changed
2012-01-15 17:10:02 -07:00
Doug Weibel
762a5550de Remove a debugging print 2012-01-15 16:37:07 -07:00
Doug Weibel
4b24d865bf Stashing some battery monitoring ratio values in the comments for future use. 2012-01-15 16:35:46 -07:00
Doug Weibel
e22a83eec0 Add a CLI setup action to reset the magnetometer offsets
Since the magnetometer offsets are not available through the MAVLink parameter interface (since they are an AP_Var vector) this little feature allows them to be reset from the CLI.  Useful if you somehow get bad offsets or if you change magnetometer.  If you have a bad set of large offset values I have seen issues with the nulling algorithm have trouble converging to the proper values.  I have never seen it have trouble converging from 0/0/0, so this could be a useful feature from time to time.
2012-01-15 16:15:08 -07:00
Doug Weibel
6e8ac99ed6 Fix airspeed sensor support for APM2.
Airspeed sensor should be attached to Analog input 0
2012-01-15 16:12:08 -07:00
Doug Weibel
0306bf97a0 Just a little more commenting work on global variables 2012-01-15 16:11:02 -07:00
Doug Weibel
69c7598db2 Update battery monitoring code for ArduPlane
Fixes compatibility for APM2.  Also a significant update to the battery monitoring code:  We previously had monitoring modes for individual cell voltages for 3 and 4 cell lipos.  These have been removed as they were never really supported (the cell voltages were computed but were not reported or recorded anywhere).  Also, some clean-up/prep work was done for supporting monitoring 2 separate battery packs.  The CLI battery and current monitoring tests were consolidated into 1 test.
2012-01-15 16:10:28 -07:00
Doug Weibel
9846822748 Bug fix for compass.
This is a fix for an interesting bug when a DCM matrix reset was added to the ground start.  This bug only showed up if (A) a ground start were performed after an air start or due to use of the "Calibrate Gryo" action, (B) if the current orientation were sufficiently different from 0/0/0, and (C.) if the particular magnetometer had sufficiently large offsets.  Why did resetting the DCM matrix to 0/0/0 pitch/roll/yaw at ground start cause a bug?  The magnetometer offset nulling determines the proper offsets for the magnetometer by comparing the observed change in the magnetic field vector with the expected change due to rotation as calculated from the rotation in the DCM matrix.  This comparison is made at 10Hz, and then filtered with a weight based on the amount of rotation to estimate the offsets. Normally it would take considerable time at normal in-flight rotation rates for the offset estimate to converge. 

If a DCM matrix reset occurs when the offset nulling algorithm is up and running, the algorithm sees the DCM reset as a instantaneous rotation, however the magnetic field vector did not change at all.  Under certain conditions the algorithm would interpret this as indicating that the offset(s) should be very large.  Since the "rotation" could also have been large the filter weighting would be large and it was possible for a large erroneous estimate of the offset(s) to be made based on this single (bad) data point.

To fix this bug methods were added to the compass object to start and stop the offset nulling algorithm.  Further, when the algorithm is started, it is set up to get fresh samples.  The DCM matrix reset method now calls these new methods to stop the offset nulling before resetting the matrix, and resume after the matrix has been reset.
2012-01-12 14:44:24 -07:00
Doug Weibel
892f24ac5c Adding comments for global variables 2012-01-11 12:37:43 -07:00
analoguedevices
ee18748565 Put in commented-out APM2 # defines, to save people the trouble of having to type them in themselves. 2012-01-09 02:00:46 +00:00
Doug Weibel
44c66c2e8e Bug fix for issue 438.
The rate in a change alt command does not need to be signed.  The code will determine if the rate needs to be positive or negative
2012-01-08 18:24:55 -07:00
Michael Oborne
e1a544cc78 fix relay on apm 1 AP 2012-01-05 07:51:01 +08:00
Andrew Tridgell
cdd5589498 I2c: default to 5ms timeout, and faster bus speed
we will slow down the speed when we get a failure
2012-01-04 16:36:47 +11:00
Doug Weibel
4de2155845 Tweak to FBW min altitude
Patch from Yury
2011-12-31 15:44:40 -07:00
Jason Short
a6c09b3ea5 Small issue with newline formatting 2011-12-29 23:02:02 -08:00
Michael Oborne
cd145fd7a9 add circle to output modes 2011-12-29 18:21:32 +08:00
Andrew Tridgell
cd3729d993 APM: added error checking on barometer read
if the barometer is dead and the GPS has a fix, use the GPS for
altitude
2011-12-28 20:41:53 +11:00
Andrew Tridgell
98353b7ba8 APM: added error checking on compass read 2011-12-28 20:41:53 +11:00
Andrew Tridgell
3cb96fb8af APM: convert to new I2C library 2011-12-28 20:41:53 +11:00
Andrew Tridgell
a6920d603d geofence: re-breach if user changes mode outside the fence
if the user changes mode while outside the fence, and fencing is still
enabled, then declare a new breach
2011-12-28 17:28:35 +11:00
Andrew Tridgell
8d87aa41b9 APM: Update for DataFlash changes 2011-12-28 16:00:49 +11:00
analoguedevices
b8917b58bd Added contributor names, removed "alpha" from firmware name 2011-12-26 17:13:37 +00:00
Andrew Tridgell
f5a3eed1a7 APM: fixed some unsigned/signed warnings 2011-12-26 19:17:11 +11:00
Andrew Tridgell
d81dc21dfe APM-log: fixed reading of GPS logs 2011-12-26 19:17:11 +11:00
Andrew Tridgell
3f9f3f3416 APM-log: changed to use df_NumPages
this copes with different data flash sizes on APM1 and APM2
2011-12-26 19:17:11 +11:00