u/WhatAPlumguy

Hi, I’m a 15-year-old looking to build a low frequency electromagnetic observation platform, and advice, thoughts, and constructive criticism are greatly appreciated!

I’ve been working on this project for a while. I am building two triaxial fluxgate magnetometer arrays to measure everything from DC to lower LF frequencies up to around 47kHz. I’m currently in the middle of the first half of building, which is mainly focusing on the hardware and firmware involved with capturing the data. Soon I’ll start on the second half, which is to turn the data output of my setup into a panoramic image of the electromagnetic environment across my frequency range. As of now my goal is to finish building everything. I would also like to clarify that so far this has just been me working on this, and I’ve been working on it for several months now.

I’ve also been pretty specific with my choice of equipment. Six DRV425EVM fluxgate magnetometers, which have a frequency range of DC to 47kHz. I’ve already set up two sensors to capture stereo data and I’m currently waiting on the mounting frame before I start working on all six. Every channel has 24-bit simultaneous sampling using an AD7768 evaluation board, which has been outfitted with an ADR4525 voltage reference, C0G capacitors, metal film resistors, a high PSRR LDO, and single point grounding to reduce noise. The sampling rate is not set yet but would probably be at the upper limit of what this ADC can do, which is around 250kSPS.

Signal processing would take place on a Teensy 4.1, or possibly a different computer based on the computational demands of the onboard processing portion. The signal would be split up into many simultaneous frequency bands. As for the specific type of filter, I’m using a CIC filter paired with a FIR compensation filter, which fellow Reddit user underwilder correctly recommended:

“As far as your sample rate conversion, you would need a cascaded Integrator-Comb filter paired with a high-order Finite Impulse Response compensation filter to sharply cut off all frequencies above the new Nyquist limit before dropping the sample rate.”

I use this to split the frequency spectrum into many different bands, each with its own sampling rate scaled to three times the highest frequency in that band. This variable sampling rate approach serves two purposes, it reduces the data rate significantly compared to transmitting everything at full rate, and it maximizes averaging gain in each band, which directly improves sensitivity and lowers the effective noise floor. Here’s the full band list:

46-47 kHz — 141 kSPS

45-46 kHz — 138 kSPS

44-45 kHz — 135 kSPS

43-44 kHz — 132 kSPS

42-43 kHz — 129 kSPS

41-42 kHz — 126 kSPS

40-41 kHz — 123 kSPS

39-40 kHz — 120 kSPS

38-39 kHz — 117 kSPS

37-38 kHz — 114 kSPS

36-37 kHz — 111 kSPS

35-36 kHz — 108 kSPS

34-35 kHz — 105 kSPS

33-34 kHz — 102 kSPS

32-33 kHz — 99 kSPS

31-32 kHz — 96 kSPS

30-31 kHz — 93 kSPS

29-30 kHz — 90 kSPS

28-29 kHz — 87 kSPS

27-28 kHz — 84 kSPS

26-27 kHz — 81 kSPS

25-26 kHz — 78 kSPS

24-25 kHz — 75 kSPS

23-24 kHz — 72 kSPS

22-23 kHz — 69 kSPS

21-22 kHz — 66 kSPS

20-21 kHz — 63 kSPS

19-20 kHz — 60 kSPS

18-19 kHz — 57 kSPS

17-18 kHz — 54 kSPS

16-17 kHz — 51 kSPS

15-16 kHz — 48 kSPS

14-15 kHz — 45 kSPS

13-14 kHz — 42 kSPS

12-13 kHz — 39 kSPS

11-12 kHz — 36 kSPS

10-11 kHz — 33 kSPS

9-10 kHz — 30 kSPS

8-9 kHz — 27 kSPS

7-8 kHz — 24 kSPS

6-7 kHz — 21 kSPS

5-6 kHz — 18 kSPS

4-5 kHz — 15 kSPS

3-4 kHz — 12 kSPS

2-3 kHz — 9 kSPS

