Fermion: BMP390L Digital Barometric Pressure Sensor

SKU: SEN0423

BMP390L is a Bosch industrial-grade digital barometric pressure sensor offering exceptional precision and reliability. It features extremely high temperature stability, low drift, low power consumption (54µA sleep current; 650µA max in measurement mode), and minimal noise impact (0.02Pa). The sensor achieves outstanding accuracy with absolute error below 50Pa and relative accuracy of ±3Pa (≈25cm altitude resolution)—a 166.7% improvement over the previous generation. Long-term stability is also superior, with only 16Pa drift over 12 months. This combination of accuracy, stability, and low power makes it ideal for GPS-denied applications such as indoor positioning and altitude tracking. With up to 10 years of availability, it ensures dependable long-term performance.

Front of DFRobot BMP390L digital barometric pressure sensor module with multiple pins and label-DFRobot product sku:SEN0423 image.
  • Docs
  • Tech Specs
  • 1. Example Code for Arduino-Read the measured frequency and data

    Read the measured frequency and data (temperature, air pressure, altitude).

    2. Example Code for Arduino-Data interrupt function

    Data interrupt function

    3. Example Code for Arduino-FIFO water level or full interrupt function

    FIFO water level or full interrupt function

    4. Example Code for Arduino-Data processing advanced setting function

    Data processing advanced setting function

    5. Example Code for Raspberry Pi-Read the measured frequency and data

    Read the measured frequency and data

    6. Example Code for Raspberry Pi-Data interrupt function

    Data interrupt function

    7. Example Code for Raspberry Pi-FIFO water level or full interrupt function

    FIFO water level or full interrupt function

    8. Example Code for Raspberry Pi-Data processing advanced setting function

    Data processing advanced setting function

    Reference

    Specification

    Dimension

    Parameter Details
    Working Voltage 3.3 V
    Working Current sleep mode (54 μA) / normal mode (357~650 μA)
    Interface Mode I2C/SPI
    I2C Address 0×77 (default address)/0×76 (optional: SDO pin connects to GND)
    Pressure Sensing Range 300~1250 hPa
    Relative Accuracy ±0.03hPa (equivalent to 25cm) (@700~1100hPa, 25 to 40 °C)
    Absolute Accuracy ±0.50hPa
    Temperature Deviation Coefficient ±0.6Pa/K (@900hPa, 25~40 °C)
    Long-term Stability ±0.16hPa/year
    ODR Accuracy ±2~±12%
    Start-up Time 2 ms
    Operating Temperature Range -40 °C ~ +85 °C (full precision measurement can be used under 0 °C ~ +65 °C)
    Module Size 15×20 (mm) / 0.59×0.79(inch)

    Pinout

    Front View

    Num Label Description
    1 VCC 3.3v~5.5v power input
    2 3V3 3.3v power output/input
    3 GND Power negative
    4 SCL I2C clock line
    5 SDA I2C data line
    6 SCK I2C data line
    7 SDI SPI data line (input)
    8 SDO SPI data line (output)
    9 CS SPI chip select line
    10 INT Interrupt pin

    Notice:

    • All data output voltage is 3.3V
    • Pull the SDO pin low to switch the I2C address: 0x77

    Connection tips for different communication methods:

    • I2C: 0x77 (default)
    • I2C:0x76
    • SPI
    • cs pin can choose the pin that does not conflict

    • Interrupt pin connection

    Motherboard Default connection pin
    UNO/MEGA2560 D2
    Leonardo D3
    Micro:bit P0
    ESP32/ESP8266/ARDUINO_SAM_ZERO(M0) ESP32/ESP8266/ARDUINO_SAM_ZERO(M0)
    ESP32/ESP8266/ARDUINO_SAM_ZERO(M0) GPIO25

    Was this article helpful?

    TOP