Bosch Sensortec Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    BMP388 Calibration Questions

    BMP388 Calibration Questions

    Kmoore
    Established Member

    Hello, I have been working with the BMP388 pressure sensor recently. I have the need to calculate height using the measured pressure and temperature. I have two units (DUT1 and DUT2), they are both configured to have the following BMP388 settings:

    • OSR pressure of 2x and OSR temperature 2x (0x09 written to Register 0x1C)
    • IIR Filter off (0x00 written to Register 0x1F)
    • ODR of 100Hz (0x01 written to 0x1D)
    • Normal mode active with pressure and temperature enabled (0x33 written to 0x1B)

    I have also read and applied the trimming coefficients in the BMP388's NVM. With that I calculated the conpensation values for both temperature and pressure. However, my two DUT's do not seem to be yielding similar results.

    bmp388_dut_data.png

     

     

     

     

     

     

     

     

    The compensated temperatures look close enough, but the pressure is showing a distinct difference. My next guess is prehaps the read trimming coefficiencts are incorrect. I see some small differences that can be the result of factory calibration, but pressure parameter 1 seems to be off quite abit from DUT1 to DUT2. I was wondering if the read values for the trimming coefficients look reasonable in comparison to factory calibration.

    Thanks for any assistance,

    Ken

    3 REPLIES 3

    Yanchao
    Community Moderator
    Community Moderator

    Hi,

    Have you compare the two uint pressure value calculated by API? What's the result?

    I use my formular with two units nvm_par, input same uncompensated pressure and temperature, pressure difference <100Pa.

    So please check your formular.

     

    Kmoore
    Established Member

    Hi Yanchao, thanks for the help.

    I did review the API here https://github.com/BoschSensortec/BMP3-Sensor-API/blob/master/bmp3.c,

    I worked with this source to develop similar functions for my hardware. I also used the following post's attached exel sheet to check my calculations.

    https://community.bosch-sensortec.com/t5/MEMS-sensors-forum/BMP388-Compensation-Calculations/td-p/82....

    I think I can use this sheet to calculate the expected compensated pressure and temperature. I did calculation checks for each unit, below are the results.

    DUT 1

    DUT 1 CompareDUT 1 Compare

     

     

     

     

     

     

     

     

     

     

    DUT 2 CompareDUT 2 Compare

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    After review it looks like the units match up with their expected values. Is it okay to use this sheet as verification for the compensation values?

    Yanchao
    Community Moderator
    Community Moderator

    Yes, I also use this sheet to convert sensor's raw data to pressure/temperature.

    And when pressure finished soldering and assembling, stress will lead to pressure offset. You need check with reference pressure sensor to calculate this offset.

    Best regards.

    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