1-2 kHz — 6 kSPS

1kHz-100Hz — 3 kSPS

100-10Hz — 300 SPS

10-1Hz — 30 SPS

1-0.5Hz — 1.5 SPS

0.5-0.1Hz — 1.5 SPS

0.1-0.01Hz — 0.3 SPS

0.01-0Hz — 0.03 SPS

For the upper VLF range I implement onboard FFT and decimate the frames to around 2000 FPS after the FFT has been computed. This process of oversampling and decimation is applied across all bands rather than simple downsampling. This is done to lower the noise floor and strengthen sensitivity during processing. The oversampling and coherent averaging approach allows the effective noise floor to be pushed well below the raw sensor specification of 1.5 nT/√Hz, with the lower frequency bands benefiting from averaging ratios in the tens of thousands to one.

A GPS and IMU are also implemented. The data from those feeds into a dual layer drift correction system I developed, which I’ve documented here:

“This document serves as a dated record of an original concept developed independently by me. The method uses a multi-channel directional magnetometer array to capture electromagnetic signals across the DC to VLF frequency range. To correct for platform movement and rotational drift, the system uses two complementary mechanisms: an IMU for rapid high-frequency motion correction, and the captured signal imagery itself as an attitude reference, using stable natural electromagnetic sources in the environment to detect and correct slow rotational drift in software. This dual correction approach allows accurate directional signal imaging from a mobile platform without fixed reference points. Conceived and developed independently as part of a personal scientific project. Date: May 8, 2026.”

This idea is older but the day I formally wrote it down was May 8th.

Right now my main goal is getting six channels of usable directional data from the magnetometers. I’m hoping that by the end of the year, possibly earlier, I can start working on turning the data into a panoramic live video.

I’m sure I’ve left some things out, let me know what you think. If you have experience with any of the components or any of the many processes I’m using, I’d love to hear what more experienced people have to say. 

I know this subreddit is not exactly made for this, but I figured I would try.

reddit.com
u/WhatAPlumguy — 7 days ago
▲ 7 r/sdr

Hi, I’m a 15-year-old looking to build a low frequency electromagnetic observation platform, and advice, thoughts, and constructive criticism are greatly appreciated!

I’ve been working on this project for a while. I am building two triaxial fluxgate magnetometer arrays to measure everything from DC to lower LF frequencies up to around 47kHz. I’m currently in the middle of the first half of building, which is mainly focusing on the hardware and firmware involved with capturing the data. Soon I’ll start on the second half, which is to turn the data output of my setup into a panoramic image of the electromagnetic environment across my frequency range. As of now my goal is to finish building everything. I would also like to clarify that so far this has just been me working on this, and I’ve been working on it for several months now.

I’ve also been pretty specific with my choice of equipment. Six DRV425EVM fluxgate magnetometers, which have a frequency range of DC to 47kHz. I’ve already set up two sensors to capture stereo data and I’m currently waiting on the mounting frame before I start working on all six. Every channel has 24-bit simultaneous sampling using an AD7768 evaluation board, which has been outfitted with an ADR4525 voltage reference, C0G capacitors, metal film resistors, a high PSRR LDO, and single point grounding to reduce noise. The sampling rate is not set yet but would probably be at the upper limit of what this ADC can do, which is around 250kSPS.

Signal processing would take place on a Teensy 4.1, or possibly a different computer based on the computational demands of the onboard processing portion. The signal would be split up into many simultaneous frequency bands. As for the specific type of filter, I’m using a CIC filter paired with a FIR compensation filter, which fellow Reddit user underwilder correctly recommended:

“As far as your sample rate conversion, you would need a cascaded Integrator-Comb filter paired with a high-order Finite Impulse Response compensation filter to sharply cut off all frequencies above the new Nyquist limit before dropping the sample rate.”

I use this to split the frequency spectrum into many different bands, each with its own sampling rate scaled to three times the highest frequency in that band. This variable sampling rate approach serves two purposes, it reduces the data rate significantly compared to transmitting everything at full rate, and it maximizes averaging gain in each band, which directly improves sensitivity and lowers the effective noise floor. Here’s the full band list:

