A little more complicated is the ability to control a second -device. The MPU-6050 always acts as a slave to the Arduino with the SDA and SCL pins connected to the -bus. But beside the normal -bus, it has it's own controller to be a master on a second (sub)--bus. It uses the pins AUX_DA and AUX_CL for that second (sub)--bus. It can control, for example, a magnetometer. The values of the magnetometer can be passed on to the Arduino.
Things get really complex with the "DMP". The sensor has a "Digital Motion Processor" (DMP), also called a "Digital Motion Processing Unit". This DMP can be programmed with firmware and is able to do complex calculations with the sensor values.
For this DMP, has a discouragement policy, by not supplying enough information how to program the DMP. However, some have used reverse engineering to capture firmware.