IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000
Motion Processing Unit
Product Specification
Rev 1.1

1 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

CONTENTS
1

DOCUMENT INFORMATION .............................................................................................................................. 4
1.1
1.2
1.3
1.4

2

FEATURES ............................................................................................................................................................... 7
2.1
2.2
2.3
2.4
2.5
2.6

3

REVISION HISTORY ............................................................................................................................................. 4
PURPOSE AND SCOPE ........................................................................................................................................... 5
PRODUCT OVERVIEW .......................................................................................................................................... 5
APPLICATIONS ..................................................................................................................................................... 6

SENSORS.............................................................................................................................................................. 7
DIGITAL OUTPUT................................................................................................................................................. 7
MOTION PROCESSING .......................................................................................................................................... 7
CLOCKING ........................................................................................................................................................... 7
POWER ................................................................................................................................................................ 7
PACKAGE ............................................................................................................................................................ 7

ELECTRICAL CHARACTERISTICS .................................................................................................................. 8
3.1

SENSOR SPECIFICATIONS ..................................................................................................................................... 8

GYRO MECHANICAL FREQUENCIES....................................................................................................................... 8
3.2
3.3
3.4
3.5
3.6
4

APPLICATIONS INFORMATION ..................................................................................................................... 14
4.1
4.2
4.3
4.4

5

BLOCK DIAGRAM .............................................................................................................................................. 17
OVERVIEW ........................................................................................................................................................ 17
THREE-AXIS MEMS GYROSCOPE WITH 16-BIT ADCS AND SIGNAL CONDITIONING ......................................... 17
DIGITAL MOTION PROCESSOR ........................................................................................................................... 17
PRIMARY I2C SERIAL COMMUNICATIONS INTERFACE ....................................................................................... 18
SECONDARY I2C SERIAL INTERFACE FOR THIRD-PARTY ACCELEROMETER ....................................................... 18

CLOCKING ............................................................................................................................................................ 19
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8

7

PIN OUT AND SIGNAL DESCRIPTION .................................................................................................................. 14
TYPICAL OPERATING CIRCUIT ........................................................................................................................... 15
BILL OF MATERIALS FOR EXTERNAL COMPONENTS .......................................................................................... 15
RECOMMENDED POWER-ON PROCEDURE .......................................................................................................... 16

FUNCTIONAL OVERVIEW ................................................................................................................................ 17
5.1
5.2
5.3
5.4
5.5
5.6

6

ELECTRICAL SPECIFICATIONS.............................................................................................................................. 9
ELECTRICAL SPECIFICATIONS, CONTINUED ....................................................................................................... 10
ELECTRICAL SPECIFICATIONS, CONTINUED ....................................................................................................... 11
I2C TIMING CHARACTERIZATION ...................................................................................................................... 12
ABSOLUTE MAXIMUM RATINGS ........................................................................................................................ 13

INTERNAL CLOCK GENERATION ........................................................................................................................ 19
CLOCK OUTPUT ................................................................................................................................................. 19
SENSOR DATA REGISTERS ................................................................................................................................. 19
FIFO ................................................................................................................................................................. 19
INTERRUPTS ...................................................................................................................................................... 19
DIGITAL-OUTPUT TEMPERATURE SENSOR ........................................................................................................ 20
BIAS AND LDO.................................................................................................................................................. 20
CHARGE PUMP .................................................................................................................................................. 20

DIGITAL INTERFACE ........................................................................................................................................ 21
7.1
7.2
7.3

I2C SERIAL INTERFACE ...................................................................................................................................... 21
SUPPORTED INTERFACES ................................................................................................................................... 24
LOGIC LEVELS ................................................................................................................................................... 24
2 of 56

IMU-3000 Product Specification

8

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

MOTION PROCESSING LIBRARY (MPL) ...................................................................................................... 27
8.1

DEMO SOFTWARE .............................................................................................................................................. 28

9REGISTER MAP ................................................................................................................................................... 29

10

REGISTER DESCRIPTION ............................................................................................................................. 30

10.1
10.2
10.3
10.4
10.5
10.6
10.7
10.8
10.9
10.10
10.11
10.12
10.13
10.14
10.15
10.16
11

ASSEMBLY ........................................................................................................................................................ 43

11.1
11.2
11.3
11.4
11.5
11.6
11.7
11.8
11.9
11.10
11.11
11.12
11.13
11.14
12
12.1
12.2
13

REGISTER 0 – WHO AM I ................................................................................................................................... 30
REGISTERS 12 TO 17 – GYRO OFFSETS .............................................................................................................. 30
REGISTER 18 – FIFO ENABLE ........................................................................................................................... 31
REGISTERS 19 – AUX (ACCEL) VDDIO............................................................................................................ 31
REGISTER 20 – AUX (ACCEL) SLAVE ADDRESS................................................................................................ 32
REGISTER 21 – SAMPLE RATE DIVIDER ............................................................................................................. 32
REGISTER 22 – DLPF, FULL SCALE ................................................................................................................... 33
REGISTER 23 – INTERRUPT CONFIGURATION ..................................................................................................... 35
REGISTER 24 – AUX (ACCEL) BURST READ ADDRESS / SECONDARY I2C BUS I/O LEVEL ................................ 35
REGISTER 26 – INTERRUPT STATUS ............................................................................................................... 36
REGISTERS 27 TO 40 – SENSOR REGISTERS ................................................................................................... 37
REGISTERS 53 TO 57 – DMP REGISTERS........................................................................................................ 38
REGISTERS 58 TO 59 – FIFO COUNT.............................................................................................................. 38
REGISTER 60 – FIFO DATA ........................................................................................................................... 39
REGISTER 61 – USER CONTROL ..................................................................................................................... 41
REGISTER 62 – POWER MANAGEMENT .......................................................................................................... 42

ORIENTATION .................................................................................................................................................... 43
PCB LAYOUT GUIDELINES ................................................................................................................................ 44
TRACE ROUTING ............................................................................................................................................... 46
COMPONENT PLACEMENT ................................................................................................................................. 46
PCB MOUNTING AND CROSS-AXIS SENSITIVITY ............................................................................................... 47
MEMS HANDLING INSTRUCTIONS .................................................................................................................... 48
ESD CONSIDERATIONS...................................................................................................................................... 48
GYROSCOPE SURFACE MOUNT GUIDELINES...................................................................................................... 48
REFLOW SPECIFICATION .................................................................................................................................... 49
STORAGE SPECIFICATIONS ............................................................................................................................ 50
PACKAGE MARKING SPECIFICATION ............................................................................................................. 51
TAPE & REEL SPECIFICATION ........................................................................................................................ 51
LABEL ........................................................................................................................................................... 53
PACKAGING ................................................................................................................................................... 53

RELIABILITY ................................................................................................................................................... 54
QUALIFICATION TEST POLICY ........................................................................................................................... 54
QUALIFICATION TEST PLAN .............................................................................................................................. 54
ENVIRONMENTAL COMPLIANCE ............................................................................................................. 55

3 of 56

IMU-3000 Product Specification

1

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Document Information

1.1

Revision History

Revision Date

Revision

Description

05/26/2010

1.0

Initial Release

08/19/2010

1.1• Changes for readability (multiple sections)• Modified following specifications (Section 3.1)
o ZRO Toleranceo ZRO Variation over Temperatureo Total RMS Noiseo Noise spectral densityo Temperature Sensor Operating Range• Modified following specifications (Section 3.2)
o Operating Current
o Digital Input: Input Capacitance• Modified Capacitance for each IO Pin for Secondary I2C (Section
3.3)• Modified Clock Frequency Initial Tolerance for CLKSEL=0, 25°C
(Section 3.4).
• Modified I2C Timing: Capacitive Load for Each Bus Line (Section
3.5)• Added Latch-up specification (Section 3.6).
• Modified 3rd party accel /CS connection in diagram. (Section
7.3.1)• Added AUX register listing (Section 9).
• Added AUX register description (Section 10.12).
• Modified PCB Design Guidelines (Section 11.2.2).
• Modified Reflow Specification (Section 11.9)• Added Environmental Compliance information (Section 13).

4 of 56

IMU-3000 Product Specification

1.2

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Purpose and Scope
This document is a preliminary product specification, providing a description, specifications, anddesign related information for the IMU-3000™ Inertial Measurement Unit (IMUTM). The IMU-3000
MPL Functional Specification describes in detail the Motion Processing Library: API and System
Layer routines needed for interfacing to the IMU-3000.
Electrical characteristics are based upon simulation results and limited characterization data ofadvanced samples only. Specifications are subject to change without notice. Final specifications will
be updated based upon characterization of final silicon.

1.3

Product Overview
The IMU-3000 is the world’s first IMU solution with 6-axis sensor fusion for consumer applications.
The IMU-3000 has an embedded 3-axis gyroscope and Digital Motion Processor™ (DMP™)
hardware accelerator engine with a secondary I2C port that interfaces to third party digital
accelerometers to deliver a complete 6-axis sensor fusion output to its primary I2C port. This
combines both linear and rotational motion into a single data stream for the application. The device isideally suited for a wide variety of consumer products requiring a rugged, low-cost motion processing
solution for applications in game controllers, remote controls for broadband connected TVs and set
top boxes, sports, fitness, medical and other applications. By providing an integrated sensor fusion
output, the IMU-3000 offloads the intensive motion processing computation requirements from thehost processor, reducing the need for frequent polling of the motion sensor output and enabling use of
low cost, low power microcontrollers.
The IMU-3000 features a 3-axis digital gyro with programmable full-scale ranges of ±250, ±500,±1000, and ±2000 degrees/sec (dps), which is useful for precision tracking of both fast and slow
motions. Rate noise performance sets the industry standard at 0.01 dps/√Hz, providing the highestquality user experience in pointing and gaming applications. Factory-calibrated initial sensitivity
reduces production-line calibration requirements. The part’s on-chip FIFO and dedicated I2C-masteraccelerometer sensor bus simplify system timing and lower system power consumption; the sensor
bus allows the IMU-3000 to directly acquire data from the off-chip accelerometer without intervention
from an external processor, while the FIFO allows a system microcontrollers to burst read the sensor
data and then go to sleep while the IMU collects more data. Other industry-leading features include
on-chip 16-bit ADCs, programmable digital filters, a precision clock with 1% variation from -40°C to
85°C, an embedded temperature sensor, programmable interrupts, and a low 13mW power
consumption. Parts are available with an I2C serial interface, a VDD operating range of 2.1 to 3.6V,
and a VLOGIC interface voltage from 1.71V to 3.6V.
By leveraging its patented and volume-proven Nasiri-Fabrication platform, which integrates MEMS
wafers with companion CMOS electronics through wafer-level bonding, InvenSense has driven the
IMU-3000 package size down to a revolutionary footprint of 4x4x0.9mm (QFN), while providing thehighest performance, lowest noise, and the lowest cost semiconductor packaging to address a wide
range of handheld consumer electronic devices. The device provides the highest robustness by
supporting 10,000g shock in operation. The highest cross-axis isolation is achieved by design fromits single silicon integration.
The IMU-3000 was designed to connect directly with a third-party 3-axis digital accelerometer, whichslaves directly to the IMU-3000 master and can be clocked from the internal phase locked loop of the
IMU-3000 device, providing highly accurate timing for a true 6-axis motion processing solution
previously only available in costly and bulky inertial measurement units.

