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
deweibel@gmail.com
5e0fff1618
Add back AP_GPS_IMU to provide Xplane functionality
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1504 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-17 01:50:34 +00:00
jasonshort
80689920af
Added getter functions to accels
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1503 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-16 20:42:11 +00:00
DrZiplok@gmail.com
96d2dc33fe
Formatting and naming changes for conformance with the ArduPilot Coding Conventions.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1502 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-16 09:14:21 +00:00
DrZiplok
5113a12144
Deal more gracefully with the case where the incoming PPM stream has more than 8 channels encoded.
...
This makes it possible to move one resistor on the APM board and feed it PPM directly from a receiver emitting a PPM stream.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1498 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-15 19:32:04 +00:00
DrZiplok
cbdf462acc
Update to current MAVLink dev branch protocol version. This has NOT been tested yet.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1494 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-12 08:57:54 +00:00
DrZiplok
aaf125e441
Based on explaining AP_VarNoAddress to Doug, improve the description of the value.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1491 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-12 02:43:25 +00:00
DrZiplok@gmail.com
52a0a03d56
Bring AP_GPS_Auto closer to ready for prime-time:
...
- disable NMEA autodetection; false positives are still a risk
- trim down the console output to a minimum; we still need something to help users diagnose potential problems, but the old output was much too verbose
- rather than block forever, only do one autodetect pass for each ::read call. That's still too long (five seconds or so) but better than blocking forever.
- don't block forever if no GPS is attached.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1480 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 08:20:41 +00:00
DrZiplok@gmail.com
fdde092213
Extend the logic that preserves buffer sizing on re-begin by also avoiding freeing and re-allocating buffers when they don't change in size.
...
This can make re-opening a port faster (as the free/malloc pair can be avoided) and possibly more robust (in the case where e.g. the heap has been corrupted).
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1479 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 08:17:31 +00:00
DrZiplok@gmail.com
eb39264834
Update the NMEA example code in conjunction with the new parser.
...
Added an init string for SiRF receivers that will bring them back out of the binary mode configuration that AP_GPS_Auto sets them to.
Picked up the GPS logging format from the AP_GPS_Auto test.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1469 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:57:16 +00:00
DrZiplok@gmail.com
cad260a481
Implement a completely new NMEA parser based on the TinyGPS parser by Mikal Hart.
...
Major new features:
- No RAM buffer for the NMEA message being parsed; saves 120 bytes of RAM.
- More robust parser, a little less likely to be confused by bad messages.
- Added configuration strings for SiRF, ublox and MediaTek GPS in NMEA mode to select just the messages of interest.
Note that the issue that TinyGPS has with co-ordinates with "different" numbers of decimal digits is addressed in this code.
Size is comparable to the old parser.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1468 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:55:45 +00:00
DrZiplok@gmail.com
1bfcdaa2cb
Add a delay after sending the GPS mode switch strings in an attempt to give any NMEA data time to drain before we attempt to sniff again.
...
Otherwise, we can end up settling on NMEA as a mode just after switching a SiRF GPS to binary mode.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1467 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:50:42 +00:00
DrZiplok@gmail.com
dd6ede36ee
Add more unit tests for AP_Var.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1466 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:44:23 +00:00
DrZiplok@gmail.com
6366cdc094
Add more documentation for AP_MetaClass.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1465 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:43:41 +00:00
DrZiplok@gmail.com
44cac7a853
Add a new macro PROGMEM_STRING that can be used to define a constant string in program memory.
...
This is a partial workaround for not being able to use PSTR at global scope, e.g. in an argument to a constructor; it makes the intent of the otherwise somewhat bulky declaration of the string more obvious.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1464 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:42:59 +00:00
DrZiplok
07dec5e1b7
Use operator new from AP_Common rather than our own. This also makes AP_Common available to the GPS drivers that work with AP_GPS_Auto.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1463 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:19:15 +00:00
DrZiplok@gmail.com
8c9a5d36d8
Add documentation and reformat closer to our current code standard.
...
Add support for re-opening a port without changing the baudrate or buffer sizes. By passing zero for the parameters that aren't to be changed, code can reconfigure a port without needing to know how it was originally configured.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1462 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 01:17:03 +00:00
DrZiplok
2c0e8515d5
Add a date field to the standard GPS data. This may be zero, and its format is TBD (may be GPS-dependent).
...
Increase the no-data timeout to slightly more than a second, so that GPS' with a 1Hz update rate don't cause problems.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1461 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-10 00:44:09 +00:00
rmackay9@yahoo.com
1448b6991e
AP_RangeFinder_test.pde - corrected some inaccurate comments in the code
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1459 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-09 14:20:26 +00:00
DrZiplok
e299d5f58a
Add a flags byte to variables, and implement a "no auto load" bit that opts variables out of load_all / save_all.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1449 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-05 17:56:46 +00:00
DrZiplok
c0de571afd
Save AP_Var's initial value as a default value, and add a function for restoring the default value.
...
Fix the AP_Var::lookup cache, which was very busted.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1448 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-05 09:25:07 +00:00
DrZiplok
0e868ca343
More unit tests.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1447 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-05 07:40:35 +00:00
DrZiplok
765cef724d
Fix the assignment operator overload for AP_VarT so that direct assignments to the type work correctly.
...
Add a variant of AP_Float that stores the value as Q5.10 (16-bit fixed-point) to save EEPROM space.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1446 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-05 07:40:06 +00:00
DrZiplok
814a16000a
Simplify FastSerial::begin baudrate calculations in line with the changes made in Arduino-0022
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1424 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-04 18:41:27 +00:00
rmackay9@yahoo.com
e0607712a3
AP_RangeFinder - tiny bit of extra initialisation on table holding averages
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1419 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-04 14:33:29 +00:00
DrZiplok@gmail.com
d8046957c6
Unit tests for scope-based address offsetting.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1418 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-04 08:50:24 +00:00
DrZiplok@gmail.com
63643f73fc
Move the AP_Var ctor out of the class definition; it's big enough that we don't want to inline it.
...
AP_Vars with either a name or an address are 'interesting' (the latter so we can save_all).
Add the concept of address offsets to scopes. Now we have a container that we can put AP_Vars into that can be moved around in the EEPROM. This will make it easier for things like the PID library which need to support multiple instances getting their parameters from different parts of the ROM.
Improve documentation.
Suck it up and admit that we aren't going to do "identity"-based addressing for the EEPROM and just call the property "address".
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1417 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-04 08:49:55 +00:00
DrZiplok@gmail.com
d2bd744244
Metaclass improvements:
...
- Add a default ctor/dtor pair. The dtor ensures that all dtors are virtual, and guarantees that there is something in the dtor vtable slot for classes that don't implement their own.
- serialize must not alter the class, mark it const
- Improve documentation
- Fix handle validation to prevent trying to read 2 bytes beyond the end of memory
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1416 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-04 08:46:01 +00:00
DrZiplok@gmail.com
d7fccd1aa9
Checking these in makes the libraries too bulky. We need to host them somewhere.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1413 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-04 06:22:02 +00:00
rmackay9@yahoo.com
ef673e5162
AP_RangeFinder - changes to allow sonar to work using pitot tube. Also moved most functionality into RangeFinder class instead of child classes.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1404 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-03 04:17:43 +00:00
DrZiplok
57f3f4e65b
Beef up the unit tests for AP_Var. Most of the basic functionality is now covered.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1403 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-03 02:29:17 +00:00
DrZiplok
277105c437
Rename the base class for variables AP_Var; less confusing, less to type. Rename the template type instead.
...
We don't need any of the arithmetic overloads, so strip them.
Fix includes.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1402 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-03 02:28:35 +00:00
DrZiplok
ea9c7859f8
Don't allow the default serialize/unserialize to be inlined.
...
Fix some includes and remove an old implementation of meta_cast.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1401 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-03 02:26:18 +00:00
DrZiplok
a02136236f
Add the ability to find the sketchbook when called from a Makefile in a library example.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1400 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-02 22:16:21 +00:00
DrZiplok
a3a9fe59e3
Following discussions with James, a complete rewrite of AP_Var.
...
The overriding principle here is to keep the use of AP_Vars as simple as possible, whilst letting the implementation do useful things behind the scenes. To that end, we define AP_Float, AP_Int8, AP_Int16 and AP_Int32. These are strongly typed, so that there is no ambiguity about what a variable "really" is.
The classes behave like the variables they are storing; you can use an AP_Float in most places you would use a regular float; you can add to it, multiply by it, etc. If it has been given an address in EEPROM you can load and save it.
Variables can be given names, and if they are named then they can be looked up. This allows e.g. a GCS or a test tool to find and traffic in variables that it may not explicitly know about.
AP_Var does not attempt to solve the problem of EEPROM address space management.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1399 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-02 22:14:36 +00:00
rmackay9@yahoo.com
851101218d
APM_Compass - moving to "legacy_do_not_use" directory
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1391 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-01 15:00:32 +00:00
DrZiplok
68be029a17
Don't define constant AP_Var's extern
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1381 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-01 00:31:39 +00:00
james.goppert
634f2734b5
Added AP_Controller library.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1379 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-31 06:20:28 +00:00
james.goppert
4e421a319a
Updated docs.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1377 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 07:51:53 +00:00
DrZiplok@gmail.com
cd341cef90
We should call imu.update() before asking for accel/gyro values so that we get timely, fresh numbers.
...
Most other consumers of the accel/gyro values should be asking us for them anyway. At that point, what they are getting are the values we sampled here.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1376 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 07:52:35 +00:00
james.goppert
3f30b897fa
Fixed non-standard value in RcChannel examples.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1375 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 07:43:56 +00:00
james.goppert
5b79ed9f53
Updated RcChannel examples.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1372 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 07:02:56 +00:00
james.goppert
8bc3fc599d
Fixed casting issues with EEPROM Registry
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1371 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 06:46:40 +00:00
jasonshort
5f15380877
cosmetic
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1370 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 06:43:35 +00:00
james.goppert
86feb8bf7b
Fixed issues with RcChannel EEPROM var ownership.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1369 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 05:25:28 +00:00
DrZiplok
23e78d0f4b
Fix/improve depdendency handling. Deps are autogenerated on the first compile pass and consumed on subsequent builds. This helps work around the difficulty of building the 'clean' target with Eclipse.
...
Don't depend on the build directory anywhere; we automake it as required.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1368 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 03:45:50 +00:00
DrZiplok
7bc153f038
More awk-related changes. mawk hangs on the parser scripts, so try gawk; it's what we'll need for cygwin anyway.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1367 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 03:20:33 +00:00
DrZiplok
f0f13752d0
We need TOOLPATH even when ARDUINO is defined. Refactor.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1366 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 02:25:55 +00:00
DrZiplok
f65076dccc
Adjust the awk scanners to deal with the somewhat less featureful awk found on many Linux systems.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1365 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-30 02:16:01 +00:00
DrZiplok
0dac8fca62
Better TOOLPATH handling for Linux
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1364 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 23:13:44 +00:00
DrZiplok
4d490359e7
Try to find the AVR tools on Linux
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1363 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 22:39:39 +00:00
DrZiplok
c1e9a04ce6
Add Eclipse project metadata.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1362 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 20:35:16 +00:00
DrZiplok@gmail.com
2ec1d69a0f
Move Arduino.mk here. This library should always be present in a constant location for our projects.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1361 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 19:43:58 +00:00
james.goppert
e3041f08fe
RcChannel now owns channel config params.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1354 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 08:26:21 +00:00
DrZiplok@gmail.com
f2f38f2e71
Make the GPS ctor protected so that it can't be accidentally constructed or copied.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1353 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 03:32:37 +00:00
DrZiplok@gmail.com
75e78dabae
Back out the memset optimisation. It helps with code size but causes inexplicable link-time failures (undefined references to __cxa_pure_virtual).
...
Thank you very much Mr GCC. Can I have my evening back?
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1352 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 03:09:29 +00:00
DrZiplok
669e276da6
Curse you, CodeLite.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1350 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 00:36:08 +00:00
DrZiplok
ba6ba990f0
Undo the ^M nonsense that CodeLite pulled.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1349 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 00:35:53 +00:00
DrZiplok
67aa0cd92d
This shouldn't be here.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1348 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-29 00:33:21 +00:00
james.goppert
7ca8aa323f
Moved examples.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1347 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:56:12 +00:00
james.goppert
c6eb6c574b
Updated RcChannel examples.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1346 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:54:52 +00:00
DrZiplok
faa2b9909e
Break AP_Var and friends out into their own header.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1345 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:51:12 +00:00
DrZiplok
f8ed279b14
Fix over-clever macro.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1344 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:50:50 +00:00
DrZiplok@gmail.com
bf59d7abc7
Update for changes to AP_IMU
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1343 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:41:26 +00:00
DrZiplok
94fd2431e4
Implement an abstract IMU class.
...
Refactor the existing AP_IMU as AP_IMU_Oilpan (this will require changes in other projects TBD).
Add a shim IMU class for use by e.g. HIL protocol handlers.
This paves the way for a better handling of HIL_MODE_SENSORS as well as the mooted SPI-based oilpan IMU.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1342 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:41:00 +00:00
DrZiplok
632d0f574a
Don't actually implement __cxa_pure_virtual, we'd prefer to have link-time errors rather than classes with pure virtual functions.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1341 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:33:27 +00:00
DrZiplok
5faadf4cd1
use memset rather than explicit assignments to zero to zero an array, this saves code space.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1340 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:32:37 +00:00
DrZiplok
eb81becdb6
Pure virtual classes should declare pure virtual member functions as 0, rather than having the linker go looking for implementations elesewhere. This lets the compiler generate better error messages when a subclass fails to implement one or more required functions.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1339 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:31:58 +00:00
DrZiplok
6f4e63e8b3
Move ToRad here to match ToDeg
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1338 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:30:09 +00:00
DrZiplok
9b1863f4b2
operator new[] should return a zeroed class object just like operator new does.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1337 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:29:46 +00:00
DrZiplok
c1f19797d9
Add a GPS shim class that lets an external agent update the pseudo-GPS properties.
...
This should obsolete AP_GPS_HIL as it's a little more versatile (and it will generate cheaper code).
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1336 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:27:12 +00:00
DrZiplok
44b95ac5b3
Improve documentation re: macros used to define serial ports.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1335 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 23:26:10 +00:00
james.goppert
482f124212
Added macros to AP_Common.h
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1332 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 21:30:29 +00:00
james.goppert
498894317a
Improved AP_RcChannel examples.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1331 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 20:57:03 +00:00
jasonshort
3d529b3a51
added channel examples
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1330 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 19:29:37 +00:00
jasonshort
0738870e64
included setup process
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1329 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 19:20:35 +00:00
james.goppert
f683d9bb77
Added changing values to RcChannel test.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1325 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 18:59:58 +00:00
jasonshort
3f61f5aa49
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1320 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 18:57:20 +00:00
james.goppert
54fa069f10
Fixed include problem in AP_RcChannel.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1316 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 18:50:22 +00:00
jasonshort
55667fd905
removed EEPROMB references
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1315 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 18:42:56 +00:00
jasonshort
7dd1b3cbe7
removed EEPROMB references
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1314 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 18:42:03 +00:00
jasonshort
ef160226cc
cosmetic
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1313 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-28 18:34:55 +00:00
jasonshort
bf3ee6f843
fixed bug
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1304 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 23:03:26 +00:00
james.goppert
6c10842562
Fixed PID error for low pass filter.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1295 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 05:59:49 +00:00
DrZiplok
b90508e777
Retire the old FastSerial code.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1294 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 05:22:15 +00:00
james.goppert
65b7c00689
Fixed comment style for doxygen.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1293 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 04:11:00 +00:00
james.goppert
47d8320e54
Removed version/ timestamps to avoid html mods
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1290 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 03:23:35 +00:00
james.goppert
615bd78fef
Modified doc script.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1289 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 03:07:45 +00:00
james.goppert
23bddca1af
Updated doc script.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1288 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 03:05:41 +00:00
james.goppert
3f0db9c0f0
Updated documentation.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1287 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 02:59:34 +00:00
james.goppert
9ee30a4eee
Modified doc script.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1286 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 02:58:31 +00:00
james.goppert
80a22834af
Removed junk files from doc.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1285 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 02:49:50 +00:00
james.goppert
9770a743d2
Added doxygen doc for library.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1282 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-27 00:59:17 +00:00
james.goppert
e259a22f2f
Internalized APM_RC in AP_RcChannel
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1277 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-26 18:07:08 +00:00
jasonshort
68eec6805a
update use EEPROM class, new scaled input for RC_Channel
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1264 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-26 01:17:04 +00:00
james.goppert
31f33ccfd8
RC_ChannelB rename.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1263 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-25 19:14:47 +00:00
james.goppert
fb6d537156
Fixed comments.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1262 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-25 19:05:35 +00:00
james.goppert
76b4dd5f73
Fixed RC_ChannelB errors.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1261 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-25 19:03:38 +00:00
james.goppert
28a29923e8
Working on RC_ChannelB example.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1260 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-25 16:51:35 +00:00
james.goppert
60f9a6d216
Added AP_Variable.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1259 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-25 07:09:37 +00:00
james.goppert
3ce38444b5
Added alternate RC_Channel class.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1253 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-25 00:06:37 +00:00
james.goppert
8bd5cd041e
Fixed EEProm for new vector style.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1252 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 23:59:52 +00:00
james.goppert
0a4bc9b172
Added Loop class.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1251 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 23:59:10 +00:00
DrZiplok@gmail.com
7e76b64515
Give AP_GPS_None a ctor so that it fits in.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1247 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 19:59:07 +00:00
DrZiplok@gmail.com
8da4a29d58
Add support for the DIYD MTK v1.6 firmware
...
Nuke AP_GPS_IMU, as nothing is using it anymore.
Simplify the handling of no GPS/no fix detection.
Fix prototypes for ::init and ::read.
Update AP_GPS_Auto and corresponding example, nearly ready for primetime.
Use uint8_t rather than byte.
Strip some _error() calls to save space. More could still go.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1246 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 06:35:09 +00:00
james.goppert
f682c4bf32
Added EEProm file.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1245 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 05:29:56 +00:00
james.goppert
9e983c452e
Some EEProm cleanup.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1244 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 05:25:13 +00:00
james.goppert
0344d54d3d
Fixed EEProm set bug.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1243 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 04:25:40 +00:00
james.goppert
8e34d41cce
Improved test program for EEProm, and added sync option, still some issues to work out.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1242 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-24 00:45:16 +00:00
james.goppert
93047fc9dd
Added basic EEPROM library back.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1241 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-23 23:29:59 +00:00
james.goppert
7be8e77711
Removed conflicting AP_EEPROM library.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1240 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-23 23:27:04 +00:00
james.goppert
125b971173
Updated mavlink added eeprom class.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1239 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-23 23:02:51 +00:00
jasonshort
b8ffddb061
EEPROM base class
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1238 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-23 19:35:39 +00:00
rmackay9@yahoo.com
9eb889d30d
AP_RangeFinder - added support for MaxsonarLV and corrected some descriptions and links for the other rangefinders
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1234 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-23 01:23:10 +00:00
jasonshort
f75c7b47ff
minor changes, fixed IMU class
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1225 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-22 03:34:47 +00:00
rmackay9@yahoo.com
c2db64116a
AP_RangeFinder - bug fix for cases when analog value is zero.
...
- addition of filter call which averages the past 4 values
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1224 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-21 12:34:24 +00:00
james.goppert
24bb547eae
Added some functionality to RC_Channel to meet APM needs.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1223 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-21 03:53:26 +00:00
james.goppert
075fb61a92
Added lasttime to GPS HIL.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1216 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-20 06:52:23 +00:00
jasonshort
f544b20747
Mega328 version of APM_RC
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1215 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-20 06:09:15 +00:00
jasonshort
80a5016658
Wasn't compiling.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1213 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-20 02:34:46 +00:00
DrZiplok@gmail.com
290635b354
Minor code size optimisation; use memset to zero *this rather than explicitly assigning zero to the vector elements. Still not quite optimal for matrix3 as it gets three memsets, but still cheaper in terms of code size.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1212 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-20 01:52:23 +00:00
DrZiplok
47bb4d22c6
Use the presence of UDRx as an indication that the serial port x might need to be supported.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1200 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-19 19:57:34 +00:00
james.goppert
dfe94bc77e
Removed delay from MTK library.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1189 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-19 15:34:09 +00:00
james.goppert
aa115aea68
AP_GPS libs now recover from disconnect or failed initialization.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1188 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-19 13:24:29 +00:00
rmackay9@yahoo.com
a257c51a09
Some changes to fix compile errors when using ATmega2560.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1187 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-19 13:05:02 +00:00
jasonshort
82c4815e2c
added direct setting of accel offsets
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1160 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-19 03:21:38 +00:00
rmackay9@yahoo.com
d5cc9946c5
AP_Compass - small change to include file used in example.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1152 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-18 04:48:52 +00:00
rmackay9@yahoo.com
173afc91d1
AP_RangeFinder library. Simple library to support the Sharpe IR range finder and the Maxsonic XL sonar
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1147 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-17 03:01:29 +00:00
DrZiplok@gmail.com
363d9156d1
Change the way that we do board-to-board portability to avoid knowing about specific AVR devices; use the availability of registers/vectors instead. This lets us reduce the overall macro evil as well.
...
Drop some unused, old vector code.
Strip the UDR pointer from the class instance, since it's never used.
Fix up the comment describing RAM savings.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1145 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-16 08:48:20 +00:00
deweibel
1da23bc3c0
Fix bug in transposed DCM matrix accessor
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1134 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-14 18:39:02 +00:00
jasonshort
e194e2fa75
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1118 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-13 04:08:22 +00:00
jasonshort
f64fab442d
added ability to get the integrator for debugging
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1117 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-13 04:05:55 +00:00
jasonshort
7945937874
added ability to get the transpose of the DCM
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1116 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-13 04:01:26 +00:00
jasonshort
e3e8dbb0b3
added ability to zero out the accels
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1115 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-13 03:57:42 +00:00
rmackay9@yahoo.com
abacc627d8
AP_Compass - changed include for AP_Math to use relative path (it was erroring for me at least when compiling ArduCopterNG with AP_Compass)
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1113 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-12 14:02:21 +00:00
rmackay9@yahoo.com
af741882c6
AP_Compass - moved example sketch from APM_Compass to AP_Compass
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1112 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-12 13:13:12 +00:00
james.goppert
9ddeb716c3
Corrected adc conversion.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1109 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-12 07:34:12 +00:00
james.goppert
21634dad19
Added AP_DCM_HIL class.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1103 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-10 10:17:27 +00:00
james.goppert
415786a480
Added airspeed message to mavlink.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1102 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-10 07:26:59 +00:00
james.goppert
c7a8291725
Added --force to svn add on sync script to find new unversioned files.
...
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1098 f9c3cf11-9bcb-44bc-f272-b75c42450872
2010-12-09 06:05:48 +00:00