Commit Graph

766 Commits

Author SHA1 Message Date
jasonshort a16b00b5bf Added heavily filtered Accelerometer values for experimentation.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2779 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-08 03:58:19 +00:00
jasonshort 5e163c6052 added ki_Yaw private variable and accessors.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2778 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-08 03:57:12 +00:00
jasonshort 0d31d9be10 Added a limit to the atan function to calc the heading. Just trying to avoid, bad values screwing up the DCM. - Jason
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2777 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-08 03:56:04 +00:00
deweibel@gmail.com 4015e7f91a Commit test - just adding an unneeded comment
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2740 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-03 19:39:55 +00:00
tridge60@gmail.com 90b0d769f8 compass: fixed normal operation mode change for 5883L
We need to set the right rates after config too. Thanks to Randy for
spotting this one

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2737 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-03 12:00:45 +00:00
tridge60@gmail.com d46536e142 compass: fixed output rate and averaging for 5883L
we need to setup the right output rate, or the compass gets very laggy

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2736 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-03 08:32:58 +00:00
tridge60@gmail.com 2605c4b4b2 AP_Compass: fixed calibration of 5883L compass
this fixes a compass initialisation bug where if the first value from
the compass isn't in the right range we would set bad calibration
scaling factors.

This also changes the maximum acceptable calibration values to 2000,
which is needed for the 5883 compass

pair-programmed-with: Randy Mackay

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2718 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-02 11:31:38 +00:00
tridge60@gmail.com c78da666ec AP_Compass: report compass initialisation failure
don't just put out rubbish values

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2717 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-02 11:31:27 +00:00
rmackay9@yahoo.com d310744bfc AP_Compass_test - added display to auto detected compass
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2716 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-07-01 16:26:27 +00:00
jasonshort 00222a2e20 temporally revert to prior version of Sonar class to narrow in on a bug.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2708 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-30 22:32:26 +00:00
rmackay9@yahoo.com 8ce403cbe4 AP_Compass - added auto detect of 5843 vs 5883L to AP_Compass_HMC5843 class
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2700 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-28 16:47:53 +00:00
rmackay9@yahoo.com da7a13128a AP_Compass - added auto detect of 5843 vs 5883L to AP_Compass_HMC5843 class
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2699 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-28 16:30:42 +00:00
jasonshort 418a4b3903 removed redundant FP calcs for speed up.
added ability to alternate normalization and drift correction. Not fully implemented, needs further testing.


