Document Number: MPL115A2 Rev. 9, 02/2013 Freescale Semiconductor Data Sheet: Technical Data Miniature I2C Digital Barometer MPL115A2 The MPL115A2 is an absolute pressure sensor with a digital I2C output targeting low cost applications. A miniature 5 x 3 x 1.2 mm LGA package is ideally suited for the space constrained requirements of portable electronic devices. Low current consumptions of 5 μA during Active mode and 1 μA during Shutdown (Sleep) mode are essential when focusing on low-power applications. The wide operating temperature range spans from -40°C to +105°C to fit demanding environmental conditions. 50 to 115 kPa The MPL115A2 employs a MEMS pressure sensor with a conditioning IC to provide accurate pressure measurements from 50 to 115 kPa. An integrated ADC converts pressure and temperature sensor readings to digitized outputs via a I2C port. Factory calibration data is stored internally in an on-board ROM. Utilizing the raw sensor output and calibration data, the host microcontroller executes a compensation algorithm to render Compensated Absolute Pressure with ±1 kPa accuracy. MPL115A2 5.0 mm x 3.0 mm x 1.2 mm The MPL115A2 pressure sensor’s small form factor, low power capability, precision, and digital output optimize it for barometric measurement applications. Top View Features • • • • • • • • • • Digitized pressure and temperature information together with programmed calibration coefficients for host micro use. Factory calibrated 50 kPa to 115 kPa absolute pressure ±1 kPa accuracy 2.375V to 5.5V supply Integrated ADC I2C Interface (operates up to 400 kHz) 7-bit I2C address = 0x60 Monotonic pressure and temperature data outputs Surface mount RoHS compliant package VDD 1 8 SCL CAP 2 7 SDA GND 3 6 NC SHDN 4 5 RST Pin Connections Application Examples • • • • • • • Barometry (portable and desktop) Altimeters Weather stations Hard-disk drives (HDD) Industrial equipment Health monitoring Air control systems ORDERING INFORMATION Device Name MPL115A2 MPL115A2T1 Package Options Case No. Tray 2015 Tape & Reel (1000) 2015 # of Ports Pressure Type Absolute Digital Interface • • I2 C • • I2 C None Single © 2009-2013 Freescale Semiconductor, Inc. All rights reserved. Dual Gauge Differential 1 Block Diagram and Pin Descriptions 1 μF VDD VDD ADDR Coefficient Storage 1 μF CAP ADDR CAP ADDR MUX Diff Amp SHDN ADC ADDR Pressure SHDN ADDR Temperature Temp Sensor 4.7 k μC SCL SCL I 2C Interface SDA 4.7 k Microcontroller SDA RST RST GND GND Figure 1. Block Diagram and Pin Connections Table 1. Pin Description Pin Name 1 VDD VDD Power Supply Connection: VDD range is 2.375V to 5.5V. Function 2 CAP 1 μF connected to ground. 3 GND Ground 4 SHDN 5 RST Reset: Connect to ground to disable I2C communications. 6 NC NC: No connection 7 SDA(1) SDA: Serial data I/O line 8 SCL(1) I2C Serial Clock Input. Shutdown: Connect to GND to disable the device. When in shutdown, the part draws no more than 1 μA supply current and all communications pins (RST, SCL, SDA) are high impedance. Connect to VDD for normal operation. 1. Use 4.7k pullup resistors for I2C communication. MPL115A2 2 Sensors Freescale Semiconductor, Inc. 2 2.1 Mechanical and Electrical Specifications Maximum Ratings Voltage (with respect to GND unless otherwise noted) VDD ..................................................................................................................... -0.3 V to +5.5 V SHDN, RST, SDA, SCL ...............................................................................-0.3 V to VDD+0.3 V Operating Temperature Range .......................................................................... -40°C to +105°C Storage Temperature Range ............................................................................. -40°C to +125°C Overpressure................................................................................................................ 1000 kPa 2.2 Operating Characteristics VDD = 2.375 V to 5.5 V, TA = -40°C to +105°C, unless otherwise noted. Typical values are at VDD = 3.3 V, TA = +25°C. Ref Parameters Symbol 1 Operating Supply Voltage VDD 2 Supply Current IDD Conditions Min Typ Max Units 2.375 3.3 5.5 V Shutdown (SHDN = GND) — — 1 μA Standby — 3.5 10 μA Average – at one measurement per second — 5 6 μA Pressure Sensor 3 Range 50 — 115 kPa 4 Resolution — 0.15 — kPa 5 Accuracy -20ºC to 85ºC — — ±1 kPa 6 Power Supply Rejection Typical operating circuit at DC 0.1 — kPa/V 100 mV p-p 217 Hz square wave plus 100 mV pseudo random noise with 10 MHz bandwidth 0.1 — kPa 7 Conversion Time (Start Pressure and Temperature Conversion) tc Time between start convert command and data available in the Pressure and Temperature registers — 1.6 3 ms 8 Wakeup Time tw Time between leaving Shutdown mode (SHDN goes high) and communicating with the device to issue a command or read data. — 3 5 ms I2C I/O Stages: SCL, SDA 9 SCL Clock Frequency fSCL — — 400 kHz 10 Low Level Input Voltage VIL — — 0.3VDD V 11 High Level Input Voltage VIH 0.7VDD — — V 0 — 0.4 s I2C Outputs: SDA 12 Data Setup Time tSU Setup time from command receipt to ready to transmit I2C Addressing MPL115A2 uses 7-bit addressing, does not acknowledge the general call address 0000000. Slave address has been set to 0x60 or 1100000. MPL115A2 Sensors Freescale Semiconductor, Inc. 3 3 Overview of Functions/Operation Initial powerup Reading coefficient data Data conversion Compensated pressure reading Shutdown Figure 2. Sequence Flow Chart The MPL115A interfaces to a host (or system) microcontroller in the user’s application. All communications are via I2C. A typical usage sequence is as follows: Initial Power-up All circuit elements are active. I2C port pins are high impedance and associated registers are cleared. The device then enters standby mode. Reading Coefficient Data The user then typically accesses the part and reads the coefficient data. The main circuits within the slave device are disabled during read activity. The coefficients are usually stored in the host microcontoller local memory but can be re-read at any time. It is not necessary to read the values stored in the host microcontroller multiple times because the coefficients within a device are constant and do not change. However, note that the coefficients will be different from device to device, and cannot be used for another part. Data Conversion This is the first step that is performed each time a new pressure reading is required which is initiated by the host sending the CONVERT command. The main system circuits are activated (wake) in response to the command and after the conversion completes, the result is placed into the Pressure and Temperature ADC output registers. The conversion completes within the maximum conversion time, tc (see Row 7, in the Operating Characteristics Table). The device then enters standby mode. Compensated Pressure Reading After the conversion has been given sufficient time to complete, the host microcontroller reads the result from the ADC output registers and calculates the Compensated Pressure, a barometric/atmospheric pressure value which is compensated for changes in temperature and pressure sensor linearity. This is done using the coefficient data from the MPL115A and the raw sampled pressure and temperature ADC output values, in a compensation equation (detailed later). Note that this is an absolute pressure measurement with a vacuum as a reference. From this step the host controller may either wait and then return to the Data Conversion step to obtain the next pressure reading or it may go to the Shutdown step. MPL115A2 4 Sensors Freescale Semiconductor, Inc. Shutdown For longer periods of inactivity the user may assert the SHDN input by driving this pin low to reduce system power consumption. This removes power from all internal circuits, including any registers. In the shutdown state, the Pressure and Temperature registers will be reset, losing any previous ADC output values. This step is exited by taking the SHDN pin high. Wait for the maximum wakeup time, tw (see Row 8, in the Operating Characteristics Table), after which another pressure reading can be taken by transitioning to the data Conversion step. Table 2. Device Memory Map Address Name Description Size (bits) 0x00 Padc_MSB 10-bit Pressure ADC output value MSB 8 0x01 Padc_LSB 10-bit Pressure ADC output value LSB 2 0x02 Tadc_MSB 10-bit Temperature ADC output value MSB 8 0x03 Tacd_LSB 10-bit Temperature ADC output value LSB 2 0x04 a0_MSB a0 coefficient MSB 8 0x05 a0_LSB a0 coefficient LSB 8 0x06 b1_MSB b1 coefficient MSB 8 0x07 b1_LSB b1 coefficient LSB 8 0x08 b2_MSB b2 coefficient MSB 8 0x09 b2_LSB b2 coefficient LSB 8 0x0A c12_MSB c12 coefficient MSB 8 0x0B c12_LSB c12 coefficient LSB 8 0x0C Reserved* — — 0x0D Reserved* — — 0x0E Reserved* — — 0x0F Reserved* — — 0x10 Reserved — — 0x11 Reserved — — 0x12 CONVERT Start Pressure and Temperature Conversion — *These registers are set to 0x00. These are reserved, and were previously utilized as Coefficient values, c11 and c22, which were always 0x00. For values with less than 16 bits, the lower LSBs are zero. For example, c12 is 14 bits and is stored into 2 bytes as follows: c12 MS byte = c12[13:6] = [c12b13 , c12b12 , c12b11 , c12b10 , c12b9 , c12b8 , c12b7 , c12b6] c12 LS byte = c12[5:0] & “00” = [c12b5 , c12b4 , c12b3 , c12b2 , c12b1 , c12b0 , 0 , 0] 3.1 Pressure, Temperature and Coefficient Bit-Width Specifications The table below specifies the initial coefficient bit-width specifications for the compensation algorithm and the specifications for Pressure and Temperature ADC values. Pressure, Temperature and Compensation Coefficient Specifications a0 b1 b2 c12 Padc Tadc Total Bits 16 16 16 14 10 10 Sign Bits 1 1 1 1 0 0 Integer Bits 12 2 1 0 10 10 Fractional Bits 3 13 14 13 0 0 dec pt zero pad 0 0 0 9 0 0 MPL115A2 Sensors Freescale Semiconductor, Inc. 5 Example Binary Format Definitions: a0 Signed, Integer Bits = 12, Fractional Bits = 3 : Coeff a0 = S I11 I10 I9 I8 I7 I6 I5 I4 I3 I2 I1 I0 . F2 F1 F0 b1 Signed, Integer Bits = 2, Fractional Bits = 13 : Coeff b1 = S I1 I0 . F12 F11 F10 F9 F8 F7 F6 F5 F4 F3 F2 F1 F0 b2 Signed, Integer Bits = 1, Fractional Bits = 14 : Coeff b2 = S I0 . F13 F12 F11 F10 F9 F8 F7 F6 F5 F4 F3 F2 F1 F0 c12 Signed, Integer Bits = 0, Fractional Bits = 13, dec pt zero pad = 9 : Coeff c12 = S 0 . 000 000 000 F12 F11 F10 F9 F8 F7 F6 F5 F4 F3 F2 F1 F0 Padc Unsigned, Integer Bits = 10 : Padc U = I9 I8 I7 I6 I5 I4 I3 I2 I1 I0 Tadc Unsigned, Integer Bits =10 : Tadc U = I9 I8 I7 I6 I5 I4 I3 I2 I1 I0 NOTE: Negative coefficients are coded in 2’s complement notation. 3.2 Compensation The 10-bit compensated pressure output, Pcomp, is calculated as follows: Pcomp = a0 + ( b1 + c12 ⋅ Tadc ) ⋅ Padc + b2 ⋅ Tadc Eqn. 1 Where: Padc is the 10-bit pressure ADC output of the MPL115A Tadc is the 10-bit temperature ADC output of the MPL115A a0 is the pressure offset coefficient b1 is the pressure sensitivity coefficient b2 is the temperature coefficient of offset (TCO) c12 is the temperature coefficient of sensitivity (TCS) Pcomp will produce a value of 0 with an input pressure of 50 kPa and will produce a full-scale value of 1023 with an input pressure of 115 kPa. Pressure (kPa) = P comp 3.3 ⋅ 115 – 50 ---------------------- + 50 1023 Eqn. 2 Evaluation Sequence, Arithmetic Circuits The following is an example of the calculation for Pcomp, the compensated pressure output. Input values are in bold. c12x2 = c12 * Tadc a1 = b1 + c12x2 a1x1 = a1 * Padc y1 = a0 + a1x1 a2x2 = b2 * Tadc Pcomp = y1 + a2x2 This can be calculated as a succession of Multiply Accumulates (MACs) operations of the form y = a + b * x: a b + y X x MPL115A2 6 Sensors Freescale Semiconductor, Inc. The polynomial can be evaluated (Equation 1) as a sequence of 3 MACs: Pcomp = a0 + ( b1 + c12 ⋅ Tadc ) ⋅ Padc + b2 ⋅ Tadc b1 a1 c12 Tadc y1 a0 Padc y b2 PComp Tadc Please refer to Freescale application note AN3785 for more detailed notes on implementation. 3.4 I2C Device Read/Write Operations All device read/write operations are memory mapped. Device actions e.g. “Start Conversions” are controlled by writing to the appropriate memory address location. • • For I2C the 7-bit Device Address (from Table 2) has a read/write toggle bit, where the least significant bit is ‘1’ for read operations or ‘0’ for write operations. The Device Address is 0xC0 for a Write and the Device Address is 0xC1 for a Read. The most significant bit in the Command tables below is not used and is don't care (X). In examples given it’s set to ‘0’. Refer to Sensor I2C Setup and FAQ Application Note AN4481 for more information on I2C communication between the sensor and host controller. Table 3. I2C Write Commands Binary HEX(1) Devices Address + Write bit 1100 0000 0xC0 Start Conversions X001 0010 0x12 Command X = Don’t care 1 = The command byte needs to be paired with a 0x00 as part of the I2C exchange to complete the passing of Start Conversions. MPL115A2 Sensors Freescale Semiconductor, Inc. 7 The actions taken by the part in response to each command are as follows: Table 4. I2C Write Command Description Command Start Conversions Action Taken Wake main circuits. Start clock. Allow supply stabilization time. Select pressure sensor input. Apply positive sensor excitation and perform A to D conversion. Select temperature input. Perform A to D conversion. Load the Pressure and Temperature registers with the result. Shut down main circuits and clock. Table 5. I2C Read Command Description Binary HEX(1) Device Address + Read bit 1100 0001 0xC1 Read Pressure MSB X000 0000 0x00 Read Pressure LSB X000 0001 0x01 Read Temperature MSB X000 0010 0x02 Read Temperature LSB X000 0011 0x03 Read Coefficient data byte 1 X000 0100 0x04 Command X = don’t care These are MPL115A2 I2C commands to read coefficients, execute Pressure and Temperature conversions, and to read Pressure and Temperature data. The sequence of the commands for the interaction is given as an example to operate the MPL115A2. Utilizing this gathered data, an example of the calculating the Compensated Pressure reading is given in floating point notation. I2C Commands (simplified for communication) Device Address + write bit “To Write” = 0xC0 Device Address + read bit “To Read” = 0xC1 Command to Write “Convert Pressure and Temperature” = 0x12 Command to Read “Pressure ADC High byte” = 0x00 Command to Read “Pressure ADC Low byte” = 0x01 Command to Read “Temperature ADC High byte” = 0x02 Command to Read “Temperature ADC Low byte” = 0x03 Command to Read “Coefficient data byte 1 High byte” = 0x04 Read Coefficients: [0xC0], [0x04], [0xC1], [0x3E], [0xCE], [0xB3], [0xF9], [0xC5], [0x17], [0x33], [0xC8] Figure 3. I2C Read Coefficient Datagram MPL115A2 8 Sensors Freescale Semiconductor, Inc. a0 coefficient MSB = 0x3E a0 coefficient LSB = 0xCE a0 coefficient b1 coefficient MSB = 0xB3 b1 coefficient LSB = 0xF9 b1 coefficient b2 coefficient MSB = 0xC5 b2 coefficient LSB = 0x17 b2 coefficient = 0x3ECE = 2009.75 = 0xB3F9 = -2.37585 = 0xC517 = -0.92047 c12 coefficient MSB = 0x33 c12 coefficient LSB = 0xC8 c12 coefficient = 0x33C8 = 0.000790 Figure 4. I2C Start Conversion Datagram Command to I2C Start Conversion, 0x12 Figure 5. I2C Read Results Datagram Pressure MSB = 0x66 Pressure LSB = 0x80 Pressure = 0x6680 = 0110 0110 1100 0000 = 410 ADC counts Temperature MSB = 0x7E Temperature LSB = 0xC0 Temperature = 0x7EC0 = 0111 1110 1100 0000 = 507 ADC counts MPL115A2 Sensors Freescale Semiconductor, Inc. 9 3.5 Example of Pressure Compensated Calculation in Floating-point Notation a0 coefficient = 2009.75 b1 coefficient = -2.37585 b2 coefficient = -0.92047 c12 coefficient = 0.000790 Pressure = 410 ADC counts Temperature = 507 ADC counts Pressure Compensation: Pcomp = a0 + ( b1 + c12 ⋅ Tadc ) ⋅ Padc + b ( c ) Using the evaluation sequence shown in Section 3.3: c12x2 = c12 * Tadc a1 = b1 + c12x2 = -2.37585 + 0.40053 = -1.97532 a1x1 = a1 * Padc = -1.97532 * 410 = -809.8812 y1 = a0 + a1x1 = 2009.75 + (-809.8812) = 1199.8688 a2x2 = b2 * Tadc = -0.92047 * 507 = -466.67829 = 1199.8688 + (-466.67829) = 733.19051 PComp = y1 + a2x2 = 0.000790 * 507 Pressure (kPa) = P comp ⋅ = 0.40053 115 – 50 ---------------------- + 50 1023 = 96.59kPa = 733.19 4 ⋅ 115 – 50 ---------------------- + 50 1023 Solder Recommendations 1. 2. Use SAC solder alloy (i.e., Sn-Ag-Cu) with a melting point of about 217°C. It is recommended to use SAC305 (i.e., Sn-3.0 wt.% Ag-0.5 wt.% Cu). Reflow • • • • • • Ramp up rate: 2 to 3°C/s. Preheat flat (soak): 110 to 130s. Reflow peak temperature: 250°C to 260°C (depends on exact SAC alloy composition). Time above 217°C: 40 to 90s (depends on board type, thermal mass of the board/quantities in the reflow). Ramp down: 5 to 6°C/s. Using an inert reflow environment (with O2 level about 5 to 15 ppm). MPL115A2 10 Sensors Freescale Semiconductor, Inc. NOTE: The stress level and signal offset of the device also depends on the board type, board core material, board thickness and metal finishing of the board. Please refer to Freescale application note AN3150, Soldering Recommendations for Pressure Sensor Devices for any additional information. MPL115A2 Sensors Freescale Semiconductor, Inc. 11 5 Handling Recommendations It is recommended to handle the MPL115A pressure sensor with a vacuum pick and place tool. Sharp objects utilized to move the MPL115A pressure sensor increase the possibility of damage via a foreign object/tool into the small exposed port. The sensor die is sensitive to light exposure. Direct light exposure through the port hole can lead to varied accuracy of pressure measurement. Avoid such exposure to the port during normal operation. Please note that the Pin 1 designator is on the bottom of the package. Do not use the port as a orientation reference in production. 6 Soldering/Landing Pad Information The LGA package is compliant with the RoHS standard. It is recommended to use a no-clean solder paste to reduce cleaning exposure to high pressure and chemical agents that can damage or reduce life span of the Pressure sensing element. Figure 6. MPL115A2 Recommended PCB Landing Pattern MPL115A2 12 Sensors Freescale Semiconductor, Inc. 7 Tape and Reel Specifications (I) Ao Bo Measured from centerline of sprocket hole to centerline of pocket. Cumulative tolerance of 10 sprocket holes is ±0.20. (III) Measured from centerline of sprocket hole to centerline of pocket. (IV) Other material available. Dimensions are in millimeters. 3.35 ± 0.10 (II) 5.35 ± 0.10 Ko 1.20 ± 0.10 F 5.50 ± 0.10 P1 8.00 ± 0.10 W 12.00 ± 0.10 Figure 7. LGA (3 x 5) Embossed Carrier Tape Dimensions Pin 1 Index Area Figure 8. Device Orientation in Chip Carrier MPL115A2 13 Sensors Freescale Semiconductor, Inc. PACKAGE DIMENSIONS CASE 2015-02 ISSUE A LGA PACKAGE MPL115A2 14 Sensors Freescale Semiconductor, Inc. Table 6. Revision History Revision number Revision date 8 06/2012 • Updated graphic on page 1, Section 2.2 Operating Characteristics: Ref 7: Conversion Time: changed Typ from 3.0 to 1.6, Section 3.0 Overview of Functions/Operation: Reading Coefficient Data deleted statement that reading of coefficients may be executed only once, Table 2: added Size (bits) column in table, added new Section 3.4 I2C Device Read/Write Operations 9 10/2012 • Changed Example Binary format definitions b1 signed From: 7 To: 13, added F11 to Coeff b1, b2 and c12 on page 6. • Removed MPL115A2T2 from ordering table. Description of changes MPL115A2 Sensors Freescale Semiconductor, Inc. 15 How to Reach Us: Information in this document is provided solely to enable system and software Home Page: freescale.com implementers to use Freescale products. There are no express or implied copyright Web Support: freescale.com/support information in this document. licenses granted hereunder to design or fabricate any integrated circuits based on the Freescale reserves the right to make changes without further notice to any products herein. Freescale makes no warranty, representation, or guarantee regarding the suitability of its products for any particular purpose, nor does Freescale assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. “Typical” parameters that may be provided in Freescale data sheets and/or specifications can and do vary in different applications, and actual performance may vary over time. All operating parameters, including “typicals,” must be validated for each customer application by customer’s technical experts. Freescale does not convey any license under its patent rights nor the rights of others. Freescale sells products pursuant to standard terms and conditions of sale, which can be found at the following address: freescale.com/SalesTermsandConditions. Freescale, the Freescale logo, AltiVec, C-5, CodeTest, CodeWarrior, ColdFire, C-Ware, Energy Efficient Solutions logo, Kinetis, mobileGT, PowerQUICC, Processor Expert, QorIQ, Qorivva, StarCore, Symphony, and VortiQa are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. Airfast, BeeKit, BeeStack, ColdFire+, CoreNet, Flexis, MagniV, MXC, Platform in a Package, QorIQ Qonverge, QUICC Engine, Ready Play, SafeAssure, SMARTMOS, TurboLink, Vybrid, and Xtrinsic are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2013 Freescale Semiconductor, Inc. Document Number: MPL115A2 Rev. 9 02/2013