AED 39.00
Low stock
1
Description
the MPU-9250 is a powerful System in Package (SiP) that seamlessly integrates two essential components: the MPU-6500 and the AK8963. The MPU-6500 features a 3-axis gyroscope, a 3-axis accelerometer, and an onboard Digital Motion Processor™ (DMP™) capable of handling intricate MotionFusion algorithms. Meanwhile, the AK8963 stands out as a market-leading 3-axis digital compass. This combination enables the MPU-9250 to deliver robust performance for a variety of applications.
Features:
- Versatile Design: The MPU-9250 supports InvenSense’s proven MotionFusion, allowing a single design to accommodate both the MPU-9250 and MPU-6500.
- Low Power Mode: Improved accelerometer low power mode consumes as little as 6.4µA, enhancing energy efficiency.
- Enhanced Compass Data Resolution: The MPU-9250 provides an improved compass data resolution of 16-bits (0.15µT per LSB), offering precise magnetic field information.
- Wide Measurement Range: With a full-scale measurement range of ±4800µT, the MPU-9250 addresses compass placement challenges on complex PCBs.
- Software Compatibility: The MPU-9250's software drivers are fully compliant with Google’s Android 4.1 Jelly Bean release. They also support low-power DMP capabilities, offloading the host processor to reduce power consumption and simplify application development.
- MotionFusion and Calibration Firmware: The MPU-9250 includes MotionFusion and run-time calibration firmware, enabling consumer electronics manufacturers to implement cost-effective motion-based functionality.
Specifications:
- Gyroscope: 3-axis
- Accelerometer: 3-axis
- Digital Compass: 3-axis (AK8963)
- Accelerometer Low Power Mode: 6.4µA
- Compass Data Resolution: 16-bits (0.15µT per LSB)
- Measurement Range: ±4800µT
Package Includes:
- MPU-9250 SiP
Resources:
- Get MPU-9250 Library from GitHub
- Data sheet for MPU-9250
- MPU-9250 Register Map
- Download Library
- I2C Scanner Code and Video
Arduino Code:
/*
* Library: https://github.com/bolderflight/MPU9250
*/
/*
* Updated by Ahmad Shamshiri on July 09, 2018 for Robojax.com
* in Ajax, Ontario, Canada
* watch instrucion video for this code:
For this sketch you need to connect:
VCC to 5V and GND to GND of Arduino
SDA to A4 and SCL to A5
S20A is 3.3V voltage regulator MIC5205-3.3BM5
*/
#include "MPU9250.h"
// an MPU9250 object with the MPU-9250 sensor on I2C bus 0 with address 0x68
MPU9250 IMU(Wire,0x68);
int status;
void setup() {
// serial to display data
Serial.begin(115200);
while(!Serial) {}
// start communication with IMU
status = IMU.begin();
if (status < 0) {
Serial.println("IMU initialization unsuccessful");
Serial.println("check IMU wiring or try cycling power");
Serial.print("Status: ");
Serial.println(status);
while(1) {}
}
}
void loop() {
// read the sensor
IMU.readSensor();
// display the data
Serial.print("AccelX: ");
Serial.print(IMU.getAccelX_mss(),6);
Serial.print("");
Serial.print("AccelY: ");
Serial.print(IMU.getAccelY_mss(),6);
Serial.print("");
Serial.print("AccelZ: ");
Serial.println(IMU.getAccelZ_mss(),6);
Serial.print("GyroX: ");
Serial.print(IMU.getGyroX_rads(),6);
Serial.print("");
Serial.print("GyroY: ");
Serial.print(IMU.getGyroY_rads(),6);
Serial.print("");
Serial.print("GyroZ: ");
Serial.println(IMU.getGyroZ_rads(),6);
Serial.print("MagX: ");
Serial.print(IMU.getMagX_uT(),6);
Serial.print("");
Serial.print("MagY: ");
Serial.print(IMU.getMagY_uT(),6);
Serial.print("");
Serial.print("MagZ: ");
Serial.println(IMU.getMagZ_uT(),6);
Serial.print("Temperature in C: ");
Serial.println(IMU.getTemperature_C(),6);
Serial.println();
delay(200);
}