5 of 56

IMU-3000 Product Specification

1.4

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Applications
•
•
•
•
•

Game controllers
3D Remote controls for Internet connected TVs and Set Top Boxes
Health and sports monitoring
Motion tracking
Gesture recognition and advanced user interfaces

6 of 56

IMU-3000 Product Specification

2

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Features

The IMU-3000 Motion Processing Unit includes a wide range of features:
2.1

Sensors• X-, Y-, Z-Axis angular rate sensors (gyros) on one integrated circuit• Digital-output temperature sensor• 6-axis motion processing capability using secondary I2C interface to directly connect to a digital 3axis third-party accelerometer• Factory-calibrated scale factor• High cross-axis isolation via proprietary MEMS design• 10,000g shock tolerant

2.2

Digital Output• Fast Mode (400kHz) I2C serial interface• 16-bit ADCs for digitizing sensor outputs• Angular rate sensors (gyros) with applications-programmable full-scale-range of ±250°/sec,±500°/sec, ±1000°/sec, or ±2000°/sec.

2.3

Motion Processing• Embedded Digital Motion Processing™ (DMP™) engine supports 3D motion processing. Whenused together with a digital 3-axis third party accelerometer, the IMU-3000 collects theaccelerometer data via a dedicated interface, while synchronizing data sampling at a user definedrate. The total data set obtained by the IMU-3000 includes 3-axis gyroscope data, 3-axis
accelerometer data, and temperature data.
• FIFO buffers complete data set, reducing timing requirements on the system processor andsaving power by letting the processor burst read the FIFO data, and then go into a low-power
sleep mode while the IMU collects more data.
• Data collection polled or interrupt driven with on-chip programmable interrupt functionality• Programmable low-pass filters

2.4

Clocking• On-chip timing generator clock frequency ±2% variation over full temperature range• Optional external clock inputs of 32.768kHz or 19.2MHz• 1MHz clock output to synchronize with digital 3-axis accelerometer

2.5

Power
• VDD analog supply voltage range of 2.1V to 3.6V
• Flexible VLOGIC reference voltage allows for I2C interface voltages from 1.71V to VDD• Power consumption with all three axis active: 6.1mA• Sleep mode: 5µA• Each axis can be individually powered down

2.6

Package• 4x4x0.9mm QFN plastic package•

MEMS structure hermetically sealed and bonded at wafer level•

RoHS and Green compliant

7 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

3

Electrical Characteristics

3.1
Sensor Specifications
Typical Operating Circuit of Section 4.2, VDD = 2.5V, VLOGIC = 2.5V, TA=25°C.
Parameter
GYRO SENSITIVITY
Full-Scale Range

Conditions

Min

Max

Notes

º/s

±2

%
%

Best fit straight line; 25°C

0.2
2

%
%

6
6

Power-Supply Sensitivity (1-10Hz)
Power-Supply Sensitivity (10 - 250Hz)
Power-Supply Sensitivity (250Hz 100kHz)
Linear Acceleration Sensitivity

25°C-40°C to +85°C
Sine wave, 100mVpp; VDD=2.2V
Sine wave, 100mVpp; VDD=2.2V
Sine wave, 100mVpp; VDD=2.2V

±20
±0.1
0.2
0.2
4

º/s
º/s/ºC
º/s
º/s
º/s

1
7
5
5
5

Static

0.1

º/s/g

6

GYRO NOISE PERFORMANCE
Total RMS Noise
Rate Noise Spectral Density

FS_SEL=0
DLPFCFG=2 (100Hz)
At 10Hz

0.1º/s-rms1

0.01º/s/√Hz

3

kHz
kHz
kHz

1
1
1

50

ms

5

-30 to 85
280-13200±1ºC
LSB/ºC
LSB
°C

2
2
1
2

ºC

2

Sensitivity Scale Factor Tolerance
Sensitivity Scale Factor Variation Over
Temperature
Nonlinearity
Cross-Axis Sensitivity
GYRO ZERO-RATE OUTPUT (ZRO)
Initial ZRO Tolerance
ZRO Variation Over Temperature

±250
±500
±1000
±2000
16
131
65.5
32.8
16.4

Unit

4
4
4
4
3
1
3
3
3
1
7

Gyro ADC Word Length
Sensitivity Scale Factor

FS_SEL=0
FS_SEL=1
FS_SEL=2
FS_SEL=3

Typical

FS_SEL=0
FS_SEL=1
FS_SEL=2
FS_SEL=325°C-3GYRO MECHANICAL FREQUENCIES
X-AxisY-AxisZ-Axis
GYRO START-UP TIMEZRO Settling
TEMPERATURE SENSOR
Range
Sensitivity
Room-Temperature Offset
Linearity

30
27
24
DLPFCFG=0
to ±1º/s of Final

Untrimmedo
35 C
Best fit straight line (-30°C to +85°C)

TEMPERATURE RANGE
Specified Temperature Range

-40

Bits
LSB/(º/s)

+3

33
30
27

36
33
30

85

Notes:
1. Tested in production
2. Based on characterization of 30 parts over temperature on evaluation board or in socket
3. Based on design, through modeling and simulation across PVT
4. Typical. Randomly selected part measured at room temperature on evaluation board or in socket
5. Based on characterization of 5 parts over temperature
6. Tested on 5 parts at room temperature
7. Based on characterization of 48 parts on evaluation board or in socket

8 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

3.2
Electrical Specifications
Typical Operating Circuit of Section 4.2, VDD = 2.5V, TA = 25°C.
Parameters
VDD POWER SUPPLY
Operating Voltage Range
Ramp Rate

Conditions

Min

Monotonic ramp. Ramp
rate is 10% to 90% of the
final value (see Figure in
Section 4.4)

Typical2.1
0Normal Operating Current

Max

Units

Notes

3.6
5

V
ms

2
2

mA
mA
µA

1
1
4

6.1
5.9
5

DMP disabled
Sleep Mode Current
VLOGIC REFERENCE VOLTAGE(Must be regulated)
Voltage Range
Ramp RateVLOGIC must be ≤VDD at
all times
Monotonic ramp. Ramp
rate is 10% to 90% of the
final value (see Figure in
Section 4.4)

1.71

Normal Operating Current

100

START-UP TIME FOR REGISTER
READ/WRITE

20

VDD

V

1

ms

3, 5

µA
100

ms

4

2

I C ADDRESS
AD0 = 0AD0 = 11101000
1101001

1
1

DIGITAL INPUTS (AD0, CLKIN)
VIH, High Level Input Voltage
VIL, Low Level Input Voltage
CI, Input Capacitance

0.7*VDD

V
V
pF

5
5

V
V
V

2
2
2

100

nA

4

50

µs

4

0.3*VDD<5

DIGITAL OUTPUT (INT)
VOH, High Level Output Voltage
VOL1, LOW-Level Output Voltage
VOL.INT1, INT Low-Level Output Voltage
Output Leakage Current

RLOAD=1MΩ
RLOAD=1MΩ
OPEN=1, 0.3mA sinkcurrent
OPEN=1tINT, INT Pulse Width

LATCH_INT_EN=0

0.9*VLOGIC
0.1*VLOGIC
0.1

Notes:
1. Tested in production
2. Based on characterization of 30 parts over temperature on evaluation board or in socket
3. Typical. Randomly selected part measured at room temperature on evaluation board or in socket
4. Based on characterization of 5 parts over temperature
5. Refer to Section 4.4 for the recommended power-on procedure

9 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

3.3
Electrical Specifications, continued
Typical Operating Circuit of Section 4.2, VDD = 2.5V, VLOGIC = 2.5V, TA=25°C.
Parameters

Conditions

Typical

Units

Notes

-0.5V to 0.3*VLOGIC
0.7*VLOGIC to VLOGIC+ 0.5V
0.1*VLOGIC
0 to 0.4
35
100
20+0.1Cb to 250
< 10

V
V

1
1

V
V
mA
mA
nA
ns
pF

1
1
1
1
2
1

V
V

1

2

Primary I C I/O (SCL, SDA)
VIL, LOW-Level Input Voltage
VIH, HIGH-Level Input Voltage
Vhys, Hysteresis
VOL1, LOW-Level Output Voltage
IOL, LOW-Level Output Current
Output Leakage Current
tof, Output Fall Time from VIHmax to VILmax
CI, Capacitance for Each I/O pin
2

Secondary I C I/O (AUX_CL,
AUX_DA)
VIL, LOW-Level Input Voltage
VIH, HIGH-Level Input Voltage
Vhys, Hysteresis
VOL1, LOW-Level Output Voltage
VOL3, LOW-Level Output Voltage
IOL, LOW-Level Output Current

3mA sink current
VOL = 0.4V
VOL = 0.6V
Cb bus capacitance in pF
AUX_VDDIO=0

VLOGIC > 2V; 1mA sink current
VLOGIC < 2V; 1mA sink current
VOL = 0.4V
VOL = 0.6V

Output Leakage Current
tof, Output Fall Time from VIHmax to VILmax
CI, Capacitance for Each I/O pin
2

Secondary I C I/O (AUX_CL,
AUX_DA)
VIL, LOW-Level Input Voltage
VIH, HIGH-Level Input Voltage
Vhys, Hysteresis
VOL1, LOW-Level Output Voltage
IOL, LOW-Level Output Current
Output Leakage Current
tof, Output Fall Time from VIHmax to VILmax
CI, Capacitance for Each I/O pin

Cb bus capacitance in pF-0.5V to 0.3*VLOGIC
0.7*VLOGIC to
VLOGIC + 0.5V
0.1*VLOGIC
0 to 0.4
0 to 0.2*VLOGIC
1

V
V
V
mA

1
100
20+0.1Cb to 250
< 10

mA
nA
ns
pF

1
2
1

-0.5 to 0.3*VDD
0.7*VDD to VDD+0.5V
0.1*VDD
0 to 0.4
1
1
100
20+0.1Cb to 250
< 10

V
V
V
V
mA
mA
nA
ns
pF

1
1

1
1
1

AUX_VDDIO=1

1mA sink current
VOL = 0.4V
VOL = 0.6V
Cb bus capacitance in pF

1
1
1
2
1

Notes:
1. Based on characterization of 5 parts over temperature
2. Typical. Randomly selected part measured at room temperature on evaluation board or in socket

10 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

