Ported from Arduino Library by Szymon Gaertig: https://github.com/jrowberg/i2cdevlib/tree/master/Arduino/MPU6050 added Magnetometer support

Fork of MPU6050 by Simon Garfieldsg

Issue: magnetmeter registers

according to the data sheet of mpu9150 the magnetmeter register low came before high

so these lines

  • mx = (((int16_t)buffer[0]) << 8) | buffer[1];
  • my = (((int16_t)buffer[2]) << 8) | buffer[3];
  • mz = (((int16_t)buffer[4]) << 8) | buffer[5];

must be

  • mx = (((int16_t)buffer[1]) << 8) | buffer[0];
  • my = (((int16_t)buffer[3]) << 8) | buffer[2];
  • mz = (((int16_t)buffer[5]) << 8) | buffer[4];