git-svn-id: https://arducopter.googlecode.com/svn/trunk@2691 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-26 22:54:08 +00:00
jasonshort fe16f5d7a4 IMU speedup by shorting the temp calculation. If someone bothers to temp calibrate their sensors, they'll need to edit this shortcut.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2677 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-26 06:23:22 +00:00
DrZiplok cd864714ea Add a simple tool for dumping AP_Var data from an EEPROM dump.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2676 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-25 07:56:38 +00:00
james.goppert 56483bc322 Added debug/ upload targets to Arduino.mk
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2656 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-23 21:36:20 +00:00
james.goppert a3950ca63e Added config.mk file inclusion for global configurations settings on make based builds. See ArduPilotOne for scripts/configure to see an example. config.mk should be located in the temporary directory where the rest of the build results are placed.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2655 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-23 19:01:06 +00:00
DrZiplok 582cc1e229 Enable map file generation.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2636 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-22 05:54:55 +00:00
deweibel@gmail.com 8d7e7ff58e revert gps lib to 2602
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2608 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-21 01:38:31 +00:00
deweibel@gmail.com 26d1ec1f56 remove static declaration from idleTimeout
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2607 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-21 01:26:57 +00:00
deweibel@gmail.com 5b9e7eff9d clean up idleTimeout
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2606 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-21 01:20:39 +00:00
deweibel@gmail.com b53b749fc7 Fix initialization of idleTimeout
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2602 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-20 21:11:45 +00:00
jasonshort 7521ceed61 Vector3<T>() { x = y = x = 0; }
changed to :
	Vector3<T>() { x = y = z = 0; }

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2600 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-20 16:31:31 +00:00
jasonshort 9c4517cfd2 update to Baro lib to remove temp filtering.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2569 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-18 05:08:48 +00:00
jasonshort c5f06b99fe silly formatting
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2566 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-16 16:43:43 +00:00
jasonshort 47bc8a7500 removed some initial settings
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2565 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-16 16:35:11 +00:00
jasonshort ec5035d1ec added optimization note
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2564 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-16 16:34:23 +00:00
jasonshort 76d072591b made timeout public, settable
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2563 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-16 16:33:08 +00:00
jasonshort e2d5f7bf82 removed duplicate filter from ADC based input
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2562 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-16 16:30:37 +00:00
tridge60@gmail.com ea728060f3 disable the re-ordered initialisation warnings
these are not useful for us, and will always happen with our parameter
code

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2561 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-15 12:25:10 +00:00
tridge60@gmail.com cf68e31729 fixed warnings in PID.h
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2560 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-15 12:25:00 +00:00
tridge60@gmail.com cb492ac00e fixed warnings in AP_DCM
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2559 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-15 12:24:51 +00:00
tridge60@gmail.com 9cb9a54d64 fixed a warning in AP_Var.h
index is in system headers as a string function

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2558 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-15 12:24:40 +00:00
jasonshort edaf2b9641 Based on Doug's recommendation - increased Accel weighting to .66 – 1.33 Gs
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2557 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-14 23:37:43 +00:00
jasonshort b35d0677d0 the temp change in the state machine didn't really help the altitude issue after all. Need more testing as the temp sway is the major factor in the lack of air pressure accuracy.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2556 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-14 15:46:38 +00:00
jasonshort 7ad6bff177 reworked filter on temperature.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2554 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-14 05:08:11 +00:00
jasonshort 8fb19f4092 removed filter on temp, was causing init problems.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2553 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-14 04:51:07 +00:00
jasonshort 2651cadb84 Adjusted the state machine to read the temperature less often (from twice a second to every 4 seconds). Added a small smoothing filter.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2552 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-12 23:57:36 +00:00
jasonshort c1ddd58d4c Implemented moving average filter to deal with noise issues on quads, default is a 6 member filter.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2551 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-12 23:50:15 +00:00
jasonshort 595266152b Added dynamic setting of kp_rollpitch, ki_rollpitch, kp_yaw.
Added three constants for kp_rollpitch, (high, med -default, low)
Functionally equivalent to prior version.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@2550 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-12 23:49:01 +00:00
DrZiplok 73004e45dc Add a method to BetterStream and FastSerial that can be used to report
the amount of data that can be written without blocking.



