Problema sensore MPU 6050-GY521

Salve a tutti, ho acquistato un arduino UNO e un sensore MPU 6050-GY521, consultando vari tutorial (compreso quello ufficiale) non riesco a farlo funzionare.
Ho caricato lo sketch relativo alla verifica della connessione I2C ma mi esce scritto
"Scanning...
No I2C devices found"
I PIN sono così collegati:
VCC -> 3.3V
GND -> GND
SCL -> A5
SDA -> A4
Lo sketch è quello che ho trovato qui sul forum arduino

// --------------------------------------
// i2c_scanner
//
// Version 1
//    This program (or code that looks like it)
//    can be found in many places.
//    For example on the Arduino.cc forum.
//    The original author is not know.
// Version 2, Juni 2012, Using Arduino 1.0.1
//     Adapted to be as simple as possible by Arduino.cc user Krodal
// Version 3, Feb 26  2013
//    V3 by louarnold
// Version 4, March 3, 2013, Using Arduino 1.0.3
//    by Arduino.cc user Krodal.
//    Changes by louarnold removed.
//    Scanning addresses changed from 0...127 to 1...119,
//    according to the i2c scanner by Nick Gammon
//    http://www.gammon.com.au/forum/?id=10896
// Version 5, March 28, 2013
//    As version 4, but address scans now to 127.
//    A sensor seems to use address 120.
// Version 6, November 27, 2015.
//    Added waiting for the Leonardo serial communication.
//
//
// This sketch tests the standard 7-bit addresses
// Devices with higher bit address might not be seen properly.
//
 
#include <Wire.h>
 
 
void setup()
{
  Wire.begin();
 
  Serial.begin(9600);
  while (!Serial);             // Leonardo: wait for serial monitor
  Serial.println("\nI2C Scanner");
}
 
 
void loop()
{
  byte error, address;
  int nDevices;
 
  Serial.println("Scanning...");
 
  nDevices = 0;
  for(address = 1; address < 127; address++ )
  {
    // The i2c_scanner uses the return value of
    // the Write.endTransmisstion to see if
    // a device did acknowledge to the address.
    Wire.beginTransmission(address);
    error = Wire.endTransmission();
 
    if (error == 0)
    {
      Serial.print("I2C device found at address 0x");
      if (address<16)
        Serial.print("0");
      Serial.print(address,HEX);
      Serial.println("  !");
 
      nDevices++;
    }
    else if (error==4)
    {
      Serial.print("Unknow error at address 0x");
      if (address<16)
        Serial.print("0");
      Serial.println(address,HEX);
    }    
  }
  if (nDevices == 0)
    Serial.println("No I2C devices found\n");
  else
    Serial.println("done\n");
 
  delay(5000);           // wait 5 seconds for next scan
}

Come posso risolvere?
Grazie mille

Buongiorno,
essendo il tuo primo post, ti chiederei cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con attenzione il REGOLAMENTO ... Grazie.

Guglielmo

... metti il link al prodotto che stai usando, così ne vediamo le caratteristiche. Ad esempio, sulla schedina che hai preso, ci sono già le resistenze di pull-up per il bus I2C ? Se NO, le hai messe tu ?

Guglielmo

Buongiorno, ho pagato il sensore pochissimo per iniziare a capire il suo funzionamento, ma non mi hanno fornito la scheda tecnica del prodotto.
Le resistenze di pull-up erano gia presenti sulla scheda ti allego una foto.
http://www.aliexpress.com/item-img/GY-521-MPU-6050-module-three-axis-acceleration-gyroscope-6-DOF-module/32291509646.html
Grazie

Quella scheda ha un LDO per i 3.3V, a VCC devi collegare i 5V altrimenti non funziona.

Buon pomeriggio ho provato a collegarlo ai 5V ma con nessun riscontro positivo, ho provato inoltre a collegare l’ AD0 dell’ MPU6050 al pin 3,3V per impostarlo sull’ indirizzo 0x69 e caricando lo sketch "scansioneIC" niente risposta "No I2C devices found" come posso risolvere ?
Grazie ancora

Non è 5V tolerant, viene alimentato a 5V perchè monta un regolatore di tensione.
Io ho messo un traslatore di livelli sul pcb e non ho avuto problemi con la comunicazione, solo con il funzionamento :slight_smile: