26 #if defined(DEBUG) && defined(DEBUG_PORT)
28 #define MAGCOMPASS_DEBUG
STMicroelectronics LIS3MDL magnetometer sensor class.
Definition: lis3mdl_magnetometer.h:72
Decide whether or not to rotate magnetometer measurements.
Definition: compass.h:44
bool Update()
Update the compass.
Definition: compass.cpp:74
LIS3MDL_MeasRange_t magMeasRange
Definition: compass.h:66
LIS3MDL_Mag MagSensor
Definition: compass.h:65
float GetHeading(Vectorf AccelMeas)
Compute and return tilt-compensated magnetic heading based on accelerometer data.
Definition: compass.cpp:129
MagCompass & operator=(const MagCompass &)=delete
uint32_t prevUpdateMicros
Definition: compass.h:58
MagCompass(TwoWire *userWire=&SENSOR_I2C)
The compass class is in charge of taking magnetometer measurements and computing tilt-compensated (ma...
Definition: compass.cpp:26
~MagCompass()
Definition: compass.cpp:176
float heading
Definition: compass.h:64
TwoWire * SensorWire
Definition: compass.h:67
bool Initialize()
Initialize the compass.
Definition: compass.cpp:42
static MagCompass & GetInstance()
Definition: compass.cpp:179
MagCompass(const MagCompass &)=delete
Vectorf Mag
Definition: compass.h:59
Vectorf MagRaw
Definition: compass.h:60
A vector object is definied by it's rows/length.
Definition: vectors.h:46
constexpr LIS3MDL_MeasRange_t MAGCOMPASS_RANGE
The compass class is in charge of taking magnetometer measurements and computing tilt-compensated (ma...
Definition: compass.h:33
MagCompass & Compass
Definition: compass.cpp:185
#define SENSOR_I2C
UBER-EXTREME CAUTION SHOULD BE USED CHANGING PARAMETERS IN THIS FILE.
Definition: hummingbird_config.h:26
LIS3MDL_MeasRange_t
LIS3MDL measurement ranges (gauss)
Definition: lis3mdl_magnetometer.h:60
@ LIS3MDL_RANGE_4G
Definition: lis3mdl_magnetometer.h:61