Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMi270 - FIFO for GYRO and ACC is automatically disabled ?

    BMi270 - FIFO for GYRO and ACC is automatically disabled ?

    joma
    Established Member

    Hello,

    first I would like to describe our setup, questions are in the bottom bold.
    We are executing reboot test on our i.MX6 linux based board with BMI270. Our modified linux driver is based on BMI2xy Linux Driver from Bosch Sensortec GmbH. Test application is reading GYRO/ACCEL data from BMI270 and if they are non zero i.MX6 machine is re-booted, if they are zero test is stopped. BMI270 stays powered during i.MX6 reboot and we are using FIFO for retrieving data via SPI @ 5MHz.

    Following data are send to BMI during initialization:
    1. read BMI2_CHIP_ID_ADDR, if chip_id != 0x24 return error
    2. send bmi270_config_file
    3. our set up code:
    /* Turn on FIFO for GYRO and ACC */
    bmi2_set_adv_power_save(0, &client_data->device);
    bmi2_set_fifo_config(BMI2_FIFO_GYR_EN | BMI2_FIFO_ACC_EN, 1, &client_data->device);

    /* enable GYRO and ACC */
    reg_data = 0x6; /* Turn on GYRO and ACC */
    bmi2_set_regs(BMI2_PWR_CTRL_ADDR, &reg_data, 1, &client_data->device);

    reg_data = 0x0; /* PWR_CONF - disable Advanced power save*/
    bmi2_set_regs(BMI2_PWR_CONF_ADDR, &reg_data, 1, &client_data->device);

    reg_data = 0xe;
    bmi2_set_regs(BMI2_INT1_IO_CTRL_ADDR, &reg_data, 1, &client_data->device);

    reg_data = 0xf;
    bmi2_set_regs(BMI2_INT_MAP_DATA_ADDR, &reg_data, 1, &client_data->device);

    reg_data = WATERMARK_SIZE >> 8;
    bmi2_set_regs(BMI2_FIFO_WTM_1_ADDR, &reg_data, 1, &client_data->device);
    reg_data = WATERMARK_SIZE & 0xff;
    bmi2_set_regs(BMI2_FIFO_WTM_0_ADDR, &reg_data, 1, &client_data->device);

    reg_data = 0xa8;
    bmi2_set_regs(BMI2_GYR_CONF_ADDR, &reg_data, 1, &client_data->device);
    reg_data = 0xa8;
    bmi2_set_regs(BMI2_ACC_CONF_ADDR, &reg_data, 1, &client_data->device);

    Test app was stopped at 397 reboot we've found out that FIFO was disabled but interrupts were generated. When FIFO was enabled by hand by writing echo 1 > acc_fifo_enable everything worked.

    Is there a case when FIFO for GYRO and ACC is automatically disabled ?
    Is Errata for BMI270 available ?

    Thanks.

    1 REPLY 1

    BSTRobin
    Community Moderator
    Community Moderator

    Hello joma,

    We could confirm FIFO will not disable itself. There was BMI270 example code in github, you could refer the code for sensor configuration.
    https://github.com/BoschSensortec/BMI270-Sensor-API/tree/master/examples/bmi270/fifo_watermark_heade...

    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