Andrew Tridgell
41e65c2415
AP_Compass: fixed default orientation for PXF
11 years ago
Randy Mackay
d291594d7c
Compass: get_primary method made public
11 years ago
Randy Mackay
1f579563e6
Compass: set_motor_compensation takes instance as first parameter
...
Also get_motor_compensation uses primary compass
11 years ago
Randy Mackay
bbf4805b0e
Compass: update pixhawk expected device ids
11 years ago
Randy Mackay
a778522cef
Compass: add learn_offsets_enabled accessor method
11 years ago
Randy Mackay
108c878b04
Compass: set_offsets modified to also save offsets
11 years ago
Randy Mackay
124bd4b489
Compass: save_offsets accepts compass instance
11 years ago
Randy Mackay
b7f33d81ad
Compass: add DEV_ID param and configured method
...
These allow checking the offsets were created with the current compass
device.
11 years ago
Andrew Tridgell
c138244155
AP_Compass: support 3 mags on PX4
11 years ago
LukeMike
8f552d5758
VRBRAIN: Changed the management of VirtualRobotix's boards.
11 years ago
Andrew Tridgell
2d9e9d9bc3
AP_Compass: added COMPASS_PRIMARY parameter
...
this allows selection of which compass is the primary. Useful if the
first compass starts giving spurious data (as happened in our plane)
11 years ago
Emile Castelnuovo
1bc199c5bd
AP_Compass: new files and definition for VRBRAIN board
11 years ago
Andrew Tridgell
9bb8f73d56
Compass: split compass learning out to its own C++ file
11 years ago
Andrew Tridgell
c44d8b45ce
AP_Compass: auto-select healthy compass
11 years ago
Andrew Tridgell
61f564d7c9
AP_Compass: support motor compensation for multiple compasses
...
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
11 years ago
Andrew Tridgell
c538816825
AP_Compass: support compass health status on multiple compasses
11 years ago
Andrew Tridgell
bde89fd4e2
AP_Compass: added compass offsets for 2nd compass
11 years ago
Andrew Tridgell
8a97042fb1
AP_Compass: updates to support multiple compasses
11 years ago
Andrew Tridgell
cb16733918
AP_Compass: switched to a vector based interface
...
this is more consistent with other APIs and makes multi-device support
easier
11 years ago
Andrew Tridgell
f286369990
AP_Compass: fixed orientation on Linux
12 years ago
Andrew Tridgell
1243ab9e63
AP_Compass: added HAL_Linux support
12 years ago
Andrew Tridgell
3f0f8dfa62
AP_Compass: removed SMACCM support
12 years ago
Mike McCauley
2fa0c39f3a
AP_Compass: added Flymaple orientation
12 years ago
Andrew Tridgell
fbf79c07f0
AP_Compass: added COMPASS_EXTERNAL option
...
this allows configuring of a compass as being externally attached
12 years ago
Tobias
ab311d1dd4
AP_Compass: removed comparison out of range compiler warning
...
uint_ >= 0 (-Wtype-limits)
12 years ago
Andrew Tridgell
9a87b3f3c1
AP_Compass: use const on more functions and remove old calculate_heading()
...
the calculate_heading() based on roll/pitch is not needed anywhere
12 years ago
Andrew Tridgell
217f34e155
AP_Compass: added COMPASS_ORIENT parameter, to support external compasses
...
this allows the user to configure the compass for any orientation
supported by our rotation library
12 years ago
Andrew Tridgell
26fa5c40f1
Compass: use const references for some functions
12 years ago
Randy Mackay
b8974dec99
Copter: compass learn off by default
12 years ago
Randy Mackay
b48864e1ad
Copter: allow CH6 tuning of compass declination
12 years ago
Randy Mackay
b8d492b504
Compass: current based compensation added
12 years ago
Randy Mackay
e113eb526b
Compass: add get_motor_compensation
...
Remove redundant set_motor_compensation call
12 years ago
Randy Mackay
bfb29ce22b
Compass: remove virtual functions to save RAM
12 years ago
Randy Mackay
d8515ff85e
Compass: basic compensation for motor interference
12 years ago
Andrew Tridgell
60a4447a86
AP_Compass: added set_board_orientation() method
12 years ago
Andrew Tridgell
741174f5d5
AP_Compass: first cut at a PX4 compass driver
12 years ago
Pat Hickey
3f1d9d7f69
AP_Param: #include <AP_Param.h> fixups for libraries & sketches
...
* I mostly went through with grep and added an #include <AP_Param.h> below
every #include <AP_Common.h>. Not all of these example sketches might
strictly need AP_Param.
12 years ago
Andrew Tridgell
6922dcdea2
Compass: added compass.accumulate() API
...
this allows us to accumulate mag readings using spare CPU cycles
13 years ago
uncrustify
04e48ef878
uncrustify libraries/AP_Compass/Compass.h
13 years ago
rmackay9
71f12fbc9b
AP_Compass: replace "long" with "int32_t"
13 years ago
Andrew Tridgell
e4d28b12e5
Compass: remove the need to call calculate() on the compass object
...
the new AHRS code doesn't use calculate() and the compass.heading
attribute. Instead it works on the raw magnetometer vector. This
change removes the internal calculate state from the compass object
and instead adds calculate_heading() for use by older code that
doesn't go via AHRS.
This significantly reduces the calculation involved in compass updates
The null offsets enable/disable code is also removed, as it is not
needed now that compass offsets are not linked to the AHRS state.
13 years ago
Andrew Tridgell
504c53f746
Compass: added COMPASS_AUTODEC option
...
when this is 1 (which is the default), we will get the declination
automatically via the AP_Declination library
when it is 0 we will use the value configured by the user
13 years ago
Andrew Tridgell
16deefce31
Compass: fixed a comment
13 years ago
Andrew Tridgell
b2d6db9479
Compass: implement noise resistant varient of offset learning
...
This adds a large amount of noise robustness to the compass offset
learning algorithm, at a cost of 120 bytes of memory. The changes are
based on a long discussion with Bill Premerlani.
13 years ago
Andrew Tridgell
a72d4b46b3
Compass: implement Bills new offset nulling algorithm
...
this seems to work much better than the old algorithm, converging
faster and more accurately. Even better, it has no linkage to DCM, so
no possibility of nasty feedback effects
13 years ago
Adam M Rivera
fe8c896d69
AP_Declination: Added method set_initial_location
...
This will set the declination based on lat/lon if the user has
not yet saved one to the EEPROM, OR if they have specified via the
config parameter that they want it to overwrite the declination every
3D fix.
Signed-off-by: Andrew Tridgell <tridge@samba.org>
13 years ago
Andrew Tridgell
d10c4b76ad
Compass: removed an incorrect comment
13 years ago
Andrew Tridgell
0da64e98f8
Compass: don't save the orientation to EEPROM
...
there is no point in saving this, the value is only configurable at
compile time for now, and is always set
13 years ago
Andrew Tridgell
cb96dd975f
Compass: update the compass driver to use the new vector.rotate() method
13 years ago
Andrew Tridgell
664622523d
Compass: added COMPASS_LEARN and COMPASS_USE parameters
...
these allow you to control if the compass should be used for yaw and
if it should learn its offsets. This is useful for locking in compass
offsets once they are confirmed to be good, and for learning offsets
without using them in flights.
The default is to behave the same as previously, which is
COMPASS_LEARN=1 and COMPASS_USE=1
13 years ago