cancel
Showing results for 
Search instead for 
Did you mean: 

i2c incorrectly reads UID?

ABank
Associate II

Hi. I'm getting weird data when reading UID from ST25DV04K via i2c.

Tag id should be 0E 02 24 00 F3 DF 43 BD

When reading via i2c

HAL_I2C_Mem_Read( nfcI2c, ST25DV_Address_E21_read, UID_ADDRESS, 2, nfcUID, 8, 0xFFFFFF );

i'm getting 00 02 24 00 F3 DF 43 01 ( first and last byte are wrong )

When reading via i2c byte by byte

for( int k = 0; k < 8; k++ )
			HAL_I2C_Mem_Read( nfcI2c, ST25DV_Address_E21_read, UID_ADDRESS + k, 2, nfcUID + k, 1, 0xFFFFFF );

00 00 00 00 01 01 01 01

Tried 100k and 400k speeds.

Logic analyzer shows the same

0693W000007CIIKQA4.png 

Android app reads UID via RF correctly

0693W000007CI5zQAG.png

1 ACCEPTED SOLUTION

Accepted Solutions
ABank
Associate II

Found the problem - got 24AA02UID on the same i2c line - it takes multiple i2c addresses as it's own and conflicts with ST25DV04K

View solution in original post

1 REPLY 1
ABank
Associate II

Found the problem - got 24AA02UID on the same i2c line - it takes multiple i2c addresses as it's own and conflicts with ST25DV04K