MPU6050(GY-521) sensor returning zeros

I get a connection to the mpu6050 but it still returns zeros and I believe this is because the mpu6050 is still asleep but I can't seem to make it wake up. I used the initialize for the mpu6050 library which includes a wake statement as well as using the method setSleepEnabled(false) but it still returned that it was asleep.

Here is the library I am using:

I'm using the GY-521 with the arduino uno.
Pins:
VCC --> 5v
GND --> GND
SCL --> A5
SDA --> A4

I used the I2C scanner and it registers at 0x68.

#include <Wire.h>
#include <I2Cdev.h>
#include <BMP085.h>
#include <MPU6050.h>

MPU6050 MPU;
int16_t ax, ay, az;
int16_t gx, gy, gz;

void setup()
{
Wire.begin();
Serial.begin(38400);
MPU.initialize();
Serial.println(MPU.testConnection() ? "MPU6050 connection successful" : "MPU6050 connection failed");
Serial.println(MPU.getSleepEnabled()? "Awake" : "Asleep");
}
 
void loop()
{
MPU.getMotion6(&ax, &ay, &az, &gx, &gy, &gz);
Serial.print("a/g:\t");
Serial.print(ax); Serial.print("\t");
Serial.print(ay); Serial.print("\t");
Serial.print(az); Serial.print("\t");
Serial.print(gx); Serial.print("\t");
Serial.print(gy); Serial.print("\t");
Serial.println(gz);
delay(2000);
}

Output:
MPU6050 connection successful
Asleep
a/g: 0 0 0 0 0 0
a/g: 0 0 0 0 0 0
a/g: 0 0 0 0 0 0

I can not see a problem.
Which Arduino board are you using ?
Are other devices connected to the i2c bus ?
It should work after the "MPU.initialize".

I believe arduino uno r2 maybe r1. I also have a bmp085 sensor connected but the addresses don't conflict and an xbee but that's it. It connects and everything it just returns zeros which would happen when its asleep so I check that using the getSleepEnabled method and it returned that it was asleep after giving it the bit to wake up.

Can you remove the XBee, the BMP085 and the getSleepEnabled function ?
Use the pullup resistors on the MPU-6050 board and no other pullup.
If it is still not working, it might be broken.
Or you can use the test sketch, to see if that shows any values: Arduino Playground - MPU-6050

So I removed everything but the mpu6050 and it still returns zeros but the temperature sensor does read this was done using the example code that you directed me to. So it seems the sensor is dead.

But the output is strange:

June 2012
WHO_AM_I : 68, error = 0
PWR_MGMT_1 : 0, error = 0

The sleep bit is already 0 when it should be as 1 indicated in the comments

// According to the datasheet, the 'sleep' bit
  // should read a '1'.
  // That bit has to be cleared, since the sensor
  // is in sleep mode at power-up. 
  error = MPU6050_read (MPU6050_PWR_MGMT_1, &c, 1);
  Serial.print(F("PWR_MGMT_1 : "));
  Serial.print(c,HEX);
  Serial.print(F(", error = "));
  Serial.println(error,DEC);


  // Clear the 'sleep' bit to start the sensor.
  MPU6050_write_reg (MPU6050_PWR_MGMT_1, 0);

The sleep bit is reads as '0', while it should be '1'. It is a fault in the chip.
The accel and gyro values should return something. I think the chip is broken.

you need to connect INT ->D2 on the arduino board