Commit Graph

644 Commits

Author SHA1 Message Date
mandrolic a20390ebb3 Configurator.Net: Transmitter Calibration - Max/Min watermarks for indicator controls
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1580 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-30 21:49:14 +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
jasonshort 4dcc1a905d FBW bug fixes
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1576 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-30 02:36:03 +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
jasonshort c7f162ed51 New feature prevents startup of motors.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1574 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-29 22:03:50 +00:00
mandrolic bb32628194 Configurator.Net: Added visual indication of origin for gyro/accel indicators
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1573 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-29 09:07:42 +00:00
jasonshort 4cf16f67c4 fixed Current logging output.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1572 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-29 05:55:23 +00:00
jasonshort 70f11ef88d fixed PM logging rate.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1571 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-29 04:58:31 +00:00
levinemax@gmail.com b3334b71bd small fix
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1570 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-28 18:26:17 +00:00
jasonshort 1c9a53ec81 upped the camera behavior for Max
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1569 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-28 05:39:17 +00:00
jasonshort 42c7423802 upped the threshold PWM for Max
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1568 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-28 05:38:26 +00:00
jasonshort f57887ee4a adjust tri frame output to not output 4th motor
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1567 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-28 05:36:33 +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
mandrolic bf3b5c2f7c Configurator.Net: Mono tweaks, Port list is populated on startup
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1565 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-27 15:58:32 +00:00
mandrolic cedcd47073 Configurator.Net: More tweaks for Mono
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1562 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-26 21:17:44 +00:00
jasonshort 0b2008f581 removed debugging
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1561 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-26 17:22:39 +00:00
jasonshort e6fe75c9aa fixed FBW bugs
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1560 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-26 07:14:54 +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
mandrolic 557b5c7615 Configurator.Net:
Added new indicator control that is purely drawn, rather than using a progress bar (Mono issues)
Removed old controls based on the winforms progress bar
Started adding some hacks to work around Mono binding bugs


git-svn-id: https://arducopter.googlecode.com/svn/trunk@1558 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-25 21:47:18 +00:00
jasonshort 4c8c09edac added instructions for Acro setting
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1557 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-25 06:28:34 +00:00
jasonshort e977116f9b new rate control, FBW fixes, new safety.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1556 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-25 05:53:36 +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
jasonshort d905bbc551 removed counteri - is moved to a static var in motors.pde
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1552 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 02:05:27 +00:00
jasonshort 3a385e3170 Moved output to motors.pde
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1551 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 02:04:44 +00:00
jasonshort cc540ae730 fixed imax scaling bug
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1550 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 01:58:04 +00:00
jasonshort a32c082777 better default config
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1549 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 01:57:31 +00:00
jasonshort 9d5937db52 improved throttle PIDs
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1548 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-24 01:55:19 +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
jphelirc e449757510 hexa frame setp
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1536 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 16:40:03 +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
jasonshort 8901d8a238 Added Arming light. LED A solid = safe, blinking = armed.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1529 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 02:36:22 +00:00
jasonshort b912b7e0eb altitude was set to sonar pid rather than baro pid
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1528 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 02:09:54 +00:00
jasonshort b830afd678 was adding throttle cruise twice.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1527 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 02:08:46 +00:00
jasonshort aaa19ebbfc Added ability to exit the GPS test loop.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1526 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 02:07:21 +00:00
jasonshort 09df4b35ea updated and tested the auto-trim mode of the accell offsets. Works great, although it's slow, only .6° a second.
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1525 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-23 00:35:51 +00:00
jasonshort 7205208801 Added failsafe radio test!
git-svn-id: https://arducopter.googlecode.com/svn/trunk@1524 f9c3cf11-9bcb-44bc-f272-b75c42450872
2011-01-22 20:25:14 +00:00