46-47 kHz — 141 kSPS

45-46 kHz — 138 kSPS

44-45 kHz — 135 kSPS

43-44 kHz — 132 kSPS

42-43 kHz — 129 kSPS

41-42 kHz — 126 kSPS

40-41 kHz — 123 kSPS

39-40 kHz — 120 kSPS

38-39 kHz — 117 kSPS

37-38 kHz — 114 kSPS

36-37 kHz — 111 kSPS

35-36 kHz — 108 kSPS

34-35 kHz — 105 kSPS

33-34 kHz — 102 kSPS

32-33 kHz — 99 kSPS

31-32 kHz — 96 kSPS

30-31 kHz — 93 kSPS

29-30 kHz — 90 kSPS

28-29 kHz — 87 kSPS

27-28 kHz — 84 kSPS

26-27 kHz — 81 kSPS

25-26 kHz — 78 kSPS

24-25 kHz — 75 kSPS

23-24 kHz — 72 kSPS

22-23 kHz — 69 kSPS

21-22 kHz — 66 kSPS

20-21 kHz — 63 kSPS

19-20 kHz — 60 kSPS

18-19 kHz — 57 kSPS

17-18 kHz — 54 kSPS

16-17 kHz — 51 kSPS

15-16 kHz — 48 kSPS

14-15 kHz — 45 kSPS

13-14 kHz — 42 kSPS

12-13 kHz — 39 kSPS

11-12 kHz — 36 kSPS

10-11 kHz — 33 kSPS

9-10 kHz — 30 kSPS

8-9 kHz — 27 kSPS

7-8 kHz — 24 kSPS

6-7 kHz — 21 kSPS

5-6 kHz — 18 kSPS

4-5 kHz — 15 kSPS

3-4 kHz — 12 kSPS

2-3 kHz — 9 kSPS

1-2 kHz — 6 kSPS

1kHz-100Hz — 3 kSPS

100-10Hz — 300 SPS

10-1Hz — 30 SPS

1-0.5Hz — 1.5 SPS

0.5-0.1Hz — 1.5 SPS

0.1-0.01Hz — 0.3 SPS

0.01-0Hz — 0.03 SPS

For the upper VLF range I implement onboard FFT and decimate the frames to around 2000 FPS after the FFT has been computed. This process of oversampling and decimation is applied across all bands rather than simple downsampling. This is done to lower the noise floor and strengthen sensitivity during processing. The oversampling and coherent averaging approach allows the effective noise floor to be pushed well below the raw sensor specification of 1.5 nT/√Hz, with the lower frequency bands benefiting from averaging ratios in the tens of thousands to one.

A GPS and IMU are also implemented. The data from those feeds into a dual layer drift correction system I developed, which I’ve documented here:

“This document serves as a dated record of an original concept developed independently by me. The method uses a multi-channel directional magnetometer array to capture electromagnetic signals across the DC to VLF frequency range. To correct for platform movement and rotational drift, the system uses two complementary mechanisms: an IMU for rapid high-frequency motion correction, and the captured signal imagery itself as an attitude reference, using stable natural electromagnetic sources in the environment to detect and correct slow rotational drift in software. This dual correction approach allows accurate directional signal imaging from a mobile platform without fixed reference points. Conceived and developed independently as part of a personal scientific project. Date: May 8, 2026.”

This idea is older but the day I formally wrote it down was May 8th.

Right now my main goal is getting six channels of usable directional data from the magnetometers. I’m hoping that by the end of the year, possibly earlier, I can start working on turning the data into a panoramic live video.

I’m sure I’ve left some things out, let me know what you think. If you have experience with any of the components or any of the many processes I’m using, I’d love to hear what more experienced people have to say. 

reddit.com
u/WhatAPlumguy — 7 days ago
▲ 10 r/RTLSDR