3.4
Electrical Specifications, continued
Typical Operating Circuit of Section 4.2, VDD = 2.5V, VLOGIC = 2.5V, TA=25°C.
Parameters

Conditions

INTERNAL CLOCK SOURCE

CLKSEL=0,1,2,3

Sample Rate, FastDLPFCFG=0
SAMPLERATEDIV = 0

Sample Rate, Slow

DLPFCFG=1,2,3,4,5, or 6
SAMPLERATEDIV = 0

Reference Clock Output
Clock Frequency Initial Tolerance
Frequency Variation over Temperature
PLL Settling Time
EXTERNAL 32.768kHz CLOCK
External Clock Frequency
External Clock JitterMin

CLKOUTEN = 1
CLKSEL=0, 25°C
CLKSEL=1,2,3; 25°C
CLKSEL=0
CLKSEL=1,2,3
CLKSEL=1,2,3

Typical

Max

Units

Notes

8

kHz

3

1

kHz

3

-15 to +10
±1
1

MHz
%
%
%
%
ms

3
1
1
2
2

32.7681 to 2

kHz
µs

1.024
-5
-1

+5
+1

CLKSEL=4
Cycle-to-cycle rms

Sample Rate, FastDLPFCFG=0
SAMPLERATEDIV = 0

8.192

kHz

Sample Rate, Slow

DLPFCFG=1,2,3,4,5, or 6
SAMPLERATEDIV = 0

1.024

kHz

1.0486
1

MHz
ms

19.2

MHz

Reference Clock Output
PLL Settling Time

CLKOUTEN = 1

EXTERNAL 19.2MHz CLOCK
External Clock Frequency

CLKSEL=5

Sample Rate, FastDLPFCFG=0
SAMPLERATEDIV = 0

8kHz

Sample Rate, Slow

DLPFCFG=1,2,3,4,5, or 6
SAMPLERATEDIV = 0

1

kHz

1.024
1

MHz
ms

Reference Clock Output
PLL Settling Time

CLKOUTEN = 1

Notes:
1. Tested in production
2. Based on characterization of 30 parts over temperature on evaluation board or in socket
3. Typical. Randomly selected part measured at room temperature on evaluation board or in socket

11 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

3.5
I2C Timing Characterization
Typical Operating Circuit of Section 4.2, VDD = 2.5V, VLOGIC = 1.8V±5%, 2.5V±5%, 3.0V±5%, or 3.3V±5%,
TA=25°C.
Parameters

Conditions

2

I2C FAST-MODE

I C TIMINGfSCL, SCL Clock Frequency
tHD.STA, (Repeated) START Condition
Hold TimeMin

Typical

0
0.6

Max

Units

Notes

400

kHz
µs

1
1

tLOW, SCL Low PeriodtHIGH, SCL High PeriodtSU.STA, Repeated START Condition
Setup Time

1.3
0.6
0.6

µs
µs
µs

1
1
1

tHD.DAT, SDA Data Hold TimetSU.DAT, SDA Data Setup Time

0
100

µs
ns

1
1

300

ns

1

300

ns

1

µs

1

µs

1

pF
µs
µs

1
1

tr, SDA and SCL Rise Timetf, SDA and SCL Fall TimeCb bus cap. from 10 to
400pF
Cb bus cap. from 10 to400pF

tSU.STO, STOP Condition Setup TimetBUF, Bus Free Time Between STOP and
START Condition
Cb, Capacitive Load for each Bus LinetVD.DAT, Data Valid Time
tVD.ACK, Data Valid Acknowledge Time

20
+0.1Cb20+0.1Cb
0.6
1.3
< 400

0.9
0.9

Notes:
1. Based on characterization of 5 parts over temperature on evaluation board or in socket

I2C Bus Timing Diagram

12 of 56

IMU-3000 Product Specification

3.6

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Absolute Maximum Ratings

Stress above those listed as “Absolute Maximum Ratings” may cause permanent damage to the device.
These are stress ratings only and functional operation of the device at these conditions is not implied.
Exposure to the absolute maximum ratings conditions for extended periods may affect device reliability.
Absolute Maximum Ratings
Parameter

RatingSupply Voltage, VDD-0.5V to +6V

VLOGIC Input Voltage LevelREGOUT-0.5V to VDD + 0.5V
-0.5V to 2V

Input Voltage Level (CLKIN, AUX_DA,
AD0, INT, SCL, SDA)CPOUT (2.1V ≤ VDD ≤ 3.6V )-0.5V to VDD + 0.5V
-0.5V to 30V

Acceleration (Any Axis, unpowered)

10,000g for 0.3ms

Operating Temperature Range-40°C to +105°C

Storage Temperature Range-40°C to +125°C

Electrostatic Discharge (ESD)
Protection

1.5kV (HBM); 200V
(MM)

Latch-up

60mA @ 125°C
JEDEC Condition “B”

13 of 56

IMU-3000 Product Specification

4
4.1

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Applications Information
Pin Out and Signal Description
Pin Number

Pin Name

Pin Description

1

CLKIN

External reference clock input

6

AUX_DA

Interface to a 3 party accelerometer, SDA pin. Logic levels are set to beeither VDD or VLOGIC. See Section 7 for more details.

7

AUX_CLInterface to a 3 party accelerometer, SCL pin. Logic levels are set to beeither VDD or VLOGIC. See Section 7 for more details.

8

VLOGIC

9AD0

10REGOUT

Regulator filter capacitor connection

11

RESV-G

Reserved – Connect to Ground.

12

INT

Interrupt digital output (totem pole or open-drain)

13

VDD

Power supply voltage and Digital I/O supply voltage

18

GND

Power supply ground

19

RESV

Reserved. Do not connect.

20

CPOUT

Charge pump capacitor connection

21

RESV

Reserved. Do not connect.

22

CLKOUT

23

SCL

I C serial clock

24

SDA

I C serial data

2, 3, 4, 5, 14,
15, 16, 17

NC

Not internally connected. May be used for PCB trace routing.

rdrd

Digital I/O supply voltage. VLOGIC must be ≤ VDD at all times.
2

I C Slave Address LSB

1MHz clock output for third-party accelerometer synchronization22

14 of 56

IMU-3000 Product Specification

4.2

Typical Operating Circuit

4.3

Bill of Materials for External Components

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Component

LabelSpecification

Quantity

VDD Bypass Capacitor

C1

Ceramic, X7R, 0.1µF ±10%, 4V

1Regulator Filter Capacitor

C2

Ceramic, X7R, 0.1µF ±10%, 2V

1Charge Pump Capacitor

C3

Ceramic, X7R, 2.2nF ±10%, 50V

1

VLOGIC Bypass Capacitor

C4

Ceramic, X7R, 10nF ±10%, 4V

1

15 of 56

IMU-3000 Product Specification

4.4

Recommended Power-on Procedure

16 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

5
5.1

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Functional Overview
Block Diagram

5.2
Overview
The IMU-3000 is comprised of the following key blocks / functions:• Three-axis MEMS rate gyroscope sensors with 16-bit ADCs and signal conditioning• Digital Motion Processor (DMP)• Primary I2C serial communications interface• Secondary I2C serial interface for 3rd party accelerometer• Clocking• Sensor Data Registers• FIFO• Interrupts• Digital-Output Temperature Sensor• Bias and LDO• Charge Pump
5.3
Three-Axis MEMS Gyroscope with 16-bit ADCs and Signal Conditioning
The IMU-3000 consists of three independent vibratory MEMS rate gyroscopes, which detect rotation about
the X, Y, and Z axes. When the gyros are rotated about any of the sense axes, the Coriolis Effect causes a
vibration that is detected by a capacitive pickoff. The resulting signal is amplified, demodulated, and filteredto produce a voltage that is proportional to the angular rate. This voltage is digitized using individual on-chip
16-bit Analog-to-Digital Converters (ADCs) to sample each axis. The full-scale range of the gyro sensors
may be digitally programmed to ±250, ±500, ±1000, or ±2000 degrees per second (dps). ADC sample rate isprogrammable from 8,000 samples per second, down to 3.9 samples per second, and user-selectable lowpass filters enable a wide range of cut-off frequencies.
5.4
Digital Motion Processor
The embedded Digital Motion Processor (DMP) is located within the IMU-3000 and offloads computation of
motion processing algorithms from the host processor. The DMP acquires and processes data from the on17 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

chip gyroscopes and an external accelerometer. The resulting data can be read from IMU-3000’s FIFO. The
DMP has access to certain of the IMU’s external pins, which can be used for synchronizing external devices
to the motion sensors, or generating interrupts for the application.
The purpose of the DMP is to offload both timing requirements and processing power from the hostprocessor. Typically, motion processing algorithms should be run at a high rate, often around 200Hz, in orderto provide accurate results with low latency. This is required even if the application updates at a much lower
rate; for example, a low power user interface may update as slowly as 5Hz, but the motion processing shouldstill run at 200Hz. The DMP can be used as a tool in order to minimize power, simplify timing and softwarearchitecture, and save valuable MIPS on the host processor for use in the application.
5.5
Primary I2C Serial Communications Interface
The IMU-3000 communicates to a system processor using the I2C serial interface; the device always acts asa slave when communicating to the system processor. The logic level for communications to the master is
set by the voltage on the VLOGIC pin. The LSB of the of the I2C slave address is set by pin 9 (AD0).
5.6
Secondary I2C Serial Interface for Third-Party Accelerometer
The IMU-3000 has a secondary I2C bus for communicating to an off-chip 3-axis digital output accelerometer.
This bus has two operating modes: I2C Master Mode, where the IMU-3000 acts as a master to an external
accelerometer connected to the secondary I2C bus; and Pass-Through Mode, where the IMU-3000 directly
connects the primary and secondary I2C buses together, to allow the system processor to directly
communicate with the external accelerometer.
Secondary I2C Bus Modes of Operation:•

I2C Master Mode: allows the IMU-3000 to directly access the data registers of an external digital
accelerometer. In this mode, the IMU-3000 directly obtains sensor data from an accelerometer thus
allowing the on-chip DMP to generate sensor fusion data without intervention from the systemapplications processor. In I2C master mode, the IMU-3000 can be configured to perform burst reads,
returning the following data from the accelerometer:
 X accelerometer data (2 bytes)
 Y accelerometer data (2 bytes)
 Z accelerometer data (2 bytes)•

Pass-Through Mode: allows an external system processor to act as master and directly
communicate to the external accelerometer connected to the secondary I2C bus pins (AUX_DA and
AUX_CL). This is useful for configuring the accelerometer, or for keeping the IMU-3000 in a lowpower mode, when only the accelerometer is to be used. In this mode, the secondary I2C bus
control logic (third-party accelerometer Interface block) of the IMU-3000 is disabled, and thesecondary I2C pins AUX_DA and AUX_CL (Pins 6 and 7) are connected to the main I2C bus (Pins 23
and 24) through analog switches.

