Hello, We try to use BMI088 in our system, but there are some problems when we use SPI to communicate with BMI088. Our master controller is FPGA, and we write a SPI protocol algorithm to control. For accelerometer part, we can successfully read and write. First, we read a configuration register, like BMI08X_ACCEL_RANGE_REG(0x41). We write a different value in this register, and read again. The value of this register is changed. After our configuration, INT2 can generate a 400 Hz data ready wave(measured by oscilloscope) as we planned. The problem is in Gyroscope part. We can successfully read registers. The value of gyro_chip_id is correct. But when I write anything to those configeration registers, those values are never changed. The value of BMI08X_GYRO_LPM1_REG(0x11) is 0x00. I can't change power mode of gyroscope module. When I write 0x80 to BMI08X_GYRO_LPM1_REG, The value I get from BMI08X_GYRO_LPM1_REG is still 0x00. I also tried to change range, bandwidth, interrupt configuration registers. No one register can change after I write a value. I also tried to soft reset the gyroscope part by write 0xB6 to BMI08X_GYRO_SOFTRESET_REG(0x14). The result is same. Is there any possable reason cause this situation? I don't know what to try. And I can't find some state registers in gyroscope part in datasheet. I don't know what state this gyroscope is now. By the way, I tried two BMI088, but the result are same. I think there are some steps I missed. I'm very confused now. We originally wanted to migrate the configuration algorithm for data synchronization, but we were stuck here. If there is anything I need to provide, please let me know. Thanks for your time. Regards, Blues Jiang
... View more