MMA8452Q Accelerometer Breakout Hookup Guide
Hardware Overview
The MMA8452Q Breakout Board breaks out a select few of the most important pins on the accelerometer.
A little bit about each pin:
Pin Label | Pin Function | Input/Output | Notes |
---|---|---|---|
3.3V | Power Supply | Input | Should be between 1.95 - 3.6V |
SDA | I2C Data Signal | Bi-directional | Bi-directional data line. Voltage should not exceed power supply (e.g. 3.3V). |
SCL | I2C Clock Signal | Input | Master-controlled clock signal. Voltage should not exceed power supply (e.g. 3.3V). |
I2 | Interrupt 2 | Output | Programmable interrupt — can indicate data ready, orientation change, tap, and more. |
I1 | Interrupt 1 | Output | Programmable interrupt — can indicate data ready, orientation change, tap, and more. |
GND | Ground | Input | 0V/common voltage. |
Voltage Supply Requirements
The big alert here is that the MMA8452Q has a maximum voltage of 3.6V -- that range applies to both the power supply and the I2C pins. If you're using the sensor in a 3.3V system you can plug it right in, but if you're using it with a 5V device (like an Arduino Uno), some level-shifting is required between devices.
Fortunately, you don't need a lot of power to make the MMA8452Q work. In normal operating mode it can require anywhere between 7 and 165 µA.
Address Select Jumper
The MMA8452Q features a selectable I2C address -- just in case you're running multiple MMA8452Qs on the same bus (or maybe you have an address conflict). To select the address, a pin on the accelerometer -- "SA0" -- can be tied to either power or ground.
SA0 Voltage | MMA8452Q I2C Address |
---|---|
0V | 0x1C |
3.3V (VCC) | 0x1D |
The breakout board includes a jumper, on the back side, to help tie this pin high or low.
By default the jumper is open, which will pull the SA0 pin high (there's a resistor on the top side of the board to help accomplish that task). If you close the jumper, by applying a small solder blob to connect both pads together, SA0 will be pulled to ground.
For most use cases, where you're only using one MMA8452Q, you can leave this jumper untouched. In that case the I2C address will be 0x1D.