Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 
    SOLVED

    BMX160 Magnetometer data not changing

    BMX160 Magnetometer data not changing

    rdehart
    Established Member

    Hi

    I've been able to get the BMX160 setup to update the Acc & Mag at 50Hz.
    I followed the setup in the BMX160 datasheet, Table 16. Only difference is the ODR = 0x07 and REPXY and REPZ are set for to the high accuracy preset.

    I have enabled Data Ready on INT1 pin.

    When I receive an interrupt from INT1, I check the STATUS (0x1B) register and can confirm that both drdy_acc and drdy_mag are set (value=0xB0).
    I then do a block ready from DATA_0 to DATA_19 and confirm that the Acc data is still correct.
    However the Mag data does not change. I get an initial non-zero measurement, but then nothing changes further.

    Why is the Mag data not changing?
    Is there some setting I'm missing in the Mag setup?

    Thanks

    22 REPLIES 22

    Thanks for updating the status, glad you issue is fixed now!

    o_o

    lvoc
    New Poster

    I had the same issue and after looking at the solution in this thread, I determined that it is necesary to set the register 0x6B to 0x02. Aaccording to the BMI160 manual, thi sets Primary interface: autoconfig / secondary interface: Magnetometer. The BMX160 manual indicates that these bits are reserved.

    Table 16 should have as the first instruction: Write, 0x6B, IF_CONF, 0x02, set secondary interface to Magnetometer

    o_o
    Contributor

    @lvoc wrote:

    I had the same issue and after looking at the solution in this thread, I determined that it is necesary to set the register 0x6B to 0x02. Aaccording to the BMI160 manual, thi sets Primary interface: autoconfig / secondary interface: Magnetometer. The BMX160 manual indicates that these bits are reserved.

    Table 16 should have as the first instruction: Write, 0x6B, IF_CONF, 0x02, set secondary interface to Magnetometer


    Actually, in BMX160, the secondary interface is set internally to Magnetometer, regardless of the register value. This register write is unnecessary. I do not know what was the issue in your case, but it must have been somewhere else.

     

    o_o

    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