Lucas De Marchi
28d3d775a4
AP_Compass: AK8963: remove resolution member
...
We only use the highest one and there's no intention to support the
14bits one. Just use the define rather than saving it as a member.
2015-07-23 17:44:34 +10:00
Lucas De Marchi
86b3312112
AP_Compass: AK8963: factor out common code of read_raw()
...
Similar code was added in the read_raw() implementation for each bus.
Add a new POD struct read_raw to contain the registers from the AK8963
and use it instead as argument.
2015-07-23 17:44:33 +10:00
dgrat
d941174978
AP_Compass: AK8963: enhance the readability
...
Reduce the deepness of indentation and fix coding style.
2015-07-23 17:44:33 +10:00
Julien BERAUD
51c3c499e2
AP_Compass: support AK8963 on I2C
2015-07-10 16:46:30 +10:00
Julien BERAUD
0b41da0dea
AP_Compass: rework to make the bus generic for AK8963
...
Supporting only MPU9250, prepare to implement another bus, i.e i2c on the
bebop
2015-07-10 16:46:29 +10:00
Julien BERAUD
0cd584c293
AP_Compass: fix rotation for bebop AK8963
...
Set the correct rotation for bebop
2015-07-10 16:46:29 +10:00
Andrew Tridgell
c83d5b1f08
AP_Compass: only build AK8963 driver on Linux
...
must match MPU9250 build
2015-07-09 11:57:27 +10:00
Randy Mackay
d192b3ccea
Compass: set device id for ak8963 and hmc5843
2015-07-06 21:04:46 +09:00
Lucas De Marchi
1deb837e70
AP_Compass: Use common function in MPU9250 for initialization
2015-07-06 10:48:07 +10:00
Staroselskii Georgii
7a417d1151
AP_Compass: AK8963 rework
...
Got rid of extra abstraction layer. There is no need for that now.
2015-07-06 10:48:06 +10:00
Andrew Tridgell
5b0394eb05
AP_Compass: start MPU9250 driver at low speed
...
this raises the chances of successful init of the MPU9250
2015-07-02 08:48:06 +10:00
Lucas De Marchi
95627cf412
AP_Compass: use functor macros
...
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:52 +10:00
Andrew Tridgell
015fce5183
AP_Compass: revert AP_Math class change
2015-05-05 13:27:06 +10:00
Tom Pittenger
ad11a57f57
AP_Compass: compiler warnings: apply is_zero(float) or is_equal(float)
2015-05-05 13:26:51 +10:00
Andrew Tridgell
be3d6c924e
AP_Compass: rename enum values to avoid header conflicts for 'ERROR'
2015-05-05 09:45:53 +10:00
Lucas De Marchi
996739df12
AP_Compass: Do not panic if compass is not found
...
Copter uses 2 compasses for linux configuration, but one of them may not
be available. Do not panic if a AK8963 isn't found.
2015-04-14 09:29:12 +10:00
Andrew Tridgell
7b51c907f5
AP_Compass: zero some more variables in constructor and init
2015-03-13 19:22:11 +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
Grant Morphett
52c5db8440
AP_Compass: Changes to fix the warnings in rover sitl build.
...
We are starting the process of resolving all the warnings in the
ardupilot builds of all vehicles and platforms.
2015-02-11 18:16:45 +11:00
Staroselskii Georgii
c16eb5d330
AP_Compass: fixed corrections for AK8963
2015-01-09 06:38:22 +11:00
Staroselskii Georgii
4394f0cf75
AP_Compass: fixed external compass detection for AK8963
2015-01-09 06:38:22 +11:00
Staroselskii Georgii
f0753e965e
AP_Compass: eliminated possible division by zero in AK8963
2015-01-09 06:38:22 +11:00
Andrew Tridgell
9835544163
AP_Compass: fixed build on non-Linux platforms
2015-01-07 08:41:14 +11:00
Staroselskii Georgii
0d1cf347c7
AP_Compass: added AK8963 support
2015-01-07 08:41:12 +11:00