Hi, I’m a 15-year-old looking to build a low frequency electromagnetic observation platform, and advice, thoughts, and constructive criticism are greatly appreciated!

I’ve been working on this project for a while. I am building two triaxial fluxgate magnetometer arrays to measure everything from DC to lower LF frequencies up to around 47kHz. I’m currently in the middle of the first half of building, which is mainly focusing on the hardware and firmware involved with capturing the data. Soon I’ll start on the second half, which is to turn the data output of my setup into a panoramic image of the electromagnetic environment across my frequency range. As of now my goal is to finish building everything. I would also like to clarify that so far this has just been me working on this, and I’ve been working on it for several months now.

I’ve also been pretty specific with my choice of equipment. Six DRV425EVM fluxgate magnetometers, which have a frequency range of DC to 47kHz. I’ve already set up two sensors to capture stereo data and I’m currently waiting on the mounting frame before I start working on all six. Every channel has 24-bit simultaneous sampling using an AD7768 evaluation board, which has been outfitted with an ADR4525 voltage reference, C0G capacitors, metal film resistors, a high PSRR LDO, and single point grounding to reduce noise. The sampling rate is not set yet but would probably be at the upper limit of what this ADC can do, which is around 250kSPS.

Signal processing would take place on a Teensy 4.1, or possibly a different computer based on the computational demands of the onboard processing portion. The signal would be split up into many simultaneous frequency bands. As for the specific type of filter, I’m using a CIC filter paired with a FIR compensation filter, which fellow Reddit user underwilder correctly recommended:

“As far as your sample rate conversion, you would need a cascaded Integrator-Comb filter paired with a high-order Finite Impulse Response compensation filter to sharply cut off all frequencies above the new Nyquist limit before dropping the sample rate.”

I use this to split the frequency spectrum into many different bands, each with its own sampling rate scaled to three times the highest frequency in that band. This variable sampling rate approach serves two purposes, it reduces the data rate significantly compared to transmitting everything at full rate, and it maximizes averaging gain in each band, which directly improves sensitivity and lowers the effective noise floor. Here’s the full band list:

46-47 kHz — 141 kSPS

45-46 kHz — 138 kSPS

44-45 kHz — 135 kSPS

43-44 kHz — 132 kSPS

42-43 kHz — 129 kSPS

41-42 kHz — 126 kSPS

40-41 kHz — 123 kSPS

39-40 kHz — 120 kSPS

38-39 kHz — 117 kSPS

37-38 kHz — 114 kSPS

36-37 kHz — 111 kSPS

35-36 kHz — 108 kSPS

34-35 kHz — 105 kSPS

33-34 kHz — 102 kSPS

32-33 kHz — 99 kSPS

31-32 kHz — 96 kSPS

30-31 kHz — 93 kSPS

29-30 kHz — 90 kSPS

28-29 kHz — 87 kSPS

27-28 kHz — 84 kSPS

26-27 kHz — 81 kSPS

25-26 kHz — 78 kSPS

24-25 kHz — 75 kSPS

23-24 kHz — 72 kSPS

22-23 kHz — 69 kSPS

21-22 kHz — 66 kSPS

20-21 kHz — 63 kSPS

19-20 kHz — 60 kSPS

18-19 kHz — 57 kSPS

17-18 kHz — 54 kSPS

16-17 kHz — 51 kSPS

15-16 kHz — 48 kSPS

14-15 kHz — 45 kSPS

13-14 kHz — 42 kSPS

12-13 kHz — 39 kSPS

11-12 kHz — 36 kSPS

10-11 kHz — 33 kSPS

9-10 kHz — 30 kSPS

8-9 kHz — 27 kSPS

7-8 kHz — 24 kSPS

6-7 kHz — 21 kSPS

5-6 kHz — 18 kSPS

4-5 kHz — 15 kSPS

3-4 kHz — 12 kSPS

2-3 kHz — 9 kSPS

1-2 kHz — 6 kSPS

