Hello everyone, I am interfacing Raspberry Pi with the MMA8451. Raspberry Pi only provides 1 i2c port, because the other i2c is attached to the camera device port, and the MMA8451 only have 2 I2C addresses.
My question is: There is any way to change the default I2C addresses 0x1C and 0x1D of the MMA8451? In the datasheet there is nothing about this and I can't think about other way than using a multiplexer to use more than two MMA8451 in the same Pi board.
Thank you for your support!
Indeed, the MMA8451Q's standard slave address is a choice between the two sequential addresses 0011100 and 0011101. The selection is made by the high- and low-logic level of the SA0 (pin 7) input respectively. The slave addresses are factory programmed and alternate addresses are available at customer request. The format is shown below:
Usually it is not possible to change the I2C slave addresses of the MMA8451Q for individual customers unless it represents a big business opportunity.
Could you please send me more information about your application, volumes, and production data?
You may send this information creating a new case. You may find more information here.
On the other hand, I can gladly suggest you some solutions:
More specifically, I recommend the PCA9540B. You may find more information here.
You can find more information about the FXLS8471Q here.
I hope this information will be useful for you.
If I misunderstood your question, feel free to let me know. I will be glad to help.
Have a great day.
Note: If this post answers your question, please click the Correct Answer button. Thank you!