git-svn-id: https://arducopter.googlecode.com/svn/trunk@2549 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-12 22:26:39 +00:00
deweibel@gmail.com 96cb7d2fc0 Add clearOverride message to allow failsafe recovery from joystick control
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2540 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-11 23:59:35 +00:00
rmackay9@yahoo.com 499cbec9e5 RC_Channel.h - small change to store _reverse setting to eeprom
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2528 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-10 03:33:31 +00:00
rmackay9@yahoo.com 18a9ff6f80 AP_Compass - added support for HMC5883L
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2461 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-01 13:21:20 +00:00
rmackay9@yahoo.com ed7e0d1660 AP_Compass - added support for HMC5883L
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2460 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-06-01 13:16:18 +00:00
rmackay9@yahoo.com e4cd549599 AP_OpticalFlow - moved chip select pin so it doesn't interfere with AP_ADC
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2452 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-31 13:46:56 +00:00
deweibel@gmail.com f5700c75c8 Fix bug for GCS joystick control
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2440 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-30 03:44:07 +00:00
deweibel@gmail.com 4bce9465a6 Change setHIL to return a bool based on if GCS joystick control is active
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2423 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-27 23:15:29 +00:00
jasonshort 4a1772b5ff http://code.google.com/p/arducopter/issues/detail?id=161
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2395 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-24 05:17:12 +00:00
rmackay9@yahoo.com c2ff95371c AP_OpticalFlow - fixed some bugs in get_position
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2380 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-22 14:44:51 +00:00
james.goppert 938ab0ac56 Synced with mavlink dev branch, RC_CHANNELS_OVERRIDE packet added.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2344 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-18 03:24:31 +00:00
jasonshort 5a22080484 I am Adding A "PI" loop to the mix. This is a need for AC2. We can optimize the internals later, but I basically duped the get_PID and removed the D term internals.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2338 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-16 16:05:49 +00:00
rmackay9@yahoo.com 34c7555fd1 AP_OpticalFlow - added set_orientation
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2245 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-11 12:49:19 +00:00
deweibel@gmail.com 20cdf7c698 Add hDOP for ublox gps driver
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2241 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-11 02:54:43 +00:00
deweibel@gmail.com b5f0635455 Add an alternate compass.calculate() function substituting 1 sqrt func for 4 trig funcs.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2221 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-08 18:15:29 +00:00
james.goppert 33a7104f6b Fixed script typo.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2188 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-07 20:51:19 +00:00
james.goppert 3020a471da Updated mavlink to latest roi branch.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2187 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-07 20:49:13 +00:00
jasonshort 8f82de3e11 changed a bool to uint8_t
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2120 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-06 17:51:26 +00:00
jasonshort a67b1d6896 Added new output type AMGLE_RAW - this will ouput non-scaled PWM, better for copters than fixed wings.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2093 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-05 17:46:11 +00:00
jasonshort 80cf04511e git-svn-id: https://arducopter.googlecode.com/svn/trunk@2092 f9c3cf11-9bcb-44bc-f272-b75c42450872 2011-05-05 05:22:12 +00:00
james.goppert 7809b0ca2a Massive warning fixes.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2089 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-04 19:12:27 +00:00
DrZiplok 4f7402eee9 Suppress warnings from the Arduino core, since we can't do anything about them.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2076 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-03 05:04:27 +00:00
jasonshort fc4759dfbb Libraries to support non AP_VAR usage. This is for Ardupilot legacy hardware.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2075 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-03 04:33:32 +00:00
jasonshort 5a6b9adcca fixed an overflow issue in AP_RC
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2074 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-03 04:32:37 +00:00
DrZiplok 701157c350 Re-order class members to avoid initializer-order warnings.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2073 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-02 05:56:21 +00:00
DrZiplok 71604405f4 Re-order initialisers to suppress warnings
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2072 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-02 05:55:59 +00:00
DrZiplok f5ba77f23b Rename some ctor arguments to suppress shadow-related warnings.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2071 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-02 05:55:34 +00:00
tridge60@gmail.com fe648644ce added a few more warning flags for when building with the Makefile
git-svn-id: https://arducopter.googlecode.com/svn/trunk@2070 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-02 05:50:13 +00:00
james.goppert 5a273e52d2 Added const AP_Var access.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1958 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 19:29:33 +00:00
james.goppert 01dea496c8 Removed APO lib.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1957 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 17:38:12 +00:00
james.goppert 55c46fc367 Moved APO quad/ rover projects.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1956 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 17:14:54 +00:00
jasonshort 0a703cef47 typo
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1955 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 04:55:51 +00:00
jasonshort e6d86e7efa removed yaw towards WP option. Should now be handled with a mission script.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1954 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 04:55:07 +00:00
jasonshort 0e8d3781d3 git-svn-id: https://arducopter.googlecode.com/svn/trunk@1953 f9c3cf11-9bcb-44bc-f272-b75c42450872 2011-05-01 04:54:15 +00:00
james.goppert 9b25875baf Heartbeat failsafe added for APO.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1940 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 03:38:41 +00:00
james.goppert 7b7ba0df1f APO comment fixes.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1939 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 03:20:19 +00:00
james.goppert 9a47d7b8e1 Example cleanup for APO.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1938 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 03:05:15 +00:00
james.goppert 42c6847054 Added Car/Quad APO examples.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1937 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 02:43:46 +00:00
rmackay9@yahoo.com 0f920d12ce DataFlash - backed out recent changes to make it use SPI while I figure out the cause of some people's compile errors
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1936 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 02:27:18 +00:00
james.goppert aa598b575a APO merge.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1935 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-05-01 02:05:17 +00:00
rmackay9@yahoo.com 56fd1acc4a AP_OpticalFlow - first draft of optical flow library for use with experimental ADNS3080 sensor
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1933 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-30 08:29:28 +00:00
rmackay9@yahoo.com 0462774345 DataFlash - modified to use Arduino SPI interface instead of directly using registers. Also moved "dataflash_CS_inactive" calls to end of functions instead of beginning so that it doesn't monopolize the SPI bus.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1931 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-30 03:25:31 +00:00
mich146@hotmail.com a107587af6 update dataflash for 528 and 512 byte pages
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1906 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-18 11:19:31 +00:00
rmackay9@yahoo.com e579f4a6aa Removing BinComm because we're using MavLink now
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1905 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-18 02:51:19 +00:00
jasonshort 12a78ecbdb just formatting
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1887 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-16 04:55:32 +00:00
jasonshort e0834ed0f2 my quicky GCS debug library
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1886 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-16 04:52:01 +00:00
jasonshort c07f6fb25f defaulted to 38400 baud
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1885 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-16 04:50:38 +00:00
jasonshort e74dabca33 Added more wp options
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1884 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-16 04:49:46 +00:00
james.goppert@gmail.com 18c4b79a1e Fixed bug in compass tests, had it initialize fastserial.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1862 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-09 19:57:54 +00:00
james.goppert@gmail.com 2d1b59e9a6 Eclipse makefile support for examples.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1861 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-09 19:39:27 +00:00
james.goppert@gmail.com c1b6032e7f Eclipse makefile support for examples.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1860 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-09 19:38:12 +00:00
james.goppert 0f253bd5b8 Fixed rc channel.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1850 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-06 01:19:03 +00:00
tridge60@gmail.com d36869494f GPS: fixed the idle timer
we need to reset the idle timer only on good data, or a call to
init(). Otherwise we never use it.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1849 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-04 22:00:06 +00:00
james.goppert@gmail.com 6b349d0aff Removed AP_Controller.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1848 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-04 21:40:43 +00:00
james.goppert 947ce48e81 Fixed controller prototype for update.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1847 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-04 03:26:58 +00:00
james.goppert 3746ddf970 Updated Car controller demo.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1846 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-04 02:23:32 +00:00
james.goppert ea63560e00 AP_Controller update.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1845 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-04-04 02:22:55 +00:00
mich146@hotmail.com bae1c531d0 ADC Library - reimplement overflow
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1832 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-31 14:19:59 +00:00
mich146@hotmail.com cdcee09e0d Fix adc issue causing serial problems/other issues. (DOUG please check)
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1829 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-29 11:16:21 +00:00
mich146@hotmail.com c8281da5ec FastSerial Fix
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1826 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-29 00:08:27 +00:00
jasonshort 6ee6000302 Temp revert to previous version, while I hunt down a bug.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1822 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-27 23:34:50 +00:00
jasonshort 17c6acd310 reformatted
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1817 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-26 21:05:02 +00:00
james.goppert 43cd36e5b6 Added back some APO libraries.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1813 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-25 17:08:35 +00:00
DrZiplok 0a00e4ff21 Print the key associated with a variable when the variable is printed using AP_Var_menu_show.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1812 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-25 02:51:03 +00:00
DrZiplok 76a5a48206 Add an interface for locating a variable by key.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1811 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-25 02:46:45 +00:00
deweibel@gmail.com 596b33a08b Change waypoint/command storage to include options byte.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1809 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-23 03:29:46 +00:00
tridge60@gmail.com a633617eef added -Wformat in Arduino.mk
when building with 'make' we get warnings related to printf() format
strings

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1798 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-21 07:26:03 +00:00
tridge60@gmail.com 860998d337 implemented typesafe PSTR()
This makes PSTR() type safe by using a 1 byte wrapper
structure. Attempts to use the wrong varient of a print function will
generate a compilation error.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1797 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-21 07:25:48 +00:00
jasonshort 66c86e9a87 a basic mission uploader
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1796 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-21 00:51:43 +00:00
mich146@hotmail.com 5008c1656b MavLink Update
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1795 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-20 23:28:42 +00:00
jasonshort ed202447e6 a basic mission uploader
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1794 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-20 21:56:48 +00:00
tridge60@gmail.com 31e93f8198 mavlink: sync with upstream
this syncs with 7e1c274437f09a8a03a5bef990e14b93c8fc8b07 from 
March 17 2011

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1782 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-18 01:34:13 +00:00
tridge60@gmail.com 6268eae835 added dummy save() method to AP_IMU_Shim
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1781 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-18 01:34:00 +00:00
mich146@hotmail.com 42caba7d8e Mavlink update
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1777 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-16 10:09:22 +00:00
jasonshort bb715378a1 removed options - not going to go that route without proper GCS support.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1760 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-09 06:38:46 +00:00
mich146@hotmail.com 975f8ff006 Mavlink update
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1757 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-08 11:07:58 +00:00
deweibel@gmail.com 92bf4c4e0a Add method definition for set_centripetal()
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1756 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-08 01:47:43 +00:00
jasonshort 852b3874d5 Added Options Bitmask to Location Struct
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1741 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-03-05 04:39:23 +00:00
deweibel@gmail.com 8dbb0ed47b Add member/method to allow HIL to override radio values
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1732 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-28 02:37:51 +00:00
deweibel@gmail.com 195b695011 Fix imu_health metric
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1728 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-25 20:09:00 +00:00
deweibel@gmail.com ec7c508207 Change gyro/accel calibration to guard against improper orientations or motion during cal
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1727 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-25 17:49:31 +00:00
jasonshort 29a486c519 removed unused save_trim() function
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1716 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-23 05:17:24 +00:00
mich146@hotmail.com a850e315c9 Fix hil issue
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1712 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-21 23:16:57 +00:00
DrZiplok@gmail.com 86ca9562b5 Fix ::set_and_save to return the result of the ::save call.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1707 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-21 05:12:58 +00:00
DrZiplok@gmail.com 5fe288dd43 Fix the return value from ::save() on AP_Var_groups so that the caller can verify that a save was successful.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1706 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-21 05:11:02 +00:00
DrZiplok@gmail.com e85b2d3c17 Increase the maximum save size to 64B, so that a Vector3f can be saved.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1704 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-21 04:42:28 +00:00
jasonshort 887a034fe9 added more time to IMU startup. added more accessors and removed private flag.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1702 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-20 23:10:18 +00:00
jasonshort b81d2ef753 added names to output in show
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1698 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-20 03:46:18 +00:00
DrZiplok@gmail.com 72e112e8c0 Fix AP_Var::load - it has to ask the serialiser, not the unserialiser, for the variable's size.
Fix AP_Float16 - scaling was being done in the wrong direction, and the unserialiser wasn't reporting errors.

