Intermittent WHO_AM_I Register Read Failure with ISM330DHCX
Hello,
I am using the ISM330DHCX sensor with I²C, and I am facing an intermittent problem while reading the WHO_AM_I register.
I use the following command:
sudo i2cget -y 12 0x6B 0x0FThe expected WHO_AM_I value is:
0x6BSometimes the command works correctly and returns:
0x6bFor example, I previously tested it 20 times and received 0x6b successfully every time.
However, sometimes I get:
Error: Read failedor 0x65, 0x0f, 0x75 .
Earlier, the communication was intermittent: sometimes the sensor responded correctly, and sometimes the read failed.
I also tried:
sudo i2cdetect -r -y 12but the address 0x6B was not always shown, even when direct reads using i2cget were successful.
My setup is:
-
ISM330DHCX sensor
-
I²C communication
-
CP2112 USB-to-I²C adapter
-
I²C bus:
/dev/i2c-12 -
Sensor address:
0x6B -
WHO_AM_I register:
0x0F -
And I am using lengthy wires ,connect sensor to CP2112 adapter
Could someone please help me understand the possible cause of these intermittent WHO_AM_I read failures and suggest how to troubleshoot or solve this issue?
Thank you.
