BMA180 BMA180 Digital, triaxial acceleration Preliminary data sheet sensor Bosch Sensortec Preliminary data sheet BMA180 Preliminary data sheet Order code(s) 0 273 141 053 Package type 12-pin LGA Data sheet version 1.0 Document release date 06 March 2009 Document number BST-BMA180-DS000-01 Notes Rev. 1.0 Specifications are preliminary and subject to change without notice.
BMA180 Preliminary data sheet Bosch Sensortec BMA180 Triaxial, ultra-high performance accelerometer with switchable g-ranges and bandwidths and integrated thermometer Key information - Three-axis accelerometer with integrated temperature sensor - Ultra high performance g-sensor (ultra-low noise, ultra-high accuracy) with full 14 bit operation within a wide operation range - Digital Interfaces: 4-wire SPI, I²C, interrupt pin - High feature set with customer programmable g-ranges, filters, interrupts,
BMA180 Preliminary data sheet Bosch Sensortec Key features - Customer programmable g-ranges (1g, 1.5g, 2g, 3g, 4g, 8g, 16g) - Customer programmable integrated digital filters (no external components): - 8 low-pass filters: 10, 20, 40, 75, 150, 300, 600, 1200Hz - 1 high-pass-filter: 1Hz - 1 band-pass-filter: 0.2 . . .
BMA180 Preliminary data sheet Bosch Sensortec Typical applications Tilt, motion and vibration sensing in - Navigation devices (INS/Dead Reckoning) Robotics Gesture recognition Pointing devices E-compass Cell phones Handhelds Computer peripherals Man-machine interfaces Virtual reality Gaming devices Digital cameras and digital camcorders High accuracy tilt sensing (level meter) General description The BMA180 is a ultra-high-performance tri-axial low-g acceleration sensor for consumer market applications.
BMA180 Preliminary data sheet Bosch Sensortec TABLE OF CONTENTS 1 SPECIFICATION....................................................................................................................................8 2 ABSOLUTE MAXIMUM RATINGS..................................................................................................... 14 3 BLOCK DIAGRAM .............................................................................................................................
BMA180 Preliminary data sheet Bosch Sensortec 7.8.7 dis_reg .................................................................................................................................. 32 7.8.8 wake_up................................................................................................................................ 32 7.8.9 wake_up_dur ........................................................................................................................ 33 7.8.10 slope_alert ..........
BMA180 Preliminary data sheet Bosch Sensortec 8.1 SPECIFICATION OF INTERFACE PARAMETERS .................................................................................. 58 8.2 INTERFACE SELECTION ................................................................................................................. 58 8.3 I²C INTERFACE ............................................................................................................................. 59 8.3.1 I²C timings...............................
BMA180 Bosch Sensortec Preliminary data sheet 1 Specification Unless otherwise stated, given minimum, typical, maximum values are corresponding values over full performance temperature/voltage range in the normal operation mode. In the present specification different LSB-values are mentioned; following values are valid: - 1 LSBADC ≈ 0.25 mg in 2 g range; it scales with range (e. g.: 1g-range ->1 LSBADC is 0.125 mg) - 1 LSBTEMP = 0.5°C.
BMA180 Bosch Sensortec Preliminary data sheet Parameter Symbol Condition Min Typ Max 1.8 1.9 2.0 Internal band-gap: Full perform. in T-range: -40 °C . . .+85°C 2.0 2.4 3.6 External band-gap: Full perform. in T-range: -40°C . . . +85°C 1.62 1.8 1.98 VDDIO ≤ VDD (timing: VDD must be applied BEFORE VDDIO) 1.2 1.8 3.6 Unit Internal band-gap: Full perform. in T-range: 0°C . . .
BMA180 Bosch Sensortec Preliminary data sheet Parameter Calibration Range of Temperature Coefficient of Sensitivity: Temperature Coefficient of Sensitivity (as delivered) x-/y-channel Temperature Coefficient of Sensitivity (as delivered) z-channel Zero-g Offset trimming range (gain settings = middle code) Zero-g Offset (as delivered, no offsettuning, no soldering) Zero-g Offset (over lifetime, no offsettuning) Zero-g Offset (as delivered, after offsetfine-tuning; bit “11”) Zero-g Offset over lifetime (af
BMA180 Bosch Sensortec Preliminary data sheet Parameter Zero-g Offset Temperature Drift (as delivered): x-/y-channel Symbol TCO_xy Zero-g Offset Temperature Drift (as delivered): z-channel TCO_z DC Power supply rejection ratio PSRR_ DC AC Power supply rejection ratio PSRR_ AC Condition In ±2g range, scales with 1/range; T = 25 °C, VDD = 2.4 V Min In ±2g range, scales with 1/range; T = 25 °C, VDD = 2.4 V in ±2g range (dis_reg = 0), VDD = 2.4 V With 0.
BMA180 Bosch Sensortec Preliminary data sheet Parameter Symbol Bandwidth BW_10 Min Hz 40 Hz 75 Hz 150 Hz 300 Hz BW_600 600 Hz BW_1200 1200 Hz BW_150 BW_300 In low power mode BW_xyz is devided by 2 (e. g. 10Hz -> 5Hz) BW_HP High pass 1 Hz BW_BP Band pass 0.2 . . . 300 Hz NL_1g NL_1.5g NL_2g best fit straight line ±0.10 %FS NL_3g NL_4g NL_8g NL_16g best fit straight line ±0.25 %FS Temperature sensor bandwidth BW_ temp Temperature sensor sensitivity Temp_ sens 0.
BMA180 Bosch Sensortec Preliminary data sheet Parameter Symbol Condition BW = 1200Hz (delay between power on – VDD from 0 to min. = 1.8V – and end of first conversion) Min Typ Max Unit Start-up time Tst_up Start-up time from sleep mode Tst_sm BW = 1200Hz EEPROM write duration Tee_w For next EEPROM write Cross Axis Sensitivity S relative contribution between 3 axes 0.1 % Alignment Error δa relative to package outline ±1.0 Degree 2.5 ms 2 ms ms MECHANICAL CHARACTERISTICS Rev.
BMA180 Bosch Sensortec Preliminary data sheet 2 Absolute maximum ratings Stresses above absolute maximum ratings may cause permanent damage to the device. Exceeding the specified characteristics may affect device reliability or cause mal-function. Parameter Supply voltage Condition VDD and VDDIO Voltage at any digital pad Vpad_dig Storage temperature range Junction temperature Units V VSS-0.3 VDDIO +0.
BMA180 Preliminary data sheet 3 Bosch Sensortec Block diagram Figure 1: Block diagram of BMA180 The Block diagram shows - the micromechanical g-sensor elements (measurement of acceleration in x-, y- and zdirection), - the temperature sensor, - the front-End-circuit including preamplifiers and analogue pre-filtering circuitry, - a multiplexer, - the 14bit ADC, - the digital part of the circuitry (responsible for offset regulation, calibration, digital filtering, power regulation) - the inter
BMA180 Preliminary data sheet 4 Bosch Sensortec Operation modes BMA180 is able to work in different operation modes: - Standard modes a) low power mode (current optimized normal mode) b) 3 low noise modes (noise optimized normal modes) - Sleep mode device is “sleeping”; power consumption is at minimum - Wake up mode device is “sleeping” for a certain time, waking up for a certain time, falling back to sleep, etc. This mode is an intermediate mode to the standard modes and sleep mode.
BMA180 Preliminary data sheet Bosch Sensortec b) In small bandwidth applications, sleep mode could be used to save a significant amount of power by frequently changing between sleep and standard mode (see next section). 4.2.2 Current consumption using duty cycling For most of the applications a sensor must not stay permanently in normal mode. This allows a significant reduction of current consumption by switching periodically between sleep and normal mode. Of course, settling times, etc.
BMA180 Preliminary data sheet 4.3 Bosch Sensortec Wake-up mode 4.3.1 General information In general BMA180 is attributed to low power applications and can contribute to the system power management. - Current consumption 575µA operational (low power mode) Current consumption < 1µA in sleep mode Wake-up time < 2ms and Start-up time < 3.
BMA180 Bosch Sensortec Preliminary data sheet - high-g and low-g criteria (e. g. acquisition of one data point) - any-motion criterion (e. g. four data points) The following table shows values calculated for the average current consumption during the wake-up mode of the BMA180. The power consumption in wake-up mode is dependent on the duration of the interrupt algorithm (number of data acquisitions) and the bandwidth (for more details on setting of the bandwidth please refer to chapter 7.8.
BMA180 Bosch Sensortec Preliminary data sheet Figure 2: Average current consumption in self wake-up mode using high-g or low-g interrupt, here typical values in low-power mode Typical current consumption (low noise mode) during wake-up mode [µA] (depending on bandwidth, calculated using typical values) Pause [ms] 0 20 80 360 2560 (@ 1200Hz) (@ 600Hz) (@300Hz (@150Hz) (@75Hz) (@40Hz) (@20Hz) (@10Hz) 900 113 32 8 2 900 140 40 10 2 900 190 57 14 3 900 273 89 22 4 900 379 139 36 6 900 518 228 6
BMA180 Bosch Sensortec Preliminary data sheet 5 Data conversion 5.1 Acceleration data Acceleration data are converted by a 14bit ADC. The description of the digital signal is "2’s complement". The 14bit data are available as LSB (at lower register address) and MSB. It is possible to read out MSB only (8bit) or LSB and MSB together (16bits with 14 data bits and 1 data ready bit).
BMA180 Bosch Sensortec Preliminary data sheet 6 Internal logic functions The sensor IC can inform the host system about specific conditions (e.g. new data ready flag or acceleration thresholds passed) by setting an interrupt pin high even if interface communication is not taking place. This feature can be used as “free-fall or low-g indicator”, “wake-up” or “data ready flag” for instance. The interrupt performance can be programmed by means of control bits.
BMA180 Preliminary data sheet Bosch Sensortec 6.2 High-g logic For indicating high-g events an upper threshold can be programmed. This logic can also be activated by a control bit. Threshold, duration and reset behaviour can be programmed. The high-g and free-fall criteria can be logically combined with an . 6.3 Slope detection (or any motion detection) The “any motion algorithm” can be used to detect changes of the acceleration. Thus it provides a relative evaluation of the acceleration signals.
BMA180 Preliminary data sheet 7 Bosch Sensortec Global memory map The memory map shows all externally accessible registers needed to operate BMA180. Rev. 1.0 Page 24 / - proprietary information - 06 March 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.
BMA180 Bosch Sensortec Preliminary data sheet The left columns inform about the memory addresses. The remaining columns show the content of each register bit. The colors of the bits indicate whether they are read-only, write-only or read- and writable. The non EEPROM part of the memory is volatile so that the writable content has to be re-written after each power-on. The extended address space greater than 3Ch (or 5Ch in EEPROM area), is not shown.
BMA180 Bosch Sensortec Preliminary data sheet EEPROM − Interrupt settings − Default settings of functional and interrupt settings Trimming values Customer reserved data storage Bosch Sensortec Reserved Memory − − − Read / Write Write volatile non-volatile Write Write Write non-volatile non-volatile non-volatile - The global memory mapping contains EEPROM and latches. - All EEPROM registers are duplicated into the corresponding image registers.
BMA180 Bosch Sensortec Preliminary data sheet 7.4 Register arithmetic The following arithmetic is used for memory registers. 7.5 Register OFFSETX|Y|Z Format offset binary Bit width 3x12 GAINX|Y|Z offset binary 3x7 TCOX|Y|Z offset binary 3x6 TCS offset binary 4 AX|Y|Z (acceleration values) 2's complement 3x14 Temp. 2's complement 8 THRESHOLD (TH or TH_X|Y|Z) unsigned positive 8 HYSTERESIS (HY or HY_X|Y|Z) unsigned positive 5 EEPROM 7.5.
BMA180 Preliminary data sheet Bosch Sensortec As EEPROM reading, EEPROM writing is also an indirect procedure. Data from corresponding image registers are written to EEPROM after sending write transaction to addresses 40h to 5Fh. As EEPROM word is 16-bit (and writing is done in parallel), transaction with even address writes to this address (A) and one address above (A+1). The transaction with odd address is ignored. Data of writing transition is ignored (SPI) or can be omitted (I2C).
BMA180 Preliminary data sheet Bosch Sensortec Register name default value offset_x, offset_y, offset_z, offset_t middle code gain_x, gain_y, gain_z, gain_t middle code tco_x, tco_y, tco_z middle code tcs middle code bw 0100b range 010b wake_up_dur 10b slope_dur, mot_cd_r, ff_cd_r, 01b offset_finetuning mode_config 00b tapsens_dur 100b adv_int 1b high_th 01010000b low_th 00010111b high_dur 0110010b low_dur 1010000b high_int_*, low_int_*, 1b tapsens_int_*, slope_int_* All bits, which are not-mentioned in ab
BMA180 Bosch Sensortec Preliminary data sheet 7.8 General functional settings 7.8.1 range These 3 bits are used to select the full scale acceleration range (further included are the ADCresolutions) range<2:0> 000 001 010 011 100 101 110 111 Full scale acceleration range [+/- g] 1 1.5 2 3 4 8 16 Not authorised code ADC resolution [mg/LSB] 0.13 0.19 0.25 0.38 0.50 0.99 1.
BMA180 Bosch Sensortec Preliminary data sheet 7.8.3 mode_config BMA180 has four different working sub-modes in “standard mode”. By setting the mode_config bits the sub-mode is configured as described in the following table.
BMA180 Preliminary data sheet Bosch Sensortec • After a write of mode_config bits in EEPROM, a soft reset is mandatory. 7.8.4 readout_12bit For the acceleration read-out code, this bit allows switching from 14 bit (default mode, readout_12bit = ‘0’) to 12 bit (readout_12bit = ‘1’). In this case, the two last LSB are set by default to ‘0’. This might be useful if all other devices in a system just use 12 bit. 7.8.
BMA180 Preliminary data sheet Bosch Sensortec After setting wake_up to ‘1’, the device goes to the sleep mode and cycle sleep/wake-up/sleep is started. The IC wakes-up for a minimum duration which depends on the number of required valid acceleration data to determine if an interrupt should be generated. For example, if bw = 0111, low_int = 1 and low_dur = 31d, the IC will need time to acquire a minimum number of acceleration data: the IC needs low_dur = 31d = 31*5*Tupdate = 64.
BMA180 Preliminary data sheet Bosch Sensortec 7.8.12 CRC - checksum bits CRC are checksum bits used to verify the integrity of the trimming codes. This is used for the check of the EEPROM content during the packaging procedure. Furthermore it could be checked, whether a trimming procedure at customer side has been performed. 7.8.13 ee_cd1, ee_cd2 - customer data These 2 bytes can be used by customers to store any data in the non-volatile memory. Its content does not influence the ASIC functionality.
BMA180 Bosch Sensortec Preliminary data sheet 7.9.1 adv_int This bit is used to disable 3 advanced interrupt control bits: slope_alert, slope_int and st_damp. If adv_int = 0, writing these advanced interrupt control bits to 1 has no effect on IC functions (these bits are ignored). This feature is used to avoid IC mal-function when the above mentioned advanced interrupt features shouldn’t be used but these bits are written to 1 by error.
BMA180 Preliminary data sheet Bosch Sensortec 7.9.3 lat_int When this bit is at 1, interrupts are latched: the INT pad stays high until microprocessor detects it and writes reset_int control bit to 1. When this bit is at 0, interrupts are non-latched: interrupts are set and reset directly by BMA180 (e. g. interrupt condition disappears -> interrupt pin is reset to 0).
BMA180 Preliminary data sheet Bosch Sensortec • low_filt: evaluation if interrupt generation is done with filtered (low_filt = “1”) or unfiltered (low_filt = “0”) acceleration signal. • • low_dur: ff_cd_r : low threshold duration and free_fall_counter_down_register are used for debouncing low-g criteria. Remarks: - The thresholds codes are compared with the 8 MSB bits of acceleration value (in absolute value), the low threshold level can thus be selected anywhere in the full scale range.
BMA180 Preliminary data sheet Bosch Sensortec noise modes). Depending on ff_cd_r register value, the counter could also be reset or count down when low_th_criteria is false: ff_cd_r<1:0> 00 01 Low-g interrupt counter (free-fall-counter) status when low_th_criteria is false reset Count down by 1 NCOUNT 10 Count down by 2 NCOUNT 11 Count down by 3 NCOUNT When the low acceleration interrupt counter value equals low_dur (low_dur <>0), an interrupt is generated.
BMA180 Preliminary data sheet Bosch Sensortec • • high_int_x: high_int_y: defining if high-g event on x-axis should generate high-g interrupt defining if high-g event on y-axis should generate high-g interrupt • high_int_z: defining if high-g event on z-axis should generate high-g interrupt • high_filt: evaluation if interrupt generation is done with filtered (high_filt = “1”) or unfiltered (high_filt = “0”) acceleration signal.
BMA180 Preliminary data sheet Bosch Sensortec If latch_INT=0, the interrupt is not a latched interrupt (as in figure 6) and then it is reset as soon as High_thresh criteria becomes false. When an interrupt occurs, the interrupt counter is reset. 7.9.6 Slope interrupt (any motion interrupt) 7.9.6.1 General explanation BMA180 is providing a possibility to detect slope/any motion events of a device (e. g. tumbling).
BMA180 Preliminary data sheet Bosch Sensortec 7.9.6.2 Slope interrupt configuration parameters and settings The following configuration parameters/settings are provided (all unsigned integer) • slope_int: This bit enables the slope_th_criteria to generate an interrupt. It cannot be turned on simultaneously with slope_alert. This bit can be masked by adv_int (value of slope_int is ignored, if adv_int = 0). • slope_th: defining slope threshold value, LSB size corresponds to 15.
BMA180 Bosch Sensortec Preliminary data sheet 7.9.6.3 slope interrupt: algorithm An example of slope detection (here bw = 0111b, slope_dur = 01b, slope_int = 1) is shown below. At a certain time, a high slope is detected and INT is set to “1” (high slope has to stay for 3 consecutive data points, here until time t0). If slope is decreased, after a certain time low slope is detected (again after 3 consecutive data points) and INT is reset at time t1 to “0”.
BMA180 Preliminary data sheet Bosch Sensortec Slope interrupt is performed, if at least 1 axis is leading to an interrupt (OR-connection). Slope criterion is determined from digital filter output and depends on bandwidth settings: for example for slope_dur=01b and bandwidth=0111b (1.2kHz), 2*bandwidth=2.4ksamples/s leads to reaction for interrupt activation of 3*417 µs = 1.25 ms and a minimum slope interrupt duration of 3*417µs = 1.25ms.
BMA180 Bosch Sensortec Preliminary data sheet 7.9.7 Tap sensing 7.9.7.1 General explanation BMA180 is providing a possibility to detect two consecutive slope events of a device and may generate an interrupt. 7.9.7.2 Tap sensing interrupt configuration parameters and settings The following configuration parameters/settings are provided (all unsigned integer) • tapsens_int: This bit enables the tapsens_criteria to generate an interrupt • tapsens_th defines the threshold level of the tip-shock.
BMA180 Bosch Sensortec Preliminary data sheet 7.9.7.3 Tap sensing interrupt: algorithm An acceleration slope is detected when the criterion tapsens_th_criteria is set. The tap sensing feature is using two acceleration signal slope detections. The first slope detection sets the status bit first_tapsens_s to ‘1’. An interrupt signal is generated only if new slope detection comes after tapsens_shock = (120*Tupdate) = 50ms and before tapsens_dur.
BMA180 Preliminary data sheet Bosch Sensortec 7.10 Performance settings As performance settings offset, gain (sensitivity), TCO and TCS are considered. 7.10.1 Gain trimming (sensitivity trimming) Gains of the sensor (temperature and acceleration for x-, y- and z-axis) are calibrated at production line. Corresponding bit widths are shown below: gain_t: gain_z: gain_y: gain_x: Gain trimming for temperature (5 bits). Gain trimming for Z axis (7 bits). Gain trimming for Y axis (7 bits).
BMA180 Preliminary data sheet Bosch Sensortec 7.10.3 Offset_finetuning 7.10.3.1 General explanation The sensor is providing a possibility to regulate offsets down to very small values. This can be done for each axis separately. Remaining offsets are within a certain range below/above 0g (also for z-axis), the value of which are depending on the fine-tuning mode (see below). 7.10.3.
BMA180 Preliminary data sheet fine_offset_* bits fine_offset_x fine_offset_y fine_offset_z • Bosch Sensortec Correspondance to Register Comments low int registers low_th 29h LSB to '0' low_dur 26h low_int_x bit 6 low_int_y bit 5 25h low_int_z bit 4 low_filt bit 3 low_hy<4> bit 2 23h low_hy<3> bit 1 low_hy<2> bit 0 The full calibration is the combination of these both calibrations. 7.10.3.3 Offset fine-tuning algorithm The procedure to run the offset calibration is the following: 1.
BMA180 Preliminary data sheet Bosch Sensortec used as an indication signal to the µC for finalization of the offset regulation procedure. Subsequently the EEPROM writing may occur. Remarks: • EEPROM writing has to be performed by the user. • After completion of the offset regulation/storage process, offset fine-tuning bits have to be reset to “00” to re-enable the low-interrupt function.
BMA180 Preliminary data sheet Bosch Sensortec 7.10.4 tc0_x, tc0_y and tco_z These 18 bits (6 bits each axis) are used to realize the temperature compensation of the offset on each axis. This compensation is directly done in the digital part. TCO-correction for each channel could be min. -1.6 mg/K for max. TCO, 0 mg/K for no TCO and max. +1.6 mg/K for min TCO. Step-size is 0.05 mg/K, thus all intermediate steps could be calculated easily. Theoretically a remaining TCO of only 0.
BMA180 Preliminary data sheet Bosch Sensortec Example: Measured sensitivity is changed by -1% from +25°C to +85°C. This is equivalent to -2% for full temperature range. Thus a correction of +2% for full temperature range is necessary. This can be achieved by choosing tcs <3:0> = “12” or 1100b. 7.11 Control registers description All single control bits are active at 1, a truth table is provided for commands coded on more than 1 bit. 7.11.
BMA180 Preliminary data sheet Bosch Sensortec 7.11.5 st1 This self test bit does not generate any electrostatic force in the MEM but is used to verify, whether the digital part is working correctly and that microprocessor is able to react to the interrupts. Basically a 0 g acceleration is emulated, and the user can detect the whole logic path for interrupt, including the PCB path integrity. The low_th interrupt register must be set by user so that st1 generates a low threshold interrupt. 7.11.
BMA180 Preliminary data sheet Bosch Sensortec 7.11.8 soft_reset BMA180 is reset each time the value B6h is written to this byte. The effect is identical to poweron reset. Control, status and image registers are reset to values stored in the EEPROM. After soft_reset or power-on reset BMA180 comes up in normal mode or wake-up mode. It is not possible to boot BMA180 to sleep mode. No serial transaction should occur within 10µs after soft_reset command. 7.11.
BMA180 Preliminary data sheet Bosch Sensortec 7.12 Status register 7.12.1 first_tap sensing This status bit is set when a first tap sensing shock has been detected. This bit is reset when at least one of the following conditions is true: - tap sensing feature is disabled during the processing of tap sensing sequence. - tapsens_dur period is passed. - tap sensing interrupt occurs. 7.12.2 str This is the self test result bit.
BMA180 Preliminary data sheet Bosch Sensortec 7.12.8 Status bits for acceleration or slope sign These latched status bits can be used by microprocessor to know the sign of the acceleration or the slope which has initiated an interrupt or alert signal (‘0’ for a positive sign, ‘1’ for a negative one). If the INT pad shall be asserted, sign bits are updated. The bits corresponding to the disabled axes are set to ‘0’, the other ones are set to the corresponding sign.
BMA180 Bosch Sensortec Preliminary data sheet update can optionally be blocked until it is also accessed for read (in fact, MSB content is copied in a shadow register and MSB access is re-directed to this copy which is not affected by updates). Thus, MSB overflow can be avoided. It is not possible to read-out only MSB bytes if shadow_dis=0, an LSB byte must first be read out (if not, shadow register is never updated and MSB value is always identical to first read value).
BMA180 Preliminary data sheet Bosch Sensortec be fed into BMA180 when other slaves are accessed. Thus, to be able to achieve low noise level, no activity on SCK, SDI and SDO should occur excepted to read out acceleration like explained on above chapter. new_data_x, new_data_y, new_data_z bits are flags which are turned at 1 when acceleration registers have been updated. Reading acceleration data MSB or LSB registers turns the flags at 0. The flag value can be read by microprocessor.
BMA180 Bosch Sensortec Preliminary data sheet 8 I²C and SPI-Interfaces 8.1 Specification of interface parameters Interface parameters : Symbol Input - low level Vil_si Input – high level Vih_si Output – low level Vol_SDI VDDIO= 1.2V to 3.6V VDDIO= 1.2V to 3.6V VDDIO =1.62V, iol=3 mA Output – low level Vol_SDI_1.2 for 1.2V Output – high level Voh_SDO Output – high level Voh_SDO_1.2 for 1.
BMA180 Bosch Sensortec Preliminary data sheet 8.3 I²C interface 8.3.1 I²C timings The I2C slave interface is compliant with Philips I2C Specification version 2.1 (January 2000). All modes (standard, fast, high speed) are supported. SDI and SCK pins are not pure open-drain (they are diodes to VDDIO). SDI tBUF tf tLOW SCK tHIGH tHDSTA tr tHDDAT tSUDAT SDI tSUSTA tSUSTO Figure 11: I2C timing diagram The BMA180 I2C slave address is coded on 7 bits.
BMA180 Preliminary data sheet Bosch Sensortec 8.3.2 Start and stop conditions Data transfer begins by a falling edge on SDI when SCK is at high level, this is the start condition (S), initiated by the I2C bus master. It is stopped with a rising edge on SDI when SCK is at high level; this is the stop condition (P). SDI SCK S P Start condition Stop condition Figure 12: I2C start and stop conditions 8.3.3 Bit transfer One data bit is transferred during each SCK pulse.
BMA180 Bosch Sensortec Preliminary data sheet 8.3.4 Acknowledge After a start condition, data bits are transferred to BMA180. Each byte is followed by an acknowledge bit: the transmitter let the SDI line high (no pull down) and generates a high SCK pulse; if transfer concerns the BMA180 slave receiver and has performed correctly, it generates a low SDI level (pull down activated). After acknowledge, BMA180 let SDI line free, enabling the transmitter to continue transfer or to generate a stop condition.
BMA180 Preliminary data sheet Bosch Sensortec Abbreviations: S Start P Stop ACKS Acknowledge by slave ACKM Acknowledge by master NACKM Not acknowledge by master Figure 15: I2C multiple write To be able to access registers in read mode, first address should first be send in write mode. Then a stop and a start conditions are issued and data bytes are transferred with automatic address increment: Figure 16: I2C multiple read Figure 16 shows a typical I2C transfer to read out acceleration data.
BMA180 Bosch Sensortec Preliminary data sheet 8.4 SPI interface (4-wire) 8.4.1 SPI protocol The SPI interface has a polarity = 1 and SPI phase = 0. CSB is active low. Data on SDI is latched by BMA180 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 high. When CSB=1, no SDI change is allowed when SCK=1 (to avoid any wrong start or stop condition for I2C interface).
BMA180 Bosch Sensortec Preliminary data sheet Control byte Start RW CSB = 0 1 Register adress (02h) 0 0 0 0 0 1 0 Data byte Data byte Data byte Data register - adress 02h Data register - adress 03h Data register - adress 04h Stop bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 CSB = 1 Figure 19: SPI multiple read 8.4.
BMA180 Preliminary data sheet 9 9.1 Bosch Sensortec Application examples Wake-up/free-fall detection Wake-up: The high-g interrupt feature with an appropriate threshold (e. g. 100 mg) can be used to wakeup a device without using complex algorithms. Please consult your Bosch Sensortec representative for more details. Zero-g/free-fall detection: The interrupt can also be used for zero-g or free-fall detection.
BMA180 Bosch Sensortec Preliminary data sheet 9.4.1.1 Standard earth field calibration method 1. Orientate the device at well-defined angles to the gravitational field (see following figure for the definition of the polar coordinates θ and ϕ. θ is the angle between the z-axis of the sensor and the g-force, ϕ the angle between the z-g-plane and the x-axis component which lies in the z-x-plane and which is perpendicular to the g-force). z θ x ϕ y g 2. 3. 4. 5. Choose range (e. g.
BMA180 Preliminary data sheet Bosch Sensortec Compared to the calibration method in 7.10.3 the usage of offset fine-tuning is much simpler (all calculations are done within the chip), but might take longer – depending on the initial offset. 9.4.1.3 High-pass or band-pass usage A third method to get a very small offset is the usage of the internal high-pass or band-pass of the sensor. In this case almost no offset occurs, if acceleration amplitudes in the small frequency range are not too high.
BMA180 Bosch Sensortec Preliminary data sheet 10 Pinning 10.1 Pin configuration (top view) 10.2 Pinning: electrical connections in case of SPI or I²C or no µC) Digital Analog Pin Name 01 reserved 02 VDD Power 03 04 VSS INT 05 06 CSB reserved GND Digital out Digital in 07 08 SCK SDO 09 SDI 10 VDDIO 11 reserved 12 reserved Rev. 1.
BMA180 Bosch Sensortec Preliminary data sheet Figure 20: Connection diagram for use with 4-wire SPI interface 1.8 .. 3.6 V 1.2 .. 3.6 V BMA180 Figure 21: Connection diagram for use with I²C interface 1.8 .. 3.6 V 1.2 .. 3.6 V BMA180 Rev. 1.0 Page 69 / - proprietary information - 06 March 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.
BMA180 Bosch Sensortec Preliminary data sheet Figure 22: Connection diagram for stand alone use without microcontroller 1.8 .. 3.6 V BMA180 10.3 External component connection diagram The following external component(s) are recommended to de-couple the power source (voltages are examples). 1.8V INT VDDIO C1=22 nF CSB SCK MISO 2.4V VDDA C2 =22 nF VSS MOSI Rev. 1.
BMA180 Bosch Sensortec Preliminary data sheet Or (if VDDIO = VDD) 2.4V INT VDDIO CSB SCK MISO VDDA C1=22 nF VSS MOSI Rev. 1.0 Page 71 / - proprietary information - 06 March 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.
BMA180 Bosch Sensortec Preliminary data sheet 11 Package 11.1 Outline dimensions The sensor housing is a standard LGA package. It is compliant with JEDEC Standard MO220C. Outline dimensions are shown below. 11.2 Orientation: polarity of the acceleration output If the sensor is accelerated into the indicated directions, the corresponding channels will deliver a positive acceleration signal (dynamic acceleration).
BMA180 Bosch Sensortec Preliminary data sheet The following table lists all corresponding output signals on Ax, Ay, and Az while the sensor is at rest or at uniform motion in a gravity field under assumption of a top down gravity vector as shown above. Output Signal Ax Output Signal Ay Output Signal Az Rev. 1.
BMA180 Bosch Sensortec Preliminary data sheet 11.3 Marking 11.3.1 Mass production samples Sensor Label 053 AYWW CCC Name Symbol Product number 053 Sub-con ID A Date code YWW Lot counter CCC Pin 1 identifier • Remark Coded alphanumerically Y: year (alpha-numerical 9=2009, A=2010) WW: Calendar week, numerical 11.3.2 Engineering samples Sensor Label 180e AYWW 0C1 Rev. 1.0 Name Symbol Remark Product name 180 BMA180 Eng.
BMA180 Preliminary data sheet Bosch Sensortec 11.4 Landing pattern recommendations The following PCB design is recommended in order to minimize solder voids and stress acting on the sensing element. All dimensions are given in mm. 11.
BMA180 Preliminary data sheet Bosch Sensortec 11.6 RoHS compliancy The BMA180 sensor IC meets the requirements of the EC restriction of hazardous substances (RoHS) directive, see also "Directive 2002/95/EC of the European Parliament and of the Council of 27 January 2003 on the restriction of the use of certain hazardous substances in electrical and electronic equipment". 11.7 Tape and reel (see document: Handling, soldering & mounting instructions, under preparation) 11.
BMA180 Preliminary data sheet Bosch Sensortec 12 Legal disclaimer 12.1 Engineering samples Engineering Samples are marked with an asterisk (*) 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.
BMA180 Bosch Sensortec Preliminary data sheet 13 Document history and modification Rev. No 0.9 1.0 Chapter All All Description of modification/changes Initial version Additional information, corrections, etc. Date 31 January 2009 06 March 2009 Bosch Sensortec GmbH Gerhard-Kindler-Strasse 8 72770 Reutlingen / Germany contact@bosch-sensortec.com www.bosch-sensortec.