35 #include "generated/airframe.h"
40 #include "pprzlink/messages.h"
44 #ifndef UMARIM_ACCEL_RANGE
45 #define UMARIM_ACCEL_RANGE ADXL345_RANGE_16G
49 #ifndef UMARIM_ACCEL_RATE
50 #define UMARIM_ACCEL_RATE ADXL345_RATE_50HZ
56 #if !defined UMARIM_GYRO_LOWPASS && !defined UMARIM_GYRO_SMPLRT_DIV
57 #define UMARIM_GYRO_LOWPASS ITG3200_DLPF_20HZ
58 #define UMARIM_GYRO_SMPLRT_DIV 19
void imu_umarim_periodic(void)
arch independent UART (Universal Asynchronous Receiver/Transmitter) API
uint8_t smplrt_div
Sample rate divider.
void itg3200_init(struct Itg3200 *itg, struct i2c_periph *i2c_p, uint8_t addr)
Initialize Itg3200 struct and set default config options.
#define UMARIM_GYRO_LOWPASS
enum Adxl345Rates rate
Data Output Rate.
#define VECT3_ASSIGN(_a, _x, _y, _z)
Main include for ABI (AirBorneInterface).
struct ImuUmarim imu_umarim
struct Imu imu
global IMU state
int32_t r
in rad/s with INT32_RATE_FRAC
void imu_umarim_downlink_raw(void)
struct Int32Rates gyro_unscaled
unscaled gyroscope measurements
struct Int32Vect3 accel
accelerometer measurements in m/s^2 in BFP with INT32_ACCEL_FRAC
struct Adxl345Config config
static void adxl345_i2c_periodic(struct Adxl345_I2c *adxl)
convenience function: read or start configuration if not already initialized
void adxl345_i2c_event(struct Adxl345_I2c *adxl)
PRINT_CONFIG_MSG("USE_INS_NAV_INIT defaulting to TRUE")
void imu_umarim_init(void)
#define UMARIM_GYRO_SMPLRT_DIV
void imu_scale_gyro(struct Imu *_imu)
void adxl345_i2c_init(struct Adxl345_I2c *adxl, struct i2c_periph *i2c_p, uint8_t addr)
union Adxl345_I2c::@293 data
enum Itg3200DLPF dlpf_cfg
Digital Low Pass Filter.
void imu_umarim_event(void)
Common code for AP and FBW telemetry.
void itg3200_event(struct Itg3200 *itg)
static void itg3200_periodic(struct Itg3200 *itg)
convenience function: read or start configuration if not already initialized
int32_t p
in rad/s with INT32_RATE_FRAC
struct Int32Vect3 accel_unscaled
unscaled accelerometer measurements
void imu_scale_accel(struct Imu *_imu)
#define RATES_COPY(_a, _b)
enum Adxl345Ranges range
g Range
volatile bool data_available
data ready flag
uint32_t get_sys_time_usec(void)
Get the time in microseconds since startup.
#define UMARIM_ACCEL_RATE
struct Itg3200Config config
int32_t q
in rad/s with INT32_RATE_FRAC
#define UMARIM_ACCEL_RANGE
volatile bool data_available
data ready flag
struct Int32Rates gyro
gyroscope measurements in rad/s in BFP with INT32_RATE_FRAC
Architecture independent I2C (Inter-Integrated Circuit Bus) API.