Secondary I2C Bus I/O Logic Levels
The logic levels of the secondary I2C bus can be programmed to be either VDD or VLOGIC (see Sections 7
and 8).

18 of 56

IMU-3000 Product Specification

6

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Clocking

6.1
Internal Clock Generation
The IMU-3000 has a flexible clocking scheme, allowing for a variety of internal or external clock sources forthe internal synchronous circuitry. This synchronous circuitry includes the signal conditioning and ADCs, the
DMP, and various control circuits and registers. An on-chip PLL provides flexibility in the allowable inputs forgenerating this clock.
Allowable internal sources for generating the internal clock are:
• An internal relaxation oscillator• Any of the X, Y, or Z gyros (MEMS oscillators with a variation of ±1% over temperature range)
Allowable external clocking sources are:• 32.768kHz square wave
• 19.2MHz square wave
Which source to select for generating the internal synchronous clock depends on the availability of externalsources and the requirements for power consumption and clock accuracy. Most likely, these requirements
will vary by mode of operation. For example, in one mode, where the biggest concern is power consumption,
one may wish to operate the Digital Motion Processor of the IMU-3000 to process accelerometer data, while
keeping the gyros off. In this case, the internal relaxation oscillator is a good clock choice. However, in
another mode, where the gyros are active, selecting the gyros as the clock source provides for a moreaccurate clock source.
Clock accuracy is important, since timing errors directly affect the distance and angle calculations performedby the Digital Motion Processor (or by extension, by any processor).
There are also start-up conditions to consider. When the IMU-3000 first starts up, the device operates off of
its internal clock, until programmed to operate from another source. This allows the user, for example, towait for the MEMS oscillators to stabilize before they are selected as the clock source.
6.2
Clock Output
In addition, the IMU-3000 provides a clock output, which allows the device to operate synchronously with an
external digital 3-axis accelerometer. Operating synchronously provides for higher-quality sensor fusion
data, since the sampling instant for the sensor data can be set to be coincident for all sensors.
6.3
Sensor Data Registers
The sensor data registers contain the latest gyro and temperature data. They are read-only registers, andare accessed via the Serial Interface. Data from these registers may be read anytime, however, the interrupt
function may be used to determine when new data is available.
6.4
FIFO
The IMU-3000 contains a 512-byte FIFO register that is accessible via the Serial Interface. The FIFO
configuration register determines what data goes into it, with possible choices being gyro data,
accelerometer data, temperature readings, and auxiliary ADC readings. A FIFO counter keeps track of how
many bytes of valid data are contained in the FIFO. The FIFO register supports burst reads. The interrupt
function may be used to determine when new data is available.
6.5
Interrupts
Interrupt functionality is configured via the Interrupt Configuration register. Items that are configurable
include the INT pin configuration, the interrupt latching and clearing method, and triggers for the interrupt.
Items that can trigger an interrupt are (1) Clock generator locked to new reference oscillator (used whenswitching clock sources); (2) Digital Motion Processor Done (programmable function); (3) new data isavailable to be read (from the FIFO and Data registers); and (4) the IMU-3000 did not receive an
acknowledge from the accelerometer on the Secondary I2C bus. The interrupt status can be read from theInterrupt Status register.

19 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

6.6
Digital-Output Temperature Sensor
An on-chip temperature sensor and ADC are used to measure the IMU-3000 die temperature. The readings
from the ADC can be read from the FIFO or the Sensor Data registers.
6.7
Bias and LDO
The bias and LDO section generates the internal supply and the reference voltages and currents required by
the IMU-3000. Its inputs are an unregulated VDD of 2.1V to 3.6V and a VLOGIC - logic reference supply
voltage - of 1.71V to VDD. The LDO output is bypassed by a 0.1µF capacitor at REGOUT.
6.8
Charge Pump
An on-board charge pump generates the high voltage required for the MEMS oscillators. Its output is
bypassed by a 2.2nF capacitor at CPOUT.

20 of 56

IMU-3000 Product Specification

7
7.1

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Digital Interface
I2C Serial Interface

The internal registers of the IMU-3000 can be accessed using I2C at up to 400kHz.
Serial Interface
Pin
NumberPin Name

Pin Description

8

VLOGIC

Digital I/O supply voltage. VLOGIC must be ≤ VDD at
all times.

9

AD0

I2C Slave Address LSB

23

SCL

I2C serial clock

24

SDA

I2C serial data

7.1.1 I2C Interface
I2C is a two-wire interface comprised of the signals serial data (SDA) and serial clock (SCL). In general, thelines are open-drain and bi-directional. In a generalized I2C interface implementation, attached devices canbe a master or a slave. The master device puts the slave address on the bus, and the slave device with thematching address acknowledges the master.
The IMU-3000 always operates as a slave device when communicating to the system processor, which thus
acts as the master. SDA and SCL lines typically need pull-up resistors to VDD. The maximum bus speed is
400kHz.
The slave address of the IMU-3000 is b110100X which is 7 bits long. The LSB bit of the 7 bit address isdetermined by the logic level on pin ADO. This allows two IMU-3000s to be connected to the same I2C bus.
When used in this configuration, the address of the one of the devices should be b1101000 (pin ADO is logiclow) and the address of the other should be b1101001 (pin AD0 is logic high). The I2C address is stored in
the WHO_AM_I register.
I2C Communications Protocol
START (S) and STOP (P) Conditions
Communication on the I2C bus starts when the master puts the START condition (S) on the bus, which isdefined as a HIGH-to-LOW transition of the SDA line while SCL line is HIGH (see figure below). The bus isconsidered to be busy until the master puts a STOP condition (P) on the bus, which is defined as a LOW to
HIGH transition on the SDA line while SCL is HIGH (see figure below).
Additionally, the bus remains busy if a repeated START (Sr) is generated instead of a STOP condition.

START and STOP Conditions
21 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Data Format / Acknowledge
I2C data bytes are defined to be 8 bits long. There is no restriction to the number of bytes transmitted per
data transfer. Each byte transferred must be followed by an acknowledge (ACK) signal. The clock for the
acknowledge signal is generated by the master, while the receiver generates the actual acknowledge signal
by pulling down SDA and holding it low during the HIGH portion of the acknowledge clock pulse.
If a slave is busy and cannot transmit or receive another byte of data until some other task has been
performed, it can hold SCL LOW, thus forcing the master into a wait state. Normal data transfer resumes
when the slave is ready, and releases the clock line (refer to the following figure).

Acknowledge on the I2C Bus
Communications
After beginning communications with the START condition (S), the master sends a 7-bit slave address
followed by an 8th bit, the read/write bit. The read/write bit indicates whether the master is receiving data fromor is writing to the slave device. Then, the master releases the SDA line and waits for the acknowledge
signal (ACK) from the slave device. Each byte transferred must be followed by an acknowledge bit. To
acknowledge, the slave device pulls the SDA line LOW and keeps it LOW for the high period of the SCL line.
Data transmission is always terminated by the master with a STOP condition (P), thus freeing thecommunications line. However, the master can generate a repeated START condition (Sr), and address
another slave without first generating a STOP condition (P). A LOW to HIGH transition on the SDA line while
SCL is HIGH defines the stop condition. All SDA changes should take place when SCL is low, with the
exception of start and stop conditions.

Complete I2C Data Transfer

22 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

To write the internal IMU-3000 registers, the master transmits the start condition (S), followed by the I2C
address and the write bit (0). At the 9th clock cycle (when the clock is high), the IMU-3000 acknowledges thetransfer. Then the master puts the register address (RA) on the bus. After the IMU-3000 acknowledges thereception of the register address, the master puts the register data onto the bus. This is followed by the ACK
signal, and data transfer may be concluded by the stop condition (P). To write multiple bytes after the last
ACK signal, the master can continue outputting data rather than transmitting a stop signal. In this case, theIMU-3000 automatically increments the register address and loads the data to the appropriate register. The
following figures show single and two-byte write sequences.
Single-Byte Write Sequence
Master
Slave

S

AD+W

RA
ACK

DATA

P

ACK

ACK

Burst Write Sequence
Master
Slave

S

AD+W

RA
ACK

DATA
ACK

DATA
ACK

P
ACK

To read the internal IMU-3000 registers, the master sends a start condition, followed by the I2C address anda write bit, and then the register address that is going to be read. Upon receiving the ACK signal from the
IMU-3000, the master transmits a start signal followed by the slave address and read bit. As a result, theIMU-3000 sends an ACK signal and the data. The communication ends with a not acknowledge (NACK)
signal and a stop bit from master. The NACK condition is defined such that the SDA line remains high at the
9th clock cycle. The following figures show single and two-byte read sequences.
Single-Byte Read Sequence
Master
Slave

S

AD+W

RA
ACK

S

AD+R

ACK

NACK
ACK

DATA

ACK

DATA

P

Burst Read Sequence
Master
Slave

S

AD+W

RA
ACK

S

AD+R

ACK

ACK

NACK
DATA

I2C Terms
SignalDescription

S

Start Condition: SDA goes from high to low while SCL is highAD

Slave I2C addressW

Write bit (0)R

Read bit (1)ACK

Acknowledge: SDA line is low while the SCL line is high at the 9th clock cycle

NACK

Not-Acknowledge: SDA line stays high at the 9th clock cycle

RA

IMU-3000 internal register address

DATA

Transmit or received dataP

Stop condition: SDA going from low to high while SCL is high
23 of 56

P

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Serial Interface Considerations
7.2
Supported Interfaces
The IMU-3000 supports I2C communications on both its primary (microprocessor) serial interface and its
secondary (accelerometer) interface.
7.3
Logic Levels
The IMU-3000 accelerometer bus I/O logic levels are set to be either VDD or VLOGIC, as shown in the tablebelow.
I/O Logic Levels vs. AUX_VDDIO bit
MICROPROCESSOR LOGIC LEVELSACCELEROMETER LOGIC LEVELS(Pins: SDA, SCL, AD0, CLKIN, INT)

(Pins: AUX_DA, AUX_CL)

0

VLOGICVLOGIC1

VLOGICVDD

AUX_VDDIO

Notes:
1. CLKOUT has logic levels that are always referenced to VDD
2. The power-on-reset value for AUX_VDDIO is 0.
VLOGIC may be set to be equal to VDD or to another voltage, such that at all times VLOGIC is ≤ VDD.
When AUX_VDDIO is set to 0 (its power-on-reset value), VLOGIC is the reference voltage for both themicroprocessor system bus and the accelerometer secondary bus, as shown in the figure of Section 8.2.1.
When AUX_VDDIO is set to 1, VLOGIC is the reference voltage for the microprocessor system bus and VDD
is the reference voltage for the accelerometer secondary bus, as shown in the figure of Section 8.2.2.

24 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

7.3.1 AUX_VDDIO = 0
The figure below shows logic levels and voltage connections for AUX_VDDIO = 0. Note that the actual
configuration will depend on the type of third-party accelerometer used.

