HELP! MPU6050 SparkFun Breakout to Arduino Uno

To whom it may concern,

First-off, thank you for taking the time and reading this.

I am doing a school project that will keep a servo level by using an MPU6050 SparkFun Break out board. I am developing this by first experimenting through an Arduino UNO and, in the future, planing to connect it to a ProMini.

My problem is that the MPU6050 is not producing any readings when connected (directly) to the UNO.

Connections:

MPU6050 - Arduino UNO

VDD - 3.3V

GND - GND

INT - DIGITAL 2

SCL - A5

SDA - A4

I am using code and libraries from here: https://github.com/jrowberg/i2cdevlib/t … er/MPU6050

And have also received an MPU_Test code from Jeff which has previously worked for him but also failed for me.

These are the reading I get in the Serial Monitor when trying the DMP6, RAW, & MPU_TEST examples respectively:

DMP

o 0...
d flag...
.


Resetting MPU6050...?H
2
g
?H
2
g
i
êbG¤õ	êi
Checking hardware revision...
Revision @ user[16][6] = 0
Resetting m		êi
Reading OTP bank valid flag...
OTP bank is valid!

1
1
1




1929
ERROR! DMP code veri??H

RAW:

Initializing I2C devices...
Testing device connections...
MPU6050 connection failed
a/g:	0	0	0	0	0	0
a/g:	0	0	0	0	0	0
a/g:	0	0	0	0	0	0
a/g:	0	0	0	0	0	0
a/g:	0	0	0	0	0	0
a/g:	0	0	0	0	0	0
a/g:	0	0	0	0	0	0
a/g:	0	0	0	0	0	0

MPU_Test:

I2C bus connected.
Checking WHO_AM_I register contents: 0xFF
Disabling sleep mode...
-1	-1	-1	-1	-1	-1
-1	-1	-1	-1	-1	-1
-1	-1	-1	-1	-1	-1
-1	-1	-1	-1	-1	-1
-1	-1	-1	-1	-1	-1

I have spoken to SarkFun, Jeff, and got an ADXL345 to test the I2C connection on the UNO (which worked). After thinking that it was a faulty MPU, I received another one (tested at SparkFun’s location) but the problem still persists. Note: From what I know, Jeff tested the MPU on a MEGA1280 and an eval board from InvenSense.

I really appreciate your help. Thank you,

Roman

Why do you use 3V3 as VDD but no level converters for the I2C lines? Specification for the MPU6050 allows VDD up to 6V. Your UNO does not allow to switch all levels to 3V3 so I would just put 5V to VDD then you have same level on all pins.

Hi Roman,

Did you manage to solve the issue of reading WHO_AM_I register?

I’m working with an Atmega1281 and a L3G4200D gyroscope and I have the same problem with the exception that I’m using SPI. When I read any register I get 0xFF.

In the case you solved it, how did you do it?

Hey Roman,

Did you solve you problem? I am having the same issue.

Any help on this will be appreciated.