Data Sheet
ICM-20948
Document Number: DS-000189  Page 74 of 89 
Revision: 1.3 
11.17 I2C_SLV3_REG 
Name: I2C_SLV3_REG 
Address: 16 (10h) 
Type: USR3 
Bank: 3 
Serial IF: R/W 
Reset Value: 0x00 
BIT 
NAME 
FUNCTION 
7:0 
I2C_SLV3_REG[7:0] 
I
2
C slave 3 register address from where to begin data transfer. 
11.18 I2C_SLV3_CTRL 
Name: I2C_SLV3_CTRL 
Address: 17 (11h) 
Type: USR3 
Bank: 3 
Serial IF: R/W 
Reset Value: 0x00 
BIT  NAME  FUNCTION 
7 
I2C_SLV3_EN 
1 – Enable reading data from this slave at the sample rate and storing data at the first 
available EXT_SENS_DATA register as determined by I2C_SLV0_EN, I2C_SLV0_LENG, 
I2C_SLV1_EN, I2C_SLV1_LENG, I2C_SLV2_EN and I2C_SLV2_LENG. 
0 – Function is disabled for this slave. 
6 
I2C_SLV3_BYTE_SW 
1 – Swap bytes when reading both the low and high byte of a word. Note there is 
nothing to swap after reading the first byte if I2C_SLV3_REG[0] = 1, or if the last byte 
read has a register address lsb = 0.  
See I2C_SLV1_CTRL for an example. 
0 – No swapping occurs, bytes are written in order read. 
5 
I2C_SLV3_REG_DIS 
When set, the transaction does not write a register value, it will only read data, or 
write data. 
4 
I2C_SLV3_GRP 
External sensor data typically comes in as groups of two bytes. This bit is used to 
determine if the groups are from the slave’s register address 0 and 1, 2 and 3, etc.., 
or if the groups are address 1 and 2, 3 and 4, etc. 
0 indicates slave register addresses 0 and 1 are grouped together (odd numbered 
register ends the group). 1 indicates slave register addresses 1 and 2 are grouped 
together (even numbered register ends the group). This allows byte swapping of 
registers that are grouped starting at any address. 
3:0 
I2C_SLV3_LENG[3:0] 
Number of bytes to be read from I
2
C slave 3. 
11.19 I2C_SLV3_DO 
Name: I2C_SLV3_DO 
Address: 18 (12h) 
Type: USR3 
Bank: 3 
Serial IF: R/W 
Reset Value: 0x00 
BIT 
NAME 
FUNCTION 
7:0 
I2C_SLV3_DO[7:0] 
Data out when slave 3 is set to write. 










