A portable geophysical sensor that fuses Electrical Resistivity Tomography and 24 GHz FMCW Radar to locate buried objects — at 1/200th the cost of commercial ground-penetrating radar.
Field researchers still rely on manual excavation techniques that haven't changed in a century. Professional GPR systems cost tens of thousands of dollars. We built something better — and cheaper.
A 4-electrode Wenner array injects current through the soil and measures potential difference to map subsurface resistivity — revealing material boundaries, moisture gradients, and buried anomalies.
An HLK-LD2410C module emits continuous-wave radar into the ground. Reflected energy and distance estimates reveal density changes, voids, and metallic inclusions beneath the surface.
Cross-referencing both modalities produces a fused anomaly score. When ERT and radar agree, confidence soars — reducing false positives and pinpointing targets before excavation begins.
An Arduino Uno R3 orchestrates the ADS1115 ADC (I²C) and LD2410C radar (UART), streaming fused CSV data at 115200 baud for real-time visualization.
The ADS1115 provides 65,536 discrete voltage levels (125 µV/bit) — critical for detecting the millivolt-scale signals in ERT measurements that Arduino's built-in 10-bit ADC would miss entirely.
A 3D-printed dovetail mechanism lets users hot-swap between the ERT probe rail and FMCW radar sled — or combine them. Seven interlocking print sections assembled with Velcro retention.
The Arduino firmware runs a tight 250 ms acquisition loop with real-time binary frame parsing, baseline calibration, and exponential smoothing.
// ── Signal Conditioning Pipeline ── // 1. Baseline calibration (first 20 radar frames) if (!baselineDone) { baselineSum += latestScore; baselineCount++; if (baselineCount >= 20) { baselineScore = baselineSum / baselineCount; baselineDone = true; } } // 2. Subtract ambient baseline int usableScore = latestScore - baselineScore; if (usableScore < 0) usableScore = 0; // 3. Exponential moving average (α = 0.25) smoothScore = 0.75f * smoothScore + 0.25f * (float)usableScore;
ADC,142,0.565500,0.564375,0.552375,0.553750,-0.000125 RADAR,142,2,87,14,110
Iterative design driven by testing, peer feedback, and manufacturing constraints.
Proved the interchangeable base system works mechanically. Identified the need for a third coupling piece (female dovetail counterpart) to simplify swapping.
Wired the ADS1115 + LD2410C onto a perfboard. First successful dual-modality data capture. Discovered thumb screws were impractical for field use.
Removed the top half of the radar sled and replaced it with the ERT rail, saving print volume. Added the hollow center channel for unobstructed radar propagation.
Implemented baseline calibration, EMA smoothing, and stale-data timeouts. Added CSV column headers for automated parsing.
Seven interlocking 3D-printed sections. Velcro retention system. Full field test with 180-scan data capture validating both modalities.