This is just a short nottice. I have a setup with an ESP32-S3 and a BMI270, wired via I2C. After some testing and using the API, I was probe testing with the code being unable to init the IMU normally or with randoms inits (being the fail reason INTERNAL_STATUS_REGISTER(0x21) == 0 (NOT INIT)). After some testing with different burst writes of config file, I have found that no matter the delay in between. After you have flashed the config file the sensor doesn't rise the bit of init in 0x21 register. But once you read it, it is risen. So goint to API bmi2.c2250 and duplicating the line " rslt = bmi2_get_internal_status(&load_status, dev);" so that it is read once and then reread. Makes it so device updates that bit value and you read the right one. Hope this helps people that are using API and having unknown init errors.
... View more