I’ve been dreaming for a long time about building a magnetometer precise enough to capture fine variations in the Earth’s magnetic field:
-
the daily variations linked to circadian cycles,
-
small local anomalies caused by buried metallic objects,
-
and, of course, the disturbances triggered by solar activity.
In the long run, I’d like to pair this magnetometer with an automated monitoring system capable of detecting solar storms, since they strongly disturb the magnetosphere and can be detected locally. Maybe I’ll even embed a small neural network directly on the ESP32 to analyze the time series data (I’ve already done something similar in another context, for example predicting frost events using a small weather CNN: https://selvasystems.net/deep-learning).
But I quickly discovered this isn’t an easy measurement.
To give an idea:
-
at my latitude, the Earth’s magnetic field is about 50,000 nT;
-
the daily variations are roughly harmonic, with an amplitude of about 10 nT, mainly due to the absence of solar radiation at night;
-
a metallic object buried 1 m deep (for example, a large piece of steel) can cause a local disturbance of a few nT;
-
and solar storms, depending on their intensity, can influence the field up to a few µT.
This kind of measurement is, in fact, almost impossible today for an individual. Normally, you’d need either a proton magnetometer (which measures total intensity but is heavy, fragile, and expensive) or a fluxgate magnetometer (precise, sensitive, but costly and not easily accessible). Trying this with low-cost MEMS components is a real challenge.

Bertrand Selva
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.