I/O Levels and Connections for AUX_VDDIO = 0

25 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

7.3.2 AUX_VDDIO = 1
When AUX_VDDIO is set to 1 by the user, VLOGIC is the reference voltage for the microprocessor system
bus and VDD is the reference voltage for the accelerometer secondary bus, as shown in the figure below.
This is useful when interfacing to a third-party accelerometer where there is only one supply for both the logic
and analog sections of the 3rd party accelerometer.

I/O Levels and Connections for Two Example Power Configurations (AUX_VDDIO = 1)

26 of 56

IMU-3000 Product Specification

8

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Motion Processing Library (MPL)

To assist in the rapid development and deployment of products using the IMU-3000, InvenSense provides a
Motion Processing Library (MPL) software development kit that has been verified to work in the hardware
and software environment shown in the figure below.

IMU‐3000 Evaluation Board

DMP
Accel

USB

FIFO

Gyro
Accel

InvenSense ARM
Evaluation Board2

USB to I C

IMU‐3000WinXP PC
Minu‐USB
connector

20‐pinconnector

The MPL contains the core algorithm engines for motion processing, and includes an API layer which
provides a simple interface into using these engines (see figure below).

27 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

The MPL communicates with the System Layer, which is a platform-specific interface into the hardware andsoftware environment; this System Layer software must be implemented by the customer for his particularenvironment. The software development kit includes shell functions to speed up the development of this
System Layer software. The MPL is independent of the Operating System (OS) since the System Layer
software handles OS-specific requirements.
The purpose of the DMP is to offload both timing requirements and processing requirements from the hostprocessor. Typically, raw data integration (sensor fusion) should be run at a high rate, often around 200Hz, inorder to provide accurate results with low latency. This is required even if the application updates at a much
lower rate; for example, a low power user interface may update as slowly as 5Hz, but the sensor fusion
should still run at 200Hz. The DMP can be used to minimize power, simplify timing and software architecture,and saving valuable MIPS on the host processor for use in the application.
The IMU-3000 MPL Functional Specification describes in detail the API and System Layer routines needed
for interfacing to the IMU-3000.
8.1 Demo Software
InvenSense provides demonstration software in the form of source code and a compiled demonstration thatruns on a PC running Windows XP. This software works in conjunction with the hardware shown in the
figure at the top of Section 8. The PC demo software provides the functionality that allows a user to become
familiar with the use of gyros and accelerometers.

28 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

9
Addr
(Hex)

Register Map
Addr(Decimal)

Register Name

R/W

Bit7
0

0

0

WHO_AM_I

R/W

C

12

X_OFFS_USRH

R/W

Bit6

Bit5

Bit4

Bit3
ID

13

X_OFFS_USRL

R/W

X_OFF_L14

Y_OFFS_USRH

R/W

Y_OFFS_H

F

15

Y_OFFS_USRL

R/W

Y_OFFS_L

10

16

Z_OFFS_USRH

R/W

Z_OFFS_H

1117

Z_OFFS_USRL

R/W

Z_OFFS_L

12

18

FIFO_EN

R/W

TEMP_
OUT

13

19

AUX_VDDIO

R/W

0

14

20

AUX_SLV_
ADDR

R/W

CLKOUT
EN

15

21

SMPLRT_DIV

R/W

16

22

DLPF_FS

R/W

INT_CFG

R/W

18

24

AUX_BURST_AD
DR

R/W

1A

26

INT_STATUS

R

Bit0
-

E

23

Bit1

X_OFF_H

D

17

Bit2

GYRO_
XOUT

GYRO_
YOUT

GYRO_
ZOUT

AUX_
XOUT

AUX_
YOUT

AUX_
ZOUT

FIFO_
FOOTER

0

0

0

0

AUX_
VDDIO

0

0

AUX_ID
SMPLRT_DIV

0
ACTL

0
OPEN

0
LATCH_
INT_EN

FS_SELINT_
ANYRD_
2CLEARDLPF_CFG

I2C_MST_ERR_E
N

IMU_
RDY_
EN

DMP_
DONE
_EN

RAW_
RDY_ EN

IMU_
RDY

DMP_
DONE

RAW_
DATA_
RDY

BURST_ADDR
FIFO_FU
LL-

I2C_MST
_ERR

-

1B

27

TEMP_OUT_H

R

1C

28

TEMP_OUT_L

R

TEMP_OUT_H
TEMP_OUT_L

1D

29

GYRO_XOUT_H

R

GYRO_XOUT_H

1E

30

GYRO_XOUT_L

R

GYRO_XOUT_L

1F

31

GYRO_YOUT_H

R

GYRO_YOUT_H

20

32

GYRO_YOUT_L

R

GYRO_YOUT_L

21

33

GYRO_ZOUT_H

R

GYRO_ZOUT_H

2234

GYRO_ZOUT_L

R

GYRO_ZOUT_L

23

35

AUX_XOUT_H

R

AUX_XOUT_H

24

36

AUX_XOUT_L

R

AUX_XOUT_L

25

37

AUX_YOUT_H

R

AUX_YOUT_H

26

38

AUX_YOUT_L

R

AUX_YOUT_L

27

39

AUX_ZOUT_H

R

AUX_ZOUT_H

28

40

AUX_ZOUT_L

R

AUX_ZOUT_L

35

53

DMP_REG1

R/W

RESERVED1

36

54

DMP_REG2R/W

RESERVED2

37

55

DMP_REG3R/W

RESERVED3

38

56

DMP_REG4R/W

RESERVED439

57

DMP_REG5

R/W

3A

58

FIFO_COUNTH

R

3B

59

FIFO_COUNTLRRESERVED5
-

-

-

-

-

-

FIFO_COUNT_H

FIFO_COUNT_L

3C

60

FIFO_R

R

3D

61

USER_CTRL

R/W

DMP_ENFIFO_EN

AUX_IF_EN-

FIFO_DATA

3E

62

PWR_MGMR/W

H_RESETSLEEPSTBY_XG

STBY_YG

29 of 56

AUX_IF_RST DMP_RSTFIFO_RST GYRO_RSTSTBY_ZG

CLK_SEL

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10 Register Description
This section details each register within the InvenSense IMU-3000 gyroscope. Note that any bit that is notdefined should be set to zero in order to be compatible with future InvenSense devices.
The register space allows single-byte reads and writes, as well as burst reads and writes. When performing
burst reads or writes, the memory pointer will increment until either (1) reading or writing is terminated by themaster, or (2) the memory pointer reaches registers 57 or 60.
10.1 Register 0 – Who Am I
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

0

0

0

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

ID

Bit0
-

Description:
This register is used to verify the identity of the device.
Parameters:
Contains the I2C address of the device, which can be changed by writing to thisregister.
This register bit must be set to 0 when writing to this register.

ID
0

The Power-On-Reset value of Bit6: Bit1 is 110 100.
The Power-On-Reset value of Bit7 is 0.
10.2 Registers 12 to 17 – Gyro Offsets
Type: Read/Write
Register(Hex)

Register(Decimal)

C
D

12
13

X_OFFS_H
X_OFFS_L

E

14

Y_OFFS_H

F

15

Y_OFFS_L

10

16

Z_OFFS_H

1117

Z_OFFS_L

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Description:
These registers are used to remove DC bias from the sensor outputs. The values in these registers
are subtracted from the gyro sensor values before going into the sensor registers (see registers 29 to
34).
Parameters:
X_OFFS_H/L
Y_OFFS_H/L
Z_OFFS_H/L

16-bit offset (high and low bytes) of X gyro offset (2’s complement)
16-bit offset (high and low bytes) of Y gyro offset (2’s complement)
16-bit offset (high and low bytes) of Z gyro offset (2’s complement)

30 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.3 Register 18 – FIFO Enable
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Default
Value

12

18

TEMP_
OUT

GYRO_
XOUT

GYRO_
YOUT

GYRO_
ZOUT

AUX_
XOUT

AUX_
YOUT

AUX_
ZOUT

FIFO_
FOOTER

00h

Description:
This register determines what data goes into the IMU-3000 FIFO, which is a 512 byte First-In-FirstOut buffer (see register 60). Sensor data is automatically placed into the FIFO after each ADC
sampling period is complete. The ADC sample rate is controlled by register 21.
The order at which the data is put into the FIFO is from MSB to LSB, which means that it will matchthe order shown in the parameter detail below. Two bytes are used for each reading. For example,
if Gyro X, Gyro Y, Gyro Z, and FIFO_FOOTER are configured to go into the FIFO, then each sample
period the following 8 bytes would be inserted into the FIFO, as shown below:
Gyro X
High byte

Gyro X
Low byte

Parameters:
TEMP_OUTGYRO_XOUTGYRO_YOUTGYRO_ZOUTAUX_XOUT
AUX_YOUT
AUX_ZOUTFIFO_FOOTER

Gyro YHigh byte

Gyro YLow byte

Gyro ZHigh byte

Gyro Z
Low byte

FIFO_FOOTERHigh byte

FIFO_FOOTER
Low byte

Setting this inserts the Temperature reading into FIFO
Setting this inserts the X Gyro reading into FIFO
Setting this inserts the Y Gyro reading into FIFO
Setting this inserts the Z Gyro reading into FIFO
Setting this inserts the X Accelerometer reading into FIFO
Setting this inserts the Y Accelerometer reading into FIFO
Setting this inserts the Z Accelerometer reading into FIFO
Last word (2 bytes) for FIFO read. Described in more detail in Section 60

10.4 Registers 19 – AUX (Accel) VDDIO
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Default
Value

13

19

0

0

0

0

0

AUX_
VDDIO

0

0

00h

Description:
This register determines the I/O logic levels for the secondary I2C bus clock and data lines (AUX_CL,
AUX_DA). 1=VDD, 0=VLOGIC.
Parameters:
AUX_VDDIO0

I/O logic levels for the secondary I2C bus clock and data lines (AUX_CL,
AUX_DA). 1=VDD, 0=VLOGIC.
Load zeros into Bits 0, 1, 3-7.

31 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.5 Register 20 – AUX (Accel) Slave Address
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

14

20

CLKOUTEN

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Default
Value
00h

AUX_ID

Description:
This register contains the enable bit for the reference clock output and the 7-bit slave address of theexternal 3rd party accelerometer.
The CLKOUTEN bit is used to enable (1) or disable (0) the reference clock output at the CLKOUT
pin.
AUX_ID, the 7-bit accelerometer slave address, is used to access the accelerometer so that its
sensor reading can be automatically read during each sample period at the same time as the gyro
sensors.
When reading the external accelerometer registers, the IMU-3000 takes over the secondary I2C bus,
as a master to the accel, performing a burst read of the sensor registers. For this interface to be
active, the AUX_IF_EN flag in the User Control register (61) must be set (set to 1).
Whenever changing this register, the secondary accel interface must be reset with AUX_IF_RST totake effect. Refer to the User Control register (61).
Parameters:
CLKOUTEN
AUX_IDThe enable bit for the reference clock output that is provided at the CLKOUT pin.
1=clock output enabled; 0=clock output disabled.
Contains the I2C address of the external accelerometer. The address can bechanged by writing to this register.

10.6 Register 21 – Sample Rate Divider
Type: Read/Write
Register(Hex)

Register(Decimal)

15

21

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

SMPLRT_DIV

Bit1

Bit0

Default
Value
00h

Description:
This register determines the sample rate of the IMU-3000 gyros. The analog gyros are sampledinternally at either 1kHz or 8kHz, determined by the DLPF_CFG setting (see register 22). This
sampling is then filtered digitally and delivered into the sensor registers after the number of cycles
determined by this register. The sample rate is given by the following formula:
Fsample = Finternal / (divider+1), where Finternal is either 1kHz or 8kHz
As an example, if the internal sampling is at 1kHz, then setting this register to 7 would give thefollowing:
Fsample = 1kHz / (7 + 1) = 125Hz, or 8ms per sample
Parameters:
SMPLRT_DIV Sample rate divider: 0 to 255

32 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.7 Register 22 – DLPF, Full Scale
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

16

22

0

0

0

Bit4

Bit3

Bit2

FS_SEL

Bit1

Bit0

DLPF_CFG

Description:
This register configures parameters related to the sensor acquisition.
The FS_SEL parameter allows setting the full-scale range of the gyro sensors, as described in thetable below.
FS_SEL
FS_SEL

Gyro Full-Scale Range

0
1
2
3

±250°/sec±500°/sec±1000°/sec±2000°/sec

The DLPF_CFG parameter sets the digital low pass filter configuration. It also determines theinternal analog sampling rate used by the device as shown in the table below.
DLPF_CFG

Parameters:
FS_SELDLPF_CFG0

DLPF_CFG

Low Pass Filter Bandwidth

Analog Sample Rate

0
1
2
3
4
5
6
7

256Hz
188Hz
98Hz
42Hz
20Hz
10Hz
5Hz
Reserved

8kHz
1kHz
1kHz
1kHz
1kHz
1kHz
1kHz
Reserved

Full scale selection for gyro sensor data
Digital low pass filter configuration
Load zeros into Bits 5-7 of the DLPF, Full Scale register

33 of 56

Default
Value00h

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

DLPF Characteristics: The gain and phase responses of the digital low pass filter settings(DLPF_CFG) are shown below:

Bode Diagram

Magnitude (dB)

0
-10
-20

6

5

3

2 1

4

3 21 0

-30
-40
-50

Phase (deg)

0

-45

6

5

4

0

-90
0

1

10

2

10

3

10

10

Frequency (Hz)Gain and Phase vs. Digital Filter Setting

Bode Diagram
2

Magnitude (dB)

0
-2

6

5

4

3

2

1 0

-4
-6

Phase (deg)

0
-5
-10
-15

6
0

10

5

4

3

2 1

0

1

2

10

10

3

10

Frequency (Hz)Gain and Phase vs. Digital Filter Setting, Showing Passband Details

34 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.8 Register 23 – Interrupt Configuration
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Default
Value

17

23

ACTL

OPEN

LATCH_
INT_ENINT_
ANYRD_
2CLEARI2C_MST_ERR_E
N

IMU_
RDY_
EN

DMP_
DONE
_EN

RAW_
RDY_
EN

00h

Description:
This register configures the interrupt operation of the IMU-3000. The interrupt output pin (INT)
configuration can be set, the interrupt latching/clearing method can be set, and the triggers for theinterrupt can be set. If LATCH_INT_EN = 1, the INT pin is held active until the interrupt status
register is cleared.
Note that if the application requires reading every sample of data from the IMU-3000, it is best to
enable the raw data ready interrupt (RAW_RDY_EN). This allows the application to know when new
sample data is available.
Parameters:
ACTL
Logic level for INT output pin – 1=active low, 0=active high
OPEN
Drive type for INT output pin – 1=open drain, 0=push-pull
LATCH_INT_EN
Latch mode – 1=latch until interrupt is cleared, 0=50µs pulse
INT_ANYRD_2CLEAR Interrupt status register clear method – 1=clear by reading any register,
0=clear by reading interrupt status register (26) only
I2C_MST_ERR_EN
Enable interrupt when accelerometer on secondary I2C bus does not
acknowledge IMU-3000
IMU_RDY_EN
Enable interrupt when device is ready (PLL ready after changing clock
source)DMP_DONE_EN
Enable interrupt when DMP is done (programmable functionality)
RAW_RDY_EN
Enable interrupt when data is available
10.9 Register 24 – AUX (Accel) Burst Read Address / Secondary I2C Bus I/O Level
Type: Read/Write
Register(Hex)

Register(Decimal)

18

24

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

BURST_ADDR

Default
Value
00h

Description:
This register configures the burst-mode-read starting address for an accelerometer attached to thesecondary I2C bus of the IMU-3000, and determines the I/O logic levels of the secondary I2C bus
clock and data lines (AUX_CL, AUX_DA).
Parameters:
AUX_VDDIOBURST_ADDR

I/O logic levels for the secondary I2C bus clock and data lines (AUX_CL,
AUX_DA; 1=VDD, 0=VLOGIC)
Burst-mode-read starting address for external accelerometer attached tosecondary I2C bus of the IMU-3000.

35 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.10 Register 26 – Interrupt Status
Type: Read only
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Default
Value

1A

26

FIFO_FULL---

I2C_MST
_ERR

IMU_
RDY

DMP_
DONE

RAW_
DATA_
RDY

00h

Description:
This register is used to determine the status of the IMU-3000 interrupt. Whenever one of theinterrupt sources is triggered, the corresponding bit will be set. The polarity of the interrupt pin(active high/low) and the latch type (pulse or latch) has no affect on these status bits.
In normal use, the RAW_DATA_RDY interrupt is used to determine when new sensor data isavailable in either the sensor registers (27 to 34) or in the FIFO (60).
Interrupt Status bits get cleared as determined by INT_ANYRD_2CLEAR in the interrupt
configuration register (23).
Parameters:
FIFO_FULLFIFO has overflowed. Cleared when Register 26 is read and when FIFO_RST(register 61) is set.
I2C_MST_ERR
The IMU-3000 did not receive an acknowledge from the accelerometer on thesecondary I2C bus when the IMU-3000 was acting as a master
IMU_RDY
PLL ready
DMP_DONE
Digital Motion Processor (DMP) is done
RAW_DATA_RDY Raw data or FIFO data is ready

36 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.11 Registers 27 to 40 – Sensor Registers
Type: Read only
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Default
Value*

1B

27

TEMP_OUT_H

00h

1C

28

TEMP_OUT_L

00h

1D

29

GYRO_XOUT_H

00h

1E

30

GYRO_XOUT_L

00h

1F
20

31
32

GYRO_YOUT_H
GYRO_YOUT_L

00h
00h

21

33

GYRO_ZOUT_H

00h

22

34

GYRO_ZOUT_L

00h

23

35

AUX_XOUT_H

00h

24
25

36
37

AUX_XOUT_L
AUX_YOUT_H

00h
00h

26

38

AUX_YOUT_L

00h

27

39

AUX_ZOUT_H

00h

28

40

AUX_ZOUT_L

00h*Default Value applies if sensor is disabled.

Description:
These registers contain the gyro, temperature sensor, and accelerometer (aux) data for the IMU3000. At any time, these values can be read from the device; however it is best to use the interrupt
function to determine when new data is available.
If the FIFO is used, the contents of these registers are automatically copied into the FIFO at eachsample period, and then this data can be read from the FIFO (register 60).
Before being placed into these registers, the gyro sensor data is first manipulated by the full scalesetting (register 22) and the offset settings (registers 12 to 17).
Parameters:
TEMP_OUT_H/L 16-bit temperature data (2’s complement data format)
GYRO_XOUT_H/L 16-bit X gyro output data (2’s complement data format)
GYRO_YOUT_H/L 16-bit Y gyro output data (2’s complement data format)
GYRO_ZOUT_H/L 16-bit Z gyro output data (2’s complement data format)
AUX_XOUT_H/L 16-bit X aux (accel) output data (as available from aux)
AUX_YOUT_H/L 16-bit Y aux (accel) output data (as available from aux)
AUX_ZOUT_H/L
16-bit Z aux (accel) output data (as available from aux)

37 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.12 Registers 53 to 57 – DMP Registers
Type: Read/Write
Register(Hex)

Register(Decimal)

35

53

RESERVED1

36

54

RESERVED2

37

55

RESERVED3

38

56

RESERVED4

38

57

RESERVED5

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Description:
The data for these registers is included in a source code file supplied by InvenSense, and is used forthe Digital Motion Processor (DMP) operation. This data is only necessary if the DMP is enabledusing the User Control register (register 61).
Parameters:
RESERVED1
RESERVED2
RESERVED3RESERVED4RESERVED5Reserved data1 for the DMPReserved data2 for the DMPReserved data3 for the DMPReserved data4 for the DMPReserved data5 for the DMP

10.13 Registers 58 to 59 – FIFO Count
Type: Read only
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

3A

58

-

-

-

3B

59

Bit4

Bit3

Bit2

-

-

-

FIFO_COUNT_L

Bit1

Bit0

FIFO_COUNT_H

Default
Value
00h
00h

Description:
These registers indicate how many bytes of valid data are contained in the FIFO. The FIFO cancontain up to 512 bytes of data
If the FIFO gets filled up completely, the length will read 512. In this state, the IMU-3000 continues
to put new sensor data into the FIFO, thus overwriting old FIFO data. Note, however, that thealignment of sensor data can change in this overflow condition. InvenSense recommends resetting
the FIFO if an overflow condition occurs (use register 61), which will clear out the FIFO.
Parameters:
FIFO_COUNT_H/L Number of bytes currently in FIFO

38 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.14 Register 60 – FIFO Data
Type: Read only
Register(Hex)

Register(Decimal)

3C

60

Parameters:
FIFO_DATA

Bit7

Bit6

Bit5

Bit4

Bit3

FIFO_DATA

Bit2

Bit1

Bit0

Default
Value
00h

Contains the FIFO data

Description:
This is the output register of the FIFO. Each read of this register gets the oldest contents of the IMU3000 FIFO buffer; thus the data is read out in the same order that the IMU-3000 put the data in. If
the FIFO operation is enabled, the IMU-3000 puts new data into the FIFO at each sample interval.
The data that goes in is determined by the FIFO enable register (18).
A burst read or write is required for reading or writing multiple bytes to or from this register, since any
read or write on this register causes an auto increment and a prefetch to occur.
Proper operation of the FIFO requires that at least one word (2 bytes) of data be left in the FIFO
during any read operation. To implement this, it is recommended that one extra two byte word
(FIFO_FOOTER) be added to the end of the FIFO data so that all desired data can be read at eachcycle, leaving the extra word remaining in the FIFO. This extra word will be read out (first) during thenext read operation on the FIFO.
Data is read into the FIFO in the following order:
TEMP_OUTGYRO_XOUTGYRO_YOUTGYRO_ZOUTAUX_XOUT
AUX_YOUT
AUX_ZOUTFIFO_FOOTER

