The acceleration sensor is a 14-bit digital ultra-low-power and high-performance three-axis
linear accelerometer with digital output interface. It measures user selectable acceleration
range of ±2g, ±4g, ±8g, ±16g with an output data rate up to 1600 Hz. It consists of a 32
level FIFO buffer to store the output data. It is embedded with a temperature sensor for ambient temperature measurement. The sensor is capable of detecting events like free fall, tap
recognition, wake up, stationary/motion, activity/inactivity and 6D orientation. The dimension
of the sensor is 2.0 mm×2.0 mm×0.7 mm. It is available in land grid array package (LGA).
1.2 Applications
• Industrial IoT and connected devices
• Industrial tools and factory equipment
• Vibration monitoring
• Tilt/inclination measurements
• Impact recognition and logging
1.3 Sensor features
•Selectable full scale:
•Output data rate:
•Bandwidth:
•Operating modes:
•Noise density:
•Current consumption:
•FIFO:
•Communication interface:
•Motion detection functionality:
•Embedded temperature sensor
±2g, ±4g, ±8g, ±16g
Up to 1600 Hz
400 Hz
High performance, normal, low power
90 µg /√Hz
High performance mode: 155µA
The sensor is a MEMS based capacitive acceleration sensor with an integrated ASIC. The
MEMS element is capable of measuring both dynamic acceleration due to motion or vibration and also static acceleration due to gravity. The sensor measures the acceleration or
vibration through MEMS capacitive sensing principle. The MEMS element consists of a
fixed structure and movable structure. The movable structure is free to move in the direction
of acceleration applied i.e. X, Y and Z direction. The force induced on the MEMS element
produces change in the capacitance value that is proportional to the force exerted on it.
Without any force on the sensor the capacitors will have a nominal capacitance value in the
range of picofarad (pF). When an acceleration is applied, the change in the capacitance
value is induced in the range of femtofarad (fF). The induced analog signal is converted to
digital form using an analog to digital converter followed by filters and controller logic blocks.
The final acceleration data from the output register can be accessed through an I2C or SPI
digital communication interface using host processor.
1.5 Ordering information
Figure 1: Block diagram
WE order codeTemperature RangeDescription
2533020201601-40° C to +85° CTape & reel packaging
Minimum and maximum values are based on characterization at 3σ.
Supply voltage on any pin should never exceed 4.8 V
2.5 General information
1
Max.
DD_IO
1
Unit
+ 0.3V
3000g
ParametersValues
Operating temperature-40°C to +85°C
Storage temperature-40°C to +125°C
Communication interfaceI2C & SPI
Moisture sensitivity level (MSL)3
Electrostatic discharge protection(HBM)2 kV
Table 7: General information
The device is susceptible to damage by electrostatic discharge (ESD). Always
use proper ESD precautions when handling. Improper handling of the device
can cause performance degradation or permanent damage to the part
1SCLI2C /SPI serial clockInput
2CSI2C enable/disable, SPI chip selectInput
3SAO
I2C device address selection, SPI
serial data output
Input/Output
4SDAI2C serial data, SPI serial data inputInput/Output
5NCNo connection6GNDNegative supply voltageSupply
7RSVDReserved, connect to GNDInput
8GNDNegative supply voltageSupply
9VDDPositive supply voltageSupply
10VDD_IOPositive supply voltage for I/O pinsSupply
11INT_1Interrupt pin 1Input/Output
12INT_0Interrupt pin 0Output
A positive supply voltage is applied to the sensor through VDD pin and I/O supply voltage for
digital interface through VDD_IO. The decoupling capacitor of 100 nF and 10µF in parallel
is highly recommended and should be placed as close as possible to the VDD pin. Communication is still possible, even if the supply voltage to theVDD pin is removed but maintaining
the VDD_IO. In this case, measurement chain of the sensor is not active.
The CS pin shall be connected to SS (slave select) pin on the controller side to enable SPI
communication interface. The CS pin shall be connected to VDD_IO in order to enable the
I2C communication interface. It is possible to have two I2C slave addresses by connecting
SAO pin either to VDD_IO or GND. In the above connection the SAO pin is connected to
VDD_IO. Rpare the recommended pull up resistors for I2C communication interface which
should be connected parallel between I/O supply voltage VDD_IO and SCL and SDA pins.
The SAO and CS pins are internally pulled up. The internal pull up resistor values of SAO
and CS pins for different supply voltage of the I/O pins are given below in table 9.
VDD_IOResistor value of SAO and CS (Typ.)
1.7V54.4 KΩ
1.8V49.2 KΩ
2.5V30.4 KΩ
3.6V20.4 KΩ
Table 9: Internal pull up values (typ) for SAO and CS pins
The acceleration sensor supports standard I2C (Inter-IC) bus protocol. Further information
of the I2C interface can be found at https://www.nxp.com/docs/en/user-guide/UM10204.pdf.
I2C is a serial 8-bit protocol with two-wire interface which supports communication between
different ICs. For example, between the microcontroller and other peripheral devices.
5.1 General characteristics
A serial data line (SDA) and a serial clock line (SCL) are required for the communication
between the devices connected via I2C bus. Both SDA and SCL lines are bidirectional. The
output stages of devices connected to the bus must have an open-drain or open-collector.
Hence, the SDA and SCL lines are connected to a positive supply voltage via pull-up resistors. In I2C protocol, the communication is realized through master-slave principle. The
master device generates the clock pulse, a start command and a stop command for the data
transfer. Each connected device on the bus is addressable via a unique address. Master
and slave can act as a transmitter or a receiver depending upon whether the data needs to
be transmitted or received.
The sensor behaves like a slave device on the I2C bus
The positive supply voltage to which SDA and SCL lines are pulled up (through pull-up
resistors), in turn determines the high level input for the slave devices. The sensor has
separate supply voltage VDD_IO for the SDA and SCL lines. The logic high ’1’ and logic low
’0’ levels for the SDA and SCL lines then depend on the VDD_IO. Input reference levels for
the acceleration sensor are set as 0.8 * VDD_IO (for logic high) and 0.2 * VDD_IO (for logic
low). See in figure 5.
Figure 5: SDA and SCL logic levels
5.3 Communication phase
5.3.1 Idle state
During the idle state, the bus is free and both SDA and SCL lines are in logic high ’1’ state.
5.3.2 START(S) and STOP(P) condition
Data transfer on the bus starts with a START command, which is generated by the master.
A start condition is defined as a high-to-low transition on the SDA line while the SCL line is
held high. The bus is considered busy after the start condition.
Data transfer on the bus is terminated with a STOP command, which is also generated by
the master. A low-to-high transition on the SDA line, while the SCL line being high is defined
as a STOP condition. After the stop condition, the bus is again considered free and is in idle
state. Figure 6 shows the I2C bus START and STOP conditions.
Master can also send a REPEATED START (SR) command instead of STOP command.
REPEATED START condition is same as the START condition.
After the start condition, one data bit is transmitted with each clock pulse. The transmitted
data is only valid when the SDA line data is stable (high or low) during the high period of the
clock pulse. High or low state of the data line can only change when the clock pulse is in low
state.
Figure 6: Data validity, START and STOP condition
5.3.4 Byte format
Data transmission on the SDA line is always done in bytes, with each byte being 8-bits long.
Data is transmitted with the most significant bit (MSB) followed by other bits.
If the slave cannot receive or transmit another complete byte of data, it can force the master
into a wait state by holding SCL LOW. Data transfer continues when the slave is ready which
is indicated by releasing the SCL pin.
5.3.5 Acknowledge(ACK) and No-Acknowledge(NAACK)
Each byte transmitted on the data line must follow an Acknowledge bit. The receiver (master or slave) generates an Acknowledge signal to indicate that the data byte was received
successfully and ready to receive next data byte.
After one byte is transmitted, the master generates an additional Acknowledge clock pulse
to continue the data transfer. The transmitter releases the SDA line during this clock pulse
so that the receiver can pull the SDA line to low state in such a way that the SDA line
remains stable low during the entire high period of the clock pulse. It is considered as an
Acknowledge signal.
If the receiver does not want to receive any further byte, it will not pull down the SDA line
and it remains in stable high state during the entire clock pulse. It is considered as a NoAcknowledge signal and the master can generate either a stop condition to terminate the
data transfer or a repeated start condition to initiate a new data transfer.
The slave address is transmitted after sending the start condition. Each device on the I2C
bus has a unique address. Master selects the slave by sending corresponding slave address
after the start condition. A slave address is a 7 bits long followed by a Read/Write bit.
Figure 7: Slave address format
The 7-bit slave address of the acceleration sensor is 001100xb. LSB of the 7-bit slave
address can be modified with the SAO pin. If SAO is connected to positive supply voltage
i.e. LSB is ’1’, making 7-bit slave address 0011001b (0x19). If SAO is connected to ground
i.e. LSB is ’0’, making 7-bit address 0011000b (0x18).
The R/W bit determines the data direction. A ’0’ indicates a write operation (transmission
from master to slave) and a ’1’ indicates a read operation (data request from slave).
Once the slave-address and data direction bit is transmitted, the slave acknowledges the
master. The next byte is transmitted by the master, which must be a register-address of the
sensor. It indicates the address of the register where data needs to be written to or read
from.
After receiving the register address, the slave sends an Acknowledgement (ACK). If the
master is still writing to the slave (R/W bit = 0), it will transmit the data to slave in the same
direction. If the master wants to read from the addressed register (R/W bit =1), a repeated
start (SR) condition must be transmitted to the slave. Master acknowledges the slave after
receiving each data byte. If the master no longer wants to receive further data from the slave,
it would send No-Acknowledge (NACK). Afterwards, master can send a STOP condition to
terminate the data transfer. Figure 9 shows the writing and reading procedures between the
master and the slave device (sensor).
5.4 I2C timing parameters
Standard modeFast mode
ParameterSymbol
MinMaxMinMax
Unit
SCL clock frequencyf
LOW period for SCL clockt
HIGH period for SCL clockt
Serial Peripheral Interface (SPI) is a synchronous serial communication bus system for the
communication between host microcontroller and other peripheral ICs such as ADCs, EEPROMs, sensors, etc. SPI is a full-duplex master-slave based interface allowing the communication to happen in both directions simultaneously. The data from the master or the slave
is synchronized either on the rising or falling edge of clock pulse. SPI can be either 4-wire or
3-wire interface. 4-wire interface consists of two signal lines and two data lines. All of these
bus lines are unidirectional.
1. Clock (SCL)
2. Chip select (CS)
3. Master out, slave in (MOSI)
4. Master in, slave out (MISO)
Figure 10: SPI Interface
Master generates the clock signal and is connected to all slave devices. Data transmission
between the master and salves is synchronized to the clock signal generated by the master.
One master can be connected to one or more slave devices. Each slave device is addressed
and controlled by the master via individual chip select (CS) signals. CS is controlled by the
master and is normally an active low signal.
MOSI and MISO are data lines. MOSI transmits data from the master to the slave. MISO
transmits data from the slave to the master.
The acceleration sensor supports 4-wire SPI communication protocol
Communication begins when the master selects a slave device by pulling the CS line to
LOW. The clock and data lines (MOSI/MISO) are available for the selected slave device.
Data stored in the specific shift registers are exchanged synchronously between master and
the slave through MISO and MOSI lines. The data transmission is over when the chip select
line is pulled up to the HIGH state. 4-wire SPI uses both data lines for the synchronous data
exchange in both the direction. 3-wire SPI shares a single data line for the data transfer,
where the master and slave alternate their transmitter and receiver roles synchronously.
6.2 Communication modes
In SPI, the master can select the clock polarity (CPOL) and clock phase (CPHA). The CPOL
bit sets the polarity of the clock signal during the idle state. The CPHA bit selects the clock
phase. Depending on the CPHA bit, the rising or falling clock edge is used to sample and
shift the data. Depending on the CPOL and CPHA bit selection in the SPI control registers,
four SPI modes are available as per table12. In order to ensure proper communication,
master and the slave must be set to same communication modes.
CPOLCPHADescription
00Clock polarity LOW in idle state; Data sampled on the rising clock edge
01Clock polarity LOW in idle state; Data sampled on the falling clock edge
11Clock polarity HIGH in idle state; Data sampled on the falling clock edge
10Clock polarity HIGH in idle state; Data sampled on the rising clock edge
4-Wire SPI of this sensor uses following lines: SDA (data input, MOSI), SAO (data output,
MISO), SCL (serial clock) and CS (chip select). For more information, please refer to pin
description in the section 3.
CS is pulled LOW by the master at the start of communication. The SCL polarity is HIGH in
the idle state (CPOL = 1). The data lines (SDA & SAO) are sampled at the falling clock edge
and latched at the rising clock edge (CPHA = 1). Data is transmitted with MSB first and the
LSB last.
SPI read and write operations are completed in 2 or more bytes (multiple of 16 or more clock
pulses). Each block consists of a register address byte and a data byte. The first byte is the
register address. In the SPI communication, the register address is specified in the 7-bits
and the MSB of the register address is used as an SPI read/write bit (Figure11). When R/W
is ’0’, the data is written on to the sensor. When ’1’, the data is read from the sensor.
Figure 11: SPI register address
The next bytes of data, depending on the R/W bit, is either written to or read from the indexed
register. Figure12shows the complete SPI data transfer protocol.
Figure 12: 4-wire SPI data transfer (CPOL = 1, CPHA = 1)
The write operation starts with the CS = LOW and sending the 7-bit register address with
R/W bit = ’0’ (write command). Next byte is the data byte that is the data to be written to the
indexed register. Several write command pairs can be sent without raising the CS back to
HIGH. The operation is ended with CS = HIGH. The SPI write protocol is shown in the figure
13
.
Figure 13: SPI write protocol
6.3.2 SPI read operation
The read operation starts with the CS = LOW and sending the 7-bit register address with
R/W bit = ’1’ (read command). Data is sent out from the sensor through the SAO line. The
SPI read protocol is shown in the figure14.
Figure 14: SPI read protocol
During multiple read/write operation, the register address is automatically incremented after each block. This feature is enabled by default with the bit
IF_ADD_INC set to ’1’ in the CTRL_2 register.
Sensitivity is defined as the ratio of change in input acceleration to the change in the output signal. The unit of sensitivity is typically expressed in mg/digit. It can be measured
by pointing the sensor horizontally downwards, an acceleration of 1g is measured due to
earth’s gravity (9.807 m/s2). Similarly by pointing sensor horizontally upwards (rotation of
180 degree), again an acceleration of 1g is measured due to earth’s gravity (9.807 m/s2). By
subtracting the larger measured output value from the smaller measured output value and
dividing by two gives the actual sensitivity of the acceleration sensor.
The sensitivity value will drift over time and temperature.
Sensitivity =
larger value - smaller value
(1)
2
7.2 0 g Level offset
0 g level is the output level when there is no acceleration or motion acting on the sensor i.e.
zero input. A sensor placed on a perfect horizontal plane will give 0 g output on X-axis and
Y-axis but 1 g on Z-axis. The deviation of an actual output value from the ideal value gives
the 0 g level offset. 0 g offset value is influenced by external parameters like temperature
and stress. External stress on the sensor will affect the sensor performance significantly.
The 0 g level offset will also drift over temperature.
External stress: Vias under the sensor on a PCB, PCB warpage, external
mechanical stress to the sensor.
7.3 Noise density
Noise density of the sensor is expressed as µg /√Hz. Noise density of the acceleration
sensor is dependent on the output data rate. The values are expressed in the chapter9.
The noise of the acceleration sensor is determined by the equivalent noise bandwidth of the
output filter and coefficient of the filter order. In general, the noise density is determined by
the equation:
This chapter describes the start up sequence of the acceleration sensor.
8.1 Power supply
The sensor has two individual supply voltage pins.
• VDD is main supply voltage
• VDD_IO is the I/O pin supply voltage for the digital I2C or SPI communication interface
It should be noted that VDD level should never be lower than VDD_IO i.e. proper power up
should be VDD > VDD_IO. It is possible to remove VDD by keeping VDD_IO pin without
communication interruption but the measurement chain of the sensor is turned off i.e. VDD
= 0 with VDD_IO "high" is allowed. In this case, the measurement chain is turned off but the
communication to the sensor is possible without interruption.
Power up sequence should be VDD > VDD_IO .
8.2 Boot status
By proper powering up of the sensor with correct voltage level to the respective pins, the
sensor enters into a 20 ms boot sequence to load the trimming parameters. After completion of the boot up sequence the sensor automatically enters to power down mode.
It is also possible to initiate the boot sequence manually by the user. It is performed by
setting the BOOT bit of the CTRL_2 register to ’1’, then the boot sequence is initiated and
trimming parameters are reloaded. In this case, the device operation mode does not change
after boot procedure. No toggle of the power is required and the content of the device control
registers is not modified.
During the 20ms boot sequence the registers are not accessible.
The boot status signal is identified by setting the INT1_BOOT bit of the CTRL_5 register
to ’1’. When the sensor is in boot sequence, INT_1 interrupt pin is driven high. Similarly
when the boot sequence is completed, INT_0 interrupt pin is driven low.
If required, the soft reset of the sensor is possible. It resets the default value of the control
registers. The soft reset procedure will take 5 µs.
The below steps should be considered for setting the BOOT bit manually:
1. Write SOFT_RESET bit to ’1’
2. Wait for 5 µs
3. Write BOOT bit to ’1’
4. Wait for 20 ms
ParameterTime
Boot sequence20 ms
Soft reset duration5 µs
Table 14: Time consumption
8.3 Flow chart
8.3.1 Communication check
After proper powering of the sensor, the first step is to check the communication of the
sensor with an I2C or SPI communication interface. It can be verified by reading the value
of DEVICE_ID register(0x0F). If the value from the DEVICE_ID register(0x0F) is 0x44, then
the communication to the sensor is successful.
In order to set the sensor in one of the operation modes, the sensor needs to be initialized.
The initialization of the sensor can be performed by defining output data rate, full scale
setting and filtering path. After initializing the sensor, it is recommended to check if the
data samples are available in the output registers. It can be verified by reading DRDY bit in
STATUS register(0x27). If the DRDY bit is enabled, the output data of three axes from the
registers 0x28, 0x29, 0x2A, 0x2B, 0x2C and 0x2D are available. The acceleration value of
the sensor is obtained by multiplying output data with respective sensitivity parameter value
based on the selected full scale range. Sensitivity parameter values for different full scale
ranges are mentioned in the table 3.
8.3.3 Sensor in operation with single data conversion mode
The following flow chart is an initialization example to operate the sensor in single data
conversion mode with output data rate of 200 Hz. In this example, single data conversion is
triggered by writing SLP_MODE_1 bit to ’1’. To set the sensor in to operation, normal and
low power mode can be selected. High performance mode cannot be selected in single data
conversion mode.
In single data conversion mode either normal mode or low power mode can be
selected.
High performance mode cannot be selected with single data conversion mode
The acceleration sensor can be operated in three different operation modes which provides
different combination of noise and current consumption values. These operating modes are
selected by using the MODE[1:0] bits in the CTRL_1 register(0x20).
• High performance mode
• Normal mode
• Low power mode
High performance modeNormal modeLow power mode
14 bit14 bit12 bit
Table 15: Acceleration resolution
By default after powering up of the sensor, it goes to power down mode. In power down
mode all internal blocks are turned off to minimize the power consumption. After selecting
one of the three operating modes, two configurable noise parameter options are available.
This configuration is selected by writing LOW_NOISE bit in the CTRL_6 register(0x25).
• Low-noise enabled (Noise is reduced)
• Low-noise disabled (Current consumption is reduced)
9.1 High performance mode
High performance mode provides the best performance in terms of noise. For example, a
low noise level of 90 µg /√Hz can be achieved with full scale range of ±2g , low noise bit
enabled and ODR of 200 Hz. In this mode the output data rate can be configured between
12.5 Hz and 1600 Hz using CTRL_1 register.
9.2 Normal mode
The normal mode operation is a trade of between the noise and current consumption of the
sensor. In this mode the output data rate can be configured between 1.6 Hz and 200 Hz
using CTRL_1 register.
9.3 Low power mode
In this mode a low current consumption down to 1 µA with ODR of 1.6 Hz can be achieved.
The output data rate (ODR) can be configured between 1.6 Hz and 200 Hz using CTRL_1
register.
This mode is available only in the normal and low power mode. It is enabled using the MODE[1:0] bits in CTRL_1 register(0x20). In this mode, the sensor waits for a trigger signal or
enabling SLP_MODE_SEL bit to generate new data. After that the sensor immediately goes
to power down mode. The maximum output data rate using single data conversion mode is
200 Hz.
In this mode, the data generation is achieved by two following ways:
1. A rising edge trigger signal on the INT_1 pin
In this configuration, the sensor waits for a trigger signal to generate a new data. It can be
performed by sending a trigger signal from the processor to INT_1 pin. In this case, the
SLP_MODE_SEL should be set to ’0’. The user can detect the status of the conversion using the DRDY bit in the STATUS register (0x27). The status signal can also be routed to the
INT_0 pin by writing ’1’ to INT0_DRDY bit in the register CTRL_4 . The minimum duration of
Datageneration
Triggersignalon
INT_1 pin
T_ON
Powerdown
T_ON
Powerdown
time
Min
duration
20ns
Min
duration
20ns
trigger signal high level is 20 ns.
2. Writing SLP_MODE_1 bit to ’1’ in CTRL_3 register
In this configuration, the data generation takes place by enabling SLP_MODE_1 bit in CTR-L_3 register. In this case the SLP_MODE_SEL should be set to ’1’. The user can detect the
status of the conversion using DRDY bit/signal or SLP_MODE_1 bit. After conversion, the
SLP_MODE_1 bit in CTRL_3 register(0x22) is automatically set to ’0’.
The conversion time (T_ON) in the normal and low power mode is mentioned in table 18.
Operating modeConversion time (T_ON)
Normal mode2.30 ms
Low power mode1.20 ms
Table 18: Conversion time
Figure 18: Single data conversion using an external trigger signal
The data sampling rate of the sensor is defined by output data rate. After the device is
powered up with one of the three operating modes, the device is in continuous conversion
of data. One of the following output data rates can be selected through the ODR bits in
CTRL_1. In high performance mode the output data rate of the sensor can be configured
between 12.5 Hz and 1600 Hz. In normal/low power mode the output data rate of the sensor
can be configured between 1.6 Hz and 200 Hz.
The acceleration sensor sampling chain consists of a series of blocks from MEMS data to
output register as shown in figure 19.
• MEMS data
• Anti-Aliasing filter
• Analog to digital converter
• Low pass filter 1 and Low pass filter 2
• High pass filter
• User offset
• Output register or FIFO buffer
The output data in the output registers can be generated through three different filtering
paths as shown in the figure 19. The filter setting determines the data path.
The cut-off frequency and number of samples to discard for those three filtering paths are
described in the chapter 11.1, chapter 11.2 and chapter 11.3.The register settings for the
three different data paths are mentioned below.
• Low pass filter _1 (red path)
By setting FDS bit to ’0’ and BW_FILT[1:0] to ’00’ in register CTRL_6
• Low pass filter _1 + Low pass filter _2 (blue path)
By setting FDS bit to ’0’ and BW_FILT[1:0] to ’01’/’10’/’11’ in register CTRL_6
• Low pass filter _1 + High pass filter (green path)
By setting FDS bit to ’1’ in register CTRL_6
The starting condition of output data rate, operating mode and bandwidth do not impact
the sample values to discard. Turn-on time (first sample available starting from power-down
condition) is 1 / ODR.
11.2 Low pass filter _1 + Low pass filter_2
Mode
Low power
Normal
High
performance
High
performance
High
performance
Output
date rate
1.6 Hz to
200 Hz
1.6 Hz to
200 Hz
12.5 Hz to
100 Hz
200 Hz to
800 Hz
1600 Hz3ODR/46ODR/1012ODR/20
BW_FILT[1:0]=01BW_FILT[1:0]=10BW_FILT[1:0]=11
Samples
to discard
tling@95%
1
Cutoff
Set-
1ODR/45ODR/1011ODR/20
1ODR/45ODR/1011ODR/20
1ODR/45ODR/1011ODR/20
2ODR/45ODR/1011ODR/20
(Hz)
Samples
to discard
Set-
tling@95%
1
Cutoff
(Hz)
Samples
to discard
Set-
tling@95%
1
Cutoff
(Hz)
Table 21: Low pass filter_1 + Low pass filter _2
1
The starting condition of output data rate, operating mode and bandwidth do not impact the
BW_FILT[1:0]=01 or 00BW_FILT[1:0]=10BW_FILT[1:0]=11
Samples
to discard
tling@95%
1
Cutoff
Set-
1ODR/45ODR/1011ODR/20
1ODR/45ODR/1011ODR/20
1ODR/45ODR/1011ODR/20
2ODR/45ODR/1011ODR/20
(Hz)
Samples
to discard
Set-
tling@95%
1
Cutoff
(Hz)
Samples
to discard
Set-
tling@95%
1
Cutoff
(Hz)
Table 22: Low pass filter_1 + High pass filter
1
The starting condition of output data rate, operating mode and bandwidth do not impact the
sample values to discard.
11.4 User offset
In order to define user offset for X, Y, and Z axis, the USR_OFF_ON_OUT is set to ’1’
and FDS is set to’0’. User defined offsets are subtracted from the values measured. The
weight of the bits in the offset registers X_OFS_USR, Y_OFS_USR, Z_OFS_USR is defined
through the USR_OFF_W bit in CTRL_7 register.
The offset values are signed values with two’s complement
11.5 High pass filter path
The acceleration sensor includes an embedded high-pass filtering capability to easily remove the DC component of the measured acceleration. As shown in the figure 19, with the
FDS bit in register CTRL_6 the user can route the filter outputs to the output registers.
It is also possible to independently apply the filter to the embedded function data (Free-fall,
wake up, tap detection and etc). This means that it is possible to get filtered data while the
interrupt generation works on unfiltered data.
The high-pass filter can be configured in the reference mode. It can be activated using
HP_REF_MODE bit in CTRL_7 register. In this configuration the output data is calculated
as the difference between the input acceleration and the values captured when reference
mode was enabled. In this way only the difference is applied without any filtering.
The acceleration sensor provides a FIFO (first-in first-out) buffer functionality to prevent continuous communication between the processor and sensor. As a result, it reduces considerable system power consumption. It can store up to 32 output data from all three axis X, Y
and Z. The processor can be notified only when it is necessary to initiate burst read out of
the FIFO buffer content. The interrupt pins INT_0 and/or INT_1 is used to generate interrupt
signals, if the FIFO buffer is full.
The FIFO buffer can be operated using five different modes:
The FIFO buffer stores new data sets in the blocks until all the 32 slots are full. If additional
………………
.
………………
.
………………
.
………………
.
………………
.
………………
.
XL
XH
YL YHZLZH
XLXH YLYH ZLZH
(0x28)
(0x29)(0x2A)(0x2B)(0x2C)(0x2D)
at outputdatarate
Readthrough I2C
Communication
FIFOBufferis
notactive
new data is available, the new data replaces the old data in the buffer. The first data enters
the lowest level of the buffer. When the second data is available to be stored in FIFO buffer,
the first data moves one level up and the second data is stored in the lowest level and this
process repeats until the buffer is full. The FIFO buffer can store the data samples with
respect to the selected resolution i.e high performance/normal mode - 14 bits and low power
mode - 12 bits. The rate at which data is stored in the FIFO buffer depends on the selected
output data rate in CTRL_1 register. After enabling the buffer, the output registers (from
0x28 to 0x2D) will get the oldest data sets from the FIFO buffer except for bypass mode.
12.1 Bypass mode
In Bypass mode, the generated data is directly available in the output registers. FIFO buffer
is not active in this mode. This mode is activated by writing FMODE[2:0] bits in FIFO_CTRL
register. Bypass mode is also used to clear the content of the FIFO buffer or to reset the
buffer in FIFO mode.
In FIFO mode, the 32 levels in FIFO buffer are filled with data samples continuously. When
the buffer is completely filled, the FIFO_OVR bit goes to ’1’, the buffer stops collecting the
data. The FIFO mode is activated by writing ’001’ in FMODE[2:0] field in the FIFO_CTRL
register.
While FIFO buffer starts collecting data, DIFF[5:0] bits in the FIFO_SAMPLES register
changes with respect to the number of samples stored. The speed at which the processor reads the data from the FIFO buffer is not important. Because the data collection is
stopped after the buffer is full and there is no risk that buffer will overwrite the data.
In order to serve the FIFO full (DIFF[5] bit) event as soon as possible, it is recommended to
route the Diff5 bit to the interrupt pin (INT_0 or INT_1) in order to generate an interrupt rather
than FIFO_OVR bit. The difference between the FIFO_OVR bit and Diff5 bit is explained in
figure 25.
When the FIFO mode is enabled, the buffer starts collecting the data at selected output data
rate. The buffer stops collecting the data after the 32 levels are filed i.e. the incoming new
data samples are ignored. The user can read the data from FIFO buffer any time, it is maintained unchanged until the Bypass mode is enabled. The FIFO_OVR bit is reset when the
first sample set has been read by the processor. By enabling the Bypass mode the FIFO
mode will be reset.
In continuous mode, the 32 levels of the FIFO buffer is continuously filled and starts to replace new data in the place of old data, when the buffer is full. This process continues until
the processor initiates a read operation to the output registers. When the 32 level buffer is
completely filled, the FIFO_FTH bit goes to ’1’ and it can be routed to interrupt pin which
triggers the processor to read the content of FIFO buffer. This mode can be terminated by
enabling Bypass mode.
The speed at which the processor read the data sets should be faster than
output data rate of the sensor in order to not lose the stored data sets
When a read operation is initiated by the processor to the sensor, the content of the output
registers is moved to the I2C or SPI register. The current oldest FIFO sample is shifted into
the output registers in order to allow the next read operation.
In this mode, initially the buffer starts operating in continuous mode and switches to FIFO
mode when the selected interrupt (wake-up. freel-fall, motion, etc) occurs. This mode helps
to collect and analyse the output data samples after an interrupt signal (tap, motion, freefall, etc) is generated. During this mode, the buffer works initially in continuous mode. In
continuous mode, the buffer starts collecting the data samples continuously. As soon as the
activated interrupt signal is generated, the FIFO mode is active and it starts collecting the
output samples until it is full. When the buffer is full, the FIFO_OVG bit is set to ’1’ when the
next samples overwrite the oldest and the FIFO stops collecting the data.
When the selected interrupt occurs, the FIFO mode change is triggered only if
the interrupt signal is routed to INT_0 or INT_1 pin.
The following steps are recommended to enable continuous to FIFO mode.
• Step 1: Enable interrupt features (tap, free-fall, motion and etc)
• Step 2: Route the interrupt signal to either INT_0 or INT_1 pin
• Step 2: Enable the continuous to FIFO mode using FMODE[2:0] in FIFO_CTRL register
In this mode, initially the buffer works in bypass mode and as soon as the selected interrupt
signal is generated the buffer switches to continuous mode.
The following steps are recommended to enable Bypass to Continuous mode.
• Step 1: Enable interrupt features (tap, free-fall, motion and etc)
• Step 1: Set FTH[4:0] to 31
• Step 2: Route the interrupt signal to either INT_0 or INT_1 pin
• Step 2: Enable the Continuous to FIFO mode using FMODE[2:0] in FIFO_CTRL register
Initially the buffer works in Bypass mode, so no data is stored in the buffer. When a selected
interrupt signal is generated, the buffer switches to continuous mode and starts to fill the data at selected output data rate. When the programmed threshold is reached, the FIFO_FTH
interrupt goes high, and the processor can start reading all FIFO samples (32 * 6 bytes) as
soon as possible to avoid loss of data. If the FIFO_OVG bit was set, it will change to ’0’,
when the first FIFO data is read creating space for new data.
If the processor does not initiate read operation, the buffer starts replacing old data with new
data. This process will continue until the generated interrupt flag is cleared or buffer goes to
Bypass mode, then the buffer stops collecting the data.
12.6 Understanding FIFO samples and interrupts
12.6.1 FIFO samples
The samples are stored in the buffer at the rate of selected output data rate. The threshold
values are defined using the FIFO_SAMPLES register.
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
FIFO_FTHFIFO_OVR
• FIFO_FTH bit is used to notify whether the FIFO content is greater than or equal to
the watermark level defined by DIFF[5:0]. This signal can be routed to either INT_0 or
INT_1 pin.
• FIFO_OVR bit defines whether the 32 level buffer is full or not. It can be used to notify
the processor to read whole content of the buffer. When the processor starts reading
the first sample in the buffer, this bit is set to ’0’.
• DIFF[5:0] gives the information about number of levels in the buffer filled with data
samples or number of samples in the buffer read by processor( ’000000b’ for FIFO
empty and ’100000b’ for FIFO is full). This signal also be routed to either INT_0 or
INT_1
12.6.2 FIFO interrupts
12.6.2.1 FIFO threshold (FIFO_FTH bit)
The FIFO threshold is a configurable feature which can be used to produce a specific interrupt, to know whether the FIFO buffer contains at least the number of samples defined
as the threshold level. The user can select the desired level in a range from 0 to 31 using
the FTH[4:0] bits in the FIFO_CTRL register. If the number of entries in FIFO (Diff[5:0]) is
greater than or equal to the value programmed in FTH[4:0], the FIFO_FTH bit is set high
in the FIFO_SAMPLES register. Diff[5:0] increases by one step at the ODR frequency and
decreases by one step every time that a sample reading is performed by the host controller.
12.6.2.2 FIFO full (Diff5 bit)
When the buffer is full, the sensor can be configured to generate an interrupt signal using
Diff5 bit. In order to perform this, set the INT0_DIFF5 bit in the CTRL_4 register to ’1’ or
INT1_DIFF5 bit in the CTRL_5 register to ’1’. To avoid losing samples, the FIFO reading
operation must start and complete inside 1 ODR window.
12.6.2.3 FIFO overrun (FIFO_OVR)
It is possible to configure the device to generate an interrupt using FIFO_OVR, if the overrun
event occurs in FIFO buffer. In order to initiate this, set the INT1_OVR bit of the CTRL_5
register to ’1’.
12.7 How to read data from FIFO Buffer
When any of the operating FIFO buffer mode is selected except Bypass mode, the first sample stored in the buffer is always read from the output registers. After reading the output data
registers, the FIFO blocks are moved one level up vertically to allocate space to store new
samples. The whole content of the FIFO buffer i.e. 32 level of 6 bytes (total of 192 bytes) of
data samples from X_L, X_H, Y_L, Y_H, Z_L and Z_H can be read at once. The content of
the FIFO buffer will be the same even after reading the data and it will be replaced only when
new set of samples stored in FIFO buffer. When the processor initiates a read operation to
the output register 0x28, the automatic increment of the address 0x29, 0x2A, 0x2B, 0x2C
and 0x2D will be performed, if the IF_ADD_INC bit is enabled in CTRL_2 register.
The standard I2C communication protocol has two clock frequencies, standard mode of 100
kHz and full speed mode of 400 kHz clock. In order to perform read operation, the I2C communication takes 29 clock signals to initiate read operation for a specific register. It starts
with a start condition + slave address + write register + read register. Additionally, to read
every byte (8 bit register value) 9 clock pulses are necessary. In total 83 clock pulses are
used to read a one sample set from the output registers of X, Y and Z axis (0x28, 0x29,
0x2A, 0x2B, 0x2C and 0x2D). In order to read single sample set from output register it takes
83 pulses * 1/100 kHz (830 µs). To read the whole content of the buffer, a total of 17.57 ms
(29 +9 * 192) time is necessary.
In order to not lose samples, the application should read samples before the FIFO becomes
full, setting a threshold and using the FTH interrupt.
The two independent interrupt pins INT_0 and INT_1 of the sensor can be used to route the
following signals.
• Motion detection interrupt signal
• DRDY signal
• FIFO notification signal
13.1 INT_0 and INT_1
All the motion detection interrupt signals can be routed to the physical interrupt (either INT_0
or INT_1) pins by writing ’1’ to INTERRUPTS_ENABLE bit in CTRL_7 register, otherwise it
can be identified by reading their corresponding status or source register. By default, the
bits in the control registers (CTRL_4 and CTRL_5) are disabled i.e ’0’. Any specific motion
detection interrupt signals can be routed to the physical interrupt pins by enabling the following bits in the registers CTRL_4 and CTRL_5.
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
INT0_
INT0_6D
•INT0_6D:
•INT0_SINGLE_TAP:
•INT0_WU: :
•INT0_FF:
•INT0_TAP:
•INT0_DIFF5:
•INT0_FTH:
•INT0_DRDY:
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0
INT1_
SLEEP_
STATE
SINGLE
_TAP
INT1_
SLEEP_
CHG
INT0_
WU
6D orientation event detect is routed to the INT_0 pin
Single-tap event detect is routed to the INT_0 pin
Wakeup event detect is routed to the INT_0 pin
Free-fall event detect is routed to the INT_0 pin
Double-tap event detect is routed to the INT_0 pin
FIFO full event is routed to the INT_0 pin
FIFO threshold event is routed to the INT_0 pin
DRDY is routed to the INT_0 pin
Sleep change status is routed to the INT1 pin
Boot state is routed to the INT_1 pin
Temperature DRDY is routed to the INT_1 pin
FIFO overrun interrupt is routed to the INT_1 pin
FIFO full detect is routed to the INT_1 pin
FIFO threshold event is routed to the INT_1 pin
Acceleration DRDY is routed to the INT_1 pin
There is a possibility that more than one interrupt signal is routed to the same interrupt pin.
In that case, a logic level OR combination of the selected interrupt signal is generated. To
know which motion detection event has triggered the interrupt signal, the respective status
register has to be read. After reading the status register, the generated bit in the status
register will be cleared.
13.2 Data ready - DRDY
The DRDY bit status can either be read from STATUS register (0x27) or can be routed
directly to interrupt pins. When new data is generated the DRDY bit is set to ’1’ and it is
set to ’0’ when no data is generated. This DRDY signal can be routed to INT_0 interrupt
pin by enabling the INT0_DRDY bit in CTRL_4 register or to INT_1 interrupt pin by enabling
INT1_DRDY bit in CTRL_5 register. If any of the output channel registers (0x29, 0x2B, 0x2D)
are read, the DRDY signal goes LOW.
The single tap event interrupt is generated when the applied tap acceleration to any axis is
greater than defined threshold and returns below within specific interval time. Similarly in
double tap event an interrupt is generated, if two consecutive tap acceleration applied to any
axis is greater than the threshold with duration time after first tap acceleration.
14.2 Activity/Inactivity
The activity/inactivity function monitors the sensor, which defines whether the sensor is active or not. This function allows to develop application with low power consumption. If the
sensor is not active, the output data rate automatically goes to output data rate of 12.5 Hz
with low power operating mode. As soon as the sensor detects an activity, the output data
rate is switched back to the selected output data rate.
14.3 Stationary/Motion
Stationary/motion function is similar to the activity/inactivity function but the output data rate
and operating mode will not change after the motion is detected.
14.4 6D Orientation
Six dimension (6D) orientation of the sensor is detected when one axis exceeds a selected threshold and the acceleration values from other two axes are lower than the defined
threshold value.
14.5 Wake-Up
If a number of data samples exceed the defined threshold on both positive and negative
acceleration a wake-up interrupt signal is generated. It can either be achieved by setting
high-pass filter or user defined offset function.
14.6 Free-Fall
Free fall detection interrupt is generated when the device is in free-fall i.e. the acceleration
measured in all axes goes to zero. In a real case, a free-fall zone is defined around the zerog level where all the acceleration values from the three axes are small enough to generate
the interrupt.
For more information about the sensor features refer to the application notes.
The acceleration sensor includes a self test feature which tests the sensor functionality without any external force. When the self test feature is enabled, an actuation force is applied
to the sensor which causes the non-stationary part to move. This change in the movement
provides the change in the DC level of the sensor.
The self test function is enabled by writing ’01’ to ST[7:6] in CTRL_3 register which causes
movement in positive direction of the axis. Similarly by writing ’10’ to ST[7:6] in CTRL_3
register causes the movement in negative direction of the axis. When the accelerometer self
test functionality is enabled, the sensor output level is given by the algebraic sum of the data
produced by the electrostatic test force and gravity.
The device should be fixed without any movement during self test procedure
The following procedure is recommended for the self test verification. Refer to the block
diagram in the figure30for further details.
• Average five data samples before enabling the self test
• Average five data samples after enabling the self test
• The difference in the absolute value of each axis provides the self test induced DC
acceleration value.
• Verify the value, whether it is in the range of 70 mg to 1500 mg
The acceleration output data is obtained by reading output registers (0x28, 0x29, 0x2A,
0x2B, 0x2C and 0x2D). The 8-bit output data from the registers of least significant bit and
most significant bit are concatenated to get 16-bit data for each axis i.e. X, Y and Z axis.
The acceleration data is represented as 16-bit value, left aligned and provided in two’s complement. The value is multiplied with respective sensitivity parameter to convert the data
related to the value in mg.
Below is an example of how to convert the output data into acceleration value in mg. With an
assumption of sensor operating in high performance mode with full scale selection of ±16g.
Step 1:
Read the output registers.
1. X_OUT_L (0x28)
2. X_OUT_H (0x29)
3. Y_OUT_L (0x2A)
4. Y_OUT_H (0x2B)
5. Z_OUT_L (0x2C)
6. Z_OUT_H (0x2D)
Step 2:
Concatenation of two 8-bit output values from the registers to get a 16-bit output value for
each axis.
Right shift the output data by 2 bits for high performance mode which provides 14-bit output
data. In case of low power mode enabled, the sensor provides 12-bit data so right shift the
data by 4 bits.
1. X_shift = X_16>>2
2. Y_shift = Y_16>>2
3. Z_shift = Z_16>>2
Step 4:
Multiply with respective sensitivity will provide the acceleration value in mg.
(Sensitivity = 1.952 for FS: ±16g, please refer to table 3)
The acceleration sensor includes embedded temperature sensor for ambient temperature
measurement. The temperature data is represented as a 12 bit in two’s complement form
and left aligned in the output registers T_OUT_L (0x0D) and T_OUT_H (0x0E). Similarly the
temperature data is also represented as a 8 bit output data in two’s complement form in the
output register T_OUT (0x26).
Parameter
Temperature
refresh rate
We recommend our WSEN-TIDS temperature sensor for high accurate and
precise temperature measurements.
Symbol
Test condition
High performance mode for
all ODRs / Normal Mode &
Low power mode for ODRs
equal to 200/100/50 Hz
Normal mode & Low power
mode at ODR - 25 Hz
Normal mode & Low power
mode at ODR - 12.5 Hz
Normal mode & Low power
mode at ODR - 1.6 Hz
Table 27: Temperature refresh rate
Min.Typ.Max.Unit
50Hz
25
12.5
1.6
16.2.1 12-bit temperature sensor output
To get the 12 bit temperature value from the output registers T_OUT_L (0x0D) and T_OUT_H
(0x0E), first concatenate the OUT_T_L (0x0D) and the OUT_T_H (0x0E) register (16 bits)
i.e. temperature = 0x0E & 0x0D. Then consider only the first 12 bits, converting to the decimal value using 2’s complement, divide for the sensitivity of 16 LSB/°C and finally sum it
with 25°C.
The interpretation of temperature value from the output register T_OUT (0x26) value is calculated from the look up table (see table 28). The values listed in the table are provided
under the hypothesis of perfect device calibration with no offset or error.
The registers contents that are loaded at boot procedure should not be changed. They
contain the factory calibration values and their content is automatically restored when the
device is powered up.
Writing to Reserved registers(0x10 - 0x1F) is not allowed, it will cause permanent damage to the sensor
2
If Low power mode is enabled this bit is set to ’0’
18 Register description
18.1 T_OUT_L (0x0D)
The value of the temperature output registers T_OUT_L(0x0D) and T_OUT_H(0x0E) is expressed in 12-bit resolution. Please refer chapter 15.2.1 to obtain the temperature value
from 12-bit value of the output registers.
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Type
TEMP[3:0]
Table 29: T_OUT_L register
bitsDescription
4 least significant bits (LSB) of the temperature sensor output. Sensitivity =
TEMP[3:0]
1/16°C/LSB. T_OUT_L (0x0D) together with T_OUT_H (0x0E) forms the
It is strongly recommended to set the BDU bit to ’1’ in the CTRL_1 register. By default the
BDU bit is ’0’ and the output registers are continuously updated. When the BDU bit is set
to ’1’ the content of the output registers is not updated until both MSB and LSB are read.
It avoids reading values related to different samples. As soon as the BDU is activated, the
output registers always contain the most recent output data produced by the sensor. If the
processor initiate the read function of a given pair (X_OUT_L and X_OUT_H, Y_OUT_L and
Y_OUT_H, Z_OUT_L and Z_OUT_H), the update for that pair is blocked until both MSB and
LSB of the data are read.
18.6 CTRL_3 (0x22)
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Type
ST[1:0]
bitsDescription
ST[1:0]Self test enable. Defalut value: 00
PP_OD
LIR
H_LACTIVEInterrupt active high, low. Default: 0 (0: active high, 1: active low)
SLP_MODE
_SEL
SLP_MODE
_1
PP_
OD
Push-pull/open-drain selection on interrupt pin. Default: 0 (0: push-pull, 1:
Latched interrupt. Switches between latched (’1’-logic) and pulsed
(’0’-logic) mode for sensor function source signals and the signal routed to
Free-fall event detection bit (0: free-fall event not detected; 1: free-fall event
detected)
Table 54: STATUS register
18.12 X_OUT_L (0x28)
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Type
X_L[3:0]X_L[1:0]
Table 55: X_OUT_L register
bitsDescription
If low power mode is enabled, the data from this register gives the 4 least
X_L[3:0]
X_L[1:0]
significant bits of X-axis acceleration sensor output. The remaining bits are
zero in the register.
If high performance mode/normal mode is enabled, the data from this
register combined with X_L[3:0] (i.e. X_L[3:0] and X_L[1:0]) gives the 6
least significant bits of X-axis acceleration sensor output. The remaining
bits are zero in the register.
Table 56: X_OUT_L registerr description
1
00R
It gives the 8 least significant bits of X-axis acceleration sensor output. Combined with data
from X_OUT_H(0x29) register, it gives the output value expressed as a 16-bit word in 2’s
complement.
1. If Low power mode 1 is enabled, this bit is set to ’0’.
18.13 X_OUT_H (0x29)
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Type
X_H[7:0]
Table 57: X_OUT_H register
It gives the 8 most significant bits of X-axis acceleration sensor output. Combined with data
from X_OUT_L(0x28) register, it gives the output value expressed as a 16-bit word in 2’s
complement.
If low power mode is enabled, the data from this register gives the 4 least
Y_L[3:0]
Y_L[1:0]
significant bits of Y-axis acceleration sensor output. The remaining bits are
zero in the register.
If high performance mode/normal mode is enabled, the data from this
register combined with Y_L[3:0] (i.e. Y_L[3:0] and Y_L[1:0]) gives the 6
least significant bits of Y-axis acceleration sensor output. The remaining
bits are zero in the register.
Table 59: Y_OUT_L register description
1
00R
It gives the 8 least significant bits of Y-axis acceleration sensor output. Combined with data
from Y_OUT_H(0x2B) register, it gives the output value expressed as a 16-bit word in 2’s
complement.
1. If Low power mode 1 is enabled, this bit is set to ’0’.
18.15 Y_OUT_H (0x2B)
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Type
Y_H[7:0]
Table 60: Y_OUT_H register
It gives the 8 most significant bits of Y-axis acceleration sensor output. Combined with data
from Y_OUT_L(0x2A) register, it gives the output value expressed as a 16-bit word in 2’s
complement.
If low power mode is enabled, the data from this register gives the 4 least
Y_L[3:0]
Y_L[1:0]
significant bits of Z-axis acceleration sensor output. The remaining bits are
zero in the register.
If High performance mode/normal mode is enabled, the data from this
register combined with Z_L[3:0] (i.e. Z_L[3:0] and Z_L[1:0]) gives the 6
least significant bits of Z-axis acceleration sensor output. The remaining
bits are zero in the register.
Table 62: Z_OUT_L register description
1
00R
It gives the 8 least significant bits of Z-axis acceleration sensor output. Combined with data
from Z_OUT_H(0x2D) register, it gives the output value expressed as a 16-bit word in 2’s
complement.
1. If Low power mode 1 is enabled, this bit is set to ’0’.
18.17 Z_OUT_H (0x2D)
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Type
Z_H[7:0]
Table 63: Z_OUT_H register
It gives the 8 most significant bits of Z-axis acceleration sensor output. Combined with data
from Z_OUT_L(0x2C) register, it gives the output value expressed as a 16-bit word in 2’s
complement.
bitsDescription
TAP_X_ENEnables X direction in tap recognition. (0: disabled, 1: enabled)
TAP_Y_ENEnables Y direction in tap recognition. (0: disabled, 1: enabled)
TAP_Z_ENEnables Z direction in tap recognition. (0: disabled, 1: enabled)
TAP_THSZ_[4:0]Threshold for tap recognition at FS: ±2g on Z direction.
Table 75: TAP_Z_TH register description
TAP_THSZ[4:0]
18.23 INT_DUR (0x33)
Bit 7Bit 6Bit 5Bit 4Bit 3Bit 2Bit 1Bit 0Type
LATENCY[3:0]QUIET[1:0]SCHOCK[1:0]
R/W
R/W
Table 76: INT_DUR register
bitsDescription
It defines the maximum duration time gap for double-tap recognition.
When double-tap recognition is enabled, this register expresses the
LATENCY[3:0]
QUIET[1:0]
SHOCK[1:0]
maximum time between two successive detected taps to determine a
double-tap event. Default value is LATENCY[3:0] = 0000 (i.e. 16 *
1/ODR) 1 LSB = 32 * 1/ODR
It defines the expected quiet time after a tap detection. This register
defines the time after the first detected tap in which there must not be
any over-threshold event. Default value is QUIET[1:0] = 00 (i.e. 2 *
1/ODR) 1 LSB = 4 * 1/ODR
It defines the maximum duration of over-threshold event. This register
defines the maximum time of an over-threshold signal detection to be
recognized as a tap event. Default value is SHOCK[1:0] = 00 (i.e. 4 *
The sensor product is categorized as JEDEC Moisture Sensitivity Level 3 (MSL3), which requires special handling.
More information regarding the MSL requirements can be found in the IPC/JEDEC J-STD-020
standard on www.jedec.org. More information about the handling, picking, shipping and the
usage of moisture/re-flow and/or process sensitive products can be found in the IPC/JEDEC
J-STD-033 standard on www.jedec.org.
20.2 Soldering
20.2.1 Reflow soldering
Attention must be paid on the thickness of the solder resist between the host PCB top
side and the modules bottom side. Only lead-free assembly is recommended according
to JEDEC J-STD020.
It is recommended to solder the sensor on the last re-flow cycle of the PCB. For solder paste
use a LFM-48W or Indium based SAC 305 alloy (Sn 96.5 / Ag 3.0 / Cu 0.5 / Indium 8.9HF /
Type 3 / 89%) type 3 or higher.
The reflow profile must be adjusted based on the thermal mass of the entire populated PCB,
heat transfer efficiency of the re-flow oven and the specific type of solder paste used. Based
on the specific process and PCB layout the optimal soldering profile must be adjusted and
verified. Other soldering methods (e.g. vapor phase) have not been verified and have to be
validated by the customer at their own risk. Rework is not recommended.
Figure 34: Reflow soldering profile
After reflow soldering, visually inspect the board to confirm proper alignment
Do not clean the product. Any residue cannot be easily removed by washing. Use a "no
clean" soldering paste and do not clean the board after soldering.
• Washing agents used during the production to clean the customer application might
damage or change the characteristics of the component. Washing agents may have a
negative effect on the long-term functionality of the product.
• Using a brush during the cleaning process may damage the component. Therefore,
we do not recommend using a brush during the PCB cleaning process
20.2.3 Potting and coating
• Potting material might shrink or expand during and after hardening. This might apply mechanical stress on the components, which can influence the characteristics of
the transfer function. In addition, potting material can close existing openings in the
housing. This can lead to a malfunction of the component. Thus, potting is not recommended.
• Conformal coating may affect the product performance. We do not recommend coating
the components.
20.2.4 Storage conditions
• A storage of Würth Elektronik eiSos products for longer than 12 months is not recommended. Within other effects, the terminals may suffer degradation, resulting in
bad solderability. Therefore, all products shall be used within the period of 12 months
based on the day of shipment.
• Do not expose the components to direct sunlight.
• The storage conditions in the original packaging are defined according to
DIN EN 61760 - 2.
• For a moisture sensitive component, the storage condition in the original packaging
is defined according to IPC/JEDEC-J-STD-033. It is also recommended to return the
component to the original moisture proof bag and reseal the moisture proof bag again.
20.2.5 Handling
• Violation of the technical product specifications such as exceeding the nominal rated
supply voltage, will void the warranty.
• Violation of the technical product specifications such as but not limited to exceeding
the absolute maximum ratings will void the conformance to regulatory requirements.
• ESD prevention methods need to be followed for manual handling and processing by
machinery.
• The edge castellation is designed and made for prototyping, i.e. hand soldering purposes only.
The following conditions apply to all goods within the sensors product range of Würth Elektronik eiSos GmbH & Co. KG:
21.1 General customer responsibility
Some goods within the product range of Würth Elektronik eiSos GmbH & Co. KG contain
statements regarding general suitability for certain application areas.These statements
about suitability are based on our knowledge and experience of typical requirements concerning the areas, serve as general guidance and cannot be estimated as binding statements
about the suitability for a customer application. The responsibility for the applicability and use
in a particular customer design is always solely within the authority of the customer. Due to
this fact, it is up to the customer to evaluate, where appropriate to investigate and to decide
whether the device with the specific product characteristics described in the product specification is valid and suitable for the respective customer application or not. Accordingly, the
customer is cautioned to verify that the documentation is current before placing orders.
21.2 Customer responsibility related to specific, in particular
safety-relevant applications
It has to be clearly pointed out that the possibility of a malfunction of electronic components
or failure before the end of the usual lifetime cannot be completely eliminated in the current
state of the art, even if the products are operated within the range of the specifications.
The same statement is valid for all software and software parts contained in or used with
or for products in the sensor product range of Würth Elektronik eiSos GmbH & Co. KG.
In certain customer applications requiring a high level of safety and especially in customer
applications in which the malfunction or failure of an electronic component could endanger
human life or health, it must be ensured by most advanced technological aid of suitable
design of the customer application that no injury or damage is caused to third parties in the
event of malfunction or failure of an electronic component.
21.3 Best care and attention
Any product-specific data sheets, manuals, application notes, PCN’s, warnings and cautions must be strictly observed in the most recent versions and matching to the products
revisions. This documents can be downloaded from the product specific sections on the
wireless connectivity and sensors homepage.
21.4 Customer support for product specifications
Some products within the product range may contain substances, which are subject to restrictions in certain jurisdictions in order to serve specific technical requirements. Necessary
information is available on request. In this case, the field sales engineer or the internal sales
person in charge should be contacted who will be happy to support in this matter.
Due to constant product improvement, product specifications may change from time to time.
As a standard reporting procedure of the Product Change Notification (PCN) according to
the JEDEC-Standard, we inform about major changes. In case of further queries regarding
the PCN, the field sales engineer, the internal sales person or the technical support team in
charge should be contacted. The basic responsibility of the customer as per section
and
21.2
remains unaffected.
The sensor driver software ¨Sensor SDK¨ and it’s source codes are not subject to the Product Change Notification information process.
21.1
21.6 Product life cycle
Due to technical progress and economical evaluation we also reserve the right to discontinue production and delivery of products. As a standard reporting procedure of the Product
Termination Notification (PTN) according to the JEDEC-Standard we will inform at an early
stage about inevitable product discontinuance. According to this, we cannot ensure that all
products within our product range will always be available. Therefore, it needs to be verified
with the field sales engineer or the internal sales person in charge about the current product
availability expectancy before or when the product for application design-in disposal is considered. The approach named above does not apply in the case of individual agreements
deviating from the foregoing for customer-specific products.
21.7 Property rights
All the rights for contractual products produced by Würth Elektronik eiSos GmbH & Co. KG
on the basis of ideas, development contracts as well as models or templates that are subject
to copyright, patent or commercial protection supplied to the customer will remain with Würth
Elektronik eiSos GmbH & Co. KG. Würth Elektronik eiSos GmbH & Co. KG does not warrant
or represent that any license, either expressed or implied, is granted under any patent right,
copyright, mask work right, or other intellectual property right relating to any combination,
application, or process in which Würth Elektronik eiSos GmbH & Co. KG components or
services are used.
21.8 General terms and conditions
Unless otherwise agreed in individual contracts, all orders are subject to the current version of the "General Terms and Conditions of Würth Elektronik eiSos Group", last version
available at www.we-online.com.
Würth Elektronik eiSos GmbH & Co. KG considers the information in this document to be
correct at the time of publication. However, Würth Elektronik eiSos GmbH & Co. KG reserves the right to modify the information such as technical specifications or functions of
its products or discontinue the production of these products or the support of one of these
products without any written announcement or notification to customers. The customer must
make sure that the information used corresponds to the latest published information. Würth
Elektronik eiSos GmbH & Co. KG does not assume any liability for the use of its products.
Würth Elektronik eiSos GmbH & Co. KG does not grant licenses for its patent rights or for
any other of its intellectual property rights or third-party rights.
Notwithstanding anything above, Würth Elektronik eiSos GmbH & Co. KG makes no representations and/or warranties of any kind for the provided information related to their accuracy,
correctness, completeness, usage of the products and/or usability for customer applications.
Information published by Würth Elektronik eiSos GmbH & Co. KG regarding third-party products or services does not constitute a license to use such products or services or a warranty
or endorsement thereof.
22.2 Suitability in customer applications
The customer bears the responsibility for compliance of systems or units, in which Würth
Elektronik eiSos GmbH & Co. KG products are integrated, with applicable legal regulations.
Customer acknowledges and agrees that it is solely responsible for compliance with all legal, regulatory and safety-related requirements concerning its products, and any use of
Würth Elektronik eiSos GmbH & Co. KG components in its applications, notwithstanding
any applications-related in-formation or support that may be provided by Würth Elektronik eiSos GmbH & Co. KG. Customer represents and agrees that it has all the necessary
expertise to create and implement safeguards which anticipate dangerous consequences of
failures, monitor failures and their consequences lessen the likelihood of failures that might
cause harm and take appropriate remedial actions. The customer will fully indemnify Würth
Elektronik eiSos GmbH & Co. KG and its representatives against any damages arising out
of the use of any Würth Elektronik eiSos GmbH & Co. KG components in safety-critical
applications.
22.3 Usage restriction
Würth Elektronik eiSos GmbH & Co. KG products have been designed and developed for
usage in general electronic equipment only. This product is not authorized for use in equipment where a higher safety standard and reliability standard is especially required or where
a failure of the product is reasonably expected to cause severe personal injury or death,
unless the parties have executed an agreement specifically governing such use. Moreover,
Würth Elektronik eiSos GmbH & Co. KG products are neither designed nor intended for use
in areas such as military, aerospace, aviation, nuclear control, submarine, transportation
(automotive control, train control, ship control), transportation signal, disaster prevention,
medical, public information network etc. Würth Elektronik eiSos GmbH & Co. KG must be
informed about the intent of such usage before the design-in stage. In addition, sufficient
reliability evaluation checks for safety must be performed on every electronic component,
which is used in electrical circuits that require high safety and reliability function or performance. By using Würth Elektronik eiSos GmbH & Co. KG products, the customer agrees to
these terms and conditions.
GmbH & Co. KG sensor product software and source
code
This License terms will take effect upon the purchase and usage of the Würth Elektronik
eiSos GmbH & Co. KG sensor products. You hereby agree that this license terms are applicable to the product and the incorporated software, firmware and source codes (collectively,
"Software") made available by Würth Elektronik eiSos in any form, including but not limited
to binary, executable or source code form.
The software included in any Würth Elektronik eiSos sensor product is purchased to you on
the condition that you accept the terms and conditions of this license terms. You agree to
comply with all provisions under this license terms.
23.1 Limited license
Würth Elektronik eiSos hereby grants you a limited, non-exclusive, non-transferable and
royalty-free license to use the software and under the conditions that will be set forth in this
license terms. You are free to use the provided software only in connection with one of the
products from Würth Elektronik eiSos to the extent described in this license terms.
You are entitled to change or alter the source code for the sole purpose of creating an application embedding the Würth Elektronik eiSos sensor product. The transfer of the source
code to third parties is allowed to the sole extent that the source code is used by such third
parties in connection with our product or another hardware provided by Würth Elektronik
eiSos under strict adherence of this license terms. Würth Elektronik eiSos will not assume
any liability for the usage of the incorporated software and the source code.
You are not entitled to transfer the source code in any form to third parties without prior written consent of Würth Elektronik eiSos.
You are not allowed to reproduce, translate, reverse engineer, decompile, disassemble or
create derivative works of the incorporated software and the source code in whole or in part.
No more extensive rights to use and exploit the products are granted to you.
23.2 Usage and obligations
The responsibility for the applicability and use of the Würth Elektronik eiSos sensor product
with the incorporated software in a particular customer design is always solely within the
authority of the customer. Due to this fact, it is up to you to evaluate and investigate, where
appropriate, and to decide whether the device with the specific product characteristics described in the product specification is valid and suitable for your respective application or
not.
You are responsible for using the Würth Elektronik eiSos sensor product with the incorporated software in compliance with all applicable product liability and product safety laws. You
acknowledge to minimize the risk of loss and harm to individuals and bear the risk for failure
leading to personal injury or death due to your usage of the product.
Würth Elektronik eiSos’ products are not authorized for use in safety-critical applications,
or where a failure of the product is reasonably expected to cause severe personal injury
or death. Moreover, Würth Elektronik eiSos’ products are neither designed nor intended for
use in areas such as military, aerospace, aviation, nuclear control, submarine, transportation
(automotive control, train control, ship control), transportation signal, disaster prevention,
medical, public information network etc. You shall inform Würth Elektronik eiSos about the
intent of such usage before design-in stage. In certain customer applications requiring a very
high level of safety and in which the malfunction or failure of an electronic component could
endanger human life or health, you must ensure to have all necessary expertise in the safety
and regulatory ramifications of your applications. You acknowledge and agree that you are
solely responsible for all legal, regulatory and safety-related requirements concerning your
products and any use of Würth Elektronik eiSos’ products in such safety-critical applications, notwithstanding any applications-related information or support that may be provided by
Würth Elektronik eiSos. YOU SHALL INDEMNIFY WÜRTH ELEKTRONIK EISOS AGAINST
ANY DAMAGES ARISING OUT OF THE USE OF WÜRTH ELEKTRONIK EISOS’ PRODUCTS IN SUCH SAFETY-CRITICAL APPLICATIONS.
23.3 Ownership
The incorporated Software created by Würth Elektronik eiSos is and will remain the exclusive
property of Würth Elektronik eiSos.
23.4 Disclaimer of warranty
THE SOFTWARE AND IT’S SOURCE CODE IS PROVIDED "AS IS". YOU ACKNOWLEDGE THAT WÜRTH ELEKTRONIK EISOS MAKES NO REPRESENTATIONS AND WARRANTIES OF ANY KIND RELATED TO, BUT NOT LIMITED TO THE NON-INFRINGEMENT
OF THIRD PARTIES’ INTELLECTUAL PROPERTY RIGHTS OR THE MERCHANTABILITY OR FITNESS FOR YOUR INTENDED PURPOSE OR USAGE. WÜRTH ELEKTRONIK
EISOS DOES NOT WARRANT OR REPRESENT THAT ANY LICENSE, EITHER EXPRESS
OR IMPLIED, IS GRANTED UNDER ANY PATENT RIGHT, COPYRIGHT, MASK WORK
RIGHT, OR OTHER INTELLECTUAL PROPERTY RIGHT RELATING TO ANY COMBINATION, MACHINE, OR PROCESS IN WHICH THE WÜRTH ELEKTRONIK EISOS’ PRODUCT WITH THE INCORPORATED SOFTWARE IS USED. INFORMATION PUBLISHED BY
WÜRTH ELEKTRONIK EISOS REGARDING THIRD-PARTY PRODUCTS OR SERVICES
DOES NOT CONSTITUTE A LICENSE FROM WÜRTH ELEKTRONIK EISOS TO USE
SUCH PRODUCTS OR SERVICES OR A WARRANTY OR ENDORSEMENT THEREOF.
23.5 Limitation of liability
Any liability not expressly provided by Würth Elektronik eiSos shall be disclaimed.
You agree to hold us harmless from any third-party claims related to your usage of the Würth
Elektronik eiSos’ products with the incorporated software and source code. Würth Elektronik
eiSos disclaims any liability for any alteration, development created by you or your customers
as well as for any combination with other products.
23.6 Applicable law and jurisdiction
Applicable law to this license terms shall be the laws of the Federal Republic of Germany.
Any dispute, claim or controversy arising out of or relating to this license terms shall be
resolved and finally settled by the court competent for the location of Würth Elektronik eiSos
registered office.
23.7 Severability clause
If a provision of this license terms are or becomes invalid, unenforceable or null and void,
this shall not affect the remaining provisions of the terms. The parties shall replace any such
provisions with new valid provisions that most closely approximate the purpose of the terms.
23.8 Miscellaneous
Würth Elektronik eiSos reserves the right at any time to change this terms at its own discretion. It is your responsibility to check at Würth Elektronik eiSos homepage for any updates.
Your continued usage of the products will be deemed as the acceptance of the change.
We recommend you to be updated about the status of new software, which is available on
our website or in our data sheet, and to implement new software in your device where appropriate.
By ordering a sensor product, you accept this license terms in all terms.