General Description
Ordering Information
Block Diagram
Applications
Features
Typical Operating Circuit
1 General Description
1.1 Purpose and Scope
1.2 Product Overview
1.3 Applications
2 Features
2.1 Gyroscope Features
2.2 Accelerometer Features
2.3 Magnetometer Features
2.4 DMP Features
2.5 Additional Features
3 Electrical Characteristics
3.1 Gyroscope Specifications
3.2 Accelerometer Specifications
3.3 Magnetometer Specifications
3.4 Electrical Specifications
D.C. Electrical Characteristics
A.C. Electrical Characteristics
Other Electrical Specifications
3.5 I2C Timing Characterization
3.6 SPI Timing Characterization
3.7 Absolute Maximum Ratings
4 Applications Information
4.1 Pin Out Diagram and Signal Description
4.2 Typical Operating Circuit
4.3 Bill of Materials for External Components
4.4 Exposed Die Pad Precautions
4.5 Block Diagram
4.6 Overview
4.7 Three-Axis MEMS Gyroscope with 16-bit ADCs and Signal Conditioning
4.8 Three-Axis MEMS Accelerometer with 16-bit ADCs and Signal Conditioning
4.9 Three-Axis MEMS Magnetometer with 16-bit ADCs and Signal Conditioning
4.10 Digital Motion Processor
4.11 Primary I2C and SPI Serial Communications Interfaces
ICM-20948 Solution Using I2C Interface
ICM-20948 Solution Using SPI Interface
4.12 Auxiliary I2C Serial Interface
4.13 Self-Test
4.14 Clocking
4.15 Sensor Data Registers
4.16 FIFO
4.17 FSYNC
4.18 Interrupts
4.19 Digital-Output Temperature Sensor
4.20 Bias and LDOs
4.21 Charge Pump
4.22 Power Modes
5 Programmable Interrupts
6 Digital Interface
6.1 I2C and SPI Serial Interfaces
6.2 I2C Interface
6.3 I2C Communications Protocol
6.4 I2C Terms
6.5 SPI Interface
7 Register Map for Gyroscope and Accelerometer
7.1 User Bank 0 Register Map
7.2 User Bank 1 Register Map
7.3 User Bank 2 Register Map
7.4 User Bank 3 Register Map
8 User Bank 0 Register Descriptions
8.1 WHO_AM_I
8.2 USER_CTRL
8.3 LP_CONFIG
8.4 PWR_MGMT_1
8.5 PWR_MGMT_2
8.6 INT_PIN_CFG
8.7 INT_ENABLE
8.8 INT_ENABLE_1
8.9 INT_ENABLE_2
8.10 INT_ENABLE_3
8.11 I2C_MST_STATUS
8.12 INT_STATUS
8.13 INT_STATUS_1
8.14 INT_STATUS_2
8.15 INT_STATUS_3
8.16 DELAY_TIMEH
8.17 DELAY_TIMEL
8.18 ACCEL_XOUT_H
8.19 ACCEL_XOUT_L
8.20 ACCEL_YOUT_H
8.21 ACCEL_YOUT_L
8.22 ACCEL_ZOUT_H
8.23 ACCEL_ZOUT_L
8.24 GYRO_XOUT_H
8.25 GYRO_XOUT_L
8.26 GYRO_YOUT_H
8.27 GYRO_YOUT_L
8.28 GYRO_ZOUT_H
8.29 GYRO_ZOUT_L
8.30 TEMP_OUT_H
8.31 TEMP_OUT_L
8.32 EXT_SLV_SENS_DATA_00
8.33 EXT_SLV_SENS_DATA_01
8.34 EXT_SLV_SENS_DATA_02
8.35 EXT_SLV_SENS_DATA_03
8.36 EXT_SLV_SENS_DATA_04
8.37 EXT_SLV_SENS_DATA_05
8.38 EXT_SLV_SENS_DATA_06
8.39 EXT_SLV_SENS_DATA_07
8.40 EXT_SLV_SENS_DATA_08
8.41 EXT_SLV_SENS_DATA_09
8.42 EXT_SLV_SENS_DATA_10
8.43 EXT_SLV_SENS_DATA_11
8.44 EXT_SLV_SENS_DATA_12
8.45 EXT_SLV_SENS_DATA_13
8.46 EXT_SLV_SENS_DATA_14
8.47 EXT_SLV_SENS_DATA_15
8.48 EXT_SLV_SENS_DATA_16
8.49 EXT_SLV_SENS_DATA_17
8.50 EXT_SLV_SENS_DATA_18
8.51 EXT_SLV_SENS_DATA_19
8.52 EXT_SLV_SENS_DATA_20
8.53 EXT_SLV_SENS_DATA_21
8.54 EXT_SLV_SENS_DATA_22
8.55 EXT_SLV_SENS_DATA_23
8.56 FIFO_EN_1
8.57 FIFO_EN_2
8.58 FIFO_RST
8.59 FIFO_MODE
8.60 FIFO_COUNTH
8.61 FIFO_COUNTL
8.62 FIFO_R_W
8.63 DATA_RDY_STATUS
8.64 FIFO_CFG
8.65 REG_BANK_SEL
9 USR Bank 1 Register Descriptions
9.1 SELF_TEST_X_GYRO
9.2 SELF_TEST_Y_GYRO
9.3 SELF_TEST_Z_GYRO
9.4 SELF_TEST_X_ACCEL
9.5 SELF_TEST_Y_ACCEL
9.6 SELF_TEST_Z_ACCEL
9.7 XA_OFFS_H
9.8 XA_OFFS_L
9.9 YA_OFFS_H
9.10 YA_OFFS_L
9.11 ZA_OFFS_H
9.12 ZA_OFFS_L
9.13 TIMEBASE_CORRECTION_PLL
9.14 REG_BANK_SEL
10 USR Bank 2 Register Map
10.1 GYRO_SMPLRT_DIV
10.2 GYRO_CONFIG_1
10.3 GYRO_CONFIG_2
10.4 XG_OFFS_USRH
10.5 XG_OFFS_USRL
10.6 YG_OFFS_USRH
10.7 YG_OFFS_USRL
10.8 ZG_OFFS_USRH
10.9 ZG_OFFS_USRL
10.10 ODR_ALIGN_EN
10.11 ACCEL_SMPLRT_DIV_1
10.12 ACCEL_SMPLRT_DIV_2
10.13 ACCEL_INTEL_CTRL
10.14 ACCEL_WOM_THR
10.15 ACCEL_CONFIG
10.16 ACCEL_CONFIG_2
10.17 FSYNC_CONFIG
10.18 TEMP_CONFIG
10.19 MOD_CTRL_USR
10.20 REG_BANK_SEL
11 USR Bank 3 Register Map
11.1 I2C_MST_ODR_CONFIG
11.2 I2C_MST_CTRL
11.3 I2C_MST_DELAY_CTRL
11.4 I2C_SLV0_ADDR
11.5 I2C_SLV0_REG
11.6 I2C_SLV0_CTRL
11.7 I2C_SLV0_DO
11.8 I2C_SLV1_ADDR
11.9 I2C_SLV1_REG
11.10 I2C_SLV1_CTRL
11.11 I2C_SLV1_DO
11.12 I2C_SLV2_ADDR
11.13 I2C_SLV2_REG
11.14 I2C_SLV2_CTRL
11.15 I2C_SLV2_DO
11.16 I2C_SLV3_ADDR
11.17 I2C_SLV3_REG
11.18 I2C_SLV3_CTRL
11.19 I2C_SLV3_DO
11.20 I2C_SLV4_ADDR
11.21 I2C_SLV4_REG
11.22 I2C_SLV4_CTRL
11.23 I2C_SLV4_DO
11.24 I2C_SLV4_DI
11.25 REG_BANK_SEL
12 Register Map for Magnetometer
12.1 Register Map Description
13 Detailed Descriptions for Magnetometer Registers
13.1 WIA: Device ID
13.2 ST1: Status 1
13.3 HXL to HZH: Measurement Data
13.4 ST2: Status 2
13.5 CNTL2: Control 2
13.6 CNTL3: Control 3
13.7 TS1, TS2: Test 1, 2
14 Use Notes
14.1 Gyroscope Mode Transition
14.2 Power Management 1 Register Setting
14.3 DMP Memory Access
14.4 Time Base Correction
14.5 I2C Master Clock Frequency
14.6 Clocking
14.7 LP_EN Bit-Field Usage
14.8 Register Access Using SPI Interface
15 Orientation of Axes
16 Package Dimensions
17 Part Number Part Markings
18 References
19 Document Information
19.1 Revision History
Compliance Declaration Disclaimer