Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BHI260AB Rotation Vector curve discontinuity

    BHI260AB Rotation Vector curve discontinuity

    btruden_henway
    Long-established Member

    Hi,

    I was doing tests with my Application Board and a BHI160 Shuttle board. 

    I'm running the Development Desktop application and reading both the Game Rotation Vector and the Rotation Vector simultaneously, and drawing the w,x,y, and x curves for each of them in real-time.

    At the beginning of the test all seem to be pretty normal, both virtual sensors present the same curves. But at some point the Rotation Vector presents a discontinuity. From that moment onwards the Rotation Vector curves are different from the Game Rotation Vector curves.

    See below picture for having a clearer understanding:

    Rotation Vector VS Game Rotation Vector.png 

    Rotation Vector VS Game Rotation Vector ZOOM.png

    I have a custom board with a  BHI260AB on it and it's presenting the same behavior. 

    I recently added a BMM150 magnetometer to my board and wanted to change from using the Game Rotation Vector to the Rotation Vector for better accuracy. But unfortunately, I'm having that strange behavior of the Rotation Vector.

    Could you please help me to understand what's happening and to find a way for solving the issue?

    Thanks!

    7 REPLIES 7

    BSTRobin
    Community Moderator
    Community Moderator

    Hi soroush,

    Could we know how do you get Game Rotation Vector's accuracy in your C code?

    soroush
    Established Member

    We work with BHI160B. According to the BHI160(B) datasheet and GitHub repo, we get GRV's accuracy directly from the same data structure that quaternion elements are obtained:

    BHI160_imu_data.rotVector.x               = ((float) (data->data_quaternion.x)) * 0.00006103515625f;
    BHI160_imu_data.rotVector.accuracy  = data->data_quaternion.estimated_accuracy;

    https://github.com/BoschSensortec/BHy1_driver_and_MCU_solution/blob/master/examples/rotation_vector_...

    For the benefit of completeness,  we warm start standalone BHI160B (uploading Acc/Gyro biases from the previous calibration process) and freshly perform stationary plus 6-face calibration before any test according to the provided calibration example on the GitHub repo until acc and gyro's accuracies go to 3.

    BSTRobin
    Community Moderator
    Community Moderator

    Hi soroush,

    For BHI160B,  accuracy game rotation vector accuracy is 0 if you see it from callback function of virtual sensor.
    But you could get accel, gyro, mag physical sensor accuracy from example code: https://github.com/boschsensortec/BHy1_driver_and_MCU_solution/blob/master/examples/calib_profile_ex...
    do_calibrate:
    ...

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist