Changed the read and write functions as you suggested. The code compiled just fine, but the init_status register returned 2. Turns out I couldn't write 32 byte bursts, probably because the tx buffer is 32 and needs 2 stop bytes. Changing the write length to 16 fixed this, and now everything is working perfectly.
Thank you so much for your help! 🙂
I also use this example program to debug BMI.But the value of "rslt" is not equal to the value of "BMI_OK" during debugging.This means the communication is not completed.
17:04:48.358 -> bmi270_init done 17:04:48.376 -> -2 17:04:48.376 -> 0 17:04:48.704 -> Accel x = 0 Accel y = 0 Accel z = 0 Gyro x = 0 Gyro y = 0 Gyro z = 0
Which section of the program should be modified to get normal output? Thank you very much.
-2 means communication error. So, you need to check software configuration and hardware setting.