I'm using the BNO055 with a RPi 3B+ over I2C. I can read any sort of value I'd like - power mode, operating mode, calib status, etc. but whenever I try to write a value to the sensor nothing changes. I'm using the official C lib here on github: https://github.com/BoschSensortec/BNO055_driver
After initializing the sensor, I am left in the "suspend" power mode and I have 0x0d as my operating mode, something that clearly is off.
I'd really appreciate any help here, as I don't have much more of a clue what I should be looking into.
I'm using the C lib on github: https://github.com/BoschSensortec/BNO055_driver
Here's the wiring setup I have with the pi:
For BNO055, any register write / register value change can only happen in Configure mode. this means the operation_mode register should be with value 0x10.
From your description, you are under NDoF mode, then the register write is be ignored by sensor.
Hi Vincent, thanks for the quick reply.
After looking at someone else's question on using I2C to talk with a sensor, I've finally got my reads and writes working. This required rewriting the "BNO055_I2C_bus_write" and "BNO055_I2C_bus_read" functions.
Could it be made more clear in the repo that these methods are not complete? Would have been appreciated and saved me a lot of time.
Yes, i will take your suggestion to the engineer team.
Avtually we put following comment in our API on Github