BMP085
BMP085
Data
Digital pressure sensor sheet
Bosch Sensortec
Data sheet
BMP085 Data sheet
Order code
0 273 300 144
Package type
LCC8
Data sheet revision
1.2
Release date
15 Oct 2009
Document number
BST-BMP085-DS000-05
Rev. 1.2
Notes
1 sensor is functionally compatible15toOctober
2009
The BMP085 digitalPage
pressure
the existing
Bosch
Sensortec
SMD500
digital
pressure
sensor.
Product
photos
and
pictures
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposalare
suchfor
illustration
purposes
and
differ from
the real
product’s
appearance.
as copying and passing on to third parties.
BOSCH
and the only
symbol
aremay
registered
trademarks
of Robert
Bosch
GmbH, Germany.
Specifications
Specifications are subject to change without
notice. are subject to change without notice.
BMP085
Bosch Sensortec
Data sheet
BMP085 Digital pressure sensor
Key features
Pressure range:
Supply voltage:
300 ... 1100hPa (+9000m ... -500m above sea level)
1.8 ... 3.6V (VDDA)
1.62V ... 3.6V (VDDD)
LCC8 package:
Robust, ceramic lead-less chip carrier (LCC) package
Small footprint:
5.0mm x 5.0mm
Super-flat:
1.2mm height
Low power:
5µA at 1 sample / sec. in standard mode
Low noise:
0.06hPa (0.5m) in ultra low power mode
0.03hPa (0.25m) ultra high resolution mode
down to 0.1m (rms noise) possible
- Temperature measurement included
2
- I C interface
- Fully calibrated
- Pb-free, halogen-free and RoHS compliant,
- MSL 1
New features comparison
Smaller package height
Faster conversion time (standard mode each)
Faster I2C data transfer
Extended min. supply voltage
Lower stand-by current (typ.)
External clock
BMP085
1.2mm
7.5ms (max.)
max. 3.4MHz
min. 1.8V
0.1µA
not necessary
SMD500
1.55mm
34ms
max. 400kHz
min. 2.2V
0.7µA
necessary
Typical applications
• Enhancement of GPS navigation (dead-reckoning, slope detection, etc.)
• In- and out-door navigation
• Leisure and sports
• Weather forecast
• Vertical velocity indication (rise/sink speed)
Rev. 1.2
Page 2
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Data sheet
Bosch Sensortec
BMB085 general description
The BMP085 is the fully pin- and function compatible successor of the SMD500, a new
generation of high precision digital pressure sensors for consumer applications. The universal
C-code SMD500/BMP085 (“BMP085_SMD500_API”) is fully upward compatible to SMD500 and
recognizes automatically the device ID. Customers already working with the SMD500 pressure
sensor are invited to contact Bosch Sensortec as soon as they intend to switch-over to the
BMP085 sensor for getting first-hand support.
The ultra-low power, low voltage electronics of the BMP085 is optimized for use in mobile
phones, PDAs, GPS navigation devices and outdoor equipment. With a low altitude noise of
2
merely 0.25m at fast conversion time, the BMP085 offers superior performance. The I C
interface allows for easy system integration with a microcontroller.
The BMP085 is based on piezo-resistive technology for EMC robustness, high accuracy and linearity
as well as long term stability.
Robert Bosch is the world market leader for pressure sensors in automotive applications. Based
on the experience of over 200 million pressure sensors in the field, the BMP085 continues a
new generation of micro-machined pressure sensors.
Rev. 1.2
Page 3
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Data sheet
Bosch Sensortec
TABLE OF CONTENTS
1 ELECTRICAL CHARACTERISTICS ..........................................................................................6
2 ABSOLUTE MAXIMUM RATINGS .............................................................................................7
3 OPERATION ................................................................................................................................8
3.1 GENERAL DESCRIPTION ....................................................................................................... 8
3.2 GENERAL FUNCTION AND APPLICATION SCHEMATICS ............................................................. 8
3.3 MEASUREMENT OF PRESSURE AND TEMPERATURE.............................................................. 10
3.4 CALIBRATION COEFFICIENTS .............................................................................................. 12
3.5 CALCULATING PRESSURE AND TEMPERATURE ..................................................................... 12
3.6 CALCULATING ABSOLUTE ALTITUDE .................................................................................... 14
3.7 CALCULATING PRESSURE AT SEA LEVEL .............................................................................. 14
4 I2C INTERFACE.........................................................................................................................15
4.1 I2C SPECIFICATION ............................................................................................................ 15
4.2 DEVICE AND REGISTER ADDRESS ....................................................................................... 16
4.3 I2C PROTOCOL .................................................................................................................. 16
4.4 START TEMPERATURE AND PRESSURE MEASUREMENT ........................................................ 17
2
4.5 READ A/D CONVERSION RESULT OR E PROM DATA............................................................ 18
5 PACKAGE .................................................................................................................................19
5.1 PIN CONFIGURATION.......................................................................................................... 19
5.2 OUTLINE DIMENSIONS........................................................................................................ 20
5.2.1 Top view (pads not visible)............................................................................................20
5.2.2 Top view with lid ............................................................................................................20
5.2.3 Side view with lid ...........................................................................................................21
5.3 DEVICE MARKING .............................................................................................................. 22
5.4 TAPE ON REEL .................................................................................................................. 22
5.5 PRINTED CIRCUIT BOARD (PCB) DESIGN ............................................................................. 23
5.6 MOISTURE SENSITIVITY LEVEL AND SOLDERING ................................................................... 23
5.7 ROHS COMPLIANCY .......................................................................................................... 24
5.8 MOUNTING AND ASSEMBLY RECOMMENDATIONS ................................................................. 25
Rev. 1.2
Page 4
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Data sheet
Bosch Sensortec
6 LEGAL DISCLAIMER ...............................................................................................................26
6.1 ENGINEERING SAMPLES ..................................................................................................... 26
6.2 PRODUCT USE .................................................................................................................. 26
6.3 APPLICATION EXAMPLES AND HINTS .................................................................................... 26
7 DOCUMENT HISTORY AND MODIFICATIONS......................................................................27
Rev. 1.2
Page 5
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Bosch Sensortec
Data sheet
1 Electrical characteristics
If not stated otherwise, the given values are maximum values over temperature/voltage range
in the given operation mode.
Parameter
Operating temperature
Supply voltage
Supply current
@ 1 sample / sec.
25°C
Peak current
Symbol
TA
VDD
Condition
+85
full accuracy
0
+65
ripple max. 50mVpp
VDDIO
Units
°C
1.8
2.5
3.6
V
1.62
2.5
3.6
V
IDDLOW
ultra low power mode
3
µA
IDDSTD
standard mode
5
µA
IDDHR
high resolution mode
7
µA
IDDUHR
ultra high res. mode
12
µA
during conversion
650
at 25°C
0.1
Ipeak
Serial data clock
fSCL
Conversion time
temperature
tC_temp
standard mode
tc_p_low
VDD = 3.3V
Max
-40
IDDSBM
Absolute accuracy
pressure
Typ
operational
Standby current
Conversion time
pressure
Min
1000
µA
µA
3.4
MHz
3
4.5
ms
ultra low power mode
3
4.5
ms
tc_p_std
standard mode
5
7.5
ms
tc_p_hr
high resolution mode
9
13.5
ms
tc_p_luhr
ultra high res. mode
17
25.5
ms
700 . . . 1100 hPa
0 . . . +65 °C
-2.5
±1.0
+2.5
hPa
300 . . . 700 hPa
0 . . . +65 °C
-3.0
±1.0
+3.0
hPa
300 . . . 1100 hPa
-20 . . . 0 °C
-4.0
±1.5
+4.0
hPa
Resolution of
output data
pressure
0.01
hPa
temperature
0.1
°C
Relative accuracy
pressure
700 . . . 1100 hPa
@ 25 °C
±0.2
hPa
VDD = 3.3V
0 . . . 65 °C @ p const.
±0.5
hPa
Noise in pressure
Absolute accuracy
temperature
VDD = 3.3V
Rev. 1.2
see table on page 10
@ 25 °C
-1.5
±0.5
+1.5
°C
0 . . . +65 °C
-2.0
±1.0
+2.0
°C
Page 6
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Bosch Sensortec
Data sheet
Solder drifts
Minimum solder height
50µm
±1.0
hPa
Long term stability
12 months
±1.0
hPa
2 Absolute maximum ratings
Parameter
Condition
Storage temperature
Supply voltage
all pins
ESD rating
HBM, R = 1.5kΩ,
C = 100pF
Min
Max
Units
-40
+85
°C
-0.3
+4.25
V
±2
kV
10,000
hPa
Overpressure
The BMP085 has to be handled as Electrostatic Sensitive Device (ESD).
Rev. 1.2
Page 7
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Data sheet
Bosch Sensortec
3 Operation
3.1 General description
The BMP085 is designed to be connected directly to a microcontroller of a mobile device via the
I2C bus. The pressure and temperature data has to be compensated by the calibration data of
the E2PROM of the BMP085.
3.2 General function and application schematics
The BMP085 consists of a piezo-resistive sensor, an analog to digital converter and a control
unit with E2PROM and a serial I2C interface. The BMP085 delivers the uncompensated value of
pressure and temperature. The E2PROM has stored 176 bit of individual calibration data. This is
used to compensate offset, temperature dependence and other parameters of the sensor.
• UP = pressure data (16 to 19 bit)
• UT = temperature data (16 bit)
Rev. 1.2
Page 8
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Bosch Sensortec
Data sheet
Typical application circuit:
1.8 ... 3.6V
100nF
(1)
Rp
VDDA
(1)
Rp
VDDD
2
E PROM
µController
e. g. 8 bit
BMP085
EOC
SDA
Control
Unit
2
SCL
I C interface
XCLR
Sensor
element
ADC
GND
Note:
2
(1) Pull-up resistors for I C bus, Rp = 2.2kΩ ... 10kΩ, typ. 4.7kΩ
Display
Note:
The BMP085 can be supplied independently with different levels of VDDA and VDDD, which is not
possible with the SMD500. In case of different voltage levels, VDDA and VDDD shall have a 100nF
decoupling capacitor each.
Rev. 1.2
Page 9
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Bosch Sensortec
Data sheet
3.3 Measurement of pressure and temperature
Start
For all calculations presented here an ANSI C
code is available from Bosch Sensortec
(“BMP085_SMD500_API”).
Start temperature
measurement
The microcontroller sends a start sequence to start
a pressure or temperature measurement. After
converting time, the result value (UP or UT,
respectively) can be read via the I2C interface. For
calculating temperature in °C and pressure in hPa,
the calibration data has to be used. These
constants can be read out from the BMP085
E2PROM via the I2C interface at software
initialization.
wait 4.5ms
Read UT
Start pressure
measurement
The sampling rate can be increased up to 128
samples per second (standard mode) for dynamic
measurement. In this case, it is sufficient to
measure the temperature only once per second
and to use this value for all pressure
measurements during the same period.
By using different modes the optimum compromise
between power consumption, speed and
resolution can be selected, see below table.
wait (depends on mode, see below)
Read UP
Calculate pressure and
temperature in physical
units
Overview of BMP085 modes, selected by driver software via the variable oversampling_setting:
Mode
Parameter
oversampling_setting
Internal
number of
samples
Conversion
time pressure
max. [ms]
Avg. current
@ 1 sample/s
typ. [µA]
RMS noise
typ. [hPa]
RMS noise
typ. [m]
ultra low power
0
1
4.5
3
0.06
0.5
standard
1
2
7.5
5
0.05
0.4
high resolution
2
4
13.5
7
0.04
0.3
ultra high
resolution
3
8
25.5
12
0.03
0.25
The noise data is calculated as standard deviation of 10 data points. For further information on
noise characteristics see the relevant application note “Noise in pressure sensor applications”.
Rev. 1.2
Page 10
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Data sheet
Bosch Sensortec
All modes can be performed at higher speeds, e.g. up to 128 times per second for standard
mode, with the current consumption increasing proportionally to the sample rate. This way the
noise can be decreased further by software averaging.
Rev. 1.2
Page 11
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Data sheet
Bosch Sensortec
3.4 Calibration coefficients
The 176 bit E2PROM is partitioned in 11 words of 16 bit each. These contain 11 calibration
coefficients. Every sensor module has individual coefficients. Before the first calculation of
temperature and pressure, the master reads out the E2PROM data.
The data communication can be checked by checking that none of the words has the value 0 or
0xFFFF.
BMP085 reg adr
Parameter
MSB
LSB
AC1
0xAA
0xAB
AC2
0xAC
0xAD
AC3
0xAE
0xAF
AC4
0xB0
0xB1
AC5
0xB2
0xB3
AC6
0xB4
0xB5
B1
0xB6
0xB7
B2
0xB8
0xB9
MB
0xBA
0xBB
MC
0xBC
0xBD
MD
0xBE
0xBF
3.5 Calculating pressure and temperature
The mode (ultra low power, standard, high, ultra high resolution) can be selected by the variable
oversampling_setting (0, 1, 2, 3) in the C code.
The universal code SMD500/BMP085 is fully upward compatible to SMD500 and recognizes
automatically the device ID. Thus, the SMD500 can be replaced "on the fly" by the BMP085
without changing hardware or software.
Calculation of true temperature and pressure in steps of 1Pa (= 0.01hPa = 0.01mbar) and
temperature in steps of 0.1°C.
The following figure shows the detailed algorithm for pressure and temperature measurement.
This algorithm is available to customers as reference C source code (“BMP085_SMD500_API”)
from Bosch Sensortec and via its sales and distribution partners. Please contact your Bosch
Sensortec representative for details.
Rev. 1.2
Page 12
15 October 2009
© Bosch Sensortec GmbH reserves all rights even in the event of industrial property rights. We reserve all rights of disposal such
as copying and passing on to third parties. BOSCH and the symbol are registered trademarks of Robert Bosch GmbH, Germany.
Specifications are subject to change without notice.
BMP085
Bosch Sensortec
Data sheet
Calculation of pressure and temperature for BMP085
Start
example:
Read calibration data
2
from the E PROM of the BMP085
2
read out E PROM registers, 16 bit, MSB first
AC1 (0xAA, 0xAB)
(16 bit)
AC2 (0xAC, 0xAD)
(16 bit)
AC3 (0xAE, 0xAF)
(16 bit)
AC4 (0xB0, 0xB1)
(16 bit)
AC5 (0xB2, 0xB3)
(16 bit)
AC6 (0xB4, 0xB5)
(16 bit)
B1 (0xB6, 0xB7)
(16 bit)
B2 (0xB8, 0xB9)
(16 bit)
MB (0xBa, 0xBB)
(16 bit)
MC (0xBC, 0xBD)
(16 bit)
MD (0xBE, 0xBF)
(16 bit)
read uncompensated temperature value
write 0x2E into reg 0xF4, wait 4.5ms
read reg 0xF6 (MSB), 0xF7 (LSB)
UT = MSB