2019-05-31 05:27 AM
My LIS3MDL eCompass IC output always reads (X=32764) for the X axis.
Axis y and z seem to read ok, with changing values during operation.
Why is this occurring?
The first day of use the LIS3MDL worked OK, with X,Y,and Z axis having unique and changing values.
The second day I waved a small magnet around near the sensor to see how the output would vary.
A few minutes later, the X Axis value froze to 32764.
I checked online, and other people have had the SAME issue!!
What is special about the value 32764?
Here is someone else that has same issue...
https://forum.pololu.com/t/possibly-broken-minimu-9-v5/17263
Does LIS3MDL have an output lockup that freezes output at 32764 when the Gauss reading goes off the scale?
If yes, how do I free up the chip to produce correct values for the X,Y,and Z axis?
Ken Huebner
Hardware Engineer
2019-05-31 07:07 AM
Hi Ken, the 32764 value is almost the 16-bit two complement full scale (7FFCh). Do you know if you exceeded the absolute maximum exposed field of 1000 gauss declared in the datasheet, with you magnet along the x axis (consider that a standard neodymium magnet can generate 1000 g ant 10mm distance). Btw, did you already try to reset/reboot the LIS3MDL? Also self-test is not working on x axis (CTRL_REG1 (20h) for enabling the test)? Regards
2019-05-31 07:20 AM
Hello Eleon,
I did initialize the LIS3MDL with a RESET and a REBOOT. No change. The xaxis still reads 32764.
So I am in the process of replacing the current LIS3MDL IC with a new one.
I'll let you know results soon.
Ken
2019-05-31 08:15 AM
Eleon, the new LIS3MDL that I installed on the pcb is working OK. There are now unique and changing values appearing on X,Y,and Z axis.
I'm finding it's very difficult to mount the LIS3MDL on the pcb. I tried a couple times and failed. The LIS3MDL returned 0 for WHO AM I. The third remount now works OK.
So to recap why the previous LIS3MDL may have failed:
Ken