Skip to Content

MPU-6050 IMU Sensor Module – 6 Degrees of Freedom Gyroscope + Accelerometer

MPU-6050 IMU Sensor Module – 6 Degrees of Freedom (Gyroscope + Accelerometer)

The MPU-6050 is a highly integrated 6-axis Inertial Measurement Unit (IMU) that combines a 3-axis gyroscope and a 3-axis accelerometer on a single chip. This powerful sensor module is widely used in robotics, drones, wearable technology, motion tracking devices, gaming controllers, and many other applications requiring precise motion sensing and orientation detection.

Key Features and Benefits

  • 6 Degrees of Freedom (DOF): Measures rotational velocity (gyroscope) and linear acceleration (accelerometer) simultaneously across three axes (X, Y, Z), enabling accurate 3D motion sensing.

  • Integrated Digital Motion Processor (DMP): Offloads complex sensor fusion calculations from your microcontroller by processing raw sensor data internally, providing processed and stabilized motion data.

  • Wide Operating Voltage Range: Compatible with 2.5V to 3.6V power supply, many breakout boards support 5V for easy integration with Arduino and other microcontrollers.

  • High Sensitivity & Configurable Ranges: Adjustable gyroscope ranges (±250, ±500, ±1000, ±2000 dps) and accelerometer ranges (±2g, ±4g, ±8g, ±16g) let you optimize precision or range depending on your project needs.

  • I²C Interface: Supports standard I²C communication (up to 400kHz) for easy connection to microcontrollers such as Arduino, ESP32, Raspberry Pi, and more.

  • Compact Size: Small module footprint suitable for space-constrained projects and embedded systems.

  • Built-in Temperature Sensor: Provides temperature data to help calibrate measurements and maintain accuracy.

  • Wide Operating Temperature Range: Works reliably in harsh environments from -40°C to +85°C.

Technical Specifications

ParameterDescription
Gyroscope Ranges±250, ±500, ±1000, ±2000 degrees per second
Accelerometer Ranges±2g, ±4g, ±8g, ±16g
Power Supply Voltage2.5V – 3.6V (some breakout boards support 5V)
Communication ProtocolI²C (up to 400 kHz)
Sampling RateUp to 1 kHz
Digital Motion ProcessorYes, onboard DMP for sensor fusion
Temperature Sensor Range-40°C to +85°C
Module DimensionsTypically ~20mm x 15mm (varies by breakout)

Wiring Guide for Arduino

To connect the MPU-6050 module with Arduino Uno (assuming standard GY-521 breakout board):

MPU-6050 PinArduino PinDescription
VCC5V or 3.3VPower supply
GNDGNDGround
SDAA4I²C Data
SCLA5I²C Clock
INTOptional (e.g., D2)Interrupt pin for advanced use

How to Use the MPU-6050 with Arduino

  1. Install the Arduino Library:
    Use the popular “MPU6050” or “MPU6050_light” library available on GitHub or through Arduino Library Manager for easy interfacing and calibration.

  1. Basic Code Example:

cpp
CopyEdit
#include <Wire.h> #include <MPU6050.h> MPU6050 mpu; void setup() { Serial.begin(9600); Wire.begin(); mpu.initialize(); if (mpu.testConnection()) { Serial.println("MPU6050 connected successfully"); } else { Serial.println("MPU6050 connection failed"); } } void loop() { int16_t ax, ay, az; int16_t gx, gy, gz; mpu.getAcceleration(&ax, &ay, &az); mpu.getRotation(&gx, &gy, &gz); Serial.print("aX = "); Serial.print(ax); Serial.print(" | aY = "); Serial.print(ay); Serial.print(" | aZ = "); Serial.print(az); Serial.print(" | gX = "); Serial.print(gx); Serial.print(" | gY = "); Serial.print(gy); Serial.print(" | gZ = "); Serial.println(gz); delay(500); }

Video Tutorials and Demos

Datasheet & Documentation

150.00 LE 150.00 LE

This combination does not exist.

Sensor