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?
We’re moving the ST Community to a new platform to give you a better and more reliable community experience.