2025-10-02 1:03 PM
Hi,
I am trying to use the LIS2DU12TR's low address that is 0x18 but I keep on encountering issues with not able to read WHO_AM_I and the accelerometer does not work. Can anyone please help me with this?
Also, does it support 100kHz I2C bus?
Thanks.
2025-10-06 12:22 AM
Hi @PE4A ,
The LIS2DU12 device supports two possible I2C addresses depending on the state of the SA0 pin:
Is your SA0 connected to GND? If it is left floating or connected to VDDIO, the device responds at 0x19 instead.
Consider also that proper pull-ups (typically 4.7 kΩ to 10 kΩ) are required on I2C lines for reliable communication.
Yes, the LIS2DU12 supports 100kHz I2C bus according to the datasheet:
2025-10-06 5:26 AM
Hi Federica,
Thank you for your response. Yes, my SA0 is tied to GND and hence, I am trying to get WHO_AM_I by reading the register 0x43. If I tie it to VDDIO, it works completely fine and I get 0x45 as a response, but when I tie it to GND, I get no response.
Yes, I have tied 4.7k pull-ups on the I2C lines.
Is there any boot-up procedure that I am probably missing out to use the Address 0x18?
2025-10-07 1:20 AM
Hi @PE4A ,
No special boot-up procedure is required to use address 0x18. Just power the device with SA0 tied low and communicate at 0x18.
Are you sure that the SA0 is connected to GND?