Commit Graph

200 Commits

Author SHA1 Message Date
Andrew Tridgell
37f652e19b AP_Common: fixed some duplicate product ID warnings 2012-05-17 23:37:32 +10:00
Craig Elder
fe742f1c23 IMU: expose IMU_PRODUCT_ID as EEPROM Variable
this will allow us to log the Product ID in tlogs
2012-05-09 18:30:36 -07:00
Craig Elder
a22b15adf1 PRODUCT: Define product IDs for all supported products 2012-05-09 18:30:36 -07:00
Andrew Tridgell
3177f57d48 build: cope with Arduino 1.0 in command line build
this should autodetect 1.0 versus older builds
2012-04-27 15:38:42 +10:00
Amilcar Lucas
a203282779 correct small typos in comments 2012-03-11 21:30:09 +01:00
Andrew Tridgell
f1a389fe19 AP_Param: ensure we can't have duplicate keys in Parameters.h
this is O(n^2), but only at startup, and takes less than 1ms to run.
It catches a very nasty coding error
2012-03-02 15:48:28 +11:00
Pat Hickey
8fa559930f AP_Param: nested group recursion into next_group disableable by macro
* c.f. 0251932c81fe7eb, e5515bb6ef82
2012-02-29 19:48:43 -08:00
Pat Hickey
8b3d013294 AP_Param: One more nexted group recursion disableable by macro
* c.f. e5515bb6ef82
2012-02-29 18:48:54 -08:00
Pat Hickey
42078f2794 AP_Param: Make nested group recursion disableable by macro
* Eliminates recursive calls inside AP_Param.
  This is important to Pat @ Galois, but not the project in general.
  Recursion depth on these functions is bounded structurally using
  existing nested group constructors (can't create loops in finite space)
  and checked at init time
2012-02-28 16:28:27 -08:00
Andrew Tridgell
078268528e AP_Param: show numerical value in eeprom dump utility 2012-02-28 09:43:49 +11:00
Andrew Tridgell
701da6c30f AP_Param: fixed v.load() on a sub-element of a AP_Vector3f
this isn't actually used at the moment in APM, but we should get it
right in case someone does try to load a single element of a vector
2012-02-28 09:43:49 +11:00
Andrew Tridgell
ac44b73951 AP_Param: fixed setting of CAM_P_G in ArduCopter
the variable CAM_P_G has the same prefix as the CAM_P group. We want
to allow for parameters having a common prefix with a group, so we
need to keep searching after we've found a group that matches the
prefix
2012-02-27 10:54:33 +11:00
Andrew Tridgell
7fe4a41c31 AP_Param: make the templating code a bit clearer
add comments on the arguments, and name them in a clearer way
2012-02-27 10:54:33 +11:00
Andrew Tridgell
051bd78b37 AP_Param: added some comments on AP_Vector3f handling 2012-02-25 11:37:20 +11:00
Andrew Tridgell
007a6b8958 AP_Param: added special handling for Vector3f
We would like to be able to use Vector3f as a parameter while exposing
the individual elements of the vector as MAVLink parameters. This
change to AP_Param makes that possible, by giving AP_Vector3f a dual
personality
2012-02-25 11:37:20 +11:00
Andrew Tridgell
f30c721886 AP_Param: added ParamToken type for variable list traversal 2012-02-19 17:05:28 +11:00
Andrew Tridgell
2b8f0c3a48 AP_Param: moved AP_Vector3f and AP_Matrix3f declarations to AP_Math.h
this avoids us needing AP_Math.h in every utility sketch and example
2012-02-18 10:51:57 +11:00
Andrew Tridgell
70a135c47c AP_Param: fixed copy-assignment operators for AP_Param vectors 2012-02-18 10:51:57 +11:00
Andrew Tridgell
e656928c01 AP_Param: added a set_and_save_ifchanged() method
this can be used to avoid the scan() in more frequenctly saved
variables, such as the MAVLink stream rates in APM
2012-02-18 10:51:57 +11:00
Andrew Tridgell
6f080742b8 AP_Param: added an initialised() method
this will be used by the compass code
2012-02-18 10:51:57 +11:00
Michael Oborne
b020a87c13 eedump ap param in perl 2012-02-15 21:31:58 +08:00
Andrew Tridgell
7d21692301 fixed dump size 2012-02-15 10:44:09 +11:00
Andrew Tridgell
d2cc6740f0 show group_element too 2012-02-15 10:42:21 +11:00
Andrew Tridgell
aaba4db144 AP_Param: added eeprom_aaparam.c dump utility 2012-02-15 10:41:06 +11:00
Andrew Tridgell
7355f5613c added SITL_debug() macro
this can be used to print a message into the logs in the SITL
simulator. This will be used for critical conditions.
2012-02-15 08:50:45 +11:00
Andrew Tridgell
6c20ff9492 AP_Param: allow dumping of AP_Vector3f
this means the 'show' command in the CLI shows the compass offsets now
2012-02-14 08:34:50 +11:00
Andrew Tridgell
550b0be231 move AP_Var code and example into libraries/AP_Var
you can use AP_Var by defining USE_AP_VAR
2012-02-13 16:22:53 +11:00
Andrew Tridgell
16a5b5c3ee added AP_Param::show_all()
this moves the logic into common code
2012-02-13 16:22:52 +11:00
Andrew Tridgell
ee2cb32a44 change back to 256 max variables in _var_info[]
this keeps the header to 24 bits, and allows the token to be 16
bits. If we need more variables we can put them in a nested group.
2012-02-13 16:22:52 +11:00
Andrew Tridgell
7621b96a52 AP_Param: added group idx, and change packing of header elements
adding a idx element to the GroupInfo will make it less likely that a
developer will change the IDs of group elements, and make it easier to
see that these IDs are important for identifying a variable in EEPROM

The header packing has changed to make it 24 bits on all platforms,
which allows us to lower the EEPROM variable max size to 1024 bytes
again
2012-02-13 16:22:52 +11:00
Andrew Tridgell
711cee9dfa fixed support for AP_PARAM_SPARE
spare group elements are needed if we remove a group parameter
2012-02-13 16:22:52 +11:00
Andrew Tridgell
db8a58f994 fixed build on arduino 1.0 2012-02-13 16:22:52 +11:00
Andrew Tridgell
244d2055ff AP_Param: fixed desktop build 2012-02-13 16:22:51 +11:00
Andrew Tridgell
34bc88eab5 AP_Param: added generic cast_to_float 2012-02-13 16:22:51 +11:00
Andrew Tridgell
a1057fe738 AP_Param: disable debug ready for production 2012-02-13 16:22:51 +11:00
Andrew Tridgell
7ffb9b462d AP_Param: make ptype in first() and next() optional 2012-02-13 16:22:51 +11:00
Andrew Tridgell
b6ee5ca982 added nested group support and validation 2012-02-13 16:22:51 +11:00
Andrew Tridgell
30c76664ce added size of Vector6f 2012-02-13 16:22:51 +11:00
Andrew Tridgell
2154288e2b hacks to get AP_Param to compile 2012-02-13 16:22:50 +11:00
Andrew Tridgell
937f8a4741 new AP_Param subsystem 2012-02-13 16:22:50 +11:00
Randy Mackay
98f3386ea0 Arduino 1.0 - changed all #includes of "WProgram.h", "wiring.h" and "WConstants.h to "Arduino.h".
Modified FastSerial's write function to return size_t (number of bytes written).
2012-01-28 12:25:47 +09:00
Mike Smith
d79f62ce66 Teach the Makefile about the new Arduino sourcefile suffix 2012-01-15 11:51:38 -08:00
Jason Short
f43c29e840 fixed type error 2012-01-10 23:43:44 -08:00
Michael Oborne
3848f2094e make file relax 2011-12-17 20:42:51 +08:00
Michael Oborne
fd35ba5976 add relax 2011-12-17 16:53:14 +08:00
Doug Weibel
e965d95ba8 Added back the feature to prompt users when an invalid CLI command is entered.
Thanks to Yury Smirnov for this patch!
2011-11-26 21:10:53 -07:00
Andrew Tridgell
e2e613cdfc upload: force hex file format for upload
this should fix a problem with hex file format detection on MacOS
2011-11-27 09:36:10 +11:00
Andrew Tridgell
e9c7f8de21 AP_Common: added typesafe wrapper for memcpy_P() 2011-11-26 17:17:50 +11:00
Andrew Tridgell
57c4385a18 AP_Common: replace strlcat_P() with a C implementation
the one in the Arduino libc was giving us bogus results on one
machine, and is suspect. We couldn't spot what is wrong in the
assembler, but replacing the implementation with a C one fixes the
bug, so we replaced it
2011-11-26 17:02:56 +11:00
Andrew Tridgell
3b5c124fc6 make configure default to 2560
1280 is less common for devs these days
2011-11-25 20:00:17 -08:00