BMP280 : Data sheet [604777]
BMP280 : Data sheet
Document revision 1.14
Document release date May 5th, 201 5
Document number BST-BMP280 -DS00 1-11
Technical reference code(s) 0273 300 416
Notes Data in this document are subject to change without notice. Product
photos and pictures are for illustration purposes only and may differ from
the real product’s appearance.
Data sheet
BMP280
Digital Pressure Sensor
Bosch Sensortec
Datasheet
BMP280 Digital Pressure Sensor Page 2
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
BMP280
DIGITAL PRESSURE SENSOR
Key parameters
Pressure range 300 … 1100 hPa
(equiv . to +900 0…-500 m above/below sea level)
Package 8-pin LGA metal -lid
Footprint : 2.0 × 2.5 mm² , height : 0.95 mm
Relative accuracy ±0.12 hPa, equiv. to ± 1 m
(950 … 1050hPa @25°C )
Absolute accuracy typ. ±1 hPa
(950 …1050 hPa , 0 …+40 °C )
Temperature co efficient offset 1.5 Pa/K , equiv. to 12.6 cm/K
(25 … 40°C @900hPa)
Digital interfaces I²C (up to 3.4 MHz)
SPI (3 and 4 wire, up to 10 MHz)
Current consumption 2.7µA @ 1 Hz sampling rate
Temperature range -40 … +85 °C
RoHS compliant, halogen -free
MSL 1
Typical applications
Enhancement of GPS navigation
(e.g. time-to-first-fix improvement, dead -reckoning, slope detection )
Indoor navigation (floor detection, elevator detection)
Outdoor navigation, l eisure and sports applications
Weather forecast
Health care applications (e.g. spirometry)
Vertical velocity indication ( e.g. rise/sink speed )
Target devices
Handsets such as mobile phones, tablet PCs, GPS devices
Navigation systems
Portable health care devices
Home w eather stations
Flying toys
Watch es
Datasheet
BMP280 Digital Pressure Sensor Page 3
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
General Description
Robert Bosch is the world market leader for pressure sensors in automotive and consumer
applications. Bosch’s proprietary APSM ( Advanced Porous Silicon Membrane ) MEMS
manufacturing process is fully CMOS compatible and allows a herm etic sealing of the cavity in
an all silicon process . The BMP280 is based on Bosch’s proven Piezo-resistive pressure sensor
technology featuring high EMC robustness, high accuracy and linearity and long term stability.
The BMP280 is an absolute barometric pressure sensor especially designed for mobile
applications. The sensor module is housed in an extremely compact 8 -pin metal -lid LGA
package with a footprint of onl y 2.0 × 2.5 mm2 and 0.95 mm package height. Its small
dimensions and i ts low power consumpt ion of 2.7 µA @1Hz allow the implementation in battery
driven devices such as mobile phones, GPS modules or watches.
As the successor to the widely adopted BMP180, the BMP280 delivers high performance in all
application s that require precise pressu re meas urement. The BMP280 operates at lower noise,
supports new filter modes and an SPI interface within a footprint 63% smaller than the BMP180.
The emerging applications of in -door navigation, health care as well as GPS refinement require
a high relative acc uracy and a low TCO at the same time . BMP180 and BMP280 are perfectly
suitable for applications like floor detection since both sensors feature excellent relative
accuracy is ±0.12 hPa, which is equivalent to ±1 m difference in altitude . The very low offset
temperature coefficient (TCO) of 1.5 Pa/K translates to a temperature drift of only 12.6 cm/K.
Please contact your regional Bosch Sensortec partner for more information about software
packages enhancing the calculation of the altitude given by the BMP2 80 pressure reading .
Table 1: Comparison between BMP180 and BMP280
Parameter BMP180 BMP280
Footprint 3.6 × 3.8 mm 2.0 × 2.5 mm
Minimum V DD 1.80 V 1.71 V
Minimum V DDIO 1.62 V 1.20 V
Current consumption @3 Pa RMS noise 12 µA 2.7 µA
RMS Noise 3 Pa 1.3 Pa
Pressure resolution 1 Pa 0.16 Pa
Temperature resolution 0.1°C 0.01°C
Interfaces I²C I²C & SPI (3 and 4 wire,
mode ‘00’ and ‘11’)
Measurement modes Only P or T, forced P&T, forced or periodic
Measurement rate up to 120 Hz up to 157 Hz
Filter options None Five bandwidths
Datasheet
BMP280 Digital Pressure Sensor Page 4
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Index of Contents
1. SPECIFICATION ………………………….. ………………………….. ………………………….. …………………… 7
2. ABSOLUTE MAXIMUM RATINGS ………………………….. ………………………….. ………………………. 9
3. FUNCTIONAL DESCRI PTION ………………………….. ………………………….. ………………………….. . 10
3.1 BLOCK DIAGRAM ………………………….. ………………………….. ………………………….. …………… 11
3.2 POWER MANAGEMENT ………………………….. ………………………….. ………………………….. ……. 11
3.3 MEASUREMENT FLOW ………………………….. ………………………….. ………………………….. ……. 11
3.3.1 PRESSURE MEASUREMENT ………………………….. ………………………….. ………………………….. ……….. 12
3.3.2 TEMPERATURE MEASUREME NT ………………………….. ………………………….. ………………………….. ….. 13
3.3.3 IIR FILTER ………………………….. ………………………….. ………………………….. ………………………….. …. 13
3.4 FILTER SELECTION ………………………….. ………………………….. ………………………….. ………… 14
3.5 NOISE ………………………….. ………………………….. ………………………….. ………………………… 15
3.6 POWER MODES ………………………….. ………………………….. ………………………….. …………….. 15
3.6.1 SLEEP MODE ………………………….. ………………………….. ………………………….. ………………………….. 16
3.6.2 FORCED MODE ………………………….. ………………………….. ………………………….. ……………………….. 16
3.6.3 NORMAL MODE ………………………….. ………………………….. ………………………….. ……………………….. 16
3.6.4 MODE TRANSITION DIAGR AM ………………………….. ………………………….. ………………………….. ……… 17
3.7 CURRENT CONSUMPTION ………………………….. ………………………….. ………………………….. … 18
3.8 MEASUREMENT TIMINGS ………………………….. ………………………….. ………………………….. …. 18
3.8.1 MEASUREMENT TIME ………………………….. ………………………….. ………………………….. ……………….. 18
3.8.2 MEASUREMENT RATE IN N ORMAL MODE ………………………….. ………………………….. ……………………. 19
3.9 DATA READOUT ………………………….. ………………………….. ………………………….. ……………. 19
3.10 DATA REGISTER SHADOWI NG ………………………….. ………………………….. ……………………… 20
3.11 OUTPUT COMPENSATION ………………………….. ………………………….. ………………………….. . 20
3.11.1 COMPUTATIONAL REQUIRE MENTS ………………………….. ………………………….. …………………………. 20
3.11.2 TRIMMING PARAMETER RE ADOUT ………………………….. ………………………….. ………………………….. 21
3.11.3 COMPENSATION FORMULA ………………………….. ………………………….. ………………………….. ………. 21
3.12 CALCULATING PRESSURE AND TEMPERATURE ………………………….. ………………………….. … 22
4. GLOBAL MEMORY MAP AND REGISTER DESCRIP TION ………………………….. ……………… 24
4.1 GENERAL REMARKS ………………………….. ………………………….. ………………………….. ………. 24
4.2 MEMORY MAP ………………………….. ………………………….. ………………………….. ………………. 24
4.3 REGISTER DESCRIPTION ………………………….. ………………………….. ………………………….. …. 24
4.3.1 REGISTER 0XD0 “ID” ………………………….. ………………………….. ………………………….. ……………….. 24
4.3.2 REGISTER 0XE0 “RESET” ………………………….. ………………………….. ………………………….. ………….. 24
4.3.3 REGISTER 0XF3 “STATU S” ………………………….. ………………………….. ………………………….. ………… 25
4.3.4 REGISTER 0XF4 “CTRL _MEAS” ………………………….. ………………………….. ………………………….. …… 25
4.3.5 REGISTER 0XF5 “CONFIG” ………………………….. ………………………….. ………………………….. ………… 26
4.3.6 REGISTER 0XF7…0 XF9 “PRESS” (_MSB, _LSB, _XLSB) ………………………….. ………………………….. .. 26
4.3.7 REGISTER 0XFA…0 XFC “TEMP” (_MSB, _LSB, _XLSB)………………………….. ………………………….. … 27
Datasheet
BMP280 Digital Pressure Sensor Page 5
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
5. DIGITAL INTERFACE S ………………………….. ………………………….. ………………………….. ………… 28
5.1 INTERFACE SELECTION ………………………….. ………………………….. ………………………….. …… 28
5.2 I²C INTERFACE ………………………….. ………………………….. ………………………….. ……………… 28
5.2.1 I²C WRITE ………………………….. ………………………….. ………………………….. ………………………….. …. 29
5.2.2 I²C READ ………………………….. ………………………….. ………………………….. ………………………….. ….. 29
5.3 SPI INTERFACE ………………………….. ………………………….. ………………………….. …………….. 30
5.3.1 SPI WRITE ………………………….. ………………………….. ………………………….. ………………………….. … 31
5.3.2 SPI READ ………………………….. ………………………….. ………………………….. ………………………….. …. 31
5.4 INTERFACE PARAMETER S PECIFICATION ………………………….. ………………………….. …………. 32
5.4.1 GENERAL INTERFACE PAR AMETER S ………………………….. ………………………….. …………………………. 32
5.4.2 I²C TIMINGS ………………………….. ………………………….. ………………………….. ………………………….. . 32
5.4.3 SPI TIMINGS ………………………….. ………………………….. ………………………….. ………………………….. 33
6. PIN -OUT AND CONNECTION DIAGRAM ………………………….. ………………………….. …………… 35
6.1 PIN-OUT ………………………….. ………………………….. ………………………….. ……………………… 35
6.2 CONNECTION DIAGRAM 4-WIRE SPI ………………………….. ………………………….. ………………. 36
6.3 CONNEC TION DIAGRAM 3-WIRE SPI ………………………….. ………………………….. ………………. 37
6.4 CONNECTION DIAGRAM I2C ………………………….. ………………………….. ………………………….. 38
7. PACKAGE, REEL AND ENVIRONMENT ………………………….. ………………………….. ……………. 39
7.1 OUTLINE DIMENSIONS ………………………….. ………………………….. ………………………….. ……. 39
7.2 LANDING PATTERN RECOM MENDATION ………………………….. ………………………….. …………… 40
7.3 MARKING ………………………….. ………………………….. ………………………….. …………………….. 41
7.3.1 MASS PRODUCTION DEVIC ES ………………………….. ………………………….. ………………………….. …….. 41
7.3.2 ENGINEERING SAMPLES ………………………….. ………………………….. ………………………….. ……………. 41
7.4 SOLDERING GUIDELINES ………………………….. ………………………….. ………………………….. …. 42
7.5 TAPE AND REEL SPECIFI CATION ………………………….. ………………………….. ……………………. 43
7.5.1 DIMENSIONS ………………………….. ………………………….. ………………………….. ………………………….. 43
7.5.2 ORIENTATION WITHIN TH E REEL ………………………….. ………………………….. ………………………….. ….. 43
7.6 MOUNTING AND ASSEMBLY RECOMMENDATIONS ………………………….. ………………………….. . 44
7.7 ENVIRONMENTAL SAFETY ………………………….. ………………………….. ………………………….. .. 44
7.7.1 ROHS ………………………….. ………………………….. ………………………….. ………………………….. ……… 44
7.7.2 HALOGEN CONTENT ………………………….. ………………………….. ………………………….. ………………… 44
7.7.3 INTERNAL PACKAGE STRU CTURE ………………………….. ………………………….. ………………………….. … 44
8. APPENDIX 1: COMPU TATION FORMULAE FOR 32 BIT SYSTEMS ………………………….. .. 44
8.1 COMPENSATION FORMULA IN FLOATING POINT ………………………….. ………………………….. …. 44
8.2 COMPENSATION FORMULA IN 32 BIT FIXED POINT ………………………….. ………………………….. 45
9. LEGAL DISCLAIMER ………………………….. ………………………….. ………………………….. …………… 47
9.1 ENGINEERING SAMPLES ………………………….. ………………………….. ………………………….. …. 47
Datasheet
BMP280 Digital Pressure Sensor Page 6
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
9.2 PRODUCT USE ………………………….. ………………………….. ………………………….. ……………… 47
9.3 APPLICATION EXAMPLES AND HINTS ………………………….. ………………………….. ………………. 47
10. DOCUMENT HISTORY AND MODIFICATION ………………………….. ………………………….. ….. 48
Datasheet
BMP280 Digital Pressure Sensor Page 7
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
1. Specification
If not stated otherwise,
All values are valid over the full voltage range
All minimum/maximum values are given for the full accuracy temperature range
Minimum/maximum values of drifts, offsets and temperature coefficients are ±3 values
over lifetime
Typical values of currents and state machine timings are determined at 25 °C
Minimum/maximum values of currents are determined using corner lots over complete
temperature range
Minimum/maximum values of state machine timings are determined using corner lots
over 0…+65 °C temperature range
The specification tables are split into pressure and temperature part of BM P280
Table 2: Parameter specification
Parameter Symbol Condition Min Typ Max Units
Operating temperature
range TA operational -40 25 +85
°C
full accuracy 0 +65
Operating pressure
range P full accuracy 300 1100 hPa
Sensor s upply voltage VDD ripple max. 50mVpp 1.71 1.8 3.6 V
Interface supply voltage VDDIO 1.2 1.8 3.6 V
Supply current IDD,LP 1 Hz forced mod e,
pressure and
temperature, lowest
power 2.8 4.2 µA
Peak current Ipeak during pressure
measurement 720 1120 µA
Current at temperature
measurement IDDT 325 µA
Sleep current1 IDDSL 25 °C 0.1 0.3 µA
Standby current
(inactive period of
normal mode ) 2 IDDSB 25 °C 0.2 0.5 µA
Relative accuracy
pressure
VDD = 3.3V Arel 700 … 900hPa
25 . . . 40 °C ±0.12 hPa
±1.0 m
1 Typical value at VDD = VDDIO = 1.8 V, maximal value at VDD = VD DIO = 3.6 V.
2 Typical value at VDD = VDDIO = 1.8 V, maximal value at VDD = VDDIO = 3.6 V.
Datasheet
BMP280 Digital Pressure Sensor Page 8
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Offset temperature
coefficient TCO 900hPa
25 . . . 40 °C ±1.5 Pa/K
12.6 cm/K
Absolute accuracy
pressure AP
ext 300 . . . 1 100 hPa
-20 . . . 0 °C ±1.7 hPa
AP
full 300 . . . 1100 hPa
0 . . . 65 °C ±1.0 hPa
Resolution of
output data in ultra high
resolution mode RP Pressure 0.0016 hPa
RT Temperature 0.01 °C
Noise in pressure Vp,full Full bandwidth, ultra
high resol ution
See chapt er 3.5 1.3 Pa
11 cm
Vp,filtered Lowest bandwidth,
ultra high resolution
See chapter 3.5 0.2 Pa
1.7 cm
Absolute accuracy
temperature3 AT @ 25 °C ±0.5 °C
0 . . . +65 °C ±1.0 °C
PSRR (DC) PSRR full V DD range ±0.005 Pa/
mV
Long term stability4 Pstab 12 months ±1.0 hPa
Solder drifts Minimum solder
height 50 µm -0.5 +2 hPa
Start -up time tstartup Time to first
communication after
both V DD > 1.58V and
VDDIO > 0.65V 2 ms
Possible sampling rate fsample osrs_t = osrs_p = 1;
See chapter 3.8 157 182 tbd5 Hz
Standby time accuracy tstandby ±5 ±25 %
3 Temperature measured by the internal temperature sensor. This temperature value depends on the PCB temperature, sensor
element self -heating and ambient temperature and is typically above ambient temperature.
4 Long term stability is specified in the full accuracy operating pressure range 0 … 65°C
5 Depends on application case, please contact Application Engineer for further questions
Datasheet
BMP280 Digital Pressure Sensor Page 9
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
2. Absolute maximum ratings
The absolute maximum ratings are provided in Table 3.
Table 3: Absolute maximum ratings
Parameter Condition Min Max Unit
Voltage at any s upply pin VDD and VDDIO Pin -0.3 4.25 V
Voltage at any interface pin -0.3 VDDIO + 0.3 V
Storage Temp erature ≤ 65% rel. H. -45 +85 °C
Pressure 0 20 000 hPa
ESD HBM, at any Pin ±2 kV
CDM ±500 V
Machine model ±200 V
Datasheet
BMP280 Digital Pressure Sensor Page 10
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3. Functional description
The BMP280 consists of a Piezo -resistive pressure sensing element and a mixed -signal ASIC.
The ASIC performs A/D conversions and provides the conversion results and sensor spe cific
compensation data through a digital interface.
BMP280 provides highest flexibility to the designer and can be adapted to the requirements
regarding accuracy, measurement time and power consumption by selecting from a high
number of possible combinat ions of the sensor settings.
BMP280 can be operated in three power modes (see chapter 3.6):
sleep mode
normal mode
forced mode
In sleep mode, no measurements are performed. Normal mode comprises an automated
perpetual cycling between an active measurement period and an inactive standby period. In
forced mode, a single measurement is performed. When the measurement is finished, the
sensor returns to sleep mode.
A set of oversampling settings is available rangi ng from ultra low power to ultra high resolution
setting in order to adapt the sensor to the target application. The settings are predefined
combinations of pressure measurement oversampling and temperature measurement
oversampling . Pressure and temperatur e measurement oversampling can be selected
independently from 0 to 16 times oversampling (see chapter 3.3.1 and 3.3.2 ):
Temperature measurement
Ultra low power
Low power
Standard resolution
High re solution
Ultra high resolution
BMP280 is equipped with a built -in IIR filter in order to minimize short -term disturbances in the
output data caused by the slamming of a door or window. The filter coefficient ranges from 0
(off) to 16.
In order to simplif y the device usage and reduce the high number of possible combinations of
power modes, oversampling rates and filter settings, Bosch Sensortec provides a proven set of
recommendations for common use -cases in smart -phones, mobile weather stations or flying
toys (see chapter 3.4):
Handheld device low -power ( e.g. smart phones running Android )
Handheld device dynamic (e.g. smart phones running Android )
Weather monitoring ( setting with lowest power consumption )
Elevator / floor chan ge detection
Drop detection
Indoor navigation
Datasheet
BMP280 Digital Pressure Sensor Page 11
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3.1 Block diagram
Figure 1 shows a simplified block diagram of the BM P280 :
Figure 1: Block diagram of BM P280
3.2 Power management
The BMP280 has two separate power supply pins
VDD is the main power supply for all internal analog and digital functional blocks
VDDIO is a separate power su pply pin, used for the supply of the digital interface
A power -on reset generator is built in which resets the logic circuitry and the register values
after the power -on sequence. There are no limitations on slope and sequence of raising the V DD
and V DDIO levels. After powering up, the sensor settles in sleep mode (see 3.6.1 ).
Warning. Holding any inter face pin (SDI, SDO, SCK or CSB) at a logical high level when V DDIO is
switched off can permanently damage the device due caused by excessive current flow th rough
the ESD protection diodes.
If VDDIO is supplied, but V DD is not, the interface pins are kept at a high -Z level. The bus can
therefore already be used freely before the BMP280 VDD supply is established.
3.3 Measurement flow
The BMP280 measurement period consists of a temperature and pressure measurement with
selectable oversampling. After the measure ment period , the data are passed through an
optional IIR filter, which removes short -term fluctuations in pressure (e.g. caused by slamming a
door). The flow is depicted in the diagram below.
Logic
OSC NVMADCPressure/
temperature
sensing
elementVoltage
referenceVoltage
regulator
(analog &
digital)VDDIO
GNDI
n
t
e
r
f
a
c
eSDI
SDO
SCK
CSBVDD
PORAnalog
front-end
Datasheet
BMP280 Digital Pressure Sensor Page 12
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Measure temperature
(oversampling set by osrs_t;
skip if osrs_t = 0)Start
measurement cycle
Measure pressure
(oversampling set by osrs_p;
skip if osrs_p = 0)IIR filter enabled?
End
measurement cycleIIR filter initialised?Copy ADC values
to filter memory
(initalises IIR filter)No
Update filter memory using
filter memory, ADC value
and filter coefficientNo
Yes
Yes
Copy filter memory
to output registers
Figure 2: BMP280 measurement cycle
The individual blocks of the diagram above will be detailed in the following subchapters.
3.3.1 Pressure measurement
Pressure measurement can be enabled or skipped. Skipping the measurement could be useful
if BMP280 is used as temperatu re sensor. When enabled, several oversampling options exist.
Each oversampling step reduces noise and increases the output resolution by one bit, which is
stored in the XLSB data register 0xF9 . Enabling/disabling the measurement and oversampling
setting s are selected through the osrs_p[2:0] bits in control register 0xF4 .
Table 4: osrs_p settings
Oversampling setting Pressure
oversampling Typical pressure
resolution Recommended
temperature
oversampling
Pressure measurement
skipped Skipped
(output set to
0x80000) – As needed
Ultra low power ×1 16 bit / 2.62 Pa ×1
Low power ×2 17 bit / 1.31 Pa ×1
Standard resolution ×4 18 bit / 0.66 Pa ×1
High resolution ×8 19 bit / 0.33 Pa ×1
Ultra high resolution ×16 20 bit / 0.16 Pa ×2
In ord er to find a suitable setting for osrs_p , please consult chapter 3.4.
Datasheet
BMP280 Digital Pressure Sensor Page 13
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3.3.2 Temperature measurement
Temperature measurement can be enabled or skipped. Skipping the measurement could be
useful to measure pressure extremely rapidly. When enabled, several oversampling options
exist. Each oversampling step reduces noise and increases t he output resolution by one bit,
which is stored in the XLSB data register 0xFC . Enabling/disabling the temperature
measurement and oversampling setting are selected through the osrs_t[2:0] bits in control
register 0xF4 .
Table 5: osrs_t settings
osrs_t [2:0] Temperature oversampling Typical temperature
resolution
000 Skipped
(output set to 0x80000) –
001 ×1 16 bit / 0.0050 °C
010 ×2 17 bit / 0.0025 °C
011 ×4 18 bit / 0.0012 °C
100 ×8 19 bit / 0.0006 °C
101, 110, 111 ×16 20 bit / 0.0003 °C
It is recommended to base the value of osrs_t on the selected value of osrs_p as per Table 4.
Temperature oversampling above ×2 is possibl e, but will not significantly improve the accuracy
of the pressure output any further. The reason for this is that the noise of the compensated
pressure value depends more on the raw pressure than on the raw temperature noise.
Following the recommended set ting will result in an optimal noise -to-power ratio.
3.3.3 IIR filter
The environmental pressure is subject to many short -term changes, caused e.g. by slamming of
a door or window, or wind blowing into the sensor. To suppress these disturbances in the output
data without causing additional interface traffic and processor work load, the BMP280 features
an internal IIR filter. It effectively reduces the b andwidth of the output signals6. The output of a
next measurement step is filter using the following formula:
t coefficien filterADC data t coefficien filter old filtered datafiltered data__ )1 _ ( _ __
,
where data_filtered_old is the data coming from the previous acquisition, and data_ADC is the
data coming from the ADC before IIR filtering.
The IIR filter can be configured using the filter[2:0] bits in control register 0xF5 w ith the following
options :
6 Since most pressure sensors d o not sample continuously, filtering can suffer from signals with a frequency higher than the
sampling rate of the sensor. E.g. environmental fluctuations caused by windows being opened and closed might have a frequency
<5 Hz. Consequently, a sampling rate of ODR = 10 Hz is sufficient to obey the Nyquist theorem.
Datasheet
BMP280 Digital Pressure Sensor Page 14
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Table 6: filter settings
Filter coefficient Samples to reach ≥75 %
of step response
Filter off 1
2 2
4 5
8 11
16 22
In order to find a suitable setting for filter, please consult chapter 3.4.
When writing to the register filter, the filter is reset. The next val ue will pass through the filter
and be the initial memory value for the filter. If temperature or pressure measurement is
skipped, the corresponding filter memory will be kept unchanged even though the output
registers are set to 0x80000. When the previous ly skipped measurement is re -enabled, the
output will be filtered using the filter memory from the last time when the measurement was not
skipped.
3.4 Filter selection
In order to select optimal settings, the following use cases are suggested:
Table 7: Recommended filter settings based on use case s
Use case Mode Over –
sampling
setting osrs_p osrs_t IIR
filter
coeff.
(see
3.3.3 ) IDD
[µA]
(see
3.7) ODR
[Hz]
(see
3.8.2 ) RMS
Noise
[cm]
(see
3.5)
handheld device
low-power
(e.g. Android) Normal Ultra high
resolution ×16 ×2 4 247 10.0 4.0
handheld device
dynamic
(e.g. Android) Normal Standard
resolution ×4 ×1 16 577 83.3 2.4
Weather
monitoring
(lowest power) Forced Ultra low
power ×1 ×1 Off 0.14 1/60 26.4
Elevator / floor
change detection Normal Standard
resolution ×4 ×1 4 50.9 7.3 6.4
Drop detection Normal Low
power ×2 ×1 Off 509 125 20.8
Indoor navigation Normal Ultra high
resolution ×16 ×2 16 650 26.3 1.6
Datasheet
BMP280 Digital Pressure Sensor Page 15
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3.5 Noise
Noise depends on the oversampling and filter setting s selected . The stated values were
determined in a controlled pressure environment and are based on the average standard
deviat ion of 32 consecutive measurement points taken at highest sampling speed. This is
needed in order to exclude long term drifts from the noise measurement.
Table 8: Noise in pressure
Typical RMS noise in pressure [Pa]
Oversampling s etting IIR filter coefficient
off 2 4 8 16
Ultra low power 3.3 1.9 1.2 0.9 0.4
Low power 2.6 1.5 1.0 0.6 0.4
Standard resolution 2.1 1.2 0.8 0.5 0.3
High resolution 1.6 1.0 0.6 0.4 0.2
Ultra high resolution 1.3 0.8 0.5 0.4 0.2
Table 9: Noise in temperature
Typical RMS noise in temperature [°C]
Temperature oversampling IIR filter off
oversampling ×1 0.005
oversampling ×2 0.004
oversampling ×4 0.003
oversampling ×8 0.003
oversampling ×16 0.002
3.6 Power modes
The BMP280 off ers three power modes: sleep mode, forced mode and normal mode. These
can be selected using the mode[1:0] bits in control register 0xF4 .
Table 10: mode settings
mode [1:0] Mode
00 Sleep mode
01 and 10 Forced mode
11 Normal mode
Datasheet
BMP280 Digital Pressure Sensor Page 16
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3.6.1 Sleep mode
Sleep mode is set by default after power on reset. In sleep mode, no measurements are
performed and power consumption (IDDSM) is at a minimum. All registers are accessible; Chip -ID
and compensation coefficients can be read.
3.6.2 Forced mode
In for ced mode, a single measurement is performed according to selected measurement and
filter options. When the measurement is finished, the sensor returns to sleep mode and the
measurement results can be obtained from the data registers. For a next measurement , forced
mode needs to be selected again. This is similar to BMP180 operation. Forced mode is
recommended for applications which require low sampling rate or host -based synchronization.
timecurrent
IDDSLIDDSBIDDP
IDDT
POR Mode[1:0] = 01Measurement T
Measurement P Measurement P
Measurement P
Measurement P Measurement T
Measurement T
Measurement P Measurement P
Measurement P
Measurement P Measurement T
Data readout osrs_tosrs_p
Write
settingsMode[1:0] = 01
Figure 3: Forced mode timing diagram
3.6.3 Normal mode
Normal mode continuosly cycles between an (active) measurement period and an (inactive)
standby period , whose time is defined by t standby . The current in the standby period (IDDS B) is
slightly higher than in sleep mode. A fter setting the mode ,measurement and filter options, the
last measurement results can be obtained from the data registers without the need of further
write accesses. Normal mode is recommended when using the IIR filter , and useful for
applications in whic h short -term disturbances (e.g. blowing into the sensor) should be filtered.
timecurrent
IDDSLIDDSBIDDP
IDDT
POR Mode[1:0] = 11Measurement T
Measurement P Measurement P
Measurement P
Measurement P Measurement T
Measurement T
Measurement P Measurement P
Measurement P
Measurement P Measurement T
Data readout
when neededosrs_tosrs_p
Write
settingststandby
Figure 4: Normal mode timing diagram
Datasheet
BMP280 Digital Pressure Sensor Page 17
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
The standby time is determined by the contents of the t_sb[2:0] bits in control registe r 0xF5
according to the table below:
Table 11: t_sb settings
t_sb[1:0] tstandby [ms]
000 0.5
001 62.5
010 125
011 250
100 500
101 1000
110 2000
111 4000
3.6.4 Mode transition diagram
The supported mode transitions are displayed below. If the device is currently performing a
measurement, e xecution of mode switching command s is del ayed until the en d of the currently
running measurement period. Further mode change commands are ignored until the last mode
change command is executed. Mode transitions other than the ones shown below are tested for
stability but do not represent recommended use of the device.
Power OFF
(VDD or VDDIO = 0)
VDD and VDDIO
supplied
Mode[1:0] = 00
Mode[1:0] = 01SleepNormal
(cyclic standby and
measurement periods)
Mode[1:0] = 11
Forced
(one measurement
period)Mode[1:0] = 01
Figure 5: Mode transition diagram
Datasheet
BMP280 Digital Pressure Sensor Page 18
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3.7 Current consumption
The current cons umption depends on ODR and oversampling setting. The values given below
are normalized to an ODR of 1 Hz. The actual consumption at a given ODR can be calculated
by multiplying the consumption in Table 12 with the ODR used. The ac tual ODR is defined
either by the frequency at which the user sets forced measurements or by oversampling and
tstandby settings in normal mode in Table 14.
Table 12: Current consumption
Oversampling settin g Pressure
oversampling Temperature
oversampling IDD [µA] @ 1 Hz forced mode
Typ Max
Ultra low power ×1 ×1 2.74 4.16
Low power ×2 ×1 4.17 6.27
Standard resolution ×4 ×1 7.02 10.50
High resolution ×8 ×1 12.7 18.95
Ultra high resolution ×16 ×2 24.8 36.85
3.8 Measurement timings
The rate at which measurements can be performed in forced mode depends on the
oversampling settings osrs_t and osrs_p . The rate at which they are performed in normal mode
depends on the oversampling setting settings osrs_t and osrs_p and the standby time t standby . In
the following table the resulting ODRs are given only for the suggested osrs combinations.
3.8.1 Measurement time
The following table explains the typical and maximum measurement time based on selected
oversampling settin g. The minimum achievable frequency is determined by the maximum
measurement time.
Table 13: measurement time
Oversampling
setting Pressure
oversampling Temperature
oversampling Measurement
time [ms] Measurement
rate [Hz]
Typ Max Typ Min
Ultra low power ×1 ×1 5.5 6.4 181.8 155.6
Low power ×2 ×1 7.5 8.7 133.3 114.6
Standard resolution ×4 ×1 11.5 13.3 87.0 75.0
High resolution ×8 ×1 19.5 22.5 51.3 44.4
Ultra high resolution ×16 ×2 37.5 43.2 26.7 23.1
Datasheet
BMP280 Digital Pressure Sensor Page 19
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3.8.2 Measurement rate in normal mode
The following table explains which measurement rates can be expected in normal mode based
on oversampling setting and tstandby .
Table 14: typical output data Rate (ODR) in normal mode [Hz]
Oversampling
setting tstandby [ms]
0.5 62.5 125 250 500 1000 2000 4000
Ultra low power 166.67 14.71 7.66 3.91 1.98 0.99 0.50 0.25
Low power 125.00 14.29 7.55 3.88 1.97 0.99 0.50 0.25
Standard
resolution 83.33 13.51 7.33 3.82 1.96 0.99 0.50 0.25
High resolution 50.00 12.20 6.92 3.71 1.92 0.98 0.50 0.25
Ultra high
resolution 26.32 10.00 6.15 3.48 1.86 0.96 0.49 0.25
Table 15: Sensor timing according to recommended settings (based on use cases)
Use case Mode Over –
sampling
setting osrs_p osrs_t IIR
filter
coeff.
(see
3.3.3 ) Timing ODR
[Hz]
(see
3.8.2 ) BW
[Hz]
(see
3.3.3 )
handheld device
low-power (e.g.
Android) Normal Ultra high
resolution ×16 ×2 4 tstandby =
62.5 ms 10.0 0.92
handheld device
dynamic (e.g.
Android) Normal Standard
resolution ×4 ×1 16 tstandby =
0.5 ms 83.3 1.75
Weather
monitoring
(lowest power) Forced Ultra low
power ×1 ×1 Off 1/min 1/60 full
Elevator / floor
change
detection Normal Standard
resolution ×4 ×1 4 tstandby =
125 ms 7.3 0.67
Drop detection Normal Low
power ×2 ×1 Off tstandby =
0.5 ms 125 full
Indoor
navigation Normal Ultra high
resolution ×16 ×2 16 tstandby =
0.5 ms 26.3 0.55
3.9 Data readout
To read out data after a conversion, it is strongly recommended to use a burst read and not
address every register individually. This will prevent a possible mix -up of bytes belonging to
different measurements and reduce interface traffic. Data readout is done by starting a burst
read from 0xF7 to 0xFC. The data are read out in an unsigned 20 -bit format both for pressure
and for temperature. It is strongly recommended to use the BMP280 API, available from Bosch
Sensortec, for readout and compensation. For details on memory map and interfaces, please
consult chapters 3.12 and 5 respectively.
Datasheet
BMP280 Digital Pressure Sensor Page 20
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
The timing for data readout in forced mode should be done so that the maximum measurement
times (see chapter 3.8.1 ) are respected. In normal mode, readout can be done at a speed
similar to the expected data output rate (see chapter 3.8.2 ). After the values of ‘ut’ and ‘up’ have
been read, the actual pressure and temperatur e need to be calculated using the compensation
parameters stored in the device. The procedure is elaborated in chapter 3.11.
3.10 Data register shadowing
In normal mode, measurement timing is not necessarily synchronized to readout . This means
that new measurement results may become available while the user is reading the results from
the previous measurement. In this case, shadowing is performed in order to guarantee data
consist ency. Shadowing will only work if all data registers are read in a single burst read.
Therefore, the user must use burst reads if he does not synchronize data readout with the
measurement cycle. Using several independent read commands may result in inconsistent data.
If a new measurement is finished and th e data registers are still being read, the new
measurement results are transferred into shadow data registers. The content of shadow
registers is transferred into data registers as soon as the user ends the burst read, even if not all
data registers were r ead. Reading across several data registers can therefore only be
guaranteed to be consistent with in one measurement cycle if a single burst read command is
used. The end of the burst read is marked by the rising edge of CSB pin in SPI case or by the
recogn ition of a stop condition in I2C case. After the end of the burst read, all user data
registers are updated at once.
3.11 Output compensation
The BMP280 output consists of the ADC output values. However, each sensing element
behaves differently , and actual pre ssure and temperature must be calculated using a set of
calibration parameters . The recommended calculation in chapter 3.11.3 uses fixed point
arithmetic. In high-level languages like Matlab™ or LabVIEW™ , fixed -point code may n ot be
well supported. In this case the floating -point code in appendix 8.1 can be used as an
alternative. For 8 -bit micro controllers, the variable size may be limited. In this case a simplified
32 bit integer code with reduced accuracy is given in appendix 8.2.
3.11.1 Computational requirements
The table below shows the number of clock cycles needed for compensation calculations on a
32 bit Cortex -M3 micro controller with GCC optimization level –O2. This controller does not
contain a floating point unit, so all floating -point calculations are emulated. Floating point is only
recommended for PC application s where an FPU is present .
Table 16: Computational requirements for compensati on formulas
Compensation of Number of clock cycles (ARM Cortex -M3)
32 bit integer 64 bit integer Double precision
Temperature ~46 – ~2400 7
Pressure ~112 8 ~1400 ~5400 7
7 Use only recommended for high -level programming languages like Matlab™ or LabVIEW™
8 Use only recommended for 8-bit micro controllers
Datasheet
BMP280 Digital Pressure Sensor Page 21
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
3.11.2 Trimming parameter readout
The trimming parameters are programmed into the devices’ non -volatile memory (NVM) during
production and cannot be altered by the customer. Each compensation word is a 16 -bit signed
or unsigned integer value stored in two’s complement. As the memory is organiz ed into 8 -bit
words, two words must always be combined in order to represent the compensation word. The
8-bit registers are named calib00…calib25 and are stored at memory addresses 0x88…0xA1.
The corresponding compensation words are named dig_T # for temper ature compen sation
related values and dig_P# for pressure compensation related values. The mapping is shown in
Table 17.
Table 17: Compensation parameter storage, naming and data type
Regis ter
Address
LSB / MSB Register
content Data type
0x88 / 0x89 dig_T1 unsigned short
0x8A / 0x8B dig_T2 signed short
0x8C / 0x8D dig_T3 signed short
0x8E / 0x8F dig_P1 unsigned short
0x90 / 0x91 dig_P2 signed short
0x92 / 0x93 dig_P3 signed short
0x94 / 0x95 dig_P4 signed short
0x96 / 0x97 dig_P5 signed short
0x98 / 0x99 dig_P6 signed short
0x9A / 0x9B dig_P7 signed short
0x9C / 0x9D dig_P8 signed short
0x9E / 0x9F dig_P9 signed short
0xA0 / 0xA1 reserved reserved
3.11.3 Compensation formula
Please not e that it is strongly advised to use the API available from Bosch Sensortec to perform
readout and compensation . If this is not wanted, the code below can be applied at the user’s
risk. Both pressure and temperature values are expected to be received in 20 bit format,
positive, stored in a 32 bit signed integer.
The variable t_fine (signed 32 bit) carries a fine resolution temperature value over to the
pressure compensation formula and could be implemented as a global variable.
The data type “BMP280_S32_ t” should define a 32 bit signed integer variable type and can
usually be defined as “long signed int”.
The data type “BMP280_U32_t” should define a 32 bit unsigned integer variable type and can
usually be defined as “long unsigned int”.
Datasheet
BMP280 Digital Pressure Sensor Page 22
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
For best possi ble calculation accuracy, 64 bit integer support is needed. If this is not possible on
your platform, please see appendix 8.2 for a 32 bit alternative.
The data type “BMP280_S64_t” should define a 64 bit signed integer variab le type, which on
most supporting platforms can be defined as “long long signed int”. The revision of the code is
rev.1.1.
// Returns temperature in DegC, resolution is 0.01 DegC. Output value of “5123” equals 51.23 DegC.
// t_fine carries fine temperat ure as global value
BMP280_S32_t t_fine;
BMP280_S32_t bmp280_compensate_T_int32( BMP280_S32_t adc_T)
{
BMP280_S32_t var1, var2, T;
var1 = ((((adc_T>>3) – ((BMP280_S32_t )dig_T1<<1))) * (( BMP280_S32_t )dig_T2)) >> 11;
var2 = (((((adc_T>>4) – ((BMP280_S32_ t)dig_T1)) * ((adc_T>>4) – ((BMP280_S32_t )dig_T1))) >> 12) *
((BMP280_S32_t )dig_T3)) >> 14;
t_fine = var1 + var2;
T = (t_fine * 5 + 128) >> 8;
return T;
}
“”–
// Returns pressure in Pa as unsigned 32 bit integer in Q24.8 format (24 integer bits and 8 fractional bits).
// Output value of “24674867 ” represents 24674867/256 = 96386.2 Pa = 963.862 hPa
BMP280_U32_t bmp280_compensate_P_int64( BMP280_S32_t adc_P)
{
BMP280_S64_t var1, var2, p;
var1 = (( BMP280_S64_t )t_fine) – 128000;
var2 = var1 * var1 * ( BMP280_S64_t )dig_P6;
var2 = var2 + ((var1*( BMP280_S64_t )dig_P5)<<17);
var2 = var2 + ((( BMP280_S64_t )dig_P4)<<35);
var1 = ((var1 * var1 * ( BMP280_S64_t )dig_P3)>>8) + ((var1 * ( BMP280_S64_t )dig_P2)<<12);
var1 = ((((( BMP280_S64_t )1)<<47)+var1))*(( BMP280_S6 4_t)dig_P1)>>33;
if (var1 == 0)
{
return 0; // avoid exception caused by division by zero
}
p = 1048576 -adc_P;
p = (((p<<31) -var2)*3125)/var1;
var1 = ((( BMP280_S64_t )dig_P9) * (p>>13) * (p>>13)) >> 25;
var2 = ((( BMP280_S64_t )dig_P8) * p) >> 19;
p = ((p + var1 + var2) >> 8) + ((( BMP280_S64_t )dig_P7)<<4);
return (BMP280_U32_t )p;
3.12 Calculating pressure and temperature
The following figure shows the detailed algorithm for pressure and temperature measurement.
This algorithm is available to customers as reference C source code (“BMP28 x_ API”) from
Bosch Sensortec and via its sales and distribution partners.
Please contact your Bosch Sensortec representative for details.
Datasheet
BMP280 Digital Pressure Sensor Page 23
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Datasheet
BMP280 Digital Pressure Sensor Page 24
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
4. Global memory map and register description
4.1 General remarks
All c ommuni cation with the device is performed by reading from and writing to registers.
Registers have a width of 8 bits . There are several registers which are reserved ; they should not
be written to and no specific value is guaranteed when they are read. For details on t he
interface, consult chapter 5.
4.2 Memory map
The memory map is given in Table 18 below. Reserved registers are not shown.
Table 18: Memory map
Register Name Address bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0Reset
state
temp_xlsb 0xFC 0 0 0 0 0x00
temp_lsb 0xFB 0x00
temp_msb 0xFA 0x80
press_xlsb 0xF9 0 0 0 0 0x00
press_lsb 0xF8 0x00
press_msb 0xF7 0x80
config 0xF5 spi3w_en[0] 0x00
ctrl_meas 0xF4 0x00
status 0xF3 measuring[0] im_update[0] 0x00
reset 0xE0 0x00
id 0xD0 0x58
calib25…calib00 0xA1…0x88 individual
Registers: Reserved
registersCalibration
dataControl
registersData
registersStatus
registersRevision Reset
Type: do not
writeread only read / write read only read only read only write onlycalibration datapress_xlsb<7:4>temp_xlsb<7:4>
temp_lsb<7:0>
temp_msb<7:0>
chip_id[7:0]osrs_t[2:0]
reset[7:0]press_lsb<7:0>
press_msb<7:0>
mode[1:0]t_sb[2:0] filter[2:0]
osrs_p[2:0]
4.3 Regist er description
4.3.1 Register 0xD0 “id”
The “id” register contains the chip identification number chip_id[7:0] , which is 0x 58. This number
can be read as soon as the device finished the power -on-reset .
4.3.2 Register 0xE0 “reset”
The “reset” register contains the sof t reset word reset[7:0]. If the value 0xB6 is written to the
register, the device is reset using the complete power -on-reset procedure. Writing other values
than 0xB6 has no effect. The readout value is always 0x00.
Datasheet
BMP280 Digital Pressure Sensor Page 25
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
4.3.3 Register 0xF3 “status ”
The “status” register contains two bits which indicate the status of the device .
Table 19: Register 0xF3 “status”
Register 0x F3
“status” Name Description
Bit 3 measuring[0] Automatically s et to ‘1’ whenever a conversion is running
and back to ‘0’ when the results have been transferred
to the data registers.
Bit 0 im_update[0] Automatically s et to ‘1’ when the NVM data are being
copied to image registers and back to ‘0’ when the
copying is done. The data are copied at power -on-reset
and before every conversion.
4.3.4 Register 0xF4 “ctrl_meas ”
The “ctrl_meas ” register sets the data acquisition options of the device.
Table 20: Register 0xF4 “ctrl_meas ”
Register 0x F4
“ctrl_meas ” Name Description
Bit 7, 6, 5 osrs_t[2:0] Contr ols oversampling of temperature data. See chapter
3.3.2 for details.
Bit 4, 3, 2 osrs_p[2: 0] Controls oversampling of pressure data. See chapter
3.3.1 for details.
Bit 1, 0 mode[1:0] Controls the power mode of the device. See chapter 3.6
for details.
Table 21: register settings osrs_p
osrs_p [2:0] Pressure
oversampling
000 Skipped (output set to
0x80000)
001 oversampling ×1
010 oversampling ×2
011 oversampling ×4
100 oversampling ×8
101, Others oversampling ×16
Datasheet
BMP280 Digital Pressure Sensor Page 26
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Table 22: register settings osrs_t
osrs_t [2:0] Temperature oversampling
000 Skipped (output set to 0x80000)
001 oversampling ×1
010 oversampling ×2
011 oversampling ×4
100 oversampling ×8
101, 110, 111 oversampling ×16
4.3.5 Register 0xF5 “config ”
The “config” register sets the rate, filter and interface options of the device. Writes to the “config”
register in normal mode may be ignore d. In sleep mode writes are not ignored.
Table 23: Register 0xF 5 “config”
Register 0xF5
“config” Name Description
Bit 7, 6, 5 t_sb[2:0] Controls inactive duration t standby in normal mode. See
chapter 3.6.3 for details.
Bit 4, 3, 2 filter[2:0] Controls the time constant of the IIR filter. See chapter
3.3.3 for details.
Bit 0 spi3w_en[0] Enables 3 -wire SPI interface when set to ‘1’. See
chapte r 5.3 for details.
4.3.6 Register 0xF7…0xF9 “press” (_msb, _lsb, _xlsb)
The “press” register contains the raw pressure measurement output data up[19:0]. For details
on how to read out the pressure and temperature i nformation from the device, please consult
chapter 3.9.
Table 24: Register 0xF 7 … 0xF9 “press”
Register 0xF7 -0xF9
“press” Name Description
0xF7 press_msb[7:0] Contains the MSB part up[19:12] of the raw pressure
measurement output data.
0xF8 press_lsb[7:0] Contains the LSB part up[11:4] of the raw pressure
measurement output data.
0xF9 (bit 7, 6, 5, 4) press_x lsb[3:0] Contains the XLSB part up[3:0] of the raw pressure
measurement output data. Contents depend on
temperature resolution, see table 5 .
Datasheet
BMP280 Digital Pressure Sensor Page 27
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
4.3.7 Register 0xFA…0xFC “temp” (_msb, _lsb, _xlsb)
The “temp” register contains the raw temperature measurement output data ut[19:0]. For details
on how to read out the pressure and temperature information from the device, please consult
chapter 3.9.
Table 25: Register 0xF A … 0xFC “temp”
Register 0xF7 -0xF9
“press” Name Description
0xFA temp_msb[7:0] Contains the MSB part ut[19:12] of the raw temperature
meas urement output data.
0xFB temp_lsb[7:0] Contains the LSB part ut[11:4] of the raw temperature
measurement output data.
0xFC (bit 7, 6, 5, 4) temp_x lsb[3:0] Contains the XLSB part ut[3:0] of the raw temperature
measurement output data. Contents depend o n pressure
resolution, see Table 4.
Datasheet
BMP280 Digital Pressure Sensor Page 28
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
5. Digital interfaces
The BMP280 supports the I²C and SPI digital interfaces ; it acts as a slave for both protocols .
The I²C interface supports the Standard, Fast and High Spee d modes. The SPI int erface
supports both SPI mode ‘ 00’ (CPOL = CPHA = ‘0’ ) and mode ‘ 11’ (CPOL = CPHA = ‘1’ ) in 4-
wire and 3 -wire configuration.
The following transactions are supported:
Single byte write
multiple byte write (using pairs of register add resses and register data)
single byte read
multiple byte read (using a single register address which is auto -incremented)
5.1 Interface selection
Interface selection is done automatically based on CSB (chip select) status. If CSB is connected
to V DDIO, the I²C interface is active. If CSB is pulled down, the SPI interface is activated. After
CSB has been pulled down once (regardless of whether any clock cycle occurred), the I²C
interface is disabled until the next power -on-reset. This is done in order to avoid inadvertently
decoding SPI traffic to another slave as I²C data. Since power -on-reset is only executed when
both V DD and V DDIO are established, there is no risk of incorrect protocol detection due to power –
up sequence used. However, if I²C is to be used and CSB is not directly connected to V DDIO but
rather through a programmable pin, it must be ensured that this pin already outputs the V DDIO
level during power -on-reset of the device. If this is not the case, the device will be locked in SPI
mode and not resp ond to I²C commands.
5.2 I²C Interface
The I ²C slave interface is compatible with Philips I ²C Specification version 2.1. F or detailed
timings refer to Table 27. All modes (standard, fast, high speed) are supported. SDA and SCL
are not pure open -drain. Both pads contain ESD protection diodes to VDDIO and GND. As the
devices does not perform clock stretching, the SCL structure is a high -Z input without drain
capability .
GNDVDDIO
output driver (only for SDI)SDI /SCL high-z level shifter
GND
Figure 6: SDI/SCK ESD drawing
The 7 -bit device address is 111011 x. The 6 MSB bits are fixed . The last bit is changeable by
SDO value and can be changed during operation . Connecting SDO to GND results in slave
address 1110110 (0x76) ; connection it to V DDIO results in slave address 1110111 (0x77) , which
Datasheet
BMP280 Digital Pressure Sensor Page 29
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
is the same as BMP180 ’s I²C address . The SDO pin cannot be left floating; if left floating, the
I²C address will be undefined.
The I²C interface uses the following pins:
SCK: serial clock (SCL )
SDI: data (SDA)
SDO: Slave address LSB (GND = ‘0’, V DDIO = ‘1’)
CSB must be connected to V DDIO to select I²C interface . SDI is bi -directional with open drain to
GND : it must be externally connected to V DDIO via a pull up resistor. Refer to chapter 6 for
connection instructions.
The following abbreviations will be used in the I²C protocol figures :
S Start
P Stop
ACKS Acknowledge by slave
ACKM Acknowledge by master
NACKM Not acknowledge by master
5.2.1 I²C write
Writing is done by sendi ng the slave address in write mode (RW = ‘0’) , resulting in slave
address 111011 X0 (‘X’ is determined by state of SDO pin . Then the master sends pairs of
register address es and register data. The transaction is ended by a stop condition. This is
depicted i n Figure 7.
Start RW ACKS ACKS ACKS
1 1 1 0 1 1 X 0 1 0 1 0 0 0 0 0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 …
ACKS ACKS Stop
… 1 0 1 0 0 0 0 1 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0Register data – address A0h Register address (A0h)
Register address (A1h)SSlave Address
Control byte Data byteControl byte Data byte
PRegister data – address A1h
Figure 7: I²C multiple byte write (not auto -incremented)
5.2.2 I²C read
To be able to read regi sters, first the register address must be sen t in write mode (slave address
111011X0). Then either a stop or a repeated start condition must be generated. After this the
slave is addressed in read mode (RW = ‘1’) at address 111011X1, after which the slave sends
out data from auto -incremented register addresses until a NOACKM and s top condition occurs.
This is depicted in Figure 8, where two bytes are read from register 0xF6 and 0xF7.
Datasheet
BMP280 Digital Pressure Sensor Page 30
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Start RW ACKS ACKS
1 1 1 0 1 1 X 0 1 1 1 1 0 1 1 0
Start RW ACKS ACKM NOACKM Stop
1 1 1 0 1 1 X 1 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0Control byte
Data byte Data byteRegister address (F6h)
SSlave Address
P SSlave Address Register data – address F7h Register data – address F6h
Figure 8: I²C multiple byte read
5.3 SPI interface
The SPI interface is com patible with SPI mode ‘00’ (CPOL = CPHA = ‘0’) and mode ‘11’ (CPOL
= CPHA = ‘1’) . The automatic selection between mode ‘00’ and ‘11’ is determined by the value
of SCK after the CSB falling edge.
The SPI interface has two modes : 4-wire and 3 -wire. The pro tocol is the same for both. The 3 –
wire mode is selected by setting ‘1’ to the register spi 3w_en. The pad SDI is used as a data pad
in 3-wire mode.
Datasheet
BMP280 Digital Pressure Sensor Page 31
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
The SPI interface uses the following pins:
CSB: chip select, active low
SCK: serial clock
SDI: serial data input; data input/output in 3 -wire mode
SDO : serial data output; hi-Z in 3 -wire mode
Refer to chapter 6 for connection instructions.
CSB is active low and has an integrated pull-up resistor. Data on SDI is latched by the d evice at
SCK rising edge and SDO is changed at SCK falling edge. Communication starts when CSB
goes to low and stops when CSB goes to high; during these transitions on CSB, SCK must be
stable. The SPI protocol is shown in Figure 9. For timing details, please review Table 28.
CSB
SCK
SDI
RW AD6 AD5 AD4 AD3 AD2 AD1 AD0 DI5 DI4 DI3 DI2 DI1 DI0 DI7 DI6
SDO
DO5 DO4 DO3 DO2 DO1 DO0 DO7 DO6 tri-state
Figure 9: SPI protocol (shown for mode ‘11’ in 4 -wire configuration)
In SPI mode, only 7 bits of the register addresses are used; the MSB of register address is not
used and replaced by a read/write bit (RW = ‘0’ for write and RW = ‘1’ for read).
Example: address 0xF7 is accessed by using SPI register address 0x77. For write access, the
byte 0x77 is transferred, for read access, the byte 0xF7 is transferred.
5.3.1 SPI write
Writing is done by lowering CSB and sending pairs control bytes and register data. The control
bytes consist of the SPI register address (= full register address without bit 7) and the write
command (bit7 = RW = ‘0’) . Several pairs can be written without raising CSB. The transaction is
ended by a raising CSB . The SPI write protocol is depicted in Figure 10.
Start RW RW Stop
0 1 1 1 0 1 0 0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 0 1 1 1 0 1 0 1 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0Control byte
CSB
=
1Data byte
Register address (F5h) Data register – adress F5h Register address (F4h)
CSB
=
0Control byte Data byte
Data register – address F4h
Figure 10: SPI multiple byte write (n ot auto -incremented)
5.3.2 SPI read
Reading is done by lowering CSB and first sending one control byte. The control bytes consist
of the SPI register address (= full register address without bit 7) and the read command (bit 7 =
RW = ‘1’). After writing the contr ol byte, data is sent out of the SDO pin (SDI in 3 -wire mode);
the register address is automatically incremented. The SPI read protocol is shown in Figure 11.
Datasheet
BMP280 Digital Pressure Sensor Page 32
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Start RW Stop
1 1 1 1 0 1 1 0bit15 bit14 bit13 bit12 bit11 bit10 bit9 bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0CSB
=
1Data byte
Data register – address F7h Register address (F6h)
CSB
=
0Control byte Data byte
Data register – address F6h
Figure 11: SPI mult iple byte read
5.4 Interface parameter specification
5.4.1 General interface parameters
The general interface parameters are given in Table 26 below .
Table 26: interface parameters
Parameter Symbol Condition Min Typ Max Units
Input – low level Vil_si VDDIO=1.2V to 3.6V 0.2 *
VDDIO V
Input – high level Vih_si VDDIO=1.2V to 3.6V 0.8 *
VDDIO V
Output – low level for I2C Vol_SDI VDDIO=1.62V, iol=3 mA 0.2 *
VDDIO V
Output – low level for I2C Vol_SDI
_1.2 VDDIO=1.20V, iol=3 mA 0.23 *
VDDIO V
Output – low level Vol_SD
O VDDIO=1.62V, iol=1 mA 0.2 *
VDDIO V
Output – low level Vol_SD
O_1.2 VDDIO=1.20V, iol=1 mA 0.23 *
VDDIO V
Output – high level Voh VDDIO=1.62V, ioh=1
mA
(SDO, SDI) 0.8 *
VDDIO V
Output – high level Voh_1.2 VDDIO=1.2V, ioh=1 mA
(SDO, SDI) 0.6 *
VDDIO V
Pull-up resistor Rpull Internal pull -up
resistance to V DDIO 70 120 190 kΩ
I2C bus load capacitor Cb On SDI and SCK 400 pF
5.4.2 I²C timing s
For I²C timings, the following abbreviations are used:
“S&F mode” = standard and fast mode
“HS mode” = high speed mode
Cb = bus capacitance on SDA line
All other n aming refers to I ²C spec ification 2.1 (January 2000).
The I²C timing diagram is shown in
Figure 12. The corresponding values are given in Table 27.
Datasheet
BMP280 Digital Pressure Sensor Page 33
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
tHDDAT tf tBUF SDI
SCK
SDI tLOW
tHDSTA tr
tSUSTA tHIGH
tSUDAT
tSUSTO
Figure 12: I²C timing diagram
Table 27: I²C timings
Parameter Symbol Condition Min Typ Max Units
SDI setup time tSU;DAT S&F Mode
HS mode 160
30 ns
ns
SDI hold time tHD;DAT S&F Mode, Cb≤100 pF
S&F Mode, Cb≤400 pF
HS mode, Cb≤100 pF
HS mode, Cb≤400 pF 80
90
18
24
115
150 ns
ns
ns
ns
SCK low pulse tLOW HS mode, Cb≤100 pF
VDDIO = 1.62 V 160 ns
SCK low pulse tLOW HS mode, Cb≤100 pF
VDDIO = 1.2 V 210 ns
The above -mentio ned I2C specific timings correspond to the following internal added delays:
Input d elay between SDI and SCK inputs: SDI is more delayed than SCK by typically
100 ns in Standard and Fast Modes and by typically 20 ns in High Speed Mode.
Output delay from SC K falling edge to SDI output propagation is typically 140 ns in
Standard and Fast Modes and typically 70 ns in High Speed Mode.
5.4.3 SPI timings
The SPI timing diagram is in Figure 13, while the corresponding values are given in Table 28.
All timings apply both to 4 – and 3 -wire SPI.
Datasheet
BMP280 Digital Pressure Sensor Page 34
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
CSB
SCK T_setup_csb
T_low_sck T_high_sck T_hold _csb
SDI
T_setup_ sdi T_hold _sdi
SDO
T_delay _sdo
Figure 13: SPI timing diagram
Table 28: SPI timings
Parameter Symbol Condition Min Typ Max Units
SPI clock input frequency F_spi 0 10 MHz
SCK low pulse T_low_sck 20 ns
SCK high pulse T_high_sck 20 ns
SDI setup time T_setup_sdi 20 ns
SDI hold time T_hold_sdi 20 ns
SDO output delay T_delay_sdo 25pF load, VDDIO=1.6V min 30 ns
SDO output delay T_delay_sdo 25pF load, VDDIO=1.2V min 40 ns
CSB setup time T_setup_csb 20 ns
CSB hold time T_hold_csb 20 ns
Datasheet
BMP280 Digital Pressure Sensor Page 35
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
6. Pin-out and connection diagram
6.1 Pin-out
TOP VIEW
(pads not visible)8
VDD
7
GND
6
VDDIO
5
SDO1
GND
2
CSB
3
SDI
4
SCKBOTTOM VIEW
(pads visible)8
VDD
7
GND
6
VDDIO
5
SDO1
GND
2
CSB
3
SDI
4
SCKVent hole Pin 1
marker
Figure 14: Pin-out top and bottom view
Table 29: Pin description
Pin Name I/O Type Description Connect to
SPI 4W SPI 3W I²C
1 GND Supply Ground GND
2 CSB In Chip select CSB CSB VDDIO
3 SDI In/Out Serial data input SDI SDI/SDO SDA
4 SCK In Serial clock input SCK SCK SCL
5 SDO In/Out Serial data output SDO DNC GND for
default
address
6 VDDIO Supply Digital interface
supply VDDIO
7 GND Supply Ground GND
8 VDD Supply Analog supply VDD
Datasheet
BMP280 Digital Pressure Sensor Page 36
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
6.2 Connection diagram 4 -wire SPI
Figure 15: 4-wire SPI connection diagram (Pin1 marking indicated)
Note: the recommended value for C 1, C2 is 100 nF.
TOP VIEW
(pads not visible)8
VDD
7
GND
6
VDDIO
5
SDO1
GND
2
CSB
3
SDI
4
SCKSDI
C1SCKVDDIO VDD
C2SDOCSBVent hole
Datasheet
BMP280 Digital Pressure Sensor Page 37
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
6.3 Connection diagram 3 -wire SPI
Figure 16: 3-wire SPI connection diagram (Pin1 marking indic ated)
Note: the recommended value for C 1, C2 is 100 nF .
TOP VIEW
(pads not visible)8
VDD
7
GND
6
VDDIO
5
SDO1
GND
2
CSB
3
SDI
4
SCKSDI/SDO
C1SCKVDDIO VDD
C2CSBVent hole
Datasheet
BMP280 Digital Pressure Sensor Page 38
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
6.4 Connection diagram I2C
Figure 17: I²C connection diagram (Pin1 marking indicated)
Note s:
The recommended value for C 1, C2 is 100 nF.
A direct connection between C SB and V DDIO is recommended. If CSB is detected as low
during start up, the interface will be lock ed into SPI mode. See chapter 5.1.
TOP VIEW
(pads not visible)8
VDD
7
GND
6
VDDIO
5
SDO1
GND
2
CSB
3
SDI
4
SCKSDA
C1SCLVDDIO VDD
C2I2C address bit 0
GND: '0'; VDDIO: '1'Vent hole
Datasheet
BMP280 Digital Pressure Sensor Page 39
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
7. Package , reel and environment
7.1 Outline dimensions
The sensor housing is a n 8-pin metal -lid LGA 2.0 × 2.5× 0.95 mm3 package. Its dimensions are
depicted in Figure 18.
Figure 18: Package outline dimensions for top , bottom and side view
Note: General tolerances are ±50 µm (linear) and ±1° µm (an gular)
Datasheet
BMP280 Digital Pressure Sensor Page 40
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
7.2 Landing pattern recommendation
For the design of the landing pattern, the following dimensioning is recommended :
Figure 19: Recommended l anding pattern (top view) ; dimensions are in mm
Note: red areas demark exposed PCB metal pads.
• In case of a solder mask defined (SMD) PCB process, the land dimensions should be
defined by solder mask openings. The underlying metal pads are larger than these openings.
• In case of a non solder mask defined (NSMD) PCB process, th e land dimensions should
be defined in the metal layer. The mask openings are larger than the these metal pads.
0.352.50
0.650.5
0.55
2.08
7
6
51
2
3
40.325
Datasheet
BMP280 Digital Pressure Sensor Page 41
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
7.3 Marking
7.3.1 Mass production devices
Table 30: Marking of mass production samples
Labeling Name Symbol Remark
Lot counter CCC 3 alphanumeric digits, variable
to generate mass production trace -code
Product number T 1 alphanumeric digit, fixed
to identify product type, T = “ K”
“K” is associated with the product BMP280
(part number 0 273 300 3 54)
Sub-con ID L 1 alphanumeric digit, variable to
identify sub -con (L = “ P”, L = “U” , L = “N”or L =
“W”)
Orientation
marker Vent hole
7.3.2 Engineering samples
Table 31: Marking of engineering samples
Labeling Name Symbol Rema rk
Eng. Sample ID N 1 alphanumeric digit, fixed to identify
engineering sample, N = “ * ” or “e” or “E”
Sample ID XX 2 alphanumeric digits, variable
to generate trace -code
Counter ID CC 2 alphanumeric digits, variable
to generate trace -code
Orientation
marker Vent hole
XXN
CC CCC
TL
Datasheet
BMP280 Digital Pressure Sensor Page 42
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
7.4 Soldering guidelines
The moisture sensitivity level of the BM P280 sensors corresponds to JEDEC Level 1, see also:
IPC/JEDEC J -STD-020C “Joint Industry Standard: Moisture/Reflow Sensitivity
Classifi cation for non -hermetic Solid State Surface Mount Devices ”
IPC/JEDEC J -STD-033A “Joint Industry Standard: Handling, Packing, Shipping and Use of
Moisture/Reflow Sensitive Surface Mount Devices ”.
The sensor fulfils the lead -free soldering requirements of t he above -mentioned IPC/JEDEC
standard, i.e. reflow soldering with a peak temperature up to 260°C. The minimum height of the
solder after reflow shall be at least 50µm. This is required for good mechanical decoupling
between the sensor device and the printe d circuit board (PCB).
Figure 20: Soldering profile
Datasheet
BMP280 Digital Pressure Sensor Page 43
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
7.5 Tape and reel specific ation
7.5.1 Dimensions
Figure 21: Tape and Reel dimensions
Quantity per reel: 10 kpcs.
7.5.2 Orientation within the reel
reel di rection
Figure 22: Orientation within tape
1 2 3 4
8 7 6 5PIN
Datasheet
BMP280 Digital Pressure Sensor Page 44
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
7.6 Mounting and assembly recommendations
In addition to “Handling, soldering & mounting instructions BMP 280”, the following
recommendations should be taken into consideration when mounting a pressure sensor on a
printed -circuit board (PCB):
The clearance above the metal lid shall be 0.1mm at minimum.
For the device housing appropriate venting needs to be provided in case the ambient
pressure shall be measured.
Liquids shall not come into d irect contact with the device.
During operation the sensor chip is sensitive to light, which can influence the accuracy of
the measurement (photo -current of silicon). The position of the vent hole minimizes the
light exposure of the sensor chip. Neverthe less, BST recommends to avoid the
exposure of BMP280 to strong light sources.
Soldering may not be done using vapor phase processes since the sensor might be
damaged.
7.7 Environmental safety
7.7.1 RoHS
The BM P280 sensor meets the requirements of the EC restriction of hazardous substances
(RoHS) directive, see also:
Directive 2011/6 5/EU of the European Parliament and of the Council of 8 June 2011 on
the restriction of the use of certain hazardous substances in electrical and electronic
equipment.
7.7.2 Halogen content
The BMP280 is halogen -free. For more details on the analysis results please contact your
Bosch Sensortec representative.
7.7.3 Internal package structure
Within the scope of Bosch Sensortec’s ambition to improve its products and secure the mass
product supply, Bosc h Sensortec qualifies additional sources (e.g. 2nd source) for the LGA
package of the BM P280 .
While Bosch Sensortec took care that all of the technical packages parameters are described
above are 100% identical for all sources, there can be differences in the chemical content and
the internal structural between the different package sources.
However, as secured by the extensive product qualification process of Bosch Sensortec, this
has no impact to the usage or to the quality of the BM P280 product.
8. Appen dix 1: Computation formulae for 32 bit systems
8.1 Compensation formula in floating point
Please note that it is strongly advised to use the API available from Bosch Sensortec to perform
readout and compensation . If this is not wanted, the code below can be ap plied at the user’s
risk. Both pressure and temperature values are expected to be received in 20 bit format,
positive, stored in a 32 bit signed integer.
Datasheet
BMP280 Digital Pressure Sensor Page 45
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
The variable t_fine (signed 32 bit) carries a fine resolution temperature value over to the
pressure compensation formula and could be implemented as a global variable.
The data type “BMP280_S32_t” should define a 32 bit signed integer variable type and could
usually be defined as “long signed int”. The revision of the code is rev.1.1.
// Returns temp erature in DegC, double precision. Output value of “51.23” equals 51.23 DegC.
// t_fine carries fine temperature as global value
BMP280_S32_t t_fine;
double bmp280_compensate_T_double( BMP280_S32_t adc_T)
{
double var1, var2, T;
var1 = ((( double)adc_T)/1 6384.0 – ((double)dig_T1)/1024.0) * (( double)dig_T2);
var2 = (((( double)adc_T)/131072.0 – ((double)dig_T1)/8192.0) *
(((double)adc_T)/131072.0 – ((double) dig_T1)/8192.0)) * (( double)dig_T3);
t_fine = ( BMP280_S32_t )(var1 + var2);
T = (var1 + var2) / 5120.0;
return T;
}
// Returns pressure in Pa as double. Output value of “96386.2 ” equals 96386.2 Pa = 963.862 hPa
double bmp280_compensate_P_double( BMP280_S32_t adc_P)
{
double var1, var2, p;
var1 = (( double)t_fine/2.0) – 64000.0;
var2 = var1 * var1 * ((double)dig_P6) / 32768.0;
var2 = var2 + var1 * (( double)dig_P5) * 2.0;
var2 = (var2/4.0)+((( double)dig_P4) * 65536.0);
var1 = ((( double)dig_P3) * var1 * var1 / 524288.0 + (( double)dig_P2) * var1) / 524288.0;
var1 = (1.0 + var1 / 32768.0)*(( double)dig_P1);
if (var1 == 0.0)
{
return 0; // avoid exception caused by division by zero
}
p = 1048576.0 – (double)adc_P;
p = (p – (var2 / 4096.0)) * 6250.0 / var1;
var1 = (( double)dig_P9) * p * p / 2147483648.0;
var2 = p * (( double)dig_P8) / 32768.0;
p = p + (var1 + var2 + (( double)dig_P7)) / 16.0;
return p;
}
8.2 Compensation formula in 32 bit fixed point
Please note that it is strongly advised to use the API available from Bosch Sensortec to perform
readout and compensation. If this is not wanted, the code below can be applied at the user’s
risk. Both pressure and temperature values are expected to be received in 20 bit format,
positive, stored in a 32 bit signed integer.
The variable t_fine (signed 32 bit) carries a fine resolution temperature value over to the
pressure compensation formula and could be implemented as a global variable.
The data type “BMP280_S32_t” should define a 32 bit signed integer variable type and can
usually be defined as “long signed int”.
The data type “BMP280_U32_t” shoul d define a 32 bit unsigned integer variable type and can
usually be defined as “long unsigned int”.
Compensating the pressure value with 32 bit integer has an accuracy of typically 1 Pa (1 –
sigma). At very high filter levels this adds a noticeable amount o f noise to the output values and
reduces their resolution.
// Returns temperature in DegC, resolution is 0.01 DegC. Output value of “5123” equals 51.23 DegC.
// t_fine carries fine temperature as global value
BMP280_S32_t t_fine;
BMP280_S32_t bmp280_co mpensate_T_int32( BMP280_S32_t adc_T)
{
BMP280_S32_t var1, var2, T;
Datasheet
BMP280 Digital Pressure Sensor Page 46
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
var1 = ((((adc_T>>3) – ((BMP280_S32_t )dig_T1<<1))) * (( BMP280_S32_t )dig_T2)) >> 11;
var2 = (((((adc_T>>4) – ((BMP280_S32_t )dig_T1)) * ((adc_T>>4) – ((BMP280_S32_t )dig_T1))) >> 12) *
((BMP280_S32_t )dig_T3)) >> 14;
t_fine = var1 + var2;
T = (t_fine * 5 + 128) >> 8;
return T;
}
// Returns pressure in Pa as unsigned 32 bit integer. Output value of “96386” equals 96386 Pa = 963.86 hPa
BMP280_U32_t bmp280_compensate_P_int32( BMP280_S32 _t adc_P)
{
BMP280_S32_t var1, var2;
BMP280_U32_t p;
var1 = ((( BMP280_S32_t )t_fine)>>1) – (BMP280_S32_t )64000;
var2 = (((var1>>2) * (var1>>2)) >> 11 ) * (( BMP280_S32_t )dig_P6);
var2 = var2 + ((var1*(( BMP280_S32_t )dig_P5))<<1);
var2 = (var2>>2)+((( BMP280_S32_t )dig_P4)<<16);
var1 = (((dig_P3 * (((var1>>2) * (var1>>2)) >> 13 )) >> 3) + (((( BMP280_S32_t )dig_P2) * var1)>>1))>>18;
var1 =((((32768+var1))*(( BMP280_S32_t )dig_P1))>>15);
if (var1 == 0)
{
return 0; // avoid exception caused by division by z ero
}
p = (((BMP280_U32_t )(((BMP280_S32_t )1048576) -adc_P)-(var2>>12)))*3125;
if (p < 0x80000000)
{
p = (p << 1) / (( BMP280_U32_t )var1);
}
else
{
p = (p / ( BMP280_U32_t )var1) * 2;
}
var1 = ((( BMP280_S32_t )dig_P9) * (( BMP280_S32_t )(((p>>3) * (p>>3))>>13)))>>12;
var2 = ((( BMP280_S32_t )(p>>2)) * (( BMP280_S32_t )dig_P8))>>13;
p = (BMP280_U32_t )((BMP280_S32_t )p + ((var1 + var2 + dig_P7) >> 4));
return p;
}
Datasheet
BMP280 Digital Pressure Sensor Page 47
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
9. Legal disclaimer
9.1 Engineering samples
Engineering Samples are marked with an asterisk (*) or (e) or (E) . Samples may vary from the
valid technical specifications of the product series contained in this data sheet. They are
therefore not intended or fit for resale to third parties or for use in end products. Their sole
purpose is internal client testing. The testing of an engineering sample may in no way replace
the testing of a product series. Bosch Sensortec assumes no liability for the use of engineering
samples. The Purchaser shall indemnify Bosch Sensortec from all claims arising from the us e of
engineering samples.
9.2 Product use
Bosch Sensortec products are developed for the consumer goods industry. They are not
designed or approved for use in military applications, life -support appliances, safety -critical
automotive applications and devices o r systems where malfunctions of these products can
reasonably be expected to result in personal injury. They may only be used within the
parameters of this product data sheet.
The resale and/or use of products are at the Purchaser’s own risk and the Purcha ser’s own
responsibility.
The Purchaser shall indemnify Bosch Sensortec from all third party claims arising from any
product use not covered by the parameters of this product data sheet or not approved by Bosch
Sensortec and reimburse Bosch Sensortec for all costs in connection with such claims.
The Purchaser accepts the responsibility to monitor the market for the purchased products,
particularly with regard to product safety, and inform Bosch Sensortec without delay of any
security relevant incidents .
9.3 Application examples and hints
With respect to any examples or hints given herein, any typical values stated herein and/or any
information regarding the application of the device, Bosch Sensortec hereby disclaims any and
all warranties and liabilities of any kind, including without limitation warranties of non –
infringement of intellectual property rights or copyrights of any third party. The information given
in this document shall in no event be regarded as a guarantee of conditions or characteristics.
They are provided for illustrative purposes only and no evaluation regarding infringement of
intellectual property rights or copyrights or regarding functionality, performance or error has
been made.
Datasheet
BMP280 Digital Pressure Sensor Page 48
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
10. Document history and modification
Rev. No Chapter Descript ion of modification/changes Date
0.1 Document creation 2012-08-06
1.0 9.2 Change of product use
2013 -11-26
Table 2 Update of min/max data (only for restricted version)
Added comment on the sampling rate
1.1 1, 3.3.1 Changed value for resolu tion, values for osrs_p
settings changed 2014 -02-10
5.2 Changed sentence and added drawing 2014 -02-18
3.7 Added max values for current consumption 2014 -05-08
1.11 4.5.3 Modified write in normal mode
2014 -06-25
5.2 Modified SDI/SCK ESD drawing
1.12 1 Changed min/max values for standby current, only
valid for 25 °C 2014 -07-12
Table 1 Pressure resolution 0.16Pa 2014 -07-12
1.13 Page 2 New technical reference codes added
2014 -11-12
7.3 New details about laser marking added
1.14 Table 6 Changed contents of table
2015 -05-04
Page 1 Removed TRC 0 273 300 354 & 0273 300 391
Page 44 Upda ted RoHS directive to 2011/65/E U effective 8
June 2011 2015 -05-07
Bosch Sen sortec GmbH
Gerhard -Kindler -Strasse 8
72770 Reutlingen / Germany
contact@bosch -sensortec.com
www.bosch -sensortec.com
Modifications reserved | Printed in Germany
Specifications subject to change without notice
Docu ment number: BST -BMP280 -DS001 -11
Revision _1.14_052015
Datasheet
BMP280 Digital Pressure Sensor Page 49
BST-BMP280 -DS001 -11 | Revision 1.1 4 | May 2015 Bosch Sensortec
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal su ch as copying and passing on to
third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Note: Specifications within this document are subject to change without notice. Not intended for publication.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: BMP280 : Data sheet [604777] (ID: 604777)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
