MPU6050 + HMC5883L

Hello, I bought this 10 DOF sensor board (GY-87) containing MPU6050, HMC5883L and BMP180. This board connects the HMC to the auxiliary I2C of the MPU. As all the resources say, the MPU6050 can access a number of external sensors like a 3-axis magnetometer (like the HMC5883L).

I used this guy's sketch as some sort of Bus Pirate for I2C to access the MPU's registers. I managed to set the bypass mode for the auxiliary I2C bus (connected to the HMC). I configured the the HMC for continuous operation and made sure it works. Then I returned the auxiliary I2C bus to the MPU's control and set all the relevant registers of the MPU to try to get it to read the HMC sensor.

To no success up until now, whenever I read the MPU external sensor data registers, it returns zero. Please help.

So I have succeeded making the MPU6050 read the HMC5883L's data into it's registers.

Now I have 3 questions: -The HMC5883L sends it's data in 2's complement format, does the MPU6050 understand that or does it see it as a 16-bit unsigned integer ? -How to tell the DMP inside the MPU6050 that slave0 (HMC5883L) is a magnetometer or does it "know" automatically ? -The HMC5883L registers are read in that order XZY axes. How do I configure the DMP for that ?