

This reduces the load for the microcontroller (like the Arduino). The DMP (“Digital Motion Processor”) can do fast calculations directly on the chip. However, some have used reverse engineering to capture firmware. This DMP can be programmed with firmware and is able to do complex calculations with the sensor values.įor this DMP, InvenSense has a discouragement policy, by not supplying enough information how to program the DMP. The sensor has a “Digital Motion Processor” (DMP), also called a “Digital Motion Processing Unit”. Things get really complex with the “DMP”. The values of the magnetometer can be passed on to the Arduino.

It can control, for example, a magnetometer. It uses the pins AUX_DA and AUX_CL for that second (sub)-I2C-bus. The MPU-6050 always acts as a slave to the Arduino with the SDA and SCL pins connected to theI2C-bus.īut beside the normal I2C-bus, it has it’s own I2C controller to be a master on a second (sub)-I2C-bus. If the MPU-6050 places data in the FIFO buffer, it signals the Arduino with the interrupt signal so the Arduino knows that there is data in the FIFO buffer waiting to be read.Ī little more complicated is the ability to control a second I2C-device. The FIFO buffer is used together with the interrupt signal. And the buffer can be read by the Arduino. The sensor values can be programmed to be placed in the FIFO buffer. The sleep mode has to be disabled, and then the registers for the accelerometer and gyro can be read.īut the sensor also contains a 1024 byte FIFO buffer. Reading the raw values for the accelerometer and gyro is easy.

It is very accurate, as it contains 16-bits analog to digital conversion hardware for each channel. The InvenSense MPU-6050 sensor contains a MEMS accelerometer and a MEMS gyro in a single chip. Chip built-in 16bit AD Converter, 16-bit Data Output.3-5v Power supply (internal low dropout regulator).Description GY-521 MPU-6050 MPU6050 Module 3 Axis analog gyro sensors+ 3 Axis Accelerometer Module Three dimensional Angle sensor for Arduino
