Skip to content

BMP388 / BMP390 Pressure & Temperature Sensor (U14)

Overview

Interface circuit for U14, a Bosch barometric pressure / temperature sensor. The V9 build assembles the BMP388 (LCSC C779278), which is pin-compatible with the newer BMP390 in the same 10-pin LGA package — both parts work in this footprint without rework. The page title and bmp390_documentation.md filename are kept for documentation continuity; verified part on the production board is BMP388.

The sensor is used for: - Cabin / engine-room ambient temperature (the BMP388 includes a built-in temperature element with ±0.5 °C accuracy at 25 °C) - Ambient pressure for elevation logging and as a basic weather/conditions trend input

It is not used for safety-critical alternator temperature monitoring — that role is handled by the DS18B20 (digital, on a separate 1-Wire bus that can be mounted directly on or near the alternator case).

Bus Sharing

The BMP388 shares a single I²C bus with two other devices on the 3.3 V rail:

Address Device Function
0x40 INA228 (U20) Battery shunt current and bus voltage
0x6A LSM6DSOX (U1) 6-axis IMU (motion / vibration)
0x76 BMP388 (U14) Pressure / temperature

Bus pull-ups for the shared SDA/SCL lines are provided once on the board, not by each device:

  • R92 = 2.2 kΩ 1 % — pull-up on I2C_SCL to 3V3
  • R93 = 2.2 kΩ 1 % — pull-up on I2C_SDA to 3V3

The 2.2 kΩ value is chosen for 400 kHz fast-mode operation with the combined bus capacitance of three devices plus traces (~80 pF). A weaker pull-up (10 kΩ) would not meet the I²C rising-edge timing spec at 400 kHz; a stronger pull-up (1 kΩ) would exceed the sink-current rating of the open-drain output stages.

Bill of Materials

Reference Component Value Package Function
U14 BMP388 (BMP390 footprint-compatible) 10-LGA, 2 × 2 × 0.75 mm Barometric pressure + temperature sensor
C61 Capacitor 1 µF 0603 VDD decoupling capacitor
C62 Capacitor 1 µF 0603 VDDIO decoupling capacitor
R81 Resistor 10 kΩ 1 % 0603 CSB pull-up to 3V3 — selects I²C mode

Pinout and Connections

BMP388 (U14) Pin Configuration

Pin Symbol Function Connection Notes
1 VDDIO I/O Supply 3.3V via C61 I2C interface power
2 SCK Serial Clock I2C_SCL I2C clock input
3 VSS Ground GND Ground reference
4 SDI Serial Data In I2C_SDA I2C data line
5 SDO Serial Data Out GND I2C address select (0x76)
6 CSB Chip Select 3.3V via R81 I2C mode enable (HIGH)
7 INT Interrupt DNC Do Not Connect per datasheet
8 VSS Ground GND Ground reference
9 VDD Core Supply 3.3V via C62 Main power supply
10 GND Ground GND Ground reference

Power Supply Configuration

  • Supply Voltage: 3.3V common rail for both VDD and VDDIO
  • VDD Range: 1.8V - 3.6V (core supply)
  • VDDIO Range: 1.2V - 3.6V (I/O supply)
  • Decoupling: 1µF ceramic capacitors on both supply pins

Power Consumption

Operating Mode Typical Current Supply Voltage Power
Sleep Mode 0.2 µA 3.3V 0.66 µW
Standby Mode 1.8 µA 3.3V 5.94 µW
Normal Mode @ 1Hz 3.4 µA 3.3V 11.2 µW
Forced Mode (single conversion) ~500 µA 3.3V 1.65 mW
Peak Current (during conversion) 714 µA 3.3V 2.36 mW

Additional Power Notes: - Startup Current: Brief spike during power-on (~1mA for ~2ms) - I2C Activity: Minimal additional current during communication - Pull-up Resistor (R81): 3.3V/10kΩ = 330µA when CSB active

I2C Interface Setup

  • Protocol: I2C slave device
  • Slave Address: 0x76 (SDO tied to GND)
  • Alternative Address: 0x77 (if SDO tied to VDDIO)
  • Bus Speed: Supports 100kHz (standard) and 400kHz (fast mode)
  • Pull-up Resistors: Implemented elsewhere in system on SCL/SDA lines
  • Mode Selection: CSB pulled high via R81 enables I2C communication

Interface Signals

  • I2C_SCL: Serial clock line to microcontroller
  • I2C_SDA: Serial data line to microcontroller
  • BMP388_INT: Interrupt output (currently unused, DNC per datasheet)

Design Notes

  • Thermal Placement: Component positioned away from heat sources for accurate readings
  • Single Supply: VDD and VDDIO connected to same 3.3V rail (datasheet compliant)
  • Address Configuration: SDO grounded for 7-bit address 0x76
  • Unused Pins: INT pin left disconnected as recommended by datasheet
  • Communication Mode: CSB high selects I2C over SPI interface

Operational Characteristics

  • Pressure Range: 300 - 1250 hPa (equivalent to +9000m to -500m altitude)
  • Temperature Range: -40°C to +85°C
  • Resolution: 0.0016 hPa (0.013m altitude resolution)
  • Interface: I2C up to 400kHz
  • Power Modes: Sleep, forced, and normal measurement modes

Register Access

  • Default State: Sleep mode after power-on reset
  • Calibration: Factory calibration coefficients stored in NVM
  • Configuration: All sensor parameters configurable via I2C registers
  • Data Format: 20-bit pressure, 20-bit temperature values