Add test cases for the above.


git-svn-id: https://arducopter.googlecode.com/svn/trunk@1696 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-20 00:38:09 +00:00
james.goppert a329aa18fe Consolidating APO.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1691 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 21:36:29 +00:00
jasonshort 240a3a2f2a quick.fix
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1688 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 21:01:32 +00:00
jasonshort 1da51e72ec quick.fix
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1687 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 21:01:07 +00:00
jasonshort 00209c82a9 Added setHIL to GPS.cpp
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1686 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 18:33:42 +00:00
james.goppert 6b4f84e267 Mavlink update.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1685 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 17:54:14 +00:00
mich146@hotmail.com 295b4277f0 fix compass shim
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1684 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 10:04:00 +00:00
mich146@hotmail.com ee0c1176d5 fix imu shim
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1683 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 09:52:59 +00:00
jasonshort 02b0e92d5b Added MAV_CMD_NAV_R_WAYPOINT, MAV_CONDITION_ANGLE
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1679 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 03:59:06 +00:00
jasonshort 59aa6be2e5 Added MAV_CMD_NAV_R_WAYPOINT, MAV_CONDITION_ANGLE
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1678 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 03:58:48 +00:00
jasonshort b6245b471a Added accessors declination.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1677 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 03:57:53 +00:00
jasonshort bda94006a1 Added accessors back for Accels. I need them there until we need to find another solution.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1676 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-19 03:57:19 +00:00
deweibel@gmail.com bd9c7de109 Correct factoring issue for AP_GPS_IMU XPlane HIL interface.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1673 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-17 21:36:56 +00:00
deweibel@gmail.com 4f514faf97 Small bug fix for HIL gps when using auto-detect
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1663 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-16 18:19:07 +00:00
DrZiplok@gmail.com 7ca9081238 DCM needs a reference to a pointer so that we can change the GPS under it during init.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1662 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-16 07:54:48 +00:00
DrZiplok@gmail.com bffe20ed5e Add a little code to track the amount of memory used by AP_Var subclasses.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1661 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-16 07:01:17 +00:00
james.goppert a5ada4aec7 Add saturation and sink blocks.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1660 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-15 03:10:01 +00:00
james.goppert 0cfa2dbea1 AP_Controller working.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1659 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-15 00:57:23 +00:00
james.goppert 6788def679 Debugging controller.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1658 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 21:02:35 +00:00
DrZiplok@gmail.com e2d4c9e901 Use a more explicit loop termination condition.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1657 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 17:49:02 +00:00
DrZiplok@gmail.com fabcfd942b Don't return a name for a variable if it has no name, even if it's in a group that does have a name.
When displaying variables, don't display variables with no name, or that are groups.


