Page 1
Bosch Sensortec"| BST-BMP581-DS004-02 1 | 74 BMP581 Barometric Pressure Sensor BST-BMP581-DS004-02 Document revision Document release date January 2022 Document number BST-BMP581-DS004-02 Sales Part Number 0 273 017 025 Notes Data and descriptions 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 appearance.
Page 2
Bosch Sensortec"| BST-BMP581-DS004-02 2 | 74 1 Basic Description The BMP581 is an absolute barometric pressure sensor. Its small dimensions, its low power consumption and the highend performance allow the implementation in a wide range of applications. Key features: Pressure operating range: 30 .. 125 kPa Temperature operating range: -40 ..
Page 3
Bosch Sensortec"| BST-BMP581-DS004-02 3 | 74 Table of Contents 1 Basic Description ................................2 2 Specification .................................. 8 3 Quick start guide ................................. 14 3.1 Sensor API and COINES ..........................14 4 Functional Description and Features ........................14 4.1 Block diagram ..............................14 4.2 Power management ............................
Page 4
Bosch Sensortec"| BST-BMP581-DS004-02 4 | 74 4.8 NVM Programmability ............................29 4.8.1 NVM User Range ..........................29 4.9 Final test result ..............................30 5 Digital Interface ................................31 5.1 Protocol Selection ............................. 31 5.2 Interface timing ..............................31 5.2.1 Interface timing ............................. 32 5.2.2...
Bosch Sensortec"| BST-BMP581-DS004-02 8 | 74 2 Specification If not stated otherwise, All values are valid over the full voltage range • Minimum/maximum values are ±3 sigma values • Typical values of currents and state machine timings are determined at 25 °C •...
Page 9
Bosch Sensortec"| BST-BMP581-DS004-02 9 | 74 Pressure noise OSR set to 0.08 PaRMS p_high_res „highest resolution“ Long term drift Drift during 1 ± 10 ∆P stab_long year Short term drift Drift during ± 1.5 ∆P stab_short 24 h at constant...
Bosch Sensortec"| BST-BMP581-DS004-02 10 | 74 Table 2: Temperature Performance Parameter Symbol Comment Unit Temperature Temperature °C measurement measured in range the entire temperature operational range Absolute accuracy -5 .. 55°C +/- 0.5 t_abs temperature Absolute accuracy -40 .. 85°C - 1.5...
Page 11
Bosch Sensortec"| BST-BMP581-DS004-02 11 | 74 VDDIO > VDDIOmin Start-up time from t_startup Time from mode SLEEP change to start of measurement Start-up time from Time from mode startup_deep DEEPSLEEP change to start of measurement Re-configuration Time from reconf time...
Page 12
Bosch Sensortec"| BST-BMP581-DS004-02 12 | 74 Peak current maximum DC μA peak current Deep Standby 25 °C and 0.55 μA current VDDIO=VDD=1.8 Deep Standby 25 °C and 0.55 μA current VDDIO=VDD=3.6 Deep Standby 55 °C and μA current VDDIO=VDD=1.8 Standby current 25 °C and...
Bosch Sensortec"| BST-BMP581-DS004-02 13 | 74 OSR = 128x 20.8 NVM user write Number of write 10,000 writes NVM_WRITE cycles cycles to NVM user range a. For supply ramps < 0.01 ms, a 10 Ohm resistor must be connected in series to the power supply (see 5.2.5).
Page 14
COINES software package. More information, can be found on https://www.bosch-sensortec.com/. 4 Functional Description and Features The BMP581 is a barometric pressure sensor that outputs to the host the absolute pressure in Pa. In addition, the absolute temperature in °C can be provided to the host.
Page 15
Bosch Sensortec"| BST-BMP581-DS004-02 15 | 74 VDD and VDDIO pins can be energized in any order. A power-on reset generator is built in which resets the logic circuitry and the register values after the power-on sequence. The slope for ramp up time must be within the limits given by t_- VDDramp and t_VDDIOramp.
Page 16
4.3 Power modes The power modes of BMP581 and transitions in between are depicted in Figure 2. After startup or soft-reset, the BMP581 will be in DEEP STANDBY mode. Transitions from one mode to another are only possible by entering SLEEP mode first.
FORCED and CONTINOUS mode may be favorable. The ODR_CONFIG.odr register field is used to define the output data rate (ODR) if the BMP581. Data rates of 0.125Hz up to 240 can be selected. For the full list of available ODRs, see the register description. Not all combinations of OSR and ODRs are valid, as measurement times may not fit into an ODR cycle.
Page 18
read out the INT_STATUS.por register field and check that it is set to 1; that means INT_STATUS==0x10 4.3.10 Soft reset BMP581 can be reset by writing 0xB6 to the CMD register. The BMP581 will come out of the reset after t soft_res.
IIR filter The BMP581 has a dedicated IIR filter built-in, that can be used to reduce noise caused by ambient disturbances. This may for example be the opening of doors or windows, or wind blowing into the sensor. To suppress these disturbances in the output data, the IIR filter can be enabled.
Page 20
Bosch Sensortec"| BST-BMP581-DS004-02 20 | 74 The step response of different filter settings is displayed in Figure 3 and Figure 4. Table 9 shows the available filter coefficent settings and the according normalized bandwidth (which corresponds to the 3dB cutoff frequency). The resulting bandwidth in Hz can be computed as follows: ...
Bosch Sensortec"| BST-BMP581-DS004-02 21 | 74 Figure 3: Step response at different IIR filter settings Figure 4: Step response at different IIR filter settings on log scale and different threshold limits in dashed lines (3dB, 90%, 95%, 99.5%, 100%) Table 10: IIR filter settings and bandwidth...
Page 22
After the end of the burst read, all user data registers are updated at once with the shadowed data. 4.6 FIFO The BMP581 contains a first-in first-out (FIFO) data buffer. Pressure and temperature data is stored in the FIFO in frames. Each frame contains the data from one measurement. The maximum number of frames depends on which data is stored in the FIFO: ...
Bosch Sensortec"| BST-BMP581-DS004-02 23 | 74 0b01: Only Temperature data is stored (T-mode) 0b10: Only Pressure data is stored (P-mode) 0b11: Pressure and temperature data is stored (PT-mode) The operational mode can be controlled via the FIFO_CONFIG.cfg_fifo_mode register: ...
Bosch Sensortec"| BST-BMP581-DS004-02 24 | 74 press LSB press MSB Table 12: FIFO temperature frame (T-frame) Temperature temperature XLSB temperature LSB temperature MSB Table 13: FIFO pressure frame (P-frame) Pressure pressure XLSB press LSB press MSB Table 14: FIFO empty frame...
Page 25
OR. BMP581 also supports I3C‘s in-band interrupt (IBI). This is allows the use of interrupt functionality without the need of a dedicated INT signal line. For documentation of the I3C IBI functionality, see Chapter 4.7.2 "I3C In-band Interrupts".
Page 26
The power-on rest (POR) interrupt is triggered each time the BMP581 comes out of a power-up reset. This can happen if the supply to the device is ramped up, or if the supply was so instable that the BMP581 performed a brown- out with subsequent power-up reset.
Page 27
The status of the interrupt can be read from INT_STATUS.por. A read of the INT_STATUS will clear the status. 4.7.3 Interrupt pin The BMP581 provides an interrupt pin (INT), which allows to signal certain events to the host processor. 4.7.3.1 Interrupt pin configuration The behavior of the interrupt pin can be configured in INT_CONFIG with these fields: ...
Page 28
Bosch Sensortec"| BST-BMP581-DS004-02 28 | 74 Latched Mode. In latched mode, the INT pin is asserted as long as an interrupt condition is TRUE, and the interrupt source is enabled in INT_SOURCE. Between two adjacent assertions if the INT pin, there is a minimum gap of .
Page 29
. During the write procedure, the power NVM_WRITE supply to the BMP581 must be stable, and no soft-reset must be issued. Otherwise, permanent damage to the device may occur. In order to read or write the entire user range, the read/write procedure has to be executed repeatedly for the three addresses 0x20-0x22.
Bosch Sensortec"| BST-BMP581-DS004-02 30 | 74 Writes to other NVM addresses than the user range will be ignored. 4.8.1.3 The unique device identifier is also stored in the NVM. It can be computed as follows: UID = ((read_nvm_reg(0x26) & 0xFF) << 40) | (read_nvm_reg(0x25) << 24) | ( read_nvm_reg(0x24) <<...
Bosch Sensortec"| BST-BMP581-DS004-02 31 | 74 5 Digital Interface The device provides one serial interface to the host. It acts as a slave to the host The serial interface is configurable to the interface protocols SPI, I3C and I2C. 5.1 Protocol Selection The protocol is automatically selected based on the behavior of the signal on the chip select pin CSB after power-up.
Bosch Sensortec"| BST-BMP581-DS004-02 32 | 74 5.2.1 Interface timing The timing diagram for SPI is given in Figure 7 and is valid for all SPI configurations. The corresponding values are given in Figure 7: SPI timing diagram (SPI4, Mode 0...
5.2.2 I2C timing specifications BMP581 follows the I²C specification for standard mode, fast mode and fast mode plus. For timing specifications, please consult the „I2C-bus specification and user manual“, UM10204, Rev.6, NXP Semiconductors. This is valid for the entire VDDIO voltage range.
Bosch Sensortec"| BST-BMP581-DS004-02 34 | 74 5.3 Pad drive stength The drive strenghts to drive a pad to logical high (IOH, Vout=20%*VDDIO ) or to logical low(IOL, Vout=80%*VDDIO ) are shown in Table 17 and Table 18. Table 20: Drive strength in IOH...
For read bursts in all protocols, the BMP581 performs an automatic address increment with each read byte. That means, if the user reads for example 10 bytes starting address 0x01, the BMP581 will return the data for register 0x01..0x0A. An exception to this rule is the FIFO_DATA register. If a read starts at FIFO_DATA, the address will not be incremented, but the read will continue on the register to support FIFO read-out.
Page 37
Bosch Sensortec"| BST-BMP581-DS004-02 37 | 74 Figure 8: SPI single-byte write operation shows the SPI multi-byte (burst) write protocol. The host sends the write command, multiple pairs of write address/data and finally terminates the transaction. Note that for each write byte the address has to be sent over separately.
Page 38
fast mode plus (400 kHz - 1 MHz) The I²C slave address of BMP581 is 7'h46 for SDO = 1'b0 and 7'h47 for SDO = 1'b1. SDO must not be floating when I²C is used, otherwise the I²C device address is undefined.
Page 39
Figure 13: I²C single-byte write BMP581 also supports multi-byte write operation in I2C mode. The multi-byte write telegram is depicted in Figure 14. The telegram begins with a start condition generated by the host, followed by 7 bit slave address and a write bit (R/W = 1'b0).
Page 40
Bosch Sensortec"| BST-BMP581-DS004-02 40 | 74 5.6.2 I²C read operation I²C read operation supports single-byte as well as multi-byte (burst) reading. A read command consists of a 1 byte I²C write phase followed by an I²C read phase. The two I²C transmissions must be separated by a repeated start condition (Sr) as shown in Figure 15 or a stop followed by start condition (P followed by S) as shown in Figure 16.
Page 41
Bosch Sensortec"| BST-BMP581-DS004-02 41 | 74 Figure 16: multi-byte read protocol with stop-start Figure 17: I²C multi-byte read from same start address with stop-start Modifications reserved | Data subject to change without notice Document number: BST-BMP581-DS004-02...
Bosch Sensortec"| BST-BMP581-DS004-02 42 | 74 5.7 I3C Protocol BMP581 supports the I³C protocol 1.0. Following I³C features are supported: I²C compatibility including: Support of I2C-like SDR messages to the BMP581 bus traffic of I2C messages to legacy I2C slaves ...
Bosch Sensortec"| BST-BMP581-DS004-02 43 | 74 Upon power up, the feature is disabled by default. The IBI mandatory byte is defined in Table 23. This is also the IBI payload that will be returned upon an GETSTATUS CCC command. More information on the meaning of the interrupts can be found in Chapter 3.7 "Interrupts".
Bosch Sensortec"| BST-BMP581-DS004-02 44 | 74 5.7.3 Common Command Codes (CCC) Supported I3C command control codes (CCCs) are listed in Table 24. Table 27: List of I3C CCCs CCC Type CCC name Description BMP581 Code Supported 0x00 Broadcast ENEC Enable events...
Page 45
5.7.4 I3C SDR Operations The BMP581‘s I3C follows the standard I3C specification and defines the private protocol part to meet the data transfer requirements. The address for all read and write transactions can be set according to the timing diagram in Figure 19. The 7-bit address is allocated in byte section right after the dynamic address transmission.
Bosch Sensortec"| BST-BMP581-DS004-02 46 | 74 6 Pin out and connection diagrams 6.1 Pin Out Figure 23 shows the pin-out of the device from top and bottom view, respectively. Table 25 shows the related pin descriptions. Figure 18: Pin out top and bottom view...
Page 47
Bosch Sensortec"| BST-BMP581-DS004-02 47 | 74 6.2.1 SPI 3-wire Figure 19: SPI 3-wire connection diagram The SDO pin must be left floating. The reason is, that the device starts in SPI4 mode after power-up, and drives SDO until the switch to SPI3 is commanded.
Page 48
Bosch Sensortec"| BST-BMP581-DS004-02 48 | 74 6.2.3 I²C Figure 21: I²C connection diagram In I²C mode, either the CSB pullup should be enabled, or the pin should be connected to either VDDIO or VSS. 6.2.4 I3C Figure 22: I3C connection diagram...
Page 49
If VDD or VDDIO ramp-up times are not controlled and are faster than 10us, like in a direct connection to battery, the BMP581 inrush current should be externally limited to avoid damages from repeated power cycles using a 10 Ohm resistance, as depicted in Figure 28.
Page 53
Bosch Sensortec"| BST-BMP581-DS004-02 53 | 74 int_od:(bit offset: 2) INT pin: Values Description 0b0 (0x0) push-pull 0b1 (0x1) Open_drain int_en:(bit offset: 3) Interrupt enabling: Values Description 0b0 (0x0) disabled 0b1 (0x1) enabled pad_int_drv:(bit offset: 4) Pad drive strength for INT (MSB should be set in INT open drain config only.) Note: these register fields should be read-back only after waiting at least 1¬μs after they have been written...
Page 59
Bosch Sensortec"| BST-BMP581-DS004-02 59 | 74 7.24 Register (0x2B) NVM address Read/Write Reset Value Content reserved_7 nvm_pro... nvm_row_address nvm_row_address:(bit offset: 0) NVM (row) address (Note: this field cannot be written during an ongoing P/T conversion.) nvm_prog_en:(bit offset: 6) If set, enables NVM programming (Note: this field cannot be written during an ongoing P/ T conversion.)
Page 60
Bosch Sensortec"| BST-BMP581-DS004-02 60 | 74 7.27 Register (0x30) DSP configuration Read/Write Reset Value Content oor_sel... fifo_se... shdw_- fifo_se... shdw_- iir_flu... reserved_0_1 se... se... iir_flush_forced_en:(bit offset: 2) If set, an IIR filter flush is executed in FORCED mode (Note: This field cannot be written during an ongoing P/T conversion.)
Page 61
Bosch Sensortec"| BST-BMP581-DS004-02 61 | 74 7.28 Register (0x31) DSP IIR configuration Read/Write Reset Value Content reserved_7_6 set_iir_p set_iir_t reserved:write 0x0. set_iir_p:(bit offset: 0) Pressure IIR LPF band filter selection. The filter coefficient. (Note: This field cannot be written during an ongoing P/T conversion.)
Page 66
Bosch Sensortec"| BST-BMP581-DS004-02 66 | 74 7.36 Register (0x7E) Command Register Read/Write Reset Value Content cmd:(bit offset: 0) Available commands (Note: Register will always read as 0x00): no other values must be written to this register Value Description 0xB6 Triggers a reset, all user configuration settings are overwritten with their default state.
Page 67
Bosch Sensortec"| BST-BMP581-DS004-02 67 | 74 8 Package 8.1 BMP581 Package Outline Dimensions 8.1.1 Top View Figure 24: BMP581 top view 8.1.2 Bottom View Figure 25: BMP581 bottom view UNLESS OTHERWISE SPECIFIED DIMENSIONS ARE IN MILLIMETERS, TOLERANCES ±0.05 Modifications reserved | Data subject to change without notice...
Page 68
68 | 74 8.1.3 Side view Figure 26: BMP581 side view 8.2 Landing pattern Bosch Sensortec suggests the BMP581 outline Dimensions (see -7.1.2 bottom view) as landing pattern. Modifications reserved | Data subject to change without notice Document number: BST-BMP581-DS004-02...
Bosch Sensortec"| BST-BMP581-DS004-02 69 | 74 8.3 Device Marking The BMP581 device lid shows the following laser-marking: 8.3.1 Mass Production Devices Table 29: Package markings Marking Name Symbol Description Product number 1 digit (alphanumeric), fixed; for identification of device type (“A” = BMP581)
Page 70
8.6 Internal Package Structure Within the scope of Bosch Sensortec's ambition to improve its products and secure the mass product supply, Bosch Sensortec qualifies additional sources (e.g. 2nd source) for the LGA package of the BMP581. 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.
Page 71
Bosch Sensortec"| BST-BMP581-DS004-02 71 | 74 8.7 Tape and reel specification 8.7.1 Dimensions Figure 27: Tape and Reel dimensions Quantity per reel: 10 kpcs. 8.7.2 Orientation within the reel The orientation of the sensor placement inside the tape on reel can be found below.
Page 72
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.
Page 73
Bosch Sensortec"| BST-BMP581-DS004-02 73 | 74 10 Document history and modification Rev. No Chapter Description of modification/changes Date Final official datasheet September 2021 Changed reset value for address 0x14 and 0x13 November 2021 Updated I²C and I3C timing specifications wrt. 1.2V Updated I²C and I3C timings in Table 4...
Page 74
Bosch Sensortec"| BST-BMP581-DS004-02 74 | 74 Bosch Sensortec GmbH Gerhard-Kindler-Straße 9 72770 Reutlingen / Germany contact@bosch-sensortec.com www.bosch-sensortec.com Modifications reserved Preliminary - specifications subject to change without notice Document number: BST-BMP581-DS004-02 Modifications reserved | Data subject to change without notice Document number: BST-BMP581-DS004-02...
Need help?
Do you have a question about the BMP581 and is the answer not in the manual?
Questions and answers