I'm keep on getting the DRDY interrupt since the x/y/z data is keep on fluctuating and never remain same.
What is the better way to make it stable on both FXOS8700CQ and MAG3110?
Since there is no threshold interrupt available, what is the best way to use the mag3110 for threshold detection purpose? or are there any alternate ics available with these three interrupts? (DRDY, THRESHOLD and VECTOR MAGNITUDE on;y for magnetic sensor)
Regarding your first question for the data fluctuation, that is a normal behavior a sensor has,
but you can change the way you get an interrupt, using a threshold interrupt (for FXOS8700CQ) so the event is detected when all of the enabled axes are below or equal to their respective threshold values, or when any of the enabled axes is above or equal to their respective threshold value (OR condition), you can check this out at the datasheet "14.16 Magnetometer threshold function registers" .
Also I suggest you the check the application note AN4458 "2.2 Magnetometer vector-magnitude function" for the FXOS8700CQ [https://www.nxp.com/docs/en/application-note/AN4458.pdf]
As for your second question unfortunetly , the MAG3110 does not have an interrupt when the change of the magnetic field is above a threshold, for this purpose I suggest you use the FXOS8700CQ.
Sorry for the late response, but your question was answered through email.
We are already well familiar with FXOS8700CQ and looking for around 10000 samples.
Apparently, there is a news that the production of this chip has been stopped.
Hence we chose MAG3110 which is not as good as the FXOS..
Is there any alternate solution for this?
Unfortunately no, the only available solution for magnetometers is the FXOS8700CQ, which is still an active part, but its lead time is about 20 weeks.
As for the MAG3110 is an end of life part, sorry for the bad news.