git-svn-id: https://arducopter.googlecode.com/svn/trunk@1656 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 17:44:33 +00:00
DrZiplok@gmail.com c52b459a53 Variable names must be PROGMEM strings.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1655 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 17:43:33 +00:00
DrZiplok 991acad1f0 Add a constant that can be used to identify groups.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1653 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 07:11:42 +00:00
DrZiplok@gmail.com 944825772d Use AP_Var to store PID scaling values.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1652 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 04:45:31 +00:00
DrZiplok@gmail.com 1dd50ec263 Use AP_Var to store channel calibration.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1651 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 04:43:44 +00:00
DrZiplok@gmail.com 86fda84749 Use AP_Var to store accel/gyro calibration.
Refactor AP_IMU_Oilpan and remove all the old EEPROM code.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1650 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 04:42:37 +00:00
DrZiplok@gmail.com a4e791dc92 Line ending property changes.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1649 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 04:27:07 +00:00
DrZiplok@gmail.com f10cbb011f ::transposed does not change the matrix; make it const.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1648 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 04:26:05 +00:00
DrZiplok@gmail.com cc06f07067 Major update including AP_Var support.
Most of the compass functionality is now abstracted in a base class, with the various sub-classes implementing just their unique functionality.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1647 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 04:25:20 +00:00
DrZiplok@gmail.com 0ea1845f38 Eclipse project config changes.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1646 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 03:16:03 +00:00
DrZiplok@gmail.com 0b60757b43 Add a template AP_VarS that handles arbitrary structure/class types.
Note that the object must still be <= 32 bytes in size to be saved/loaded.


