Ground Penetrating Radar using Arduino

Similar projects worth following
This project aims the development of a very low cost (under 300 USD components cost) Ground Penetrating Radar. The acquired data can be visualized onboard, in real time, as well as stored and transferred to a PC for further processing.
The digital section uses an Arduino Mega 2560 board.
The onboard visualization uses an LCD shield for Arduino Mega 2560.
The analog section will be custom built.
The frequency range is 323 MHz - 910 MHz.

The antennas are Antipodal Vivaldi, details for designing and building them here:

PCB images in PDF for Toner Transfer PCB construction (Top layer mirrored), and schematics.

x-zip-compressed - 1.99 MB - 10/21/2020 at 12:04



OrCAD 9.2 design files and Gerber.

x-zip-compressed - 344.98 kB - 10/21/2020 at 12:02



OrCAD 9.2 design files and Gerber.

x-zip-compressed - 147.42 kB - 10/21/2020 at 12:02


Arduino and LabVIEW 2013 source code.

x-zip-compressed - 50.96 kB - 10/08/2020 at 17:12


Portable Network Graphics (PNG) - 15.75 kB - 10/08/2020 at 17:09


View all 7 files

  • 1 × Arduino Mega 2560
  • 1 × LCD TFT 3.2 inch + slot sd card Uses HX8357 chip
  • 1 × JTOS-850VW+ VCO
  • 1 × PAT-10+ RF Attenuator
  • 2 × PSA4-5043+ LNA

View all 49 components

  • 19.10.2020

    Mirel Paun10/19/2020 at 14:14 0 comments

    System tested on a bridge. This is the GPR image obtained for the bridge in the photo:

  • 08.10.2020

    Mirel Paun10/08/2020 at 16:03 0 comments

    System tested and works fine.

    Antenna coupling is quite high. Would be nice placing the antennas at a bigger distance from each other, or using more directive antennas in order to reduce unwanted coupling.

View all 2 project logs

  • 1
    Board stack

    This is how the electronic boards are stacked.

  • 2
    The wheel switch

    This is how the wheel operated scan switch works.

  • 3
    GPR working

View all 4 instructions

Enjoy this project?



dianasetonpage wrote 11/19/2020 at 18:37 point

Following on from my previous comment, I assume that these two inner layers are ground and power planes so are copper apart from the areas shown, and also I can't at the moment see how these planes are connected to + ve and ground on the top layer ? Also I cannot see that CON2 does anything ? Also seems to overlays the wrong way round. I would be grateful for your feedback on these points - it may be my unfamiliarity with Gerber files.      

  Are you sure? yes | no

dianasetonpage wrote 11/19/2020 at 07:21 point

Interesting project. There appear to be two plain copper inner layers in the RF pcb.  Do you think they could be left out ?

  Are you sure? yes | no

alexatzovaras wrote 11/16/2020 at 12:53 point

Interesting project, I haven't seen anywhere how long can it see underground?(depth)

  Are you sure? yes | no

yves913 wrote 11/13/2020 at 13:24 point

Interesting project, i work with GSSI radar and i follow a similar project "TU1208_Guide to building a GPR radar for educational use- rev2-nov17" i will try to improve a little. very thanks you for the work

  Are you sure? yes | no

Dmitry wrote 11/12/2020 at 15:45 point

What do you think, is it possible to detect a several meters long horizontal steel rod (with diameter around 10 mm) buried in soil at depth around 0.5 m? Or the diameter is too small?

  Are you sure? yes | no

Mirel Paun wrote 11/12/2020 at 17:04 point

The diameter is too small. For this kind of application you need a radar working at much higher frequencies, in the GHz range.

  Are you sure? yes | no

yves913 wrote 11/13/2020 at 13:20 point

@900Mhz with GSSI GPR we can detect bar on the concret. @2Ghz is better. 

  Are you sure? yes | no

Adam Quantrill wrote 10/22/2020 at 22:52 point

Interesting antennas. I have some wideband yagi's, would they be worth trying I wonder?

Regarding antenna coupling, I had similar experiences in mobile comms. You could try pointing the antennas up at the sky. Then couple back some antiphase TX into the RX, to null out the coupling. You'll need a bunch of attenuators (or a switched one).

  Are you sure? yes | no

Mirel Paun wrote 10/23/2020 at 10:21 point

If your Yagi antennas operate in the GPR's band, they should work. Regarding the coupling, I stored the Rx signal obtained for a target-less measurement and the GPR subtracts it from each acquisition. Different antennas will need a different correction signal. It can be replaced in the Arduino code, or can be completely eliminated if the antennas are placed sufficiently apart from each other. 

  Are you sure? yes | no

r.e.wolff wrote 10/22/2020 at 21:04 point

What do you use to generate the RF?
Can you sweep the frequency?  Can you RX while you TX? 
If you could do that, there is a trick I learned over three decades ago.
Mix the RX signal with the TX and sample as fast as you can while sweeping up the frequency band. Once you've completed a sweep, FFT the received signal and... You've got a cross section of the soil.... This should reduce the noise a lot because all samples contribute to all result pixels. 

  Are you sure? yes | no

