Bosch Sensortec Community

    Showing results for 
    Search instead for 
    Did you mean: 

    BMI088 accelerometer not working

    BMI088 accelerometer not working

    New Poster

    Hello and happy new year.


    Here is my new year problem.

    I have made a custom board with an STM32F103C8T6 and a Bosch BMI088 connected using SPI. The board works and I just finished writing my SPI driver.

    The problem is that when I read the BMI accelerometer chip ID, it sends 0xFF then only 0x00 instead of 0x1E. On the other hand, the gyroscope always gives me the right value 0x0F.

    I know that the first value has to be wrong as the accelerometer start in I2C mode at startup and has to feel something ( like dummy read ) on its chip select pin to get in SPI mode. For more infos, here is my initialisation method:

    1 - dummy read to set accelerometer in SPI mode

    2 - Power up by writing 0x4 on PWR_CTRL register and wait 1ms

    3 - Active mode by writing 0x0 on PWR_CONF register and wait 5 ms instead of 450 microseconds

    5 - Check CHIP_ID ( 0XFF instead of 0x1E )

    Know that I readd that register 100 times for the gyroscope and accelerometer. The gyro is always right, the accelerometer give 0xFF then just reads 0x00.

    Can any of you tell me if my initialisation sequence is right and why is the accelerometer gives wrong chip ID. My goal is just to read data from the IMU and apply some filters.

    Thank you for reading me,


    I mask the write register address with & 0x7F

    I mask the read register address with | 0x80

    2 REPLIES 2

    Community Moderator
    Community Moderator

    Hi @UberMan , 


    Do you follow our hardware setting for each interface? (DS section 6)



    Thank you. 

    Thank you,

    The problem is that I did a mistake connecting the accelerometer data line. Connected it to MISO instead T_T

    Thank you again, I will redesign a board, this time with a BMI270 ( for €€€ reasons ).