Andrew Tridgell
0e32c047c3
AP_Compass: allow for COMPASS_EXTERNAL=2 for forced external
...
this allows users with unusual compass bus connections to force the
compass to external
2016-05-01 10:54:46 +10:00
Andrew Tridgell
ed999a283f
AP_Compass: added get_learn_type() API
...
this allows caller to determine if EKF offsets should be saved
2016-04-30 16:43:14 +10:00
mirkix
3df5a02448
AP_Compass: Add HMC5843 and second AK8963 autodetection to BBBmini
2016-04-24 10:57:57 -03:00
Randy Mackay
4aba25d2ef
AP_Compass_AK8963: remove unused _bus_sem, _last_accum_time
...
Resolves a compiler warning
2016-04-23 23:06:21 -07:00
Lucas De Marchi
46936767c1
AP_Compass: LSM303D: check for overruns in compass values
2016-03-23 17:50:38 -03:00
Lucas De Marchi
cf2d866d51
AP_Compass: LSM303D: used AP_HAL::Device interface
...
Initialization was also changed a little bit so we don't try to
initialize 25 times. We rather use the same methods as in the
AP_InertialSensor drivers.
Also move up the call to is_zero() in read_raw so we don't set
_mag_[x|y|z] in case of failure.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
5164fbb81b
AP_Compass: LSM303D: cleanup driver
...
Make it similar to other compass drivers, including method names.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
20a4a42cb3
AP_Compass: don't store raw and unfiltered fields
...
These are not used. The only place where raw fields are used are in the
compass calibrator and we don't need to store them.
Additionally remove duplicated documentation about the meaning of the
functions to avoid them getting out of sync.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
e6059f5197
AP_Compass: rename files to follow other libraries
...
AP_Compass.h is the main header to be exported and AP_Compass.cpp its
implementation. There's no need for an additional header.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
286697b844
AP_Compass: don't rebuild tree when single driver changes
...
Let the drivers be internal to the library so we don't need to rebuild
the entire tree when a single driver changes.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
d3831dbb98
AP_Compass: AK8963: use AP_HAL::I2CDevice abstraction
...
We still need the BusDriver (in some places called SerialBus) interface
since this driver can also be used on an AuxiliaryBus and that has a
different interface.
2016-03-23 17:50:38 -03:00
Lucas De Marchi
41c1209169
AP_Compass: HMC5843: improve readability
...
- Capitalize and rename constants
- Make clear what gain is applied in calibration and what is the
"normal" gain
- Make the separation between HMC5883L and HMC5843 explicit when it
makes sense to improve readability
- Remove spurious delay in calibrate function
2016-03-23 17:50:38 -03:00
Lucas De Marchi
0291ad869b
AP_Compass: HMC5843: use AP_HAL::I2CDevice abstraction
...
We still need the BusDriver (in some places called SerialBus) interface
since this driver can also be used on an AuxiliaryBus and that has a
different interface.
Besides the usual conversion some more improvements:
- Use generic function to convert endianness
- Minor cleanups
- Reorder per-board ifdefs in compass instantiation: distinguish when
there's a default compass to when it should probe other compasses
2016-03-23 17:50:38 -03:00
Lucas De Marchi
abbe419823
AP_Compass: fix mismatched tag
...
In file included from /home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/Compass.h:6:
/home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/CompassCalibrator.h:86:5: warning: struct 'param_t' was previously declared as a class [-Wmismatched-tags]
struct param_t _params;
^
/home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/CompassCalibrator.h:44:11: note: previous use is here
class param_t {
^
/home/lucas/p/dronecode/ardupilot/libraries/AP_Compass/CompassCalibrator.h:86:5: note: did you mean class here?
struct param_t _params;
^~~~~~
2016-03-18 22:39:39 -03:00
Lucas De Marchi
d5d6a10e63
AP_Compass: LSM303D now is part of LSM9DS0
2016-03-18 21:51:37 -03:00
Lucas De Marchi
a671b7f5b2
AP_Compass: remove misleading message
...
Not having data ready during initialization is normal. Don't print error
message since it can mislead people to think the compass was not
initialized successfully.
2016-03-18 21:51:37 -03:00
Lucas De Marchi
d8eb0d401d
AP_Compass: fix missing rename
...
cb8355c
(AP_HAL: fix compass define for bebop) renamed the constant in
AP_HAL but not in AP_Compass.
2016-03-17 11:49:38 -03:00
Lucas De Marchi
b3d26c5988
AP_Compass: remove trailing whitespaces in header
2016-03-17 02:57:05 -03:00
Gustavo Jose de Sousa
e5de4f2348
AP_Compass: AP_Compass_test: code enhancements
...
- Use panic() instead of looping forever.
- Readability improvement with the use of MAX() and MIN().
2016-03-09 10:12:14 -03:00
Gustavo Jose de Sousa
a61f9855d3
AP_Compass: AP_Compass_test: report multiple compasses
...
Report data from all available compasses, not just the primary one.
2016-03-09 10:12:10 -03:00
Gustavo Jose de Sousa
16acca865f
AP_Compass: AP_Compass_test: fix style
...
Used uncrustify and some manual changes.
2016-03-09 10:12:05 -03:00
Gustavo Jose de Sousa
0efbe8c80c
AP_Compass: allow calling calculate_heading() for different instances
2016-03-09 10:12:00 -03:00
Lucas De Marchi
71eefdfd2c
AP_Compass: remove trailing whitespaces
2016-03-07 14:49:35 -03:00
Lucas De Marchi
a46ca4c810
AP_Compass: HMC5883: reorganize header
2016-03-07 14:49:35 -03:00
dgrat
5148e41c1a
AP_Math: Cleaned macro definitions
...
Moved Definitions into a separate header. Replaced PI with M_PI and
removed the M_PI_*_F macros.
2016-02-27 02:51:33 -03:00
Lucas De Marchi
1a71c169fe
AP_Compass: replace header guard with pragma once
2016-02-18 14:52:34 -02:00
Lucas De Marchi
02a7fa5c2b
AP_InertialSensor: MPU9250: use AP_HAL::Device abstraction
...
This makes MPU9250 be almost the same as MPU6000 driver. Work has been
done here to make than similar so it's easier to spot the differences.
2016-02-16 19:49:09 -02:00
Lucas De Marchi
b55294920b
AP_Compass: AK8963: remove logging on fail to get semaphore
...
This is the only driver doing this, using the system_initializing() from
scheduler to log selectively. Remove the check together with removal of
unused wrapper methods to semaphore.
2016-02-08 13:28:32 -02:00
Gustavo Jose de Sousa
c2e3f05dbf
waf: ardupilotwaf: prefix build context methods with ap_
...
It helps to distinguish between things from waf and things from ardupilotwaf.
2016-01-22 20:10:29 -02:00
Gustavo Jose de Sousa
3d22490397
waf: examples: use methods from bld instead of ardupilotwaf
2016-01-22 20:10:29 -02:00
Víctor Mayoral Vilches
5d28fbfa1b
Compass: Erle-Brain 2 and PXFmini fix
2016-01-18 23:59:25 -02:00
Julien BERAUD
45d668df47
AP_Compass_AK8963: support for timesliced timers
...
fallback in case the current scheduler doesn't support it
2016-01-18 16:57:48 -02:00
Gustavo Jose de Sousa
d281067bcc
waf: make example binaries be placed in 'examples' dir
...
This commit makes examples' wscripts use ardupilotwaf.example() instead of
ardupilot.program().
2016-01-15 16:46:41 -02:00
Jonathan Challinger
9b5644fdb6
AP_Compass: fix example build
2015-12-29 10:46:35 -08:00
Lucas De Marchi
a096703b06
Global: don't link with AP_Progmem
...
AP_Progmem is not used anymore.
2015-12-27 15:58:12 -02:00
Andrew Tridgell
493ab96b29
AP_Compass: added QURT driver
2015-12-27 16:21:26 +11:00
Andrew Tridgell
3b546bb242
AP_Compass: added qflight driver
2015-12-27 16:12:27 +11:00
Lucas De Marchi
766252cd87
AP_Compass: don't use ternary operator in place of if/else
2015-12-21 15:54:30 +11:00
Aaron Wang Shi
5a085b1610
AP_Compass: add support to BH hat
2015-12-21 15:54:30 +11:00
Tom Pittenger
0aa0380db8
AP_Compass: compiler warnings - float to float compare and bool cast
2015-12-07 15:49:58 +09:00
Lucas De Marchi
0bcbcd07cc
AP_Compass: remove unused AP_ADC_AnalogSource
2015-12-03 13:32:42 +11:00
Caio Marcelo de Oliveira Filho
6e7b73610d
waf: add waf support
2015-12-03 07:54:30 +11:00
Caio Marcelo de Oliveira Filho
cd7cfdef91
AP_Compass: examples use millis/micros/panic functions
2015-11-20 12:30:20 +09:00
Caio Marcelo de Oliveira Filho
86954cda0e
AP_CompassCalibrator: use millis/micros/panic functions
2015-11-20 12:30:14 +09:00
Caio Marcelo de Oliveira Filho
0d3fbbdd37
AP_Compass: use millis/micros/panic functions
2015-11-20 12:30:05 +09:00
Andrew Tridgell
8f4ce7f20b
build: removed all nocore.inoflag files
...
these were APM2 specific
2015-11-16 08:05:17 +11:00
José Roberto de Souza
17e105640e
AP_InertialSensor: Add HAL_COMPASS_AK8963_MPU9250_I2C to _detect_backends()
2015-11-11 14:29:07 +11:00
José Roberto de Souza
bdc36349b4
AP_Compass: AK8963: Add support to use a AK8963 behind of a MPU9250 over I2C
...
To be able to use AK8963 connected to the auxiliary I2C bus of a
MPU9250 we need first initialize it.
2015-11-11 14:29:07 +11:00
José Roberto de Souza
1fc29a2654
AP_Compass: AK8963: Use MPU9250 auxiliary bus
2015-11-11 14:29:06 +11:00
Paul Riseborough
6698d4379d
AP_Compass: Enable usec timestamps to be retrieved for specified instance
2015-11-09 22:07:10 +11:00