AnsweredAssumed Answered

mag 3110 Automatic Magnetic Sensor Reset

Question asked by miguelángel on Feb 19, 2016

Dear customer support team,

We have developed an electronic device to be mounted inside a lighter plane. As magnetometer sensor, we choose your mag3110. (In previous versions, we used analogs sensors from other manufacturers with great results). However, we are having a hard time with your new digital sensors.


Once the device is assambled we are performing a calibration process to get the deviation of the magnetic field in the three axes agiants the temperature. After this process, we check that the reported module is quite constant in all the temperature range.

Before every operation we are carrying out a complete HI and SI calibration. This SW has been tested in other devices and it works properly.

After that, we check that the reported magnetic module is similar to de "Earth Magnetic Model" for the current  location in all the directions. We move it in all directions.

All the steps are overcome nicely, however, during the flight the field measured by the sensor looks like be affected by a little magnetic source that increments the sent readings. After a few minutes, the readings are contaminated and the module is ruined.


We have been working with the AUTO_MRST_EN register, but it looks like doesn't working in our case.

We are getting the same results with and without it, enabled.


I think that the code is well implemented, anyway, here it goes:


MagInit() {






// Enable automatic magnetic sensor resets & raw mode

mag3110WriteSingleReg(MAG3110REG_CTRL_REG2,MAG3110_AUTO_RESETS | MAG3110_RAW_OUTPUT| MAG3110_MAG_RST);





// Continuous measurements with ODR = 80 Hz, OSR = 1




As we are lacking in new ideas, we will appreciate any comments in order to overcome this handicaps and can keep using this sensor, in the same way we used others. (Same platform, same location...)