Hello the value you read out from the chip is 16bits in 2's complement. So 65529, 65363, and 1823 would actually mean: 0xFF29, 0xFF53, 0x71F (16 bits) and thus respective true values are: -215, -173, 1823 and likely (my guess) you have set the g range to +/- 16G (instead of 8G), to confirm this, register dump of 0x40 would clarify things up. and in that case (assuming range of 16G), the g values are: -215/2048 = -0.1g (close to 0) -173/2048 = -0.08g (close to 0) 1823/2048= 0.89g (which is close to 1g) like the other user commented, it would be helpful to use the APIs on the github (https://github.com/BoschSensortec/BMI160_driver) for easy translation/convertion of the register values in to g-values, also it would help with the proper set up of the sensors to avoid surprises, it should have some examples on how to use as well.
... View more