1kHz-100Hz — 3 kSPS

100-10Hz — 300 SPS

10-1Hz — 30 SPS

1-0.5Hz — 1.5 SPS

0.5-0.1Hz — 1.5 SPS

0.1-0.01Hz — 0.3 SPS

0.01-0Hz — 0.03 SPS

For the upper VLF range I implement onboard FFT and decimate the frames to around 2000 FPS after the FFT has been computed. This process of oversampling and decimation is applied across all bands rather than simple downsampling. This is done to lower the noise floor and strengthen sensitivity during processing. The oversampling and coherent averaging approach allows the effective noise floor to be pushed well below the raw sensor specification of 1.5 nT/√Hz, with the lower frequency bands benefiting from averaging ratios in the tens of thousands to one.

A GPS and IMU are also implemented. The data from those feeds into a dual layer drift correction system I developed, which I’ve documented here:

“This document serves as a dated record of an original concept developed independently by me. The method uses a multi-channel directional magnetometer array to capture electromagnetic signals across the DC to VLF frequency range. To correct for platform movement and rotational drift, the system uses two complementary mechanisms: an IMU for rapid high-frequency motion correction, and the captured signal imagery itself as an attitude reference, using stable natural electromagnetic sources in the environment to detect and correct slow rotational drift in software. This dual correction approach allows accurate directional signal imaging from a mobile platform without fixed reference points. Conceived and developed independently as part of a personal scientific project. Date: May 8, 2026.”

This idea is older but the day I formally wrote it down was May 8th.

Right now my main goal is getting six channels of usable directional data from the magnetometers. I’m hoping that by the end of the year, possibly earlier, I can start working on turning the data into a panoramic live video.

I’m sure I’ve left some things out, let me know what you think. If you have experience with any of the components or any of the many processes I’m using, I’d love to hear what more experienced people have to say. 

reddit.com
u/WhatAPlumguy — 7 days ago
▲ 18 r/amateurradio+1 crossposts

Hi, I am a 14-year-old building an electromagnetic survey platform, and I’m looking for technical feedback on sensor design and signal flow.

I’ve been working independently on a personal project for an electromagnetic survey platform. It is designed to capture the natural VLF/ULF with a frequency range from DC to 47KHz. The main goal is to survey natural low-frequency phenomena, including Schumann resonances, sferics, geomagnetic micropulsations, whistlers, and atmospherics from a remote low-noise location. I have no institutional, support, or mentorship, it's just me and my personal interest.

The sensor design uses six DRV425EVM fluxgate magnetometers arranged in two triaxial clusters. Simultaneous sampling across all channels is done by an AD7768 24-bit ADC evaluation board running at 128KSPS. I chose simultaneous sampling to maintain phase relationships between axes for polarization analysis and direction finding. The AD7768 evaluation board has been improved with an ADR4525 voltage reference, C0G capacitors, metal film resistors, a high PSRR LDO, and single point grounding to reduce noise.

Signal processing takes place on a Teensy 4.1, which divides the data stream into four simultaneous frequency bands. ULF from DC to 1Hz is averaged down to about 4 samples per second and sent as raw samples. ELF from 1Hz to 1KHz is averaged down to 3KSPS and transmitted as raw samples, keeping full waveform information for further analysis. VLF Lower from 1KHz to 3KHz is averaged down to 9KSPS and sent as raw samples. The VLF Upper band from 3KHz to 47KHz runs at full 128KSPS and has onboard FFT processing at 5 frames per second with an 8192-point window. All other bands are left as raw averaged data so I can apply any analysis needed after the mission.

My specific questions are: Is the fluxgate magnetometer arrangement suitable for full vector measurement of these phenomena? Are there known limitations of the DRV425EVM in these frequency ranges? Is the signal flow architecture sound, or am I missing something essential? Are there aspects of VLF propagation physics I should consider in the processing design that I’m not currently accounting for?

reddit.com
u/WhatAPlumguy — 9 days ago