It looks like BMI160 doesn't go to suspend mode. If BMI160 and BMI270 are suspend mode and only BMM150 is working, the current consumption shall be similar.
Could you check 2.2.1 suspend mode in our datasheet
Simply, you can check to read register 0x03.
If the value is 0x00, that means BMI160 is suspend mode.
Thank you 🙂
Thank you very much for your message and question.
Yes, we confirmed that the BMI160 is in suspend mode.
Just to avoid confusion, below are current measurement modes for four tests - two were done with a combination f a BMI270 and BMM150 and two were done with a BMI160 and BMM150. We don't udnertsand why there are these large differecnes and also why the BMM150 adds so much current to the current consumption (in particualr when we read the data via the aux interface).
I'd be very grateful for any thuoghts and advide you could kindly give us.
Thank you very much.
All the best
Could you read register 0x03 in BMI160 and capture the logic analyzer ?
I assume that BMI160 is not suspend mode, otherwise there is some hardware point to generate current leakage.
You are right, it shall be similar.
Thank you very much for your message.
Yes, we checked that the BMI160 is in suspend mode by reading register 0x03. The register reads (returning 0x00) match our expectations that the devices are in suspend mode when we set it to be in suspend mode.
Thank you and all the best
Today, I tested with BMX160 chip for current consumption ( BMX160 is BMI160 + BMM150, so it's same)
I got similar current consumption as below result.
And also, I got 3.5mA in case I set BMI160 AUX ODR as 100Hz.
This datasheet result is based on ODR = 10Hz, so you should set AUX ODR as 12.5hz if you want to similar result.
bmm150dev_settings.pwr_mode = BMM150_POWERMODE_NORMAL;
uint8_t bmm150_data_start = BMM150_REG_DATA_X_LSB;
bmi160dev.aux_cfg.aux_odr = BMI160_AUX_ODR_12_5HZ;
Could you please test it with my suggestion?