Willian Galvani
4c756fd7ef
AP_Compass: update MMMC5XX3 driver to support only mmc5983
...
Registers changed
Product ID changed
Data is now Big endian
Results are now 18 bits instead of 16, but we only consume 16.
Added SPI support
Co-authored-by: Patrick Pereira <patrickelectric@gmail.com>
Co-authored-by: Jacob Walser <jwalser90@gmail.com>
3 years ago
Jacob Walser
8defcb9169
AP_Compass: add memsic MMC5883 driver
4 years ago
Andrew Tridgell
f877def909
AP_Compass: removed default rotations for compass probe
...
this prevents bugs where the force_external and rotation are mixed up
in hwdef.dat causing incorrect rotations
6 years ago
Lucas De Marchi
1a9c386df2
AP_Compass: MMC3416: use common method to accumulate samples
6 years ago
Lucas De Marchi
4039b51810
AP_Compass: stop passing frontend pointer
...
Let AP_Compass_Backend call AP::compass() *once* instead of passing
the frontend pointer over and over.
7 years ago
Andrew Tridgell
bcd305c821
AP_Compass: fixes for merge with master
8 years ago
Andrew Tridgell
04430457d5
AP_Compass: attempts to diagnose the twitches in MMC3416
8 years ago
Andrew Tridgell
36932a2959
AP_Compass: implement full state machine for MMC3416
...
this uses 100Hz readings most of the time, but does slow offset
readings every 50 samples
8 years ago
Andrew Tridgell
167988b5c4
AP_Compass: implement MMC3416 temperature compensation
...
this is much slower, but removes temperature offset
8 years ago
Andrew Tridgell
736fb715ec
AP_Compass: MMC3416 magnetometer driver
8 years ago
Lucas De Marchi
5472bc4de1
Global: change Device::PeriodicCb signature
...
Remove bool return as it's never being used and not supported on PX4.
8 years ago
Pierre Kancir
385e5badd8
Ap_Compass: LIS3MDL fix order
8 years ago
Andrew Tridgell
1f403b02ef
AP_Compass: switch to continuous 155Hz mode for LIS3MDL
8 years ago
Andrew Tridgell
0e4b8781b2
AP_Compass: auto-detect LIS3MDL compass
8 years ago
Andrew Tridgell
40ef68f104
AP_Compass: added a LIS3MDL compass driver
8 years ago
Andrew Tridgell
4ba00720aa
AP_Compass: make init() private
...
not called from frontend
8 years ago
Andrew Tridgell
1c631ea037
AP_Compass: cleanup use of backend semaphores
...
fixed drivers that didn't protect accumulation counters
8 years ago
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
8 years ago
Gustavo Jose de Sousa
b259356703
AP_Compass: BMM150: convert it to use Device periodic callback
9 years ago
Lucas De Marchi
667fca60f5
AP_Compass: BMM150: reduce lock region
...
Use a semaphore to update the accumulated values instead of using the
timer semaphore.
9 years ago
Lucas De Marchi
3ba27df405
AP_Compass: BMM150: minor refactors
...
- Correctly sort includes and add missing AP_Math.h
- Use anonymous struct for trim_registers in _load_trim_values,
renaming its members so they don't start with underscore
- Don't change _dig* values when we failed to read from sensor
- Add some blank lines
- Make _dig_* members be inside a _dig struct
- Use constrain_int32 instead of if/else chain
- s/time_us/time_usec/
- Construct raw_field with a single constructor in _update()
- Add missing copyright notice
- Group methods together in declaration
9 years ago
José Roberto de Souza
6e53854122
AP_Compass: Add BMM150 backend
9 years ago