Official Hobby Components Online Store | Buy Electronic Kits, Components, Boards, Shields, Modules

¿MPU-6050 GY-521 no lee? Soluciona problemas I2C comunes

¿MPU-6050 GY-521 no lee? Soluciona problemas I2C comunes

By Official Hobby Components Online Store | Buy Electronic Kits, Components, Boards, Shields, Modules | Published: 2026-10-15

Category: Consejos y cuidado

Depura un GY-521 MPU-6050 que no devuelve datos por I2C: revisa el cableado, ejecuta un escáner I2C, confirma la dirección 0x68 y resuelve problemas de nivel de 3.3V.

Respuesta rápida

Si tu MPU-6050 no devuelve datos, ejecuta primero un escáner I2C para confirmar que la dirección es 0x68. Si el escáner no encuentra nada, revisa el cableado SDA/SCL y la alimentación, y luego verifica los niveles lógicos: el módulo GY-521 espera I2C de 3.3V, así que con un Arduino de 5V necesitas un adaptador de nivel o pull-ups a 3.3V. Si el escáner ve 0x68 pero las lecturas fallan, el problema suele ser la configuración de la librería o la falta de pull-ups.

Confirma que el GY-521 está conectado y alimentado correctamente

El breakout GY-521 tiene cuatro pines esenciales: VCC, GND, SDA, SCL. Aliméntalo con 3.3 V si tu placa lo proporciona; el regulador y el adaptador de nivel del módulo son mínimos, y 5 V en VCC puede dañar el MPU-6050. Conecta SDA al pin SDA de tu microcontrolador y SCL a SCL. En un Arduino Nano V3.0, SDA es A4 y SCL es A5. En un WeMos D1 mini, SDA es D2 y SCL es D1. Mantén los cables cortos y seguros—los jumpers sueltos son una causa común de lecturas intermitentes.

Si utiliza una placa 5V como el Arduino Nano, las líneas I2C del GY-521 no son tolerantes a 5V. Debe usar un cambiador de nivel o alimentar el módulo desde 3.3V y asegurarse de que las resistencias pull-up vayan a 3.3V, no a 5V. Muchas placas GY-521 incluyen resistencias pull-up de 4.7k a VCC; si VCC es 5V, esas resistencias pull-up expondrán el MPU-6050 a 5V en SDA/SCL. Revise su módulo en busca de resistencias pull-up integradas y considere quitarlas si alimenta desde 5V, aunque es un trabajo delicado.

  • Alimenta el GY-521 con 3.3 V, no con 5 V.
  • En Arduino Nano: SDA=A4, SCL=A5.
  • En el WeMos D1 mini: SDA=D2, SCL=D1.
  • Utiliza un adaptador de nivel para placas 5V.

Ejecuta un escáner I2C para comprobar si el sensor responde

Un sketch de escáner I2C escanea todas las direcciones e informa de cualquier dispositivo que responda. Sube un escáner estándar a tu placa, abre el monitor serie a 9600 o 115200 baudios y busca un dispositivo en 0x68. La dirección predeterminada del MPU-6050 es 0x68 cuando AD0 está en nivel bajo; si AD0 se pone en nivel alto, la dirección pasa a ser 0x69. Si el escáner no encuentra nada, el problema está en el cableado, la alimentación o las resistencias pull-up. Si encuentra 0x68 pero tu biblioteca del sensor falla, lo más probable es que el problema esté en el código o en la configuración de la biblioteca.

Si el escáner muestra 0x68 pero sigues sin obtener datos, prueba el sketch de ejemplo de la biblioteca que estés usando (p. ej., Adafruit_MPU6050 o MPU6050_tockn). Asegúrate de llamar a la función begin() correcta y de que la dirección I2C de tu código coincida con 0x68. Algunas bibliotecas usan 0x68 por defecto, mientras que otras requieren que la especifiques. Comprueba también que no estés usando un bus I2C diferente (Wire vs. Wire1) en placas con varios buses.

  • El escáner encuentra 0x68: el cableado y la alimentación están bien; céntrate en el código.
  • El escáner encuentra 0x69: AD0 es alta; ajusta la dirección en el código.
  • El escáner no encuentra nada: comprueba SDA/SCL, la alimentación y las resistencias pull-up.

Cómo solucionar conflictos de 0x68 y problemas con resistencias pull-up

Si el escáner detecta 0x68 pero tu código sigue fallando, puede que otro dispositivo del bus esté usando la misma dirección. Los dispositivos I2C habituales, como algunas pantallas OLED u otros sensores, también pueden estar en 0x68. Desconecta los demás dispositivos I2C y prueba el MPU-6050 solo. Si funciona solo, tienes un conflicto de direcciones. Puedes cambiar la dirección del MPU-6050 a 0x69 poniendo AD0 en alto, pero eso requiere un pin libre o un puente de soldadura.

