Electromagnetic Field Detector Using an Arduino




Introduction: Electromagnetic Field Detector Using an Arduino

Ever electronic device emits a certain amount of electromagnetic fields and we can use this radiation to learn a few things about the circuit.

In today's instructable I'm going to show you how to build your own electromagnetic field meter using an Arduino. This device can be used to detect mains voltage, static electricity and radiations from certain devices. It can also be used to detect ghosts :P.

So lets get started...

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Tools and Components

This circuit is built on a breadboard and hence no soldering skills are required, the list of materials required are quite simple and easy to find on eBay.

  • Arduino Uno
  • Breadboard
  • 100k Resistor (or higher if you want a more sensitive device)
  • 330ohm Resistor
  • Jumper wires

Step 2: Circuit

The circuit diagram is really simple and can be found above. The sensitivity of the device can be changed by varying the values of resistance across the 100k Ohm resistor. The higher the value of the resistor, more the sensitivity, if you are going to detect static electricity I recommend using a 1M resistor.

Step 3: Code

The code for this tutorial can be found below

int inPin = 5; // analog 5
int val = 0; // where to store info from analog 5
int pin11 = 11; // output of red led

void setup() { Serial.begin(9600); }

void loop() { val = analogRead(inPin); // reads in the values from analog 5 and //assigns them to val if(val >= 1){ val = constrain(val, 1, 100); // mess with these values val = map(val, 1, 100, 1, 255); // to change the response distance of the device analogWrite(pin11, val); // *note also messing with the resistor should change // the sensitivity }else{ // analogWrite(pin11, val); just tuns on the led with // the intensity of the variable val analogWrite(pin11, 0); // the else statement is just telling the microcontroller // to turn off the light if there is no EMF detected } Serial.println(val); // use output to aid in calibrating }

All the code does is reads the voltages at the analog pin and turns on the led if a certain threshold voltage is reached. So the LED turns on when you bring the device near a mains supply.

Step 4: Testing

After uploading the code it is now time to test the device, for the antenna you could use a 3 inch copper wire. Power on the device make sure you use a battery as the power source to eliminate noise in the signal.

Next, take it towards your mains supply and you should see the LED light up. You could also try this around motors, lights and microwave ovens.

Be the First to Share


    • LED Strip Speed Challenge

      LED Strip Speed Challenge
    • Sculpting Challenge

      Sculpting Challenge
    • Clocks Contest

      Clocks Contest

    5 Discussions


    Question 7 weeks ago on Step 4

    Hi, playing with various designs for emf meter. I want to work towards some kind of calibration. Do you please have an advice on how to calculate sensitivity with the resistor value?

    Thanks in advance



    11 months ago

    Please how can i get the complete write up for this project


    1 year ago

    Works! But the resistors in your photos do not look like the specs in your materials list which I did use (and others). Thanks for a quick, fun build.


    3 years ago

    Easy way to kill Arduino.

    Better use any mft transistor. Like this



    3 years ago

    Cool idea