I am using a BNO055 to track the orientation of a skateboard. While using the "sensorAPI" example given by the BNO library, which output is the orientation, I am getting 0 to 360° for x and Z axis but just -90 to 90° for Y. Why is it doing that. The problem for me is, that 135° and 45° are the same.. both times 45.
I think i am missing some information.
Thanks for any help!
Did you choose NDOF mode?
I checked this mode and got the same result as you do.
I think this result could be related to the different axis map or the different reference frame. You can remap sensor axises to modify the result you need.
Hopefully, it can help you.
yes i am operating in NDOF mode.
I looked into that data sheet: https://cdn-shop.adafruit.com/datasheets/BST_BNO055_DS000_12.pdf Page 24, 25
for the axis modification. I have not tried it, but it is described as a tool to modify the axis to your mounting position of the sensor. So your output is just positive numbers or whatever you want.
But i think this wont solve the problem with -90 to 90° range of Y.
If I overlooked something please let me know.
Another thing, do you use your BNO to get euler angles? If yes how do you do it?
Thank you and have a nice day 🙂
Did you have a try to remap sensor axises and then observe the results?
What is your own criterion? How did you know it?
Actually according to Euler angle definition, BSX algorithm output these values after remapping sensor axises correctly.
So before you get correct orientation values, you should remap your sensor axised based on its pcb placement if it is not P1 placement in the datasheet.
And then compare the output results with other device which have the corresponding output, like smartphone with Qsensortest APP.
i found this in the Quick Start-Guide: Roll Rotation around y-axis: -90 to 90.
On page 4.
I have not figures out yet how to remap the axis. I am working in the Arduino IDE and I looked into the datasheet of the BNO. I know which placement i need but not how to configure it. What kind of command do I need for that?