Las resistencias pull-up ausentes o incorrectas también pueden causar fallos. El GY-521 normalmente incluye pull-ups de 4.7k a VCC. Si alimentas desde 3.3V, esas pull-ups son correctas para lógica de 3.3V. Si utilizas un cambiador de nivel, asegúrate de que el lado alto tenga pull-ups a 5V y el lado bajo a 3.3V; muchos cambiadores de nivel los incluyen. Si has eliminado las pull-ups del módulo o estás usando un chip MPU-6050 desnudo, añade resistencias externas de 4.7k desde SDA y SCL a 3.3V.

  • Desconecta otros dispositivos I2C para descartar conflictos de direcciones.
  • Desliza AD0 hacia arriba para cambiar la dirección a 0x69.
  • Añade resistencias pull-up externas de 4.7k si tu módulo no las incluye.

Cuándo detenerse y elegir un enfoque diferente

Si has verificado el cableado, la alimentación, la dirección y las pull-ups, y el escáner sigue sin encontrar nada, el módulo podría estar dañado. El MPU-6050 es sensible a la sobretensión; si se conectó accidentalmente a 5 V en VCC o SDA/SCL, puede que esté averiado. En ese punto, sustituir el GY-521 es el paso más práctico. Si necesitas una solución más robusta para sistemas de 5 V, considera un microcontrolador nativo de 3.3 V como el WeMos D1 mini, que evita por completo el cambio de nivel. Para proyectos que requieran un seguimiento preciso del movimiento, una IMU de gama alta con tolerancia integrada de 5 V podría ahorrarte tiempo de depuración.

  • Si todas las comprobaciones fallan, sospecha de un sensor dañado.
  • Considera una placa 3.3V para evitar el cambio de nivel.
  • Para necesidades avanzadas, busque una IMU con tolerancia de 5V.

Lista de verificación de diagnóstico

  • No se ha encontrado ningún dispositivo con el escáner I2C: Comprueba la alimentación (3.3V), las conexiones SDA/SCL y las resistencias pull-up. Asegúrate de que el módulo no esté dañado. Si el cableado y la alimentación son correctos, sustituya el módulo.
  • El escáner encuentra 0x68 pero la biblioteca falla: Verifica la función begin() de la biblioteca y la configuración de dirección. Prueba con otra biblioteca o sketch de ejemplo. Si el código es correcto, comprueba si hay problemas de velocidad del bus I2C; prueba 100kHz.
  • Lecturas intermitentes o con ruido: Acorta los cables, añade un condensador de desacoplamiento (0.1uF) entre VCC y GND y asegura conexiones sólidas. Si el ruido persiste, considera usar otro sensor o cables apantallados.

Datos del producto

  • GY-521 MPU-6050 Módulo 3 Ejes Giroscopio + 3 Ejes Módulo Acelerómetro: Chip: MPU-6050; Alimentación: 3~5V; Modo de comunicación: protocolo de comunicación IIC estándar; convertidor AD de 16 bits integrado en el chip. El rango de alimentación de 3~5V a menudo se malinterpreta como tolerante a I2C de 5V; las líneas I2C no son tolerantes a 5V, por lo que se requiere un adaptador de nivel cuando se utiliza un microcontrolador de 5V.
  • Nano compatible con Arduino V3.0 con cable USB GRATIS: Nano V3.0 compatible con Arduino basado en ATmega328; carece de conector de alimentación DC; funciona con cable USB Mini-B. Esta placa 5V es un host habitual para el GY-521; sus pines I2C (A4/A5) son de lógica de 5V, por lo que debe adaptar niveles o alimentar el sensor desde 3.3V para evitar daños.
  • Shield de prototipado mini WeMos D1: WeMos D1 mini Prototyping Shield diseñado para WeMos D1 mini y mini Pro; se suministra con 3 juegos de cabeceras (requiere soldadura); permite apilar. El WeMos D1 mini es una placa de 3.3V, por lo que puede conectarse directamente al GY-521 sin un adaptador de nivel, lo que simplifica el cableado de I2C y reduce los puntos de fallo.

Shop Related Products

Módulo GY-521 MPU-6050 giroscopio de 3 ejes + módulo acelerómetro de 3 ejes

Módulo GY-521 MPU-6050 giroscopio de 3 ejes + módulo acelerómetro de 3 ejes

$1.16 $1.66

Shop Now
WeMos D1 mini Prototyping Shield

WeMos D1 mini Prototyping Shield

$0.88 $1.24

Shop Now
Nano V3.0 compatible con Arduino con cable USB GRATIS

Nano V3.0 compatible con Arduino con cable USB GRATIS

$5.02 $7.49

Shop Now