Go Down

Topic: mpu6050/gy-521 ISSUES! (Read 532 times) previous topic - next topic

chrisyn_95

Hi Everyone,

first time arduino'er and having issues with my accelerometer.

I'm currently using the mpu6050/gy-521 with the Arduino Mega. I've wired everything up correctly, red light is on and working.

I followed this dudes instruction perfectly and it worked initially https://www.youtube.com/watch?v=EexrtrXu5cI

but tried again the next day and now when I use the serial monitor and then this happens (refer to screen shot) the day before when I was using it everything was working, values were changing and life was good but now nothing......

Please help, I have no idea what I've done wrong 

jremington

We generally recommend starting with simple projects, as come with the Arduino IDE and learn the programming language. That way you will be prepared to debug problems.

If you want help here, please read the post "How to use this forum" and follow ALL the directions.

chrisyn_95

sorry, this is for a university project.

The code I used is,

// MPU-6050 Short Example Sketch
// By Arduino User JohnChi
// August 17, 2014
// Public Domain
#include<Wire.h>
const int MPU_addr=0x68;  // I2C address of the MPU-6050
int16_t AcX,AcY,AcZ,Tmp,GyX,GyY,GyZ;
void setup(){
  Wire.begin();
  Wire.beginTransmission(MPU_addr);
  Wire.write(0x6B);  // PWR_MGMT_1 register
  Wire.write(0);     // set to zero (wakes up the MPU-6050)
  Wire.endTransmission(true);
  Serial.begin(9600);
}
void loop(){
  Wire.beginTransmission(MPU_addr);
  Wire.write(0x3B);  // starting with register 0x3B (ACCEL_XOUT_H)
  Wire.endTransmission(false);
  Wire.requestFrom(MPU_addr,14,true);  // request a total of 14 registers
  AcX=Wire.read()<<8|Wire.read();  // 0x3B (ACCEL_XOUT_H) & 0x3C (ACCEL_XOUT_L)     
  AcY=Wire.read()<<8|Wire.read();  // 0x3D (ACCEL_YOUT_H) & 0x3E (ACCEL_YOUT_L)
  AcZ=Wire.read()<<8|Wire.read();  // 0x3F (ACCEL_ZOUT_H) & 0x40 (ACCEL_ZOUT_L)
  Tmp=Wire.read()<<8|Wire.read();  // 0x41 (TEMP_OUT_H) & 0x42 (TEMP_OUT_L)
  GyX=Wire.read()<<8|Wire.read();  // 0x43 (GYRO_XOUT_H) & 0x44 (GYRO_XOUT_L)
  GyY=Wire.read()<<8|Wire.read();  // 0x45 (GYRO_YOUT_H) & 0x46 (GYRO_YOUT_L)
  GyZ=Wire.read()<<8|Wire.read();  // 0x47 (GYRO_ZOUT_H) & 0x48 (GYRO_ZOUT_L)
  Serial.print("AcX = "); Serial.print(AcX);
  Serial.print(" | AcY = "); Serial.print(AcY);
  Serial.print(" | AcZ = "); Serial.print(AcZ);
  Serial.print(" | Tmp = "); Serial.print(Tmp/340.00+36.53);  //equation for temperature in degrees C from datasheet
  Serial.print(" | GyX = "); Serial.print(GyX);
  Serial.print(" | GyY = "); Serial.print(GyY);
  Serial.print(" | GyZ = "); Serial.println(GyZ);
  delay(333);
}

When I upload all is good but then there seems to be no connection

AcX mp = 36.53 | GyX = -1 | GyY = -1 | GyZ = -1
AcX = -1 | AcY = -1 | AcZ = -1 | Tmp = 36.53 | GyX = -1 | GyY = -1 | GyZ = -1
AcX = -1 | AcY = -1 | AcZ = -1 | Tmp = 36.53 | GyX = -1 | GyY = -1 | GyZ = -1
and this just repeats and repeats

PLEASE HELP, no seems to have run into this issues and it's annoying the crap out of me

jremington

#3
Oct 01, 2016, 04:23 pm Last Edit: Oct 01, 2016, 04:24 pm by jremington
Quote
If you want help here, please read the post "How to use this forum" and follow ALL the directions.
For a university student, you don't follow directions very well.

Go Up