Mirel Paun wrote 10/23/2020 at 10:07 point

The answer is YES, this is precisely how I implemented it, it's called Frequency Modulated Continuous Wave (FMCW) operation.

  Are you sure? yes | no

Reginald Beardsley wrote 10/22/2020 at 14:45 point

Standoff is probably about right.  These guys pretty much dominate the market:

Your horizontal sampling on the bridge is much too coarse.  You should be sampling at intervals of a few cm.   Bury a piece of steel pipe in sand at a depth of a foot or two, place a board over it so you can roll smoothly across it.   Halve the horizontal sample rate until you get a nice looking hyperbola.

For  processing  the data to suppress noise and form an image  I recommend Seismic Unix.

while developed for reflection seismic work it is widely used in GPR research also.  I'm a retired seismic research scientist and supported SU professionally for many years.  Send me a PM if you want more info.

  Are you sure? yes | no

Mirel Paun wrote 10/23/2020 at 10:04 point

Thank you for the useful information. I'll increase the horizontal sampling rate.

  Are you sure? yes | no

Michael Erberich wrote 11/09/2020 at 23:01 point

Another note on horizontal sampling: currently it is tied to the wheel diameter. I would be nice for inspired designs if the source code had horizontal sampling interval as a configurable parameter. It might already be (I haven't looked at the source).

  Are you sure? yes | no

Dmitry wrote 10/21/2020 at 06:51 point

Hi, great project! Could you please include schematics for the RF board in PDF format? Similar to the "GPR_JF_Schematic.pdf" in the "LF (GPR_JF)" file. I tried to open schematics with OrCAD (downloaded trial version 17.4 from the OrCAD website), but it was not very successful. It can import and open *.max files (with some errors) but I don't know how to open/convert schematics. So PDF file with the schematics would be very convenient (for those who are not familiar with OrCAD).

Also, I think, it would be handy to have layout files in PDF too for the LF and RF boards. If it's not a problem.

  Are you sure? yes | no

Mirel Paun wrote 10/21/2020 at 08:32 point

Hello! Thanks for the appreciation. I used OrCAD 9.2, so you should try installing this version. I provided Gerber files for creating the PCBs without the need for OrCAD., and are the Gerber files for copper layers.

I will upload them also in PDF format for easy Toner Transfer PCB creation (top layer will be mirrored).

  Are you sure? yes | no

Dmitry wrote 10/21/2020 at 09:06 point

Great! It seems like KiCad and EasyEDA gerber viewers can open *.ast, *.drd, *.gnd, *.pwr, *.smb, *.smt, and *.sst files (apart from *.bot and *.top ones).

Edit: ah, they are listed in the *.gtd file as 9 layers.

Edit 2: I was able to open *.dsn file (LF board) in the 17.4 version (it shows schematic etc.). But I can't find *.dsn file for the RF board.

  Are you sure? yes | no

Mirel Paun wrote 10/21/2020 at 12:10 point

I added them. I created the RF board directly in Layout as PCB, without a schematic, because OrCAD lacks Minicircuit ICs. Now I added a schematic for RF created in Paint.

  Are you sure? yes | no

Dmitry wrote 10/21/2020 at 14:14 point

Thank you for the RF schematic (and other files)!

  Are you sure? yes | no

Adam Quantrill wrote 10/23/2020 at 11:46 point

Thanks Mirel. Also would it be possible to upload some better photos of your existing antennas? Especially where the TX and RX feeds are connected.

  Are you sure? yes | no

Nick wrote 10/04/2020 at 08:47 point

will you be sharing details of the RF components & the Arduino code - this has many potential applications for good.

  Are you sure? yes | no

Mirel Paun wrote 10/21/2020 at 08:18 point

I added the details (schematics and software).

  Are you sure? yes | no

RoFree wrote 10/04/2020 at 04:37 point

what is the legality of this as a spread spectrum emission. Usually you would need a license

  Are you sure? yes | no

geocheats2 wrote 10/02/2020 at 11:22 point

I would love to know more about the whole endeavor when you are ready

  Are you sure? yes | no

Klaus wrote 10/01/2020 at 11:33 point

Looks awesome! I am just wondering...aren't the antennas too low? Well, I cannot really make out the geometry and dimensions. On the hand-drawn diagram they look rather large and to me it seems that the radar hits the ground while still in the near-field region. or maybe it's just that I calculated the far-field distance in my head...

  Are you sure? yes | no

Mirel Paun wrote 10/02/2020 at 06:26 point

Thank you for the Like. You are right, the antennas are 4 cm above the ground, so the ground is definitely in the near-field region. Because the operating frequency range is quite low, the near-field extends far away from the antennas. Do you think it is necessary to mount the system on a trolley in order to move the ground in the far-field region? Is this going to improve the characteristics of the system?

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates