Paparazzi UAS  v5.18.0_stable
Paparazzi is a free software Unmanned Aircraft System.
imu_b2_v1.1 module

Booz2 IMU v1.1

No detailed description...

Example for airframe file

Add to your firmware section:

<module name="imu_b2_v1.1"/>

Module configuration options

Airframe file section

  • section name: IMU prefix: IMU_
    • name GYRO_X_NEUTRAL value: 33924
    • name GYRO_Y_NEUTRAL value: 33417
    • name GYRO_Z_NEUTRAL value: 32809
    • name GYRO_X_SENS value: 1.01
    • name GYRO_Y_SENS value: 1.01
    • name GYRO_Z_SENS value: 1.01
    • name ACCEL_X_NEUTRAL value: 32081
    • name ACCEL_Y_NEUTRAL value: 33738
    • name ACCEL_Z_NEUTRAL value: 32441
    • name ACCEL_X_SENS value: 2.50411474
    • name ACCEL_Y_SENS value: 2.48126183
    • name ACCEL_Z_SENS value: 2.51396167
    • name MAG_X_NEUTRAL value: 2358
    • name MAG_Y_NEUTRAL value: 2362
    • name MAG_Z_NEUTRAL value: 2119
    • name MAG_X_SENS value: 3.4936416
    • name MAG_Y_SENS value: 3.607713
    • name MAG_Z_SENS value: 4.90788848
    • name MAG_45_HACK value: 1

Auto-loaded modules

The following modules are automatically loaded (just as if you had added them in the airframe file)

Files

Header Files

The following headers are automatically included in modules.h

Source Files

<!DOCTYPE module SYSTEM "module.dtd">
<module name="imu_b2_v1.1" dir="imu">
<doc>
<description>
Booz2 IMU v1.1
</description>
<section name="IMU" prefix="IMU_">
<define name="GYRO_X_NEUTRAL" value="33924"/>
<define name="GYRO_Y_NEUTRAL" value="33417"/>
<define name="GYRO_Z_NEUTRAL" value="32809"/>
<define name="GYRO_X_SENS" value="1.01" integer="16"/>
<define name="GYRO_Y_SENS" value="1.01" integer="16"/>
<define name="GYRO_Z_SENS" value="1.01" integer="16"/>
<define name="ACCEL_X_NEUTRAL" value="32081"/>
<define name="ACCEL_Y_NEUTRAL" value="33738"/>
<define name="ACCEL_Z_NEUTRAL" value="32441"/>
<define name="ACCEL_X_SENS" value="2.50411474" integer="16"/>
<define name="ACCEL_Y_SENS" value="2.48126183" integer="16"/>
<define name="ACCEL_Z_SENS" value="2.51396167" integer="16"/>
<define name="MAG_X_NEUTRAL" value="2358"/>
<define name="MAG_Y_NEUTRAL" value="2362"/>
<define name="MAG_Z_NEUTRAL" value="2119"/>
<define name="MAG_X_SENS" value="3.4936416" integer="16"/>
<define name="MAG_Y_SENS" value="3.607713" integer="16"/>
<define name="MAG_Z_SENS" value="4.90788848" integer="16"/>
<define name="MAG_45_HACK" value="1"/>
</section>
</doc>
<autoload name="imu_b2_common"/>
<header>
<file name="imu_b2.h" dir="subsystems/imu"/>
</header>
<makefile target="!sim|nps|fbw">
<define name="IMU_B2_VERSION_1_1"/>
<define name="IMU_B2_MAG_TYPE" value="IMU_B2_MAG_MS2100"/>
<file name="ms2100.c" dir="peripherals"/>
<file name="ms2100_arch.c" dir="$(SRC_ARCH)/peripherals"/>
<raw>
ifeq ($(ARCH), lpc21)
$(TARGET).CFLAGS += -DUSE_SPI_SLAVE1
$(TARGET).CFLAGS += -DMS2100_SLAVE_IDX=1
$(TARGET).CFLAGS += -DMS2100_SPI_DEV=spi1
$(TARGET).CFLAGS += -DMS2100_DRDY_VIC_SLOT=12
else ifeq ($(ARCH), stm32)
$(TARGET).CFLAGS += -DUSE_SPI_SLAVE4
$(TARGET).CFLAGS += -DMS2100_SLAVE_IDX=4
$(TARGET).CFLAGS += -DMS2100_SPI_DEV=spi2
endif
</raw>
</makefile>
</module>