Temperature high and low bytes (2 bytes)
X Gyro high and low bytes (2 bytes)
Y Gyro high and low bytes (2 bytes)
Z Gyro high and low bytes (2 bytes)
X Accelerometer high and low bytes (2 bytes)
Y Accelerometer high and low bytes (2 bytes)
Z Accelerometer high and low bytes (2 bytes)
Last word for FIFO read (2 bytes)

For example, if it is desired to obtain temperature, gyro, and accelerometer data from the FIFO, then
one should also add FIFO_FOOTER into the FIFO enable register (18) in addition to the desired
data. As shown in the figure below, the first time data is written to the FIFO, the FIFO will contain:
TEMP_OUT, GYRO_XOUT, GYRO_YOUT, GYRO_ZOUT, AUX_XOUT, AUX_YOUT, AUX_ZOUT,
and FIFO_FOOTER. The first FIFO read will read all but the FIFO_FOOTER data, which will beread in the 2nd FIFO read. In the 2nd FIFO read, the FIFO_FOOTER data that was left over from theprevious read is read out first, followed by all but the last FIFO_FOOTER data in the FIFO. Thispattern of reading is continued, as shown in the figure.
Note that the first FIFO read is similar to the subsequent reads in that one word of data is always left
in the FIFO. It differs, though, in that the in subsequent reads the leftover data from the previous
read is read first; however, for the first read there is no leftover data from a previous read.
If the FIFO is allowed to overflow, it operates as a circular buffer in which at any time it contains themost recent 512 bytes. Recommended operation in this mode is to disable data going into the FIFO
prior to reading the FIFO to avoid pointer conflicts. After halting the FIFO input, the 512 bytes in the
FIFO should be read out in a single burst read. The first byte read will not be valid.

39 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Reading from the FIFO
(Note that AUX_XOUT, AUX_YOUT, and AUX_ZOUT are the X, Y, and Z accelerometer outputs,
respectively.)

40 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.15 Register 61 – User Control
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

Default
Value

3D

61

DMP_
EN

FIFO_
EN

AUX_IF_EN-

AUX_IF_
RST

DMP_
RST

FIFO_
RST

GYRO_
RST

00h

Description:
This register is used to enable various modes on the IMU-3000, as well as reset these functions.
For each of the functions that can be enabled, the function should be reset at the same time toassure it works properly. Note that the reset bits in the register are automatically cleared after thefunction is reset.
For example, to enable the FIFO set both the FIFO_EN and the FIFO_RST bits. This will start the
FIFO storage on the next sample period.
As an additional example, for an external processor to communicate directly to the external
accelerometer (i.e. have the secondary I2C bus be directly connected to the primary I2C bus), the
AUX_IF_EN bit should be cleared and the AUX_IF_RST bit should be set. This will allow the I2C bus
to pass through the IMU-3000 and allow the processor to control the accelerometer device (as wellas the IMU). Pass through mode is useful for allowing the processor to configure the accelerometer,
since the IMU-3000 can perform burst reads on the accelerometer, but is not set up to configure thedevice.
Parameters:
DMP_ENFIFO_EN
AUX_IF_EN
AUX_IF_RST
DMP_RST
FIFO_RSTGYRO_RST

Enable Digital Motion Processor (DMP)
Enable FIFO operation for sensor data
Enable IMU as master to accelerometer interface via secondary I2C (clear bit toconfigure primary I2C bus to pass through directly to the secondary I2C bus)
Reset secondary accelerometer interface function; set this whenever changing
AUX_IF_EN
Reset DMP function; set this whenever changing DMP_EN
Reset FIFO function; set this to clear FIFO or when changing FIFO_EN
Reset gyro analog and digital functions

41 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

10.16 Register 62 – Power Management
Type: Read/Write
Register(Hex)

Register(Decimal)

Bit7

Bit6

Bit5

Bit4

Bit3

3E

62

H_RESET

SLEEP

STBY
_XG

STBY
_YG

STBY
_ZG

Bit2

Bit1

Bit0

Default
Value

CLK_SEL00h

Description:
This register is used to manage the power control, select the clock source, and to issue a master
reset to the device.
H_RESET is used to reset the device and set the internal registers to the power-up default settings.
STBY_XG, STBY_YG, and STBY_ZG are used to place the gyros into a standby or active mode
(1=standby; 0=normal operating mode).
Setting the SLEEP bit in the register puts the device into a low power sleep mode. In this mode, only
the serial interface and internal registers remain active, allowing for a very low standby current.
Clearing this bit puts the device back into normal mode. The individual standby selections for eachof the gyros should be used if any of them are not used by the application.
The CLK_SEL setting determines the device clock source as follows:
CLK_SEL
CLK_SEL
0
1
2
3
4
5
6
7

Clock Source
Internal oscillator
PLL with X Gyro reference
PLL with Y Gyro reference
PLL with Z Gyro reference
PLL with external 32.768kHz reference
PLL with external 19.2MHz reference
Reserved
Stop clock and synchronous reset clock state

On power up, the IMU-3000 defaults to the internal oscillator. It is highly recommended that thedevice is configured to use one of the gyros (or an external clock) as the clock reference, due to theimproved stability.
Parameters:
H_RESETSLEEPSTBY_XG
STBY_YG
STBY_ZG
CLK_SEL

Reset device and internal registers to the power-up-default settings
Enable low power sleep mode
Put gyro X in standby mode (1=standby, 0=normal)
Put gyro Y in standby mode (1=standby, 0=normal)
Put gyro Z in standby mode (1=standby, 0=normal)
Select device clock source

42 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

11 AssemblyThis section provides general guidelines for assembling InvenSense Micro Electro-Mechanical Systems(MEMS) gyros packaged in Quad Flat No leads package (QFN) surface mount integrated circuits. The
following six best practices will ensure higher quality in assembly.
1. Do not leave parts out of the original moisture-sealed bags for more than 48 hours before assembly
2. Do not solder the center pad
3. Do not place large insertion components, such as buttons, switches, connectors, or shielding boxes
at a distance of less than 6 mm from the MEMS gyro
4. Do use Electrostatic Discharge (ESD) protection at or better than 200V, preferably 150V, to prevent
Machine Model (MM) type ESD damage
5. Do use ESD protection measures to ensure that personnel prevent Human Body Model (HBM) type
ESD damage
6. Do not mechanically impact or shock the package in any of the production processes
11.1

Orientation

The diagram below shows the orientation of the axes of sensitivity and the polarity of rotation.

43 of 56

IMU-3000 Product Specification

11.2

PCB Layout Guidelines

11.2.1 Package Dimensions

44 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

11.2.2 PCB Design Guidelines
The Pad Diagram is shown in Figure 2 using a JEDEC type extension with solder rising on the outer edge.
The Pad Dimensions Table shows pad sizing (mean dimensions) for the IMU-3000 product.

JEDEC type extension with solder rising on outer edge

PIN 1 INDENTEXPOSED PAD
NO SOLDER

Pad Diagram
Nominal Package I/O Pad Dimensions (mm)Pad Pitch (a)0.50

Pad Width (b)0.25

Pad Length (L1)

0.40

Pad Length (L3)0.35

Exposed Pad Width (X)

2.80

Exposed Pad Length (Y)3.00

I/O Land Design Dimensions Guidelines (mm)Land Width (c)0.35Outward Extension (Tout)

0.40

Inward Extension (Tin)

0.05Land Length (L2)0.80Land Length (L4)0.75

Pad Dimensions Table (for figure above)

45 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

InvenSense MEMS Gyros sense rate of rotation. In addition, gyroscopes sense mechanical stress comingfrom the PCB. This PCB stress is minimized with simple design rules:
1. Component Placement – Testing indicates that there are no specific design considerations other than
generally accepted industry design practices for component placement near the IMU-3000 gyroscope toprevent noise coupling and thermo-mechanical stress.
2. The area below the MEMS gyro (on the same side of the board) must be defined as a keep-out area. It isstrongly recommended to not place any structure in top metal layer underneath the keep-out area.
3. Traces connected to pads should be as much symmetric as possible. Symmetry and balance for pad
connection will help component self alignment and will lead to better control of solder paste reduction
after reflow.
4. Testing indicates that 3-Volt peak-to-peak signals run under the gyro package or directly on top of the
package of frequencies from DC to 1MHz do not affect the operation of the MEMS gyro. However,routing traces or vias under the MEMS gyro package such that they run under the exposed die pad isprohibited.
5. To achieve best performance over temperature and to prevent thermo-mechanical package stress, do
not place large insertion components like buttons, connectors, or shielding boxes at a distance of lessthan 6 mm from the MEMS gyro.
11.2.3 Exposed Die Pad Precautions
The IMU-3000 has very low active and standby current consumption. The exposed die pad is not required forheat sinking, and should not be soldered to the PCB since soldering to it contributes to performance changes
due to package thermo-mechanical stress. There is no electrical connection between the pad and the die.
11.2.4 Gyro Removal from PCB
Never apply high mechanical force while removing MEMS gyros from PCB. Otherwise, the QFN package
leads can be removed and failure analysis of the gyro unit will be impossible. Tweezers are practical.
Do not apply a pulling force upward. Instead apply a gentle force sideward while heating. When sufficientheat has been applied, the unit will start to slide sideways and can now be pulled gently upwards with thetweezers.
In any case, mechanical or thermo-mechanical overstress during manual handling and soldering, (especiallycontact between the soldering iron or hot air gun and the package) has to be avoided.
If safe removal of the suspected component is not possible or deemed too risky, send the whole PCB or thepart of the PCB containing the defective component back to InvenSense. If requested, we will return the PCB
after we have removed the gyro.
11.3

Trace Routing

Testing indicates that 3-Volt peak-to-peak signals run under the gyro package or directly on top of the
package of frequencies from DC to 1MHz do not affect the operation of the MEMS gyro. However, routing
traces or vias under the MEMS gyro package such that they run under the exposed die pad is prohibited.
11.4

Component Placement

Do not place large insertion components such as keyboard or similar buttons, connectors, or shielding boxes
at a distance of less than 6 mm from the MEMS gyro. Maintain generally accepted industry design practices
for component placement near the IMU-3000 to prevent noise coupling and thermo-mechanical stress.

46 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

