33 #if MODULE_HMC58XX_UPDATE_AHRS
37 #ifndef HMC58XX_CHAN_X
38 #define HMC58XX_CHAN_X 0
40 #ifndef HMC58XX_CHAN_Y
41 #define HMC58XX_CHAN_Y 1
43 #ifndef HMC58XX_CHAN_Z
44 #define HMC58XX_CHAN_Z 2
66 #if MODULE_HMC58XX_UPDATE_AHRS
83 #if MODULE_HMC58XX_SYNC_SEND
86 #if MODULE_HMC58XX_UPDATE_AHRS || MODULE_HMC58XX_SYNC_SEND
arch independent UART (Universal Asynchronous Receiver/Transmitter) API
#define MAG_HMC58XX_SENDER_ID
#define VECT3_COPY(_a, _b)
Main include for ABI (AirBorneInterface).
void mag_hmc58xx_module_event(void)
static uint32_t get_sys_time_usec(void)
Get the time in microseconds since startup.
struct Int32Vect3 mag_unscaled
unscaled magnetometer measurements
void mag_hmc58xx_module_init(void)
struct Hmc58xx mag_hmc58xx
struct Imu imu
global IMU state
void mag_hmc58xx_module_periodic(void)
struct Int32Vect3 mag
magnetometer measurements scaled to 1 in BFP with INT32_MAG_FRAC
Inertial Measurement Unit interface.
volatile bool_t data_available
data ready flag
Module wrapper for Honeywell HMC5843 and HMC5883 magnetometers.
#define DefaultChannel
SITL.
void imu_scale_mag(struct Imu *_imu)
static void hmc58xx_periodic(struct Hmc58xx *hmc)
convenience function: read or start configuration if not already initialized
Common code for AP and FBW telemetry.
void hmc58xx_init(struct Hmc58xx *hmc, struct i2c_periph *i2c_p, uint8_t addr)
Initialize Hmc58xx struct and set default config options.
void hmc58xx_event(struct Hmc58xx *hmc)
void mag_hmc58xx_report(void)