Gustavo Jose de Sousa
0caaef7394
AP_Compass: mention mag field unit in existing documentation
...
We are now always using milligauss for mag field unit, so let's update
documentation accordingly.
2015-10-15 19:56:15 +09:00
Gustavo Jose de Sousa
9927cf066f
AP_Compass: remove use of milligauss_ratio
...
Now, we have all current compasses publishing their values already in
milligauss, so there's no need for that variable anymore.
2015-10-15 19:56:14 +09:00
Gustavo Jose de Sousa
88a1a928e9
AP_Compass: remove get_{field,offsets}_milligauss() functions
...
Those functions are not being used anymore.
2015-10-15 19:56:09 +09:00
Gustavo Jose de Sousa
4375606eeb
AP_Compass: make get_field() and get_offsets() return milligauss
...
This is part of a transition to make AP_Compass always use a single unit for
magnetic field values, namely milligauss.
2015-10-15 19:55:59 +09:00
Randy Mackay
fff5ec09eb
AP_Compass: fix consistent check for less than three compasses
...
Also use vector functions where available
Use get_field_milligause instead of just get_field
2015-09-16 15:11:01 +09:00
Jonathan Challinger
87bbf1a487
AP_Compass: add consistent() function
2015-09-16 15:10:27 +09:00
Julien BERAUD
5602e4055b
AP_Compass_AK8963: Fix Rotation on the Bebop
2015-09-15 14:45:17 +09:00
Andrew Tridgell
fa9ff5b604
AP_Compass: added parameter for compass calibration fitness threshold
2015-09-14 17:01:14 +10:00
raspilot
19b4f5559a
AP_Compass: added LSM303D driver
2015-09-14 14:22:15 +10:00
Andrew Tridgell
c59bdc12df
AP_Compass: fix the milligauss handling
...
the previous approach assumed a 1:1 mapping between compass backends
and compass instances, which isn't true on PX4.
It also only setup milligauss offsets on a set_and_save call, which is
not the only way offsets change
this adds a milligauss_ratio per instance, which is considerably
simpler
2015-09-09 14:53:11 +10:00
Staroselskii Georgii
bd7c313bee
AP_Compass: fixed Compass::get_raw_field()
...
It seems as if it were a copy-paste error. A statis analyzer would
definetely be angry.
2015-09-09 10:38:17 +10:00
Staroselskii Georgii
c207d8c6a8
AP_Compass: add milligauss counterparts to get_field() and get_offsets()
...
From now on there's a pair get_field_milligauss() and
get_offsets_milligauss() that can make the transition to the common
units across all compasses easier.
2015-09-09 10:38:16 +10:00
Andrew Tridgell
f4cdf57d8f
AP_Compass: added handling of compass calibration mavlink messages
2015-09-03 16:59:14 +10:00
Siddharth Bharat Purohit
6a603eb594
Compass_cal: implement the concept of auto and mandatory user reboot after cal
2015-09-03 16:59:13 +10:00
Gustavo Jose de Sousa
46774136a6
AP_Compass: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-09-03 16:59:13 +10:00
Jonathan Challinger
cc36401b7c
AP_Compass: add calibration interface
2015-09-03 16:59:11 +10:00
Jonathan Challinger
f20ef69777
Compass: add soft-iron corrections
2015-09-03 16:59:09 +10:00
Jonathan Challinger
b990eaed68
AP_Compass: add interface for raw and unfiltered field
2015-09-03 16:59:09 +10:00
Lucas De Marchi
d92c2ac9f5
AP_Compass: pass backend instead of pointer to function
...
Just like was done for inertial sensor, different detect() functions
might need different arguments and passing a pointer to function here is
cumbersome. For example, it forces to have a method like "detect_i2c2"
rather than allowing hal.i2c2 to be passed as parameter.
2015-08-28 12:39:08 +10:00
Gustavo Jose de Sousa
58f300e78e
AP_Compass: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:28:42 +10:00
Randy Mackay
cedc9a8670
Compass: add last_update_usec per instance
2015-07-17 10:02:41 +09:00
Julien BERAUD
51c3c499e2
AP_Compass: support AK8963 on I2C
2015-07-10 16:46:30 +10:00
Andrew Tridgell
91b4ba3588
AP_Compass: allow for more than one compass in HIL/SITL
2015-05-15 14:25:44 +10:00
Andrew Tridgell
1962706a33
AP_Compass: fixed last_update, using last_update_usec()
...
this broke use of compass in the EKF
2015-03-14 12:31:23 +11:00
Andrew Tridgell
86fc90f54c
AP_Compass: removed spurious rotation in PX4 backend
...
and cleanup rotation macros
2015-03-14 08:52:37 +11:00
Andrew Tridgell
fec2025469
AP_Compass: added set_hil_mode()
2015-03-13 22:52:55 +11:00
Andrew Tridgell
4bc92b6373
AP_Compass: removed _product_id var
2015-03-13 18:59:52 +11:00
Andrew Tridgell
0efd3bacea
AP_Compass: make new backend match old PX4 behaviour
...
when a compass is internal only apply board orientation, not user
specified rotation
2015-03-13 18:46:15 +11:00
Andrew Tridgell
a871c87cad
AP_Compass: use state array for compass variables
2015-03-13 18:46:15 +11:00
Víctor Mayoral Vilches
13f0aa5ecd
AP_Compass: Separate common code into backend
...
_copy_to_frontend function takes care of abstracting
this code from the driver. For now the function takes
care of the offset and rotation that is common.
2015-03-13 18:46:15 +11:00
Víctor Mayoral Vilches
d3b76cd8d3
AP_Compass: split compass into frontend/backend
2015-03-13 18:46:15 +11:00
Staroselskii Georgii
b804430276
AP_Compass: changed default orientation for AK8963 on Navio
2015-01-09 06:38:22 +11:00
Staroselskii Georgii
0d1cf347c7
AP_Compass: added AK8963 support
2015-01-07 08:41:12 +11:00
Jonathan Challinger
9054dd3f9a
AP_Compass: use apply_correction_function to eliminate duplication
2014-10-19 17:02:45 +11:00
Andrew Tridgell
b437977547
AP_Compass: added set_offsets() interface
...
this will be used by Replay to prevent the need for saving parameters
2014-10-15 09:16:31 +11:00
Randy Mackay
023b6afe8b
Compass: add ORIENT2 and EXTERNAL2 params
2014-10-01 13:02:03 +10:00
Randy Mackay
798cc36e64
Compass: use_for_yaw for each compass
2014-10-01 13:02:02 +10:00
Randy Mackay
84d792216e
Compass: use_for_yaw to use primary compass health
...
This allows the internal compass to be used if the external compass
fails.
2014-10-01 13:02:02 +10:00
Randy Mackay
c2c5807ec7
Compass: always default devid to zero
2014-09-23 20:35:18 +09:00
Andrew Tridgell
41e65c2415
AP_Compass: fixed default orientation for PXF
2014-08-19 10:08:17 +10:00
Randy Mackay
d291594d7c
Compass: get_primary method made public
2014-07-22 22:01:09 +09:00
Randy Mackay
1f579563e6
Compass: set_motor_compensation takes instance as first parameter
...
Also get_motor_compensation uses primary compass
2014-07-22 21:59:04 +09:00
Randy Mackay
bbf4805b0e
Compass: update pixhawk expected device ids
2014-07-11 11:10:18 +09:00
Randy Mackay
a778522cef
Compass: add learn_offsets_enabled accessor method
2014-07-10 20:25:11 +09:00
Randy Mackay
108c878b04
Compass: set_offsets modified to also save offsets
2014-07-10 20:25:08 +09:00
Randy Mackay
124bd4b489
Compass: save_offsets accepts compass instance
2014-07-10 20:25:05 +09:00
Randy Mackay
b7f33d81ad
Compass: add DEV_ID param and configured method
...
These allow checking the offsets were created with the current compass
device.
2014-07-10 20:24:44 +09:00
Andrew Tridgell
c138244155
AP_Compass: support 3 mags on PX4
2014-07-04 12:07:47 +10:00
LukeMike
8f552d5758
VRBRAIN: Changed the management of VirtualRobotix's boards.
2014-06-19 11:27:38 +02:00
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)
2014-05-25 22:03:44 +10:00