Bosch Sensortec Community

    Showing results for 
    Search instead for 
    Did you mean: 

    BHI260AP aux BMM150 fusion (no algo plugin for decktop 2.0)

    BHI260AP aux BMM150 fusion (no algo plugin for decktop 2.0)

    Established Member

    I have bought the "Application Board 3.0" & "BHI260AP Shuttle Board 3.0 so I can evaluate the the 3D Compass. However, I can't get it to populate the roll, pitch & heading fields. Also the 3D compass does nothing.

    reading the dd2-0_algoplugin_usermanual.pdf it talks about the 9DoF sensor fusion algorithms, but when I try to load a plugin there's no menu option under "Settings". This suggests plugins are NOT supprted for this. Also the help menu does not have the BHI260AP or BMM150



    6 REPLIES 6

    Community Moderator
    Community Moderator

    Hi Digisolve ,

    You could refer BHIxxx document in help menu, BHI1xx and BHI2xx had similar operation in DD2.0
    Actually DD2.0 had supported BHI260AP shuttle, could you give detailed description about your operation and result for your feedback "However, I can't get it to populate the roll, pitch & heading fields. Also the 3D compass does nothing."

    Established Member

    I've had some good progress from the ticket below. I think it's best if I continue my dialog here as the ticket below is related to the BNO055

    I now get the Orientation values populated. Now I need to work out how to calibrate & know when the system is calibrated. Also I need to know how to save & restore this calibration data so the orientation values can be reliable & repeatable.

    Also it's not clear if the fusion code is running on the BHI260AP shuttle board 3.0 or on the external CPU on the Application Baord 3.0

    I'm hoping it's runnig on the shuttle board so my application CPU does not need to but the complex fusion algorithm


    Established Member

    I've finally got back onto this project & I've been able to integrate the BHI260AP shuttle board on to a demo platform as the Decktop 2.0 was not suitable for leaving with my customer for evalution.

    I've been able to setup The virtual sensor 0x2B Orientation at 25Hz & retrieved the sensor data from FIFO channel 2 (non-wake-up)

    I've also found how to read the acc, gyro & mag calibration states via the BSX algorthm parameters using commands 0x1201, 0x1203 & 0x1205, (although it doesn't say how big this is or whether the size changes so I don't know how much storage I require)

    I've also understood (I think) how the calibration status is presented as a meta event Sensor Status (0x06) & included in the same FIFO as the sensor data (FIFO channel 2 in my case)

    However, I'm not getting this data comming thru, or I'm not looking for it correctly.

    From the Table 87 below I believe a fifo packet only ever contains 1 Meta event & is is alway in the same place (FIFO + 4). With the format 0xFE, 0xnn, 0xnn, 0xnn.


    So for the Meta Event Sensor Staus I expect to see the following:

    0xFE, 0x06, 0x2B, 0xnn (where 0xnn will be one of the values below)


    Established Member

    Measurement drift following a warm POR

    I have now manged to get the calibration data in & out of the BHI260AP. I also found what I was doing wrong with getting the sensor status meta data.

    Now I'm able to power the units up, re-load the calibation data & report the sensor status.

    On a cold POR (no calibation data) I place the sensor for a few seconds in each of the 6 planes. I then rotate the sensor in 360', then after (say) 10 seonds the sensor status reaches 3. I then save the data. & turn off.

    Now on a warm POR (with calibation data) I just need to move the sensor slightly & the sensor status reaches 3 straight away.

    Howeverm testing the acuracy I've found that from a warm POR it drifts. But if I stop the sensor (set the rate of 0Hz), read the calibration data & then re-start the sensor (set the rate to 25Hz) it stops drifting. During this test i donot move the senors. It is located outside sitting on a stone wall with no metal in close proximity.

    Commands used

    • Enable orientation sensor: {0x2b, 0x00, 0x00, 0xc8, 0x41, 0x00, 0x00, 0x00}
    • Disable orientation sensor: {0x2b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
    • CMD for read ACC cal data: BHI260AP_CMD_GET_BSX_ACC_CAL (0x1201) // BSX Calibration state for Accelerometer
    • CMD for read GYR cal data: BHI260AP_CMD_GET_BSX_GYR_CAL (0x1203) // BSX Calibration state for Gyroscope
    • CMD for read MAG cal data: BHI260AP_CMD_GET_BSX_MAG_CAL (0x1205) // BSX Calibration state for Magnetomoter

    I really need some help with this. I know I will need to calibrate the SIC but during this test there on no metal nearby & I would not expect this to result in what I'm seeing