git-svn-id: https://arducopter.googlecode.com/svn/trunk@1644 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 01:47:24 +00:00
jasonshort 0436916609 updated formatting, baud
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1643 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 00:43:35 +00:00
jasonshort b6c552212e updated formatting, baud
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1642 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-14 00:43:11 +00:00
deweibel@gmail.com 0b6454aa0b Speed IMU initialization
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1641 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-13 23:25:04 +00:00
deweibel@gmail.com 8e542512da Change ADC overflow correction
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1640 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-13 23:24:37 +00:00
james.goppert 253307e2f0 AP_RcChannel demos updated for AP_Var.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1632 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-13 01:24:32 +00:00
mich146@hotmail.com 4ea9192ab8 Mavlink update
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1630 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-11 11:04:52 +00:00
mich146@hotmail.com 152f0a12df Fix Mavlink include
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1628 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-11 00:04:39 +00:00
DrZiplok 61d65f652c Fix for log() being a bad idea.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1617 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-09 23:15:11 +00:00
mich146@hotmail.com dbdabd8707 MavLink Update
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1616 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-08 23:16:58 +00:00
deweibel 8c76c8c936 Add code for auto magnetometer offset nulling.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1615 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-08 20:17:16 +00:00
DrZiplok 4632dd2f29 Implement a cast_to_float method for convenience; at a cost of a couple of bytes in the vtable this will save many callers having to play type introspection games.
It might be possible to implement a set of virtual cast operator overrides, but only float lets us return NAN to indicate that a cast can't be made, so for now we'll stick with just this one.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1614 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-08 10:17:45 +00:00
DrZiplok 3108d661d2 Correct knots -> m/sec conversion. Thanks to Paul M. for spotting this.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1613 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-08 07:06:47 +00:00
james.goppert 2584f9a1f1 APO Compiling with new AP_Var!
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1612 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-08 01:58:51 +00:00
james.goppert af1ee477b9 Working on updating AP_Controller/RC_Channel for new AP_Var
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1611 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-07 23:33:12 +00:00
deweibel e620eb1326 Change MediaTek timestamps to millisecond Time of Day
Add epoch method to return timestamp epoch.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1589 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-02-01 23:50:36 +00:00
DrZiplok@gmail.com b614aca274 Add a template AP_VarA that defines a variable that is an array of some basic type. This is like AP_VarT for arrays, with minor changes in behaviour consistent with the difference between regular variables and arrays.
Note that AP_VarA arrays are still limited by the constraints on the total size of a variable (AP_Var::k_size_max).

