The manual for the bno 055 (link below) has an attribute for the sensor labelled radius on page 33.

The radius takes up 2 bytes of memory, the msb and lsb.

This already confuses me, as the msb and lsb are bits, but each register is for a whole byte.

Continuing, the radius of the sensor has a property called the range of the radius. The range is supposedly unitless, and is equal to +/- 1000 × LSB. I have searched both the document and the internet, yielding nothing but data from proximity sensors.

What is a sensor's radius , and what do the msb and lsb represent on it? Why do the SBs take up entire bytes? What does the datasheet mean when it says +/- 1000 lsb for the value of the radius's range?

• LSB=least significant byte. MSB=most significant byte. Note that word: byte. You use two eight bit byes to convey a value larger than one byte can hold. LSB is the lower 8 bits, MSB is the upper 8 bits.
– JRE
Jun 24, 2017 at 19:09
• Radius for the accelerometer can be from -1000 to 1000. For the magnetometer, the radius can be from -960 to 960. Representing those numbers takes more than eight bits, so you use two eight bits registers to hold the values.
– JRE
Jun 24, 2017 at 19:16
• @JRE so It's equivalent to a uint16_t from c++? Jun 24, 2017 at 19:27
• More like int. It has a sign.
– JRE
Jun 24, 2017 at 19:48

• there are two radii, magnetometer and accelerometer (IIRC, I'm not going to open the data sheet again). mG sounds plausible for the magnetomoeter (though $\mu T$ would be preferred these days). Anything can be made unitless by dividing by an implicit unit. Don't forget, data sheets are written by faillible humans, these details by the guys that write the code who don't understand the physics, then published by peeps who don't understand anything. If it's a self cal, then whether they've got the units wrong shouldn't matter, take a guess and see whether it works, probably furlongs/s^2 ;-) Jun 25, 2017 at 5:16