BMP280 Barometric Pressure & Temperature Sensor
Bosch digital atmospheric pressure and temperature sensor
I2C address:
0x76
The BMP280 is a precision digital barometric pressure and temperature sensor from Bosch. It is widely used for altitude estimation, weather monitoring, and indoor navigation.
Datasheet
Section titled “Datasheet”The full BMP280 datasheet is available here.
Registers
Section titled “Registers”| Register | Address | Description |
|---|---|---|
calib00–calib25 | 0x88–0xA1 | Factory calibration coefficients (read-only) |
id | 0xD0 | Chip ID — always 0x60 |
reset | 0xE0 | Write 0xB6 to soft-reset |
status | 0xF3 | Measuring / im_update flags |
ctrl_meas | 0xF4 | Oversampling settings + power mode |
config | 0xF5 | Standby time, IIR filter, SPI mode |
press_msb/lsb/xlsb | 0xF7–0xF9 | Raw pressure output (20-bit) |
temp_msb/lsb/xlsb | 0xFA–0xFC | Raw temperature output (20-bit) |
Power Modes
Section titled “Power Modes”Mode (ctrl_meas bits [1:0]) | Description |
|---|---|
00 | Sleep — no measurements |
01 / 10 | Forced — one measurement then back to sleep |
11 | Normal — continuous measurements at configured standby rate |
Compensation
Section titled “Compensation”The BMP280 stores unique factory calibration coefficients at power-on. All raw ADC values must be passed through the Bosch compensation formulas (detailed in datasheet §4.2.3) to obtain physical units:
- Temperature: returns value in 0.01 °C units
- Pressure: returns value in Pa (divide by 256 for float Pa)
The simulator applies these compensation formulas internally and exposes the calibrated values directly.
Simulation Controls
Section titled “Simulation Controls”| Control | Range | Description |
|---|---|---|
| Temperature slider | −40 to +85 °C | Sets ambient temperature |
| Pressure slider | 300 to 1100 hPa | Sets ambient pressure |
Thermal lag (τ ≈ 2 s) and Gaussian measurement noise matching the datasheet specs are applied to every reading.
Altitude Estimation
Section titled “Altitude Estimation”Altitude can be derived from pressure using the barometric formula:
altitude = 44330 × (1 − (P / P0)^(1/5.255))Where P0 is sea-level reference pressure (typically 1013.25 hPa).
Limitations
Section titled “Limitations”- IIR filter coefficients are stored but do not affect the simulated output
- Standby time in normal mode is not simulated — data updates on each read