Add a basic unit test for arrays; more are needed.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1579 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-30 20:58:34 +00:00
DrZiplok@gmail.com ca0005db2a Comments, minor consting, use a better target for sizeof in AP_VarT
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1578 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-30 20:14:42 +00:00
DrZiplok@gmail.com b60480fac0 Minor whitespace fixes.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1577 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-30 20:13:07 +00:00
deweibel@gmail.com b3c9bf270f Add FinishWrite method to the DataFlash class to support using an index system.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1575 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-30 01:53:04 +00:00
deweibel@gmail.com 3443a7817d Add reversing for PWM outputs in angle_to_pwm case.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1566 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-27 18:16:22 +00:00
james.goppert 82a257982a Started updating AP_Controller and AP_RcChannel for AP_Var
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1559 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-26 07:05:22 +00:00
mich146@hotmail.com 000eaf6a68 Mavlink update
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1555 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-25 00:31:38 +00:00
DrZiplok c18fd76449 Try to pre-empt subsequent inclusions of wiring.h by grabbing it here and giving ourselves a chance to undo some of the less well-advised macros it defines.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1554 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 02:44:31 +00:00
jasonshort c9227dbcaf fixed a scaling bug in imax
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1553 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 02:07:25 +00:00
DrZiplok@gmail.com 34f43934da Move the unit test framework out of the unit tests. Add unit tests for the k_typeid_* constants.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1543 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 23:59:26 +00:00
DrZiplok@gmail.com b58693f203 Add a function to AP_Var for finding a variable by name. It is not efficient, but convenient for e.g. interactive use.
Add pseudo-constant copies of the AP_Meta_calss::Type_id for the standard AP_VarT subclasses.  This makes checking the type of a possible AP_Var much cheaper than calling ::meta_cast, as there is no object con/destruction involved.

Add some helper functions for manipulating AP_Vars from Menu interfaces.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1541 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 23:58:07 +00:00
DrZiplok@gmail.com 2caea855cd Don't include AP_Vector (in preparation for retirement) and AP_Loop (because it's not being used by APM*). Interested clients can still include AP_Loop if they need it.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1540 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 23:48:07 +00:00
DrZiplok@gmail.com 2f263229f9 Rename AP_Meta_class::AP_Type_id to AP_Meta_class::Type_id in keeping with the coding standard.
Add a non-static version of AP_Meta_class::meta_cast that can be used against any subclass object directly.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1539 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 23:46:58 +00:00
DrZiplok 8c9ece1f37 Fix a serious typo, add more documentation.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1538 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 20:33:20 +00:00
DrZiplok 7a3d33844a Move the Test unit test framework out into its own header, so that it can be used by other libraries.
Add some documentation explaining how it is used.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1537 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 20:26:11 +00:00
DrZiplok@gmail.com 8cc7e658b0 Simplify AP_Var_group::_serialize_unserialize slightly by removing some variables.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1535 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 10:04:24 +00:00
DrZiplok@gmail.com 4b21f3485a Improve performance when saving a number of variables that don't have space allocated in the EEPROM. This avoids scanning the entire EEPROM every time a variable that has not yet had space allocated is written.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1534 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 09:56:58 +00:00
DrZiplok@gmail.com 655f7a21ff Fix ::save_all/::load_all so that they check the correct criteria for opt-out. Now load/save_all work.
Fix prototype for AP_Var_group::serialize so that it's called correctly when saving a group.  Now group load/save works.

