I am setting the ranges as follows: 2G for the accelerometer and 250 deg/s for the gyro. I am reading the ranges back from registers 0x41 and 0x43 and I am getting the value 3 for both. I thought I would get 2 for the accelerometer and 250 for the gyro. Am I doing something wrong? What does the value 3 mean?
Thanks for your support
Here is my code
uint8_t range; int8_t rslt; uint16_t len = 1; rslt=bmi160_get_regs(BMI160_ACCEL_RANGE_ADDR, &range, len, &ss_sensor);
Solved! Go to Solution.
If you want to set register value, you should use bmi160_set_regs() in your code.
"I am setting the ranges as follows: 2G for the accelerometer and 250 deg/s for the gyro.", 0x41 register value should be written to 0x03 for 2G range. 0x43 register value should be written to 0x03 for 250°/S.
There was BMI160 example code in github, you could refer it from https://github.com/BoschSensortec/BMI160_driver/blob/master/README.md.