11.5 PCB Mounting and Cross-Axis Sensitivity
Orientation errors of the gyroscope mounted to the printed circuit board can cause cross-axis sensitivity inwhich one gyro responds to rotation about another axis, for example, the X-axis gyroscope responding torotation about the Y or Z axes. The orientation mounting errors are illustrated in the figure below.

The table below shows the cross-axis sensitivity as a percentage of the specified gyroscope’s sensitivity fora given orientation error.
Cross-Axis Sensitivity vs. Orientation Error
Orientation Error
Cross-Axis Sensitivity(θ or Φ)(sinθ or sinΦ)
0º

0%

0.5º

0.87%

1º

1.75%

The specification for cross-axis sensitivity in Section 3 includes the effect of the die orientation error withrespect to the package.

47 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

11.6 MEMS Handling Instructions
MEMS (Micro Electro-Mechanical Systems) are a time-proven, robust technology used in hundreds ofmillions of consumer, automotive and industrial products. MEMS devices consist of microscopic moving
mechanical structures. They differ from conventional IC products even though they can be found in similar
packages. Therefore, MEMS devices require different handling precautions than conventional ICs prior tomounting onto printed circuit boards (PCBs).
The IMU-3000 gyroscope has a shock tolerance of 10,000g. InvenSense packages its gyroscopes as it
deems proper for protection against normal handling and shipping. It recommends the following handlingprecautions to prevent potential damage.
•

Individually packaged or trays of gyroscopes should not be dropped onto hard surfaces. Components
placed in trays could be subject to g-forces in excess of 10,000g if dropped.

•

Printed circuit boards that incorporate mounted gyroscopes should not be separated by manuallysnapping apart. This could also create g-forces in excess of 10,000g.

11.7

ESD Considerations

Establish and use ESD-safe handling precautions when unpacking and handling ESD-sensitive devices.
• The Tape-and-Reel moisture-sealed bag is an ESD approved barrier. The best practice is to keep theunits in the original moisture sealed bags until ready for assembly.
•

Restrict all device handling to ESD protected work areas that measure less than 200V static charge, or
better, to less than 150V. Ensure that all workstations are properly grounded.

•

Store ESD sensitive devices in ESD safe containers until ready for use.

•

Ensure that personnel are properly grounded to prevent ESD.

11.8 Gyroscope Surface Mount Guidelines
Any material used in the surface mount assembly process of the MEMS gyroscope should be free ofrestricted RoHS elements or compounds. Pb-free solders should be used for assembly.
In order to assure gyroscope performance, several industry standard guidelines need to be considered forsurface mounting. These guidelines are for both printed circuit board (PCB) design and surface mountassembly and are available from packaging and assembly houses.
When using MEMS gyroscope components in plastic packages, package stress due to PCB mounting andassembly could affect the output offset and its value over a wide range of temperatures. This is caused by
the mismatch between the Coefficient Temperature Expansion (CTE) of the package material and the PCB.
Care must be taken to avoid package stress due to mounting.

48 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

11.9 Reflow Specification
The IMU-3000 gyroscope was qualified in accordance with IPC/JEDEC J-STD-020C. This standard classifies
proper packaging, storage and handling to avoid subsequent thermal and mechanical damage duringassembly solder reflow attachment. Classification specifies a bake cycle, moisture soak cycle in atemperature humidity oven, followed by three solder reflow cycles and functional testing for qualification. All
temperatures refer to the topside of the QFN package, as measured on the package body surface. The peaksolder reflow classification temperature requirement is (260 +5/-0°C) for lead-free soldering of components
less than 1.6 mm thick.
Lower Production solder-reflow temperatures are recommended to use. Check the recommendations of thesolder manufacturer. For optimum results, production solder reflow processes should use lower
temperatures, reduce exposure to high temperatures, and use lower ramp-up and ramp-down rates thanthose listed in the qualification profile shown below.
Production reflow should never exceed the maximum constraints listed in the table and figure below for thequalification profile, as these represent the maximum tolerable ratings for the device.

Approved IR/Convection Solder Reflow Curve
Temperature Set Points for IR / Convection Reflow Corresponding to Figure Above
Step

Setting

A
B
C
D
E
F
G
H
I

Troom
TSmin
TSmax
TLiquidus
TPmin [255°C, 260°C]
TPmax [ 260°C, 265°C]
TPmin [255°C, 260°C]
TLiquidus
Troom

CONSTRAINTS
Temp (°C)
25
150
200
217
255
260
255
217
25

Time (sec)Rate (°C/sec)

60 < tBC < 120
tAF < 480
10< tEG < 30
60 < tDH < 120r(TLiquidus-TPmax) < 3r(TLiquidus-TPmax) < 3r(TLiquidus-TPmax) < 3r(TPmax-TLiquidus) < 4

Note: TPmax must not exceed the Classification temperature (260°C).

49 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

11.10 Storage Specifications
The storage specification of the IMU-3000 gyroscope conforms to IPC/JEDEC J-STD-020C MoistureSensitivity Level (MSL) 3.
Storage Specifications for IMU-3000
Calculated shelf-life in moisture-sealed bag

12 months -- Storage conditions: <40°C and <90% RH

After opening moisture-sealed bag

168 hours -- Storage conditions: ambient ≤30°C at 60% RH

50 of 56

IMU-3000 Product Specification

11.11 Package Marking Specification

Package Marking Specification
11.12 Tape & Reel Specification

Tape Dimensions

51 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

Reel Outline Drawing
Reel Dimensions and Package Size
PACKAGE
SIZE
4x4

REEL (mm)
L

V

W

Z

330

100

13.2

2.2

User Direction of
Feed

Package Orientation

Cover Tape
(Anti-Static)
Carrier Tape
(Anti-Static)

Label

Pin 1

Terminal Tape

Reel
Tape and Reel Specification
Reel Specifications
Quantity Per Reel

5,000

Reels per Box

1

Boxes Per Carton (max)3

Pieces per Carton (max)

15,00052 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

11.13 Label

Location of Label

11.14 Packaging

Anti-static Label
Moisture-Sensitive
Caution LabelTape & Reel Label

Moisture Barrier Bag
With Labels

Reel in Box

Moisture-Sensitive Caution LabelBox with Tape & Reel Label

53 of 56

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

12 Reliability
12.1 Qualification Test Policy
InvenSense’s products complete a Qualification Test Plan before being released to production. The
Qualification Test Plan follows the JEDEC 47D Standards, “Stress-Test-Driven Qualification of Integrated
Circuits,” with the individual tests described below.
12.2 Qualification Test Plan
Accelerated Life Tests
TESTHigh Temperature
Operating Life(HTOL/LFR)
Steady-State Temperature
Humidity Bias Life (1)High Temperature
Storage Life

Method/Condition
JEDEC JESD22-A108C, Dynamic, 3.63V biased,
Tj>125°C[read-points 168, 500, 1000 hours]
JEDEC JESD22-A101C, 85°C/85%RH[read-points 168, 500 hours], Information Only 1000
hours]JEDEC JESD22-A103C, Cond. A, 125°C Non-Bias Bake
[read-points 168, 500, 1000 hours]

Lot
Sampl
Quantity e / Lot

Acc /RejectCriteria

3

77

(0/1)

3

77

(0/1)

77

(0/1)

3

Device Component Level Tests
Method/Condition

Lot
Sampl
Quantity e / Lot

Acc /RejectCriteria

ESD-HBMJEDEC JESD22-A114F, Class 2 (1.5KV)

1

3

(0/1)

ESD-MMJEDEC JESD22-A115-A, Class B (200V)

1

3

(0/1)

Latch UpJEDEC JESD78B Level 2, 125C, ±100mA

1

6

(0/1)

3

5

(0/1)

3

5

(0/1)

3

77

(0/1)

TEST

Mechanical ShockVibration
Temperature Cycling (1)

JEDEC JESD22-B104C, Mil-Std-883, method 2002,
Cond. D, 10,000g’s, 0.3ms, ±X,Y,Z – 6 directions, 5times/direction
JEDEC JESD22-B103B, Variable Frequency (random),Cond. B, 5-500Hz, X,Y,Z – 4 times/direction
JEDEC JESD22-A104D Condition N, -40°C to +85°C,
Soak Mode 2, 100 cycles

Board Level Tests
TEST
Board Mechanical ShockBoard T/C

Lot
Sampl
Quantity e / Lot

Method/Condition/
JEDEC JESD22-B104C,Mil-Std-883, method 2002, Cond.
D, 10,000g’s, 0.3ms, +-X,Y,Z – 6 directions, 5times/direction
JEDEC JESD22-A104D Condition N, -40°C to +85°C,
Soak Mode 2, 100 cycles

1

5

1

40

(1) – Tests are preceded by MSL3 Preconditioning in accordance with JEDEC JESD22-A113F

54 of 56

Acc /RejectCriteria
(0/1)
(0/1)

IMU-3000 Product Specification

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

13 Environmental Compliance
The IMU-3000 is RoHS and Green compliant.
The IMU-3000 is in full environmental compliance as evidenced in report HS-IMU-3000, Materials
Declaration Data Sheet.

Environmental Declaration Disclaimer:
InvenSense believes this environmental information to be correct but cannot guarantee accuracy or completeness. Conformity
documents for the above component constitutes are on file. InvenSense subcontracts manufacturing and the information contained
herein is based on data received from vendors and suppliers, which has not been validated by InvenSense.

55 of 56

Document Number: PS-IMU-3000A-00-01.1
Revision: 1.1
Release Date: 08/19/2010

IMU-3000 Product Specification

This information furnished by InvenSense is believed to be accurate and reliable. However, no responsibility is assumed by InvenSense
for its use, or for any infringements of patents or other rights of third parties that may result from its use. Specifications are subject tochange without notice. InvenSense reserves the right to make changes to this product, including its circuits and software, in order toimprove its design and/or performance, without prior notice. InvenSense makes no warranties, neither expressed nor implied, regarding
the information and specifications contained in this document. InvenSense assumes no responsibility for any claims or damages arisingfrom information contained in this document, or from the use of products and services detailed therein. This includes, but is not limited
to, claims or damages based on the infringement of patents, copyrights, mask work and/or other intellectual property rights.
Certain intellectual property owned by InvenSense and described in this document is patent protected. No license is granted by
implication or otherwise under any patent or patent rights of InvenSense. This publication supersedes and replaces all information
previously supplied. Trademarks that are registered trademarks are the property of their respective companies. InvenSense sensors
should not be used or sold in the development, storage, production or utilization of any conventional or mass-destructive weapons or for
any other weapons or life threatening applications, as well as in any other life critical applications such as medical equipment,
transportation, aerospace and nuclear instruments, undersea equipment, power plant equipment, disaster prevention and crime
prevention equipment.
TM

TM

TM

InvenSense , IMU , IMU-3000 , Motion Processing Unit
Inc.

TM

TM

, Digital Motion Processing , and DMP©2010 InvenSense, Inc. All rights reserved.

56 of 56TM

are trademarks of InvenSense,