Add load/save_all and group load/save unit tests.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1533 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 09:27:58 +00:00
DrZiplok@gmail.com e7da843d90 Fixes for EEPROM space allocation and mapping.
- We can't count on the first EEPROM scan knowing about everything; new variables may be constructed later so be willing to go back and re-scan the EEPROM if we encounter a new variable that hasn't been loaded yet.
- Sort out where _key actually points (the variable's data) in the EEPROM and get everyone to use the same interpretation.
- Fix return values from ::save and ::load.
- Make it possible to re-save after ::erase_all by de-locating all variables before the EEPROM is blown away.
- Fix args to eeprom_read_block/eeprom_write_block so that we don't spam random memory.

Add unit tests for basic save/load operations.


git-svn-id: https://arducopter.googlecode.com/svn/trunk@1532 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 08:11:53 +00:00
DrZiplok@gmail.com 39fea200ca I never liked the plan that variable groups could only be statically scoped; it was much too fragile. These changes address that issue by splitting the global variable list into two lists, one for standalone variables (including groups), and one for variables that are members of a group.
Now a variable belonging to a group can safely be constructed before the group it belongs to, and the group can be destroyed before its member variables.  This greatly simplifies the AP_Var constructor(s).

Remove the lookup-by-index and lookup-by-key interfaces to AP_Var and replace them with first/next interfaces for all variables, and for variables belonging to a specific group.  Document their usage.  Add an accessor for the key associated with a variable so that search-by-key can be performed by a consumer.  Throw away the lookup cache implementation, as it's not required anymore.

Re-layout the EEPROM variable header and tweak the EEPROM space allocator so that it's more resistant to interruptions during variable save.

Fix the global constants so that they work.

Add an interface for erasing all variables in EEPROM (only writes one byte).

Fix unit tests so that they work with the changed interfaces.  Also tweak the unit test framework so that it doesn't inline all its code.  This is a WIP - many more tests need to be written still.


git-svn-id: https://arducopter.googlecode.com/svn/trunk@1531 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 06:52:59 +00:00
DrZiplok@gmail.com de71731994 Add a templated version of AP_Meta_class::meta_type_id so that you can get a type ID for any named type without having to have an instance of the type lying around. Update the comments about caching type IDs to reflect its availability.
Fix the comments around AP_Meta_class::meta_cast; they were leftovers from an earlier implementation and entirely not helpful.


git-svn-id: https://arducopter.googlecode.com/svn/trunk@1530 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 06:44:07 +00:00
DrZiplok@gmail.com 39b718fce0 Implement the missing AP_Var_group::*serialize functions.
Rather than implementing empty default constructors, make sure that AP_Var and friends have useful default constructors instead.  This works around AP_Meta_class::meta_cast requiring a default constructor without having empty ctors scattered around.

Add accessors to AP_Var so that the global variable list can be traversed and the group/variable relationship comprehended by outsiders.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1523 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-22 18:42:44 +00:00
DrZiplok@gmail.com 30d9a92c4e Implement a pure data serialisation load/save model for AP_Var.
The format is a simple TLV format; a tag identifying the variable, a length for the variable, and then the actual data.  This format could ultimately be extended to include waypoint/commands as well.

This allows us to load and save groups of variables to EEPROM without having to have a static EEPROM map.

Still needs unit tests and (probably) bugfixing.

git-svn-id: https://arducopter.googlecode.com/svn/trunk@1522 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-22 08:37:52 +00:00
james.goppert 05622fe225 Updated AP_RcChannel for AP_Var.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1509 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-18 04:56:45 +00:00
mich146@hotmail.com 0328f926b5 Reinstate Float loading and saving
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1507 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-17 22:57:48 +00:00
deweibel@gmail.com 50c3b2e4fd Add initial values for scaling and dead zone to RC_Channel constructor
